(elmo-nntp-create-msgdb-from-overview-string): Decode
[elisp/wanderlust.git] / elmo / ChangeLog
1 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
2
3         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
4         encoded words in `from' and `subject' field.
5
6 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7
8         * modb.el (elmo-msgdb-message-field): Add argument `type'.
9         (elmo-msgdb-match-condition): Get handler from entity instead of
10         msgdb.
11
12         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
13         (modb-standard-load-entity): Treat new file format.
14         (modb-standard-save-entity-1): Save as new file format.
15         (modb-standard-save-entity): Split messages into section here.
16         (elmo-msgdb-message-field): Follow the API change.
17         (modb-standard-default-entity-handler): New internal variable.
18         (elmo-msgdb-message-entity-handler): Define.
19
20         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
21         to `elmo-vars.el'.
22         (modb-entity-field-extractor-alist): New user option.
23         (elmo-msgdb-message-entity-field): Removed argument `decode' and
24         added argument `type'.
25         (elmo-msgdb-copy-message-entity): Add optional argument
26         `make-handler'.
27         (modb-set-field-converter): New function.
28         (modb-convert-field-value): Ditto.
29         (modb-entity-string-decoder): Ditto.
30         (modb-entity-string-encoder): Ditto.
31         (modb-entity-parse-date-string): Ditto.
32         (modb-entity-make-date-string): Ditto.
33         (modb-entity-mime-decoder): Ditto.
34         (modb-entity-mime-encoder): Ditto.
35         (modb-entity-address-list-decoder): Ditto.
36         (modb-entity-address-list-encoder): Ditto.
37         (modb-entity-parse-address-string): Ditto.
38         (modb-entity-make-address-string): Ditto.
39         (modb-entity-create-field-indices): Ditto.
40         (modb-legacy-entity-field-slots): New constant.
41         (modb-legacy-entity-field-indices): Ditto.
42         (modb-legacy-entity-normalizer): New variable.
43         (modb-legacy-entity-specializer): Ditto.
44         (modb-legacy-entity-field-index): New macro.
45         (modb-legacy-entity-set-field): New function.
46         (modb-legacy-make-message-entity): Rewrite.
47         (elmo-msgdb-create-message-entity-from-buffer): Use
48         `elmo-msgdb-get-references-from-buffer'. Use
49         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
50         Use `modb-legacy-entity-set-field' instead of
51         `elmo-msgdb-message-entity-set-field'.
52         (elmo-msgdb-message-entity-field): Rewrite.
53         (elmo-msgdb-message-entity-set-field): Ditto.
54         (elmo-msgdb-copy-message-entity): Make new entity by
55         `make-handler' if it specified.
56         (elmo-msgdb-message-match-condition): Define a method of
57         `modb-entity-handler' and follow the API change.
58         (modb-standard-entity-handler): New class.
59         (modb-entity-extract-ml-info-from-x-sequence): New function.
60         (modb-entity-extract-ml-info-from-subject): Ditto.
61         (modb-entity-extract-ml-info-from-return-path): Ditto.
62         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
63         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
64         (modb-entity-extract-mailing-list-info): Ditto.
65         (modb-entity-extract-mailing-list-info-functions): New variable.
66
67         * elmo.el (elmo-message-field): Add optional argument `type'.
68
69         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
70         from `modb-entity.el'.
71
72         * elmo-util.el (elmo-object-load): Decode by coding-system from
73         `set-auto-coding-function'.
74         (elmo-object-save): Use `detect-mime-charset-region' and add
75         coding cookie if encode.
76         (elmo-msgdb-get-references-from-buffer): New function.
77         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
78
79         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
80
81         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
82         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
83         instead of `shimbun-make-header' and follow the API change.
84         (elmo-shimbun-update-overview): Follow the API change.
85         (elmo-map-folder-list-message-locations): Ditto.
86
87         * elmo-pipe.el (elmo-message-field): Ditto.
88
89         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
90         Ditto.
91
92         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
93
94         * elmo-multi.el (elmo-message-field): Ditto.
95
96         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
97         (elmo-msgdb-sort-by-date): Ditto.
98         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
99         `elmo-message-entity-field'.
100         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
101         change.
102         (elmo-msgdb-overview-entity-get-from): Ditto.
103         (elmo-msgdb-overview-entity-get-subject): Ditto.
104         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
105         (elmo-msgdb-overview-entity-get-date): Ditto.
106         (elmo-msgdb-overview-entity-get-to): Ditto.
107         (elmo-msgdb-overview-entity-get-cc): Ditto.
108
109         * elmo-mime.el (elmo-message-mime-entity): Ditto.
110         (elmo-mime-collect-message/partial-pieces): Ditto.
111
112         * elmo-filter.el (elmo-message-field): Ditto.
113
114         * elmo-date.el (elmo-datevec-to-time): New function.
115         (elmo-time-parse-date-string): Ditto.
116         (elmo-time-make-date-string): Ditto.
117         (elmo-time<): Ditto.
118
119         * elmo-version.el (elmo-version): Up to 2.15.1.
120
121 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
122
123         * elmo-flag.el (elmo-global-flags-initialize): Don't include
124         member of elmo-local-flags.
125
126 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
127
128         * elmo-version.el (elmo-version): Up to 2.15.0.
129
130 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
131
132         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
133         `ignore-msgdb' is non-nil.
134
135 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
136
137         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
138         (elmo-condition-in-msgdb-p): Ditto.
139         (elmo-file-field-primitive-condition-match): Ditto.
140         (elmo-file-field-condition-match): Ditto.
141
142         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
143
144 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
145
146         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
147         subdirectories here.
148         (elmo-global-flags-initialize): New function.
149
150         * elmo.el (toplevel): Added autoload setting for
151         `elmo-global-flags-initialize'.
152
153 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
154
155         * elmo.el (message-number-changed): Define new signal.
156         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
157         message-number-changed signal.
158         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
159         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
160         Respect `elmo-pack-number-check-strict'.
161
162 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
163
164         * elmo-signal.el (elmo-connect-signal): Document.
165         (elmo-emit-signal): Ditto.
166         (elmo-emit-signal): It should pass source argument to filter and
167         handler, not slot-source.
168
169 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
170
171         * modb.el (elmo-msgdb-update-entity): New API and define generic
172         implement.
173
174         * modb-standard.el (elmo-msgdb-update-entity): Define.
175
176         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
177         API and define generic implement.
178
179         * elmo.el (update-overview): New singnal.
180
181         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
182         `elmo-msgdb-update-entity' and emit signal `update-overview'.
183         (elmo-message-entity-parent): Define.
184
185         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
186         `update-overview'.
187
188         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
189
190         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
191
192 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
193
194         * elmo.el (elmo-folder-synchronize): Sort the return value of
195         `elmo-list-diff'.
196
197         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
198         list.
199
200 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
201
202         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
203         `default-enable-multibyte-characters'.
204         (elmo-object-load): Use `with-temp-buffer' instead of
205         `elmo-set-work-buf'.
206         (elmo-object-save): Ditto.
207         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
208         `elmo-set-work-buf'.
209         (elmo-decoded-field-body): Ditto.
210
211         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
212
213         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
214         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
215
216         * elmo-version.el (elmo-version): Up to 2.13.3.
217
218 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
219
220         * elmo-util.el (elmo-list-diff): Fix the last change.
221         Reverse order of result lists.
222
223 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
224
225         * modb-standard.el (elmo-msgdb-set-flag): Use
226         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
227         (elmo-msgdb-unset-flag): Ditto.
228
229         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
230         `elmo-list-diff'.
231
232         * elmo-util.el (elmo-list-diff): Rewrite.
233         (elmo-list-diff-nonsortable): New function.
234
235 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
236
237         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
238         `elmo-multibypte-buffer-name'.  All referers are updated.
239
240 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
241
242         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
243         (elmo-mime-entity-fragment-p): New function.
244         (mime-elmo-buffer-entity): Added slot `reassembled'.
245         (elmo-message-mime-entity): Added 4th argument `reassemble'.
246         (elmo-message-mime-entity-internal): New function (renamed from
247         `elmo-message-mime-entity').
248         (elmo-mime-inherit-field-list-from-enclosed): New constant.
249         (elmo-mime-make-reassembled-mime-entity): New function.
250         (elmo-message-reassembled-mime-entity): Ditto.
251         (elmo-mime-collect-message/partial-pieces): Ditto.
252
253 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
254
255         * elmo.el (elmo-message-fetch-string): Disable multibyte.
256
257         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
258         (elmo-with-enable-multibyte): New macro.
259
260         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
261
262 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
263
264         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
265         argument `number'.
266         (elmo-filter-connect-signals): Follow the above change.
267
268 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
269
270         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
271
272         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
273         that only the first flag is used.
274
275 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
276
277         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
278         if available.
279
280 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
281
282         * elmo-signal.el: New file.
283
284         * elmo.el (toplevel): Require elmo-signal.
285         (flag-changing, flag-changed, cache-changed): New signal.
286         (elmo-folder): Remove slog `handlers'.
287         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
288         `elmo-folder-notify-event'.
289         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
290         (elmo-folder-unset-flag): Ditto.
291         (elmo-event-handler): Abolish.
292         (elmo-event-handler-flag-changed): Ditto.
293         (elmo-event-handler-cache-changed): Ditto.
294         (elmo-folder-add-handler): Ditto.
295         (elmo-folder-remove-handler): Ditto.
296         (elmo-folder-notify-event): Ditto.
297
298         * elmo-pipe.el (toplevel): Require elmo-signal.
299         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
300         (elmo-pipe-connect-signals): New function.
301         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
302         (elmo-folder-set-flag): Ditto.
303         (elmo-folder-unset-flag): Ditto.
304         (elmo-message-set-cached): Ditto.
305
306         * elmo-multi.el (toplevel): Require elmo-signal.
307         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
308         (elmo-multi-connect-signals): New function.
309         (elmo-multi-map-numbers): Ditto.
310         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
311         (elmo-message-fetch): Ditto.
312         (elmo-folder-set-flag): Ditto.
313         (elmo-folder-unset-flag): Ditto.
314
315         * elmo-filter.el (toplevel): Require elmo-signal.
316         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
317         (elmo-filter-connect-signals): New function.
318         (elmo-filter-add-flag-count): Ditto.
319         (elmo-message-fetch): Does not call
320         `elmo-filter-folder-countup-message-flags' and
321         `elmo-folder-notify-event'.
322         (elmo-message-set-cached): Ditto.
323         (elmo-folder-set-flag): Ditto.
324         (elmo-folder-unset-flag): Ditto.
325
326         * elmo-version.el (elmo-version): Up to 2.13.2.
327
328 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
329
330         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
331         `flags'.
332
333 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
334
335         * elmo-filter.el (elmo-message-set-cached): Call
336         `elmo-folder-notify-event' with event `cache-changed'.
337
338         * elmo-multi.el (elmo-message-set-cached): Ditto.
339
340         * elmo-pipe.el (elmo-message-set-cached): Ditto.
341
342 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
343
344         * elmo.el (elmo-folder-encache): Abolish.
345
346 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
347
348         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
349         (elmo-folder-next-message-number-dop): Return appropriate negative
350         integer.
351
352 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
353
354         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
355         clearing pending operations.
356         (elmo-folder-next-message-number-dop): Return appropriate negative
357         integer.
358
359 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
360
361         * elmo.el (toplevel): Added autoload setting for `md5'.
362         (elmo-msgdb-path-encode-threshold): New user option.
363         (elmo-folder-msgdb-path): Encode msgdb path if its length is
364         longer than `elmo-msgdb-path-encode-threshold'.
365
366         * elmo-flag.el (elmo-global-mark-migrate): Use
367         `elmo-folder-expand-msgdb-path' instead of
368         `elmo-folder-msgdb-path'.
369
370 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
371
372         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
373         element of the difference is nil.
374
375 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
376
377         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
378         to the check logic of file systems which are weak in colon character.
379
380 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
381
382         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
383
384 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
385
386         * elmo-maildir.el (elmo-maildir-move-file): New function.
387         (elmo-folder-append-buffer): Use it.
388         (elmo-folder-append-messages): Ditto.
389         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
390
391         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
392         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
393
394         * elmo-maildir.el (elmo-maildir-separator): New user option.
395         (elmo-maildir-adjust-separator): New macro.
396         (elmo-maildir-list-location): Use it.
397         (elmo-maildir-update-current): Ditto.
398         (elmo-maildir-set-mark): Ditto.
399         (elmo-maildir-delete-mark): Ditto.
400         (These changes are based on Hiroya Murata's patch [wl: 13437])
401
402 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
403
404         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
405
406 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
407
408         * elmo-flag.el (elmo-flag-valid-p): Simplify.
409         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
410         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
411
412 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
413
414         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
415         Use `with-temp-buffer'.
416
417 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
418
419         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
420
421         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
422         `wl-read-search-condition').
423         (elmo-read-search-condition-internal): Likewise.
424
425         * elmo-flag.el (elmo-flag-char-regexp): New constant.
426         (elmo-flag-valid-p): New function.
427         (elmo-folder-initialize): Check flag name is valid.
428
429 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
430
431         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
432         delimiter to obtain root mailbox itself.
433
434 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
435
436         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
437         type mismatch.
438
439 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
440
441         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
442         as t.
443
444 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
445
446         * elmo-shimbun.el (toplevel): Require cl at compile.
447
448         * elmo-nntp.el (toplevel): Ditto.
449
450         * elmo-nmz.el (toplevel): Ditto.
451
452         * elmo-multi.el (toplevel): Ditto.
453
454         * elmo-file.el (toplevel): Ditto.
455
456         * elmo-dop.el (toplevel): Ditto.
457
458         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
459
460 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
461
462         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
463         as nil.
464
465         * elmo.el (elmo-message-fetch): Return t even when the output buffer
466         size of elmo-message-fetch-internal is 0 byte.
467
468 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
469
470         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
471
472 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
473
474         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
475         always plugged.
476
477 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
478
479         * elmo-maildir.el (elmo-map-message-fetch): Call
480         `elmo-map-folder-set-flag'.
481
482         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
483         (elmo-message-fetch): Merge from
484         `elmo-message-fetch-with-cache-process'.
485
486         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
487         (elmo-message-fetch): Define.
488
489         * elmo-nntp.el (elmo-message-fetch): Renamed from
490         `elmo-message-fetch-with-cache-process'.
491
492         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
493         (elmo-message-fetch): Define.
494
495         * elmo-util.el (elmo-condition-parse-primitive): Downcase
496         search-key.
497
498         * elmo-shimbun.el (shimbun-mua-search-id): Use
499         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
500         (elmo-shimbun-folder-shimbun-header): Ditto.
501         (elmo-shimbun-get-headers): Ditto.
502         (elmo-shimbun-update-overview): Ditto.
503
504         * elmo-pipe.el (elmo-folder-detach-messages): Define.
505
506         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
507         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
508
509 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
510
511         * elmo.el (elmo-message-fetch): Unset unread flag on server when
512         message is cached.
513         (elmo-message-fetch-string): Fixed argument.
514
515 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
516
517         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
518         exchange order of arguments `section' and `unread'.
519         (elmo-message-encache): Follow the API change.
520         (elmo-message-match-condition): Ditto.
521         (elmo-generic-folder-append-messages): Ditto.
522         (elmo-message-fetch-string): New function.
523
524         * elmo-split.el (elmo-split-subr): Ditto.
525
526         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
527
528         * elmo-pipe.el (elmo-message-fetch): Ditto.
529
530         * elmo-multi.el (elmo-message-fetch): Ditto.
531
532         * elmo-mime.el (elmo-message-mime-entity): Ditto.
533
534         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
535
536         * elmo-filter.el (elmo-message-fetch): Ditto.
537
538         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
539
540         * elmo-imap4.el (mime-imap-location-section-body): Use
541         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
542         follow the API change.
543
544 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
545
546         * elmo-access.el: New file.
547
548         * elmo-null.el: Ditto.
549
550         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
551
552 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
553
554         * elmo-net.el (elmo-network-session-idle-timeout): New option.
555         (elmo-network-session): New attribute `last-accessed'.
556         (elmo-network-get-session): Discard network cache if elapsed time
557         since last-accessed is larger than elmo-network-session-idle-timeout.
558
559 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
560
561         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
562         and added `number', `require-entireness'.
563         (elmo-find-fetch-strategy): Rewrite.
564         (elmo-message-fetch): Unset `unread' flag when argument unread is
565         non-nil.
566
567         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
568
569         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
570         (elmo-message-fetch): Notify event `flag-changed'.
571
572         * elmo-pipe.el: Likewise.
573
574         * elmo-mime.el (elmo-mime-entity): New class.
575         (elmo-mime-entity-display-p): New generic function.
576         (elmo-mime-entity-display): Ditto.
577         (elmo-mime-entity-display-as-is): Ditto.
578         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
579         elmo-mime-entity.
580         (elmo-make-mime-message-location): Removed.
581         (elmo-mime-message-display): Ditto.
582         (elmo-mime-display-as-is): Ditto.
583         (elmo-message-mime-entity): New function.
584
585         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
586
587         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
588         change.
589         (elmo-message-fetch): Re-count flagged message number and notify
590         event `flag-changed'.
591
592         * elmo-version.el (elmo-version): Up to 2.13.1.
593
594 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
595
596         * elmo-filter.el (elmo-message-field): Define.
597         (elmo-message-set-field): Ditto.
598
599 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
600
601         * elmo.el (elmo-message-set-cached): Call
602         `elmo-folder-notify-event' with cache-changed.
603         (elmo-event-handler-cache-changed): New generic function.
604
605 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
606
607         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
608         instead of elmo-add-name-to-file.
609         (elmo-folder-append-messages): Ditto.
610
611 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
612
613         * elmo.el (elmo-folder-update-threshold): Add nil to range.
614
615 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
616
617         * elmo-version.el (elmo-version): Up to 2.13.0.
618
619         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
620         `auto'.
621
622         * modb-standard.el (modb-standard-economize-entity-size): Changed
623         default value to `t'.
624
625         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
626         `standard'.
627
628         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
629         after parsing greeting string.
630
631 2004-11-23  Daishi Kato <daishi@axlight.com>
632
633         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
634         New user option.
635         (elmo-spam-spamoracle-call): Use it.
636
637 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
638
639         * elmo.el (elmo-message-accessible-p): Message in dop spool
640         is accessible.
641
642 2004-11-23  Daishi Kato <daishi@axlight.com>
643
644         * elsp-spamoracle.el: New file.
645
646 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
647
648         * elmo.el (elmo-message-flags-for-append): New function.
649         (elmo-generic-folder-append-messages): Use it.
650
651         * elmo-split.el (elmo-split-subr): Ditto.
652
653         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
654         `flags' and use elmo-folder-append-buffer instead of
655         write-region-as-binary.
656         (elmo-dop-filter-pending-messages): New function.
657         (elmo-folder-append-buffer-dop): Call
658         elmo-dop-spool-folder-append-buffer with `flag'.
659         (elmo-folder-set-flag-dop): Filter messages by
660         elmo-dop-filter-pending-messages.
661         (elmo-folder-unset-flag-dop): Ditto.
662         (elmo-folder-append-buffer-dop-delayed): Use
663         elmo-message-flags-for-append to get flags of the message and
664         simplify.
665
666 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
667
668         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
669
670 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
671
672         * elmo.el (elmo-folder): Added handlers slot.
673         (elmo-event-handler): New class.
674         (elmo-event-handler-flag-changed): New API.
675         (elmo-folder-add-handler): New function.
676         (elmo-folder-remove-handler): Ditto.
677         (elmo-folder-notify-event): Ditto.
678         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
679         `flag-changed'.
680         (elmo-folder-unset-flag): Ditto.
681
682         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
683         (elmo-folder-unset-flag): Ditto.
684
685         * elmo-multi.el (elmo-folder-set-flag): Ditto.
686         (elmo-folder-unset-flag): Ditto.
687
688         * elmo-filter.el (elmo-folder-set-flag): Ditto.
689         (elmo-folder-unset-flag): Ditto.
690
691         * elmo-version.el (elmo-version): Up to 2.11.33.
692
693 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
694
695         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
696
697 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
698
699         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
700
701         * elmo-flag.el (elmo-folder-unset-flag): Define.
702         (elmo-global-flag-detach): Do process when the flag is not target
703         flag.
704
705 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
706
707         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
708         variable.
709         (elmo-msgdb-create-message-entity-from-buffer): Use it.
710
711 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
712
713         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
714         function.
715         (elmo-folder-delete-messages): Detach messages before delete
716         messages from target folder.
717         (elmo-folder-detach-messages): Set updated number-list to slot.
718
719 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
720
721         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
722
723 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
724
725         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
726
727 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
728
729         * elmo.el (elmo-folder-delete-messages-internal): New API (for
730         internal use only).
731         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
732         not modified.
733         (elmo-folder-delete-messages): Define.
734         (elmo-folder-move-messages): Don't call
735         `elmo-folder-detach-messages'.
736         (elmo-folder-synchronize): Rewrite.
737         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
738
739         * elmo-util.el (elmo-last): New function.
740         (elmo-set-list): Ditto.
741         (elmo-number-set-delete-list): Ditto.
742         (elmo-number-set-delete): Ditto.
743
744         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
745
746         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
747         `elmo-folder-delete-messages' and don't delete location map.
748         (elmo-folder-detach-messages): Define.
749
750         * elmo-imap4.el (elmo-folder-delete): Use
751         `elmo-folder-delete-messages-internal' instead of
752         `elmo-folder-delete-messages'.
753
754         * elmo-filter.el (elmo-folder-delete-messages): Call
755         `elmo-folder-detach-messages'.
756         (elmo-folder-detach-messages): Don't call
757         `elmo-folder-detach-messages' for target folder.
758
759         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
760         message deletion is succeeded.
761
762         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
763
764         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
765         from `elmo-folder-delete-messages'.
766
767         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
768
769         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
770
771         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
772
773         * elmo-version.el (elmo-version): Up to 2.11.32.
774
775 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
776
777         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
778         (elmo-global-flag-list): Added obsolete variable setting.
779
780         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
781
782         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
783         (elmo-mime-insert-header-from-buffer): Don't decode header content when
784         `elmo-mime-display-header-analysis' is nil.
785
786         * elmo-flag.el (elmo-global-flags): Renamed from
787         `elmo-global-flag-list' (All other related portions are changed).
788         (elmo-local-flags): New variable.
789         (elmo-local-flag-p): New function.
790         (elmo-global-flag-set-internal): Cause an error when flag is not
791         global.
792
793 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
794
795         * elmo-util.el (elmo-concat-path): Treat empty path.
796
797 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
798
799         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
800         field-or-fields).
801         (elmo-split-address-match): Ditto.
802         (elmo-split-equal): Ditto.
803         (elmo-split-match): Ditto.
804
805 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
806
807         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
808         (elmo-generic-folder-append-messages): If src message exists but
809         has no flag, pass (read) for the FLAG argument of
810         `elmo-folder-append-buffer'. Otherwise, pass nil.
811
812         * elmo-split.el (elmo-split-subr): Likewise.
813
814         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
815
816         * elmo-multi.el (elmo-message-flags): Ditto.
817
818         * elmo-filter.el (elmo-message-flags): Ditto.
819
820         * elmo.el (elmo-folder-append-buffer): Fix docstring.
821         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
822         pass (read) for the FLAG argument of elmo-folder-append-buffer.
823         
824 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
825
826         * elmo-split.el (elmo-split-rule): Update comment.
827         (elmo-split-address-equal): Allow 2nd argument to be a list.
828         (elmo-split-address-match): Ditto.
829         (elmo-split-equal): Ditto.
830         (elmo-split-match): Ditto.
831
832 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
833
834         * elmo.el (elmo-folder-append-buffer): Fix docstring.
835         (elmo-folder-append-msgdb): Don't treat `read'.
836         (elmo-message-flags): Don't return `read'.
837
838         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
839         (elmo-folder-unset-read-delayed): Ditto.
840
841         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
842
843 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
844
845         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
846         deletion.
847
848 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
849
850         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
851         header.
852
853 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
854
855         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
856         here.
857         (elmo-msgdb-save): Bind inhibit-quit.
858         (modb-standard-message-entity): Ditto.
859
860 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
861
862         * elmo-database.el: No need to require elmo-msgdb.
863
864 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
865
866         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
867         instead of `elmo-list-subdirectories'.
868
869 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
870
871         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
872         group entry.
873         (elmo-folder-exists-p): "[" is empty.
874         (elmo-folder-list-subfolders): Define.
875         (elmo-folder-have-subfolder-p): Ditto.
876
877 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
878
879         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
880
881 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
882
883         * elmo-filter.el (elmo-folder-local-p): Define.
884
885 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
886
887         * modb-standard.el (modb-standard-loaded-message-id): Return nil
888         when entity is garbaged.
889         (modb-standard-save-entity-1): Don't modify the original entity.
890
891 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
892
893         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
894
895 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
896
897         * elmo.el (elmo-strict-folder-diff): Use
898         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
899
900 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
901
902         * modb.el (elmo-msgdb-flag-available-p): New generic function.
903         (elmo-msgdb-message-number): Ditto.
904         (elmo-msgdb-message-field): Ditto.
905
906         * modb-standard.el (modb-standard-economize-entity-size): New user
907         option.
908         (modb-standard-loaded-message-id): New inline function.
909         (modb-standard-load-entity): Use it.
910         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
911         throw message-id string away.
912         (elmo-msgdb-flag-available-p): Define.
913         (elmo-msgdb-message-number): Ditto.
914         (elmo-msgdb-message-field): Ditto.
915
916         * modb-legacy.el (modb-legacy-flag-list): Fix typo
917         (suppoted -> supported).
918         (modb-legacy-supported-flag-p): Ditto.
919         (elmo-msgdb-set-flag): Ditto.
920         (elmo-msgdb-unset-flag): Ditto.
921         (elmo-msgdb-flag-available-p): Define.
922
923         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
924         is `t', treat it as legacy entity.
925         
926         * elmo.el (elmo-message-flag-available-p): New generic function.
927         (elmo-message-number): Ditto.
928         (elmo-message-field): Use `elmo-msgdb-message-field'.
929
930         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
931
932         * elmo-pipe.el (elmo-message-flag-available-p): Define.
933         (elmo-message-number): Ditto.
934
935         * elmo-multi.el (elmo-message-number): Define.
936         (elmo-message-flag-available-p): Ditto.
937
938         * elmo-filter.el (elmo-message-flag-available-p): Define.
939         (elmo-message-number): Ditto.
940
941         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
942         (elmo-folder-initialize): Load `max-number'.
943         (elmo-folder-commit): Save it.
944         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
945         (elmo-global-flag-set-internal): Set up max-number slot.
946
947 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
948
949         * elmo-version.el (elmo-version): Up to 2.11.31.
950
951 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
952
953         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
954         unibyte string of the current buffer for the argument of `md5'
955         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
956
957 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
958
959         * modb-legacy.el (modb-legacy-flag-list): New constant.
960         (modb-legacy-suppoted-flag-p): New internal function.
961         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
962         (elmo-msgdb-unset-flag): Ditto.
963
964 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
965
966         * elmo.el (elmo-make-folder): Remove text properties for prefix.
967
968         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
969         from msgdb.
970
971 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
972
973         * elmo-multi.el (elmo-folder-count-flags): Changed return value
974         (follow the API change).
975
976         * elmo-filter.el (elmo-folder-count-flags): Ditto.
977
978 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
979
980         * modb-standard.el (modb-standard-digest-flags): Abolish.
981         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
982
983         * elmo-vars.el (elmo-digest-flags): New variable.
984         (elmo-preserved-flags): Moved from elmo-flag.el.
985
986         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
987         (elmo-imap4-flag-to-imap-criteria): Ditto.
988         (elmo-imap4-folder-list-flagged): Use it.
989
990         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
991
992         * elmo.el (elmo-folder-count-flags): Changed return value.
993
994         * elmo-flag.el (elmo-preserved-flags): New variable.
995         (elmo-get-global-flags): Use it.
996
997         * modb-standard.el (modb-standard-digest-flags): New variable.
998         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
999         Changed behavior of `any'.
1000
1001         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1002         which are defined the Internet draft
1003         (draft-melnikov-imap-keywords-03.txt).
1004         (elmo-imap4-flags-to-imap): New function.
1005         (elmo-folder-append-buffer): Use it.
1006
1007         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1008         in the docstring.
1009
1010         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1011         avoid the bug of Emacs 21.3.
1012
1013 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
1014
1015         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1016         function find-coding-system does not exist.
1017
1018 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1019
1020         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1021         parsing.
1022
1023 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1024
1025         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1026         response codes.
1027
1028 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1029
1030         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1031         (elmo-network-close-session): Follow the changes in
1032         `elmo-pop3-read-response'.
1033         (elmo-pop3-auth-user): Ditto.
1034         (elmo-pop3-auth-apop): Ditto.
1035         (elmo-network-initialize-session): Ditto.
1036         (elmo-network-authenticate-session): Ditto.
1037         (elmo-network-setup-session): Ditto.
1038         (elmo-folder-status): Ditto.
1039         (elmo-message-fetch-plugged): Ditto.
1040         (elmo-pop3-delete-msg): Ditto.
1041
1042 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1043
1044         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1045         on failure.
1046
1047 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1048
1049         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1050         style.
1051         (elmo-bind-directory): Ditto.
1052
1053 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1054
1055         * elmo.el (elmo-folder-append-messages): Note on return value.
1056         * elmo-archive.el (elmo-folder-append-messages): Don't return
1057         message numbers which could not be appended.
1058
1059 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1060
1061         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1062
1063 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1064
1065         * elmo-version.el (elmo-version): Up to 2.11.30.
1066
1067 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1068
1069         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1070         `mask'.
1071
1072         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1073
1074         * elmo-multi.el (elmo-folder-synchronize): Likewise.
1075         (elmo-multi-split-numbers): Add elmo-folder object into each
1076         element of return value at first.
1077         (elmo-folder-delete-messages): Follow the above change.
1078         (elmo-folder-detach-messages): Ditto.
1079
1080         * elmo-filter.el (elmo-folder-synchronize): Minimize message
1081         number which is synchronized in target folder.
1082
1083 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1084
1085         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1086         Change default value to symbol `all'.
1087         (elmo-map-message-fetch): Change condition to update overview
1088         follow the above.
1089
1090 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1091
1092         * elmo-shimbun.el (elmo-map-message-fetch): Change default
1093         behavior to update overview.
1094         (elmo-shimbun-update-overview-folder-list): Note it.
1095
1096 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1097
1098         * modb-standard.el (modb-standard-message-entity): Avoid infinite
1099         recursive call.
1100
1101 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1102
1103         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
1104         buffer-disable-undo, it is unnecessary.
1105         (elmo-spam-register-good-messages): Ditto.
1106
1107         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1108         Ditto.
1109
1110         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
1111
1112 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1113
1114         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
1115         (elmo-set-work-buf): Use set-buffer-multibyte instead of
1116         elmo-set-buffer-multibyte.
1117         (elmo-object-load): Ditto.
1118         (elmo-save-buffer): Ditto.
1119         (elmo-delete-char): Ditto.
1120         (elmo-file-field-primitive-condition-match): Ditto.
1121         (elmo-mime-string): Ditto.
1122
1123         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
1124         (elmo-archive-field-condition-match): Ditto.
1125
1126         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
1127
1128         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
1129
1130         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
1131         (elmo-nntp-msgdb-create-message): Ditto.
1132
1133         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1134
1135         * elmo.el (elmo-message-match-condition): Ditto.
1136         (elmo-message-match-condition): Ditto.
1137
1138         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1139         Ditto.
1140
1141         * elmo-version.el (elmo-version): Up to 2.11.29.
1142
1143         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
1144         (elsp-header): New backend.
1145
1146         * elmo-util.el (elmo-decoded-field-body): New function.
1147
1148 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1149
1150         * elmo-version.el (elmo-version): Up to 2.11.28.
1151
1152 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1153
1154         * elmo-filter.el: Rewrite.
1155
1156         * elmo-version.el (elmo-version): Up to 2.11.27.
1157
1158 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
1159
1160         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
1161         msgdb path for the localdir folder with absolute path.
1162
1163         * utf7.el: Synch up with latest gnus/utf7.el;
1164         Modified for latest Emacs.
1165
1166 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1167
1168         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
1169         shimbun backend couldn't open.
1170
1171 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
1172
1173         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
1174         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
1175         when a destination folder is a filter folder.
1176
1177 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1178
1179         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
1180         (elmo-generic-folder-append-messages): Call elmo-message-flags
1181         with argument `msgid'.
1182
1183         * elmo-split.el (elmo-split-subr): Ditto.
1184
1185         * elmo-pipe.el (elmo-message-flags): Follow the API change.
1186
1187         * elmo-multi.el (elmo-message-flags): Ditto.
1188
1189 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1190
1191         * elmo.el (elmo-folder): Add new slot `flag-table'.
1192         (elmo-folder-flag-table): New API.
1193         (elmo-folder-close-flag-table): Ditto.
1194         (elmo-folder-preserve-flags): New function.
1195         (elmo-generic-folder-append-messages): Use
1196         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
1197         Flag of a non-registered message, it sets to nil.
1198         Does not set flag to flag-table.
1199
1200         * elmo-maildir.el (elmo-folder-append-buffer): Use
1201         `elmo-folder-preserve-flags'.
1202         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1203         `elmo-folder-close-flag-table'.
1204
1205         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
1206         (elmo-archive-folder-append-buffer): Use
1207         `elmo-folder-preserve-flags'.
1208
1209         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
1210
1211         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
1212
1213         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1214         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1215         `elmo-folder-close-flag-table'.
1216
1217         * elmo-version.el (elmo-version): Up to 2.11.26.
1218
1219 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1220
1221         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
1222
1223         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
1224         md5's 4th and 5th argument (non-existent in flim one).
1225
1226 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1227
1228         * elmo-split.el (elmo-split-subr): Flag of a non-registered
1229         message, It sets to nil.
1230
1231 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1232
1233         * elmo.el (elmo-folder-list-messages): Merge lists only if both
1234         list is non-nil.
1235
1236 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
1237
1238         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
1239
1240         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
1241
1242         * elmo-util.el (elmo-uniq-sorted-list): New function.
1243         (elmo-make-number-list): Ditto.
1244         (elmo-number-set-to-number-list): Use elmo-make-number-list
1245         and don't use nreverse.
1246
1247 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1248
1249         * elmo-version.el (elmo-version): Up to 2.11.25.
1250
1251 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1252
1253         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
1254         field not exists in message, Use md5 message digest of header.
1255
1256 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1257
1258         * elmo.el (elmo-folder-append-buffer): Add note on return value.
1259         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
1260         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1261         * elmo-split.el (elmo-split-subr): Check return value of
1262         elmo-folder-append-buffer.
1263
1264         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
1265         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1266
1267         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
1268         message-id.
1269
1270 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
1271
1272         * elmo-split.el (elmo-split-subr): Append message with flag.
1273
1274         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
1275         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
1276         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1277
1278 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
1279
1280         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
1281         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
1282         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
1283
1284 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
1285
1286         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
1287         with a function call of `process-buffer'.  All callers are updated.
1288         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
1289         Remove redundant `set-buffer' in a while loop.
1290
1291 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
1292
1293         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
1294         calls.
1295
1296 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1297
1298         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
1299         elsp-spamfilter-register-buffer-internal with current buffer.
1300         (elmo-spam-register-spam-buffer): Ditto.
1301         (elmo-spam-register-good-buffer): Ditto.
1302
1303 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1304
1305         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
1306         if it is not contained in the response(A workaround for courier-imap).
1307
1308 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1309
1310         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
1311         parenthesis.
1312
1313 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1314
1315         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
1316         range.
1317
1318 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1319
1320         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
1321         of nconc.
1322
1323         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
1324         argument handler.
1325         (elmo-msgdb-message-match-condition): Follow the change above.
1326
1327 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1328
1329         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
1330         folder name.
1331
1332 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1333
1334         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
1335
1336 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1337
1338         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
1339
1340 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1341
1342         * elmo-file.el (elmo-file-find): Fixed the problem when file is
1343         not found.
1344
1345 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
1346
1347         * elmo-file.el (elmo-file-find): Use expand-file-name for return
1348         value.
1349         (elmo-file-command-argument): Undo last change for cygwin.
1350         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
1351         Don't return nil.
1352         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
1353
1354 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1355
1356         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
1357         value returned from elmo-file-find is nil.
1358
1359 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
1360
1361         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
1362         to elmo-vars.el.
1363
1364         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
1365         instead of insert-file-contents-as-binary.
1366         (elmo-message-set-field): New generic function.
1367
1368         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
1369         behavior change on `split-string'.
1370
1371         * elmo-file.el (elmo-file-find): New function.
1372         (elmo-file-command): New user option.
1373         (elmo-file-command-argument): Ditto.
1374         (elmo-file-fetch-max-size): Ditto.
1375         (elmo-file-detect-format): New function.
1376         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
1377         Use elmo-file-detect-format.
1378         (elmo-map-folder-list-message-locations): Don't treat directories.
1379
1380 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1381
1382         * elmo-util.el (elmo-string-partial-p): Removed unused function.
1383         (elmo-passwd-alist-clear): Shred password before clear.
1384         (elmo-remove-passwd): Remove all mached pair.
1385
1386 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1387
1388         * elmo.el (elmo-folder-synchronize): Fix description of the return
1389         value.
1390
1391 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1392
1393         * elmo.el (elmo-message-fetch-bodystructure): New method.
1394         (elmo-message-fetch-bodystructure): Define default.
1395
1396         * elmo-imap4.el (mime-imap-location-bodystructure): Call
1397         elmo-message-fetch-bodystructure.
1398         (elmo-message-fetch-bodystructure): Define.
1399
1400         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
1401
1402 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
1403
1404         * elmo-filter.el (elmo-message-folder): Define.
1405
1406 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
1407
1408         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
1409         elmo-delete-cr-buffer.
1410
1411         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
1412
1413         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
1414
1415         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
1416
1417         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
1418         type seems to be a text.
1419
1420 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
1421
1422         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
1423         (elmo-spam-register-good-buffer): Ditto.
1424         (elmo-spam-spamassassin-register-messages): Ditto.
1425
1426         * elmo-util.el (elmo-string-member-ignore-case): Define with
1427         static-cond.
1428
1429 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
1430
1431         * elmo.el (elmo-folder-type): Undo last change.
1432
1433         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
1434
1435         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
1436         warnings.
1437
1438         * elmo-file.el: New file.
1439         
1440         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
1441
1442         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
1443         variable.
1444         (elmo-spam-spamassassin-register-messages): New inline function.
1445         (elmo-spam-register-spam-messages): Define.
1446         (elmo-spam-register-good-messages): Ditto.
1447
1448         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
1449         Fixed typo.
1450
1451         * elmo.el (toplevel): Added autoload setting for
1452         `elmo-get-global-flags'.
1453         (elmo-message-has-global-flag-p): New function.
1454         (elmo-message-set-global-flags): Ditto.
1455         (elmo-folder-type): Improvement for name: format.
1456
1457         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
1458         availability of keyword flags.
1459         (elmo-imap4-folder-list-flagged): Treat keyword flags.
1460         (elmo-folder-list-flagged-plugged): Renamed from
1461         elmo-folder-list-flagged-unplugged.
1462         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
1463         accept any flag as keyword flag.
1464         (elmo-folder-set-flag-plugged): Accept keyword flags.
1465         (toplevel): Added autoload setting for `elmo-get-global-flags'.
1466
1467         * elmo-flag.el (elmo-get-global-flags): New function.
1468
1469         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
1470         folders.
1471
1472         * elmo-version.el (elmo-version): Up to 2.11.24.
1473
1474 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1475
1476         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
1477         elmo-multiple-field-body instead of std11-field-body to check all
1478         headers.
1479
1480 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1481
1482         * elmo-util.el (elmo-cache-expire): Completion require match "age"
1483         or "size".
1484
1485 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1486
1487         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
1488         unintern is unbound.
1489
1490 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1491
1492         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1493         Protect from infinite loop.
1494
1495 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1496
1497         * elsp-bogofilter.el
1498         (elmo-spam-bogofilter-max-messages-per-process): New user option.
1499         (elmo-spam-bogofilter-register-messages): New internal function.
1500         (elmo-spam-register-spam-messages): Define.
1501         (elmo-spam-register-good-messages): Ditto.
1502
1503 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1504
1505         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
1506         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
1507         (elmo-spam-bogofilter-call): Fixed the last change.
1508         (elmo-spam-bogofilter-arguments): Ditto.
1509
1510         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
1511         Follow the options change of latest bogofilter.
1512
1513         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
1514         (elmo-spam-bogofilter-good-switch): Ditto.
1515         (elmo-spam-bogofilter-arguments-alist): New user option.
1516         (elmo-spam-bogofilter-debug): Ditto.
1517         (elmo-spam-bogofilter-call): Renamed from
1518         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
1519         is non-nil, insert output in buffer for debug.
1520         (elmo-spam-bogofilter-arguments): New macro.
1521         (elmo-spam-buffer-spam-p): Use it.
1522         (elsp-bogofilter-register-buffer): Ditto.
1523
1524 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1525
1526         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
1527         regexp.
1528
1529 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1530
1531         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
1532         value as "ruby".
1533         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
1534         (elmo-spam-bsfilter-program): Set default value as full path for
1535         `bsfilter'.
1536         (elmo-spam-bsfilter-debug): New user option.
1537         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
1538         non-nil, insert output in buffer for debug. Fix treating of
1539         argument.
1540
1541 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1542
1543         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
1544         `elmo-maildir-flag-specs' element instead of one.
1545         (elmo-map-folder-unset-flag): Ditto.
1546         (Reported by Ken Makimura <macky@astem.or.jp>)
1547
1548         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
1549         (elmo-folder-unset-flag-plugged): Ditto.
1550
1551 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1552
1553         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
1554         to `reads' slot only if `in-msgdb' is nil.
1555
1556 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1557
1558         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
1559         and complement argument list.
1560
1561 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1562
1563         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
1564         instead of elmo-folder-list-flagged.
1565
1566 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1567
1568         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
1569
1570         * elsp-bsfilter.el: New file.
1571
1572         * elmo-pipe.el (elmo-folder-list-unreads,
1573         elmo-folder-list-answereds,
1574         elmo-folder-list-importants,
1575         elmo-folder-flag-as-important,
1576         elmo-folder-unflag-important,
1577         elmo-folder-flag-as-read,
1578         elmo-folder-unflag-read,
1579         elmo-folder-flag-as-answered,
1580         elmo-folder-unflag-answered): Remove.
1581         (elmo-folder-set-flag): Define.
1582         (elmo-folder-unset-flag): Ditto.
1583
1584         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
1585         (elmo-folder-set-flag): Define.
1586         (elmo-folder-unset-flag): Ditto.
1587         (elmo-folder-list-unreads): Remove.
1588         (elmo-folder-list-flagged): Define.
1589
1590         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
1591         (elmo-folder-list-unreads,
1592         elmo-folder-list-importants,
1593         elmo-folder-list-answereds,
1594         elmo-folder-list-unreads-plugged,
1595         elmo-folder-list-importants-plugged,
1596         elmo-folder-list-answereds-plugged): Remove.
1597         (elmo-folder-list-flagged-plugged): New method.
1598         (elmo-folder-unflag-important,
1599         elmo-folder-flag-as-important,
1600         elmo-folder-unflag-read,
1601         elmo-folder-flag-as-read,
1602         elmo-folder-unflag-answered,
1603         elmo-folder-flag-as-answered,
1604         elmo-folder-flag-as-read-unplugged,
1605         elmo-folder-unflag-read-unplugged,
1606         elmo-folder-flag-as-important-unplugged,
1607         elmo-folder-unflag-important-unplugged,
1608         elmo-folder-flag-as-answered-unplugged,
1609         elmo-folder-unflag-answered-unplugged): Remove.
1610         (elmo-folder-set-flag): Define.
1611         (elmo-folder-unset-flag): Ditto.
1612         (elmo-folder-set-flag-unplugged): Ditto.
1613         (elmo-folder-unset-flag-unplugged): Ditto.
1614
1615         * elmo-multi.el (elmo-folder-list-unreads,
1616         elmo-folder-list-answereds,
1617         elmo-folder-list-importants,
1618         elmo-folder-flag-as-important,
1619         elmo-folder-unflag-important,
1620         elmo-folder-flag-as-read,
1621         elmo-folder-unflag-read,
1622         elmo-folder-flag-as-answered,
1623         elmo-folder-unflag-answered): Remove.
1624         (elmo-folder-set-flag): Define.
1625         (elmo-folder-unset-flag): Ditto.
1626
1627         * elmo-map.el (elmo-map-folder-unflag-important,
1628         elmo-map-folder-flag-as-important,
1629         elmo-map-folder-unflag-read,
1630         elmo-map-folder-flag-as-read,
1631         elmo-map-folder-unflag-answered,
1632         elmo-map-folder-flag-as-answered): Remove.
1633         (elmo-map-folder-set-flag): New method.
1634         (elmo-map-folder-unset-flag): Ditto.
1635         (elmo-map-folder-list-unreads,
1636         elmo-map-folder-list-importants,
1637         elmo-map-folder-list-answereds): Remove.
1638         (elmo-folder-list-flagged-internal): Define.
1639         (elmo-map-folder-list-flagged): New method.
1640
1641         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
1642         (elmo-map-folder-list-unreads,
1643         elmo-map-folder-list-importants,
1644         elmo-map-folder-list-flagged): Remove.
1645         (elmo-map-folder-list-flagged): Define.
1646         (elmo-map-folder-flag-as-important,
1647         elmo-map-folder-unflag-important,
1648         elmo-map-folder-flag-as-read,
1649         elmo-map-folder-unflag-read,
1650         elmo-map-folder-flag-as-answered,
1651         elmo-map-folder-unflag-answered): Remove.
1652         (elmo-maildir-set-mark-messages): New internal function.
1653         (elmo-map-folder-set-flag): Define.
1654         (elmo-map-folder-unset-flag): Ditto.
1655
1656         * elmo.el (toplevel): Added autoload setting for
1657         `elmo-folder-list-global-flag-messages'.
1658         (elmo-folder-list-unreads,
1659         elmo-folder-list-importants,
1660         elmo-folder-list-answereds): Remove.
1661         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
1662         Return a list whitch merged with messages have global flag.
1663         (elmo-folder-list-flagged-internal): New method.
1664         (elmo-folder-unflag-important,
1665         elmo-folder-flag-as-important,
1666         elmo-folder-unflag-read,
1667         elmo-folder-flag-as-read,
1668         elmo-folder-unflag-answered,
1669         elmo-folder-flag-as-answered): Remove.
1670         (elmo-folder-set-flag): New method.
1671         (elmo-folder-unset-flag): Ditto.
1672         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
1673         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
1674
1675         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
1676         (elmo-folder-list-unreads-plugged,
1677         elmo-folder-list-importants-plugged,
1678         elmo-folder-list-answereds-plugged,
1679         elmo-folder-list-flagged-unplugged,
1680         elmo-folder-unflag-important-plugged,
1681         elmo-folder-flag-as-important-plugged,
1682         elmo-folder-unflag-read-plugged,
1683         elmo-folder-flag-as-read-plugged,
1684         elmo-folder-unflag-answered-plugged,
1685         elmo-folder-flag-as-answered-plugged): Remove.
1686         (elmo-folder-set-flag-plugged,
1687         elmo-folder-unset-flag-plugged): Define.
1688
1689         * elmo-flag.el (elmo-folder-initialize): Register to
1690         `elmo-global-flag-list' if flag is not global.
1691         (elmo-folder-append-messages): Set flag to source messages.
1692
1693         * elmo-filter.el (elmo-filter-folder-list-unreads,
1694         elmo-folder-list-unreads,
1695         elmo-filter-folder-list-importants,
1696         elmo-folder-list-importants,
1697         elmo-folder-flag-as-read,
1698         elmo-folder-unflag-read,
1699         elmo-folder-flag-as-important,
1700         elmo-folder-unflag-important,
1701         elmo-folder-flag-as-answered,
1702         elmo-folder-unflag-answered): Remove.
1703         (elmo-folder-set-flag): Define.
1704         (elmo-folder-unset-flag): Ditto.
1705
1706         * elmo-dop.el (elmo-folder-flag-as-read-dop,
1707         elmo-folder-unflag-read-dop,
1708         elmo-folder-flag-as-important-dop,
1709         elmo-folder-unflag-important-dop,
1710         elmo-folder-flag-as-answered-dop,
1711         elmo-folder-unflag-answered-dop): Remove.
1712         (elmo-folder-set-flag-dop,
1713         elmo-folder-unset-flag-dop,
1714         elmo-folder-set-important-delayed,
1715         elmo-folder-unset-important-delayed,
1716         elmo-folder-set-read-delayed,
1717         elmo-folder-unset-read-delayed,
1718         elmo-folder-set-answered-delayed,
1719         elmo-folder-unset-answered-delayed): New function.
1720         (elmo-dop-queue-merge-method-list): Follow the above chagned.
1721         (elmo-dop-queue-method-name-alist): Ditto.
1722
1723         * elmo-version.el (elmo-version): Up to 2.11.23.
1724
1725 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
1726
1727         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
1728
1729         * elsp-sa.el: New file.
1730
1731 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1732
1733         * modb-standard.el (modb-standard-message-entity): New function.
1734         (elmo-msgdb-message-entity): Use it.
1735
1736 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1737
1738         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
1739         behavior when one-level is nil.
1740
1741         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
1742
1743         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
1744
1745 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1746
1747         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
1748         get max number.
1749         (elmo-generic-folder-diff): Ditto.
1750
1751         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
1752         (elmo-folder-update-number): Ditto.
1753
1754         * elmo-dop.el (elmo-folder-status-dop): Ditto.
1755         (elmo-folder-next-message-number-dop): Ditto.
1756
1757 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1758
1759         * elmo-filter.el (elmo-folder-msgdb-create): Use
1760         `elmo-message-entity' and `elmo-message-flags' instead of
1761         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
1762
1763 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1764
1765         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
1766         `if-exists'.
1767
1768 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1769
1770         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
1771
1772         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
1773
1774         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
1775
1776 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1777
1778         * elmo-version.el (elmo-version): Up to 2.11.22.
1779
1780 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1781
1782         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
1783
1784 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1785
1786         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
1787         if the message dose not exist.
1788
1789 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
1790
1791         * elmo-version.el (elmo-version): Up to 2.11.21.
1792
1793 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1794
1795         * modb-standard.el (toplevel): Don't require mime.
1796
1797 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1798
1799         * elsp-bogofilter.el (toplevel): Don't require path-util.
1800         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
1801         (elmo-spam-bogofilter-header): Abolish.
1802         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
1803         (elmo-spam-bogofilter-args): New user option.
1804         (elsp-bogofilter-call-bogofilter): New internal function.
1805         (elmo-spam-buffer-spam-p): Use it.
1806         (elsp-bogofilter-register-buffer): Renamed from
1807         `elmo-spam-bogofilter-register-buffer';
1808         Use `elsp-bogofilter-call-bogofilter'.
1809         (elmo-spam-register-spam-buffer): Follow the change above.
1810         (elmo-spam-register-good-buffer): Ditto.
1811
1812 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1813
1814         * modb-standard.el (elmo-msgdb-append-entity): If entity or
1815         message-id is nil do nothing.
1816
1817 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
1818
1819         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
1820         Revival.
1821         (elmo-imap4-session): Removed use-flag slot.
1822         (elmo-imap4-session-select-mailbox): Undo last change.
1823         (elmo-folder-use-flag-p): Use
1824         elmo-imap4-disuse-server-flag-mailbox-regexp.
1825
1826 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
1827
1828         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
1829         (elmo-imap4-session-select-mailbox): Set it up.
1830         (elmo-folder-use-flag-p): Return value of use-flag slot.
1831
1832 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1833
1834         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
1835         message-id is nil.
1836         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
1837
1838         * modb-entity.el (elmo-message-entity-handler): Likewise.
1839
1840 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1841
1842         * elmo.el (toplevel): Remove setting of autoloding for
1843         elmo-global-flag-initialize.
1844         (elmo-init): Don't call elmo-global-flag-initialize.
1845         (toplevel): Added autoload setting for elmo-global-mark-migrate.
1846
1847         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
1848         (elmo-global-mark-migrate): Don't call it.
1849         (elmo-global-mark-upgrade): Ditto.
1850
1851 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
1852
1853         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
1854         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
1855
1856         * elmo-vars.el (elmo-init-hook): New user option.
1857
1858         * elmo.el (elmo-init): Run the elmo-init-hook.
1859
1860         * elmo-flag.el (elmo-global-mark-migrate): New function.
1861
1862 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1863
1864         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
1865         Undo last change (move to elmo-msgdb-unset-flag).
1866         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
1867         flag is unset.
1868
1869 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
1870
1871         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
1872         read flag is set.
1873         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
1874         (elmo-msgdb-unset-flag): Ditto.
1875
1876 2003-11-05  Andreas Fuchs <asf@boinkor.net>
1877
1878         * elmo-split.el (elmo-split): Return split message count.
1879
1880 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1881
1882         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
1883         is nil.
1884
1885 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1886
1887         * elmo.el (elmo-folder-unflag-important): Call
1888         `elmo-global-flag-detach' with 4th argument delete-if-none that is
1889         a symbol `always'.
1890
1891         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
1892         before unset flag.
1893         (elmo-global-flag-detach): Delete the message from flag folder, if
1894         `delete-if-none' is a symbol `always'.
1895
1896 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1897
1898         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
1899         `elmo-spam-spamfilter-decode-buffer'.
1900         (elsp-spamfilter-register-buffer-internal): New internal function.
1901         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
1902         (elmo-spam-register-spam-buffer): Ditto.
1903         (elmo-spam-register-good-buffer): Ditto.
1904
1905         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
1906         change.
1907         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
1908         (elmo-spam-register-spam-buffer): Follow the API change.
1909         (elmo-spam-register-good-buffer): Ditto.
1910
1911         * elmo-split.el (toplevel): Require elmo-spam when copmile.
1912         (elmo-split-spam-p): Added argument plist; Call
1913         `elmo-spam-buffer-spam-p' with new argument register.
1914
1915         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
1916         `register'.
1917         (elmo-spam-message-spam-p): Ditto.
1918         (elmo-spam-register-spam-buffer): Added optional argument
1919         `restore'.
1920         (elmo-spam-register-good-buffer): Ditto.
1921         (elmo-spam-register-spam-messages): Ditto.
1922         (elmo-spam-register-good-messages): Ditto.
1923
1924 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1925
1926         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
1927         register into good corpus.
1928         (elmo-spam-register-good-buffer): Fixed to register into bad
1929         corpus.
1930
1931 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1932
1933         * elmo-version.el (elmo-version): Up to 2.11.20.
1934
1935         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
1936         change.
1937
1938         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
1939         flag without depending on \Recent flag.
1940
1941 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1942
1943         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
1944         (elmo-spam-modified-p): Defined.
1945         (elmo-spam-save-status): Set `modified' slot to nil.
1946         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
1947         (elmo-spam-register-good-buffer): Ditto.
1948
1949         * elmo-spam.el (elmo-spam-modified-p): New API.
1950
1951 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1952
1953         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
1954         duplicate definition.
1955
1956         * elmo-util.el (elmo-unfold-field-body): New function.
1957         (elmo-msgdb-get-message-id-from-buffer): Use it.
1958
1959         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1960         Fixed the last change; Use elmo-unfold-field-body.
1961
1962 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1963
1964         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1965         Unfold date value.
1966
1967 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1968
1969         * elmo-spam.el (elmo-spam-save-status): New API.
1970
1971         * elsp-spamfilter.el: New file.
1972
1973 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1974
1975         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
1976
1977 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1978
1979         * elmo-split.el (elmo-split-spam-p): New function.
1980
1981         * elmo-spam.el: New file.
1982
1983         * elsp-bogofilter.el: Ditto.
1984
1985 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
1986
1987         * elmo.el (elmo-folder-next-message-number): New API.
1988         (elmo-folder-next-message-number): Define.
1989         (elmo-message-field): Don't check folder length.
1990
1991         * elmo-net.el (elmo-folder-next-message-number): Define.
1992         (elmo-folder-next-message-number-unplugged): Define.
1993
1994         * elmo-map.el (elmo-folder-next-message-number): Define.
1995         (elmo-folder-delete-messages): Clear hash value.
1996
1997         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
1998
1999         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2000         (elmo-folder-delete-messages-dop-delayed): Always return t.
2001
2002         * elmo-version.el (elmo-version): Up to 2.11.19.
2003
2004 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2005
2006         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2007         change.
2008
2009         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2010         identical cons cell into the mark-alist and the hash table.
2011
2012 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
2013
2014         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2015         elmo-folder-list-messages with argument `visible-only' as t.
2016
2017         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2018         (elmo-folder-msgdb-create): Check the target folder.
2019
2020 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
2021
2022         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2023         `permanentflag' instead of `flags'.
2024         (elmo-folder-open): Ditto.
2025         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2026         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2027         (elmo-folder-use-flag-p): Always return t.
2028         (elmo-imap4-session-select-mailbox): Use value of `flags' if
2029         `permanentflags' does not exist.
2030         (elmo-folder-open): Ditto.
2031
2032 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
2033
2034         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2035         is nil.
2036         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2037
2038         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2039         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2040         response.
2041         (elmo-folder-open): Ditto.
2042         (elmo-imap4-set-flag): Send store flag command only when the `flags'
2043         slot of the session includes the flag.
2044         (elmo-imap4-session-flag-available-p): New function.
2045         (elmo-imap4-folder-list-flagged): Ditto.
2046         (elmo-folder-list-unreads-plugged): Use it.
2047         (elmo-folder-list-importants-plugged): Ditto.
2048         (elmo-folder-list-answereds-plugged): Ditto.
2049         (elmo-imap4-search-internal-primitive): Ditto.
2050         (elmo-imap4-folder-list-any-plugged,
2051         elmo-imap4-folder-list-digest-plugged): Abolish.
2052
2053         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2054         if numbers is nil.
2055
2056 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2057
2058         * elmo-util.el (toplevel): Require emu for char-list-to-string.
2059
2060 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2061
2062         * elmo-util.el (elmo-get-hash-val): Simplify.
2063         (elmo-set-hash-val): Rewrite.
2064
2065 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2066
2067         * elmo.el (elmo-folder-list-messages): Append killed messages into
2068         result if `visible-only' is nil and `in-msgdb' is non-nil.
2069
2070         * elmo-util.el (elmo-uniq-list): Added optional argument
2071         `delete-function'.
2072
2073         * modb.el (elmo-msgdb-flag-count): New API.
2074
2075         * modb-standard.el (modb-standard): Added slot flag-count.
2076         (modb-standard-countup-flags): New function.
2077         (modb-standard-load-flag): Call it.
2078         (elmo-msgdb-append): Ditto.
2079         (elmo-msgdb-clear): Clear slot flag-count.
2080         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2081         (elmo-msgdb-unset-flag): Treat `all' flag and call
2082         modb-standard-countup-flags.
2083         (elmo-msgdb-flag-count): Define.
2084         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2085         (elmo-msgdb-delete-messages): Ditto.
2086
2087         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2088         (elmo-msgdb-flag-count): Define.
2089
2090         * elmo.el (elmo-folder-list-messages): Undo last change.
2091         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
2092         (elmo-folder-kill-messages): Unset all flags to numbers.
2093
2094         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
2095         elmo-folder-kill-messages.
2096
2097         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
2098         (elmo-nntp-folder-delete-messages): Abolish.
2099
2100         * elmo-version.el (elmo-version): Up to 2.11.18.
2101
2102 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2103
2104         * elmo.el (elmo-folder-kill-messages-before): Abolish.
2105         (elmo-folder-kill-messages-range): New function.
2106         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
2107         instead of elmo-folder-kill-messages-before.
2108
2109 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
2110
2111         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
2112         elmo-imap4-current-msgdb to decide entity handler.
2113
2114 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2115
2116         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
2117
2118         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
2119         inline function.
2120         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
2121         (elmo-msgdb-overview-entity-set-number,
2122         elmo-msgdb-overview-entity-get-references,
2123         elmo-msgdb-overview-entity-set-references,
2124         elmo-msgdb-overview-entity-get-from-no-decode,
2125         elmo-msgdb-overview-entity-get-from,
2126         elmo-msgdb-overview-entity-set-from,
2127         elmo-msgdb-overview-entity-get-subject,
2128         elmo-msgdb-overview-entity-get-subject-no-decode,
2129         elmo-msgdb-overview-entity-set-subject,
2130         elmo-msgdb-overview-entity-get-date,
2131         elmo-msgdb-overview-entity-set-date,
2132         elmo-msgdb-overview-entity-get-to,
2133         elmo-msgdb-overview-entity-get-cc,
2134         elmo-msgdb-overview-entity-get-size,
2135         elmo-msgdb-overview-entity-set-size,
2136         elmo-msgdb-overview-entity-get-extra,
2137         elmo-msgdb-overview-entity-set-extra,
2138         elmo-msgdb-overview-entity-get-extra-field,
2139         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
2140         (elmo-msgdb-make-index): Use
2141         `elmo-msgdb-overview-entity-get-number-internal'.
2142         (elmo-msgdb-clear-index): Ditto.
2143         (elmo-msgdb-append-entity): Ditto;
2144         Use `elmo-msgdb-overview-entity-get-id-internal'.
2145
2146         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
2147         elmo-msgdb-overview-entity-set-number,
2148         elmo-msgdb-overview-entity-get-references,
2149         elmo-msgdb-overview-entity-set-references,
2150         elmo-msgdb-overview-entity-get-from-no-decode,
2151         elmo-msgdb-overview-entity-get-from,
2152         elmo-msgdb-overview-entity-set-from,
2153         elmo-msgdb-overview-entity-get-subject,
2154         elmo-msgdb-overview-entity-get-subject-no-decode,
2155         elmo-msgdb-overview-entity-set-subject,
2156         elmo-msgdb-overview-entity-get-date,
2157         elmo-msgdb-overview-entity-set-date,
2158         elmo-msgdb-overview-entity-get-to,
2159         elmo-msgdb-overview-entity-get-cc,
2160         elmo-msgdb-overview-entity-get-size,
2161         elmo-msgdb-overview-entity-set-size,
2162         elmo-msgdb-overview-entity-get-extra,
2163         elmo-msgdb-overview-entity-set-extra,
2164         elmo-msgdb-overview-entity-get-extra-field,
2165         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
2166         and rewrote for backward compatibility.
2167
2168 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2169
2170         * elmo.el (elmo-message-entity-number,
2171         elmo-message-entity-set-number,
2172         elmo-message-entity-field,
2173         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
2174
2175         * elmo-msgdb.el (elmo-message-entity-number,
2176         elmo-message-entity-set-number,
2177         elmo-message-entity-field,
2178         elmo-message-entity-set-field): Moved from elmo.el.
2179
2180 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2181
2182         * elmo.el (toplevel): Changed definition orders.
2183
2184 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2185
2186         * modb.el (elmo-msgdb-search): New API .
2187         (elmo-msgdb-match-condition): Ditto.
2188
2189         * modb-standard.el (elmo-msgdb-search): Define.
2190
2191         * modb-legacy.el (elmo-msgdb-search): Ditto.
2192
2193         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
2194         from elmo-msgdb-match-condition-internal.
2195
2196         * elmo.el (elmo-folder-search-fast): Abolish.
2197         (elmo-folder-search): Use elmo-msgdb-search and
2198         elmo-with-progress-display.
2199
2200         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
2201         as msgdb API.
2202
2203         * elmo.el (elmo-folder): Remove slot message-modified and
2204         flag-modified.
2205         (elmo-folder-set-message-modified): Abolish.
2206         (elmo-generic-folder-commit): Follow the change above.
2207         (elmo-folder-synchronize): Ditto.
2208
2209         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
2210
2211         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2212
2213         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
2214
2215 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2216
2217         * modb-standard.el (modb-standard-make-message-entity,
2218         elmo-msgdb-make-message-entity,
2219         elmo-msgdb-create-message-entity-from-buffer,
2220         elmo-msgdb-message-entity-number,
2221         elmo-msgdb-message-entity-set-number,
2222         elmo-msgdb-message-entity-field,
2223         elmo-msgdb-message-entity-set-field,
2224         elmo-msgdb-copy-message-entity,
2225         elmo-msgdb-match-condition-internal): Remove.
2226
2227         * modb-entity.el: New file (again).
2228
2229         * modb.el (toplevel): Require modb-entity.
2230         (elmo-msgdb-message-entity-handler): New method.
2231
2232         * modb-standard.el (modb-standard-entity-id): Use
2233         elmo-message-entity-handler.
2234         (modb-standard-load-entity): Ditto.
2235         (elmo-msgdb-append-entity): Ditto.
2236         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2237
2238         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
2239         elmo-msgdb-decoded-cache-hashtb,
2240         (modb-legacy-make-message-entity,
2241         elmo-msgdb-make-message-entity,
2242         elmo-msgdb-create-message-entity-from-buffer,
2243         elmo-msgdb-message-entity-number,
2244         elmo-msgdb-message-entity-set-number,
2245         elmo-msgdb-message-entity-field,
2246         elmo-msgdb-message-entity-set-field,
2247         elmo-msgdb-copy-message-entity,
2248         elmo-msgdb-match-condition-internal,
2249         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
2250
2251         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
2252         (elmo-message-entity-set-number): Ditto.
2253         (elmo-message-entity-field): Ditto.
2254         (elmo-message-entity-set-field): Ditto.
2255
2256         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
2257
2258         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2259
2260         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2261
2262         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
2263         (elmo-nntp-msgdb-create-message): Ditto.
2264
2265         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
2266         (elmo-folder-msgdb-create): Add unread flag.
2267
2268         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2269
2270         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
2271
2272         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
2273
2274         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2275
2276         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
2277         elmo-msgdb-messge-entity-handler.
2278         * elmo-version.el (elmo-version): Up to 2.11.17.
2279
2280 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2281
2282         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
2283         change.
2284
2285 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2286
2287         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
2288
2289         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
2290         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
2291         (elmo-msgdb-flag-table): Ditto.
2292         (elmo-msgdb-sort-by-date): Ditto.
2293
2294         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
2295
2296         * modb-standard.el (toplevel): Require mime.
2297         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
2298         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
2299         elmo-msgdb-message-entity-number.
2300         (elmo-msgdb-append-entity): Ditto.
2301         (elmo-msgdb-create-message-entity-from-file): Remove.
2302         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
2303         corresponds to the entity.
2304         (elmo-msgdb-message-entity-number): Do nothing currently.
2305         (elmo-msgdb-message-entity-field): Ditto.
2306         (elmo-msgdb-message-entity-set-field): Ditto.
2307         (elmo-msgdb-copy-message-entity): Ditto.
2308         (elmo-msgdb-match-condition-internal): Ditto.
2309
2310         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
2311         elmo-util.el.
2312         (elmo-msgdb-create-message-entity-from-file): Remove.
2313
2314         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
2315         modb-legacy.el.
2316         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
2317
2318         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
2319
2320 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2321
2322         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
2323         (elmo-msgdb-message-entity-field): Ditto.
2324         (elmo-msgdb-message-entity-number): Ditto.
2325
2326 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2327
2328         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
2329         Fixed how to set extra field into entity.
2330         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2331         symbol.
2332
2333         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
2334         Fixed how to set extra field into entity.
2335         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2336         symbol.
2337
2338 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2339
2340         * modb.el (elmo-message-entity-db): New function.
2341         (elmo-msgdb-make-message-entity): New API.
2342         (elmo-msgdb-message-entity-number): Ditto.
2343         (elmo-msgdb-message-entity-set-number): Ditto.
2344         (elmo-msgdb-message-entity-field): Ditto.
2345         (elmo-msgdb-message-entity-set-field): Ditto.
2346         (elmo-msgdb-copy-message-entity): Ditto.
2347         (elmo-msgdb-create-message-entity-from-file): Ditto.
2348         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2349         (elmo-msgdb-match-condition-internal): Ditto.
2350
2351         * modb-standard.el (modb-legacy): Require modb-legacy.
2352         (modb-standard-make-message-entity): New inline function.
2353         (elmo-msgdb-make-message-entity): Define.
2354         (elmo-msgdb-create-message-entity-from-file): Ditto.
2355         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2356         (elmo-msgdb-message-entity-field): Ditto.
2357         (elmo-msgdb-message-entity-set-field): Ditto.
2358         (elmo-msgdb-copy-message-entity): Ditto.
2359         (elmo-msgdb-match-condition-internal): Ditto.
2360
2361         * modb-legacy.el: Don't require modb-entity.
2362         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
2363         (elmo-msgdb-match-condition-primitive): Ditto.
2364         (elmo-msgdb-get-decoded-cache): Ditto.
2365         (elmo-msgdb-overview-entity-get-id): Ditto.
2366         (elmo-msgdb-overview-entity-get-number): Ditto.
2367         (elmo-msgdb-overview-entity-set-number): Ditto.
2368         (elmo-msgdb-overview-entity-get-references): Ditto.
2369         (elmo-msgdb-overview-entity-set-references): Ditto.
2370         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
2371         (elmo-msgdb-overview-entity-get-from): Ditto.
2372         (elmo-msgdb-overview-entity-set-from): Ditto.
2373         (elmo-msgdb-overview-entity-get-subject): Ditto.
2374         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
2375         (elmo-msgdb-overview-entity-set-subject): Ditto.
2376         (elmo-msgdb-overview-entity-get-date): Ditto.
2377         (elmo-msgdb-overview-entity-set-date): Ditto.
2378         (elmo-msgdb-overview-entity-get-to): Ditto.
2379         (elmo-msgdb-overview-entity-get-cc): Ditto.
2380         (elmo-msgdb-overview-entity-get-size): Ditto.
2381         (elmo-msgdb-overview-entity-set-size): Ditto.
2382         (elmo-msgdb-overview-entity-get-extra): Ditto.
2383         (elmo-msgdb-overview-entity-set-extra): Ditto.
2384         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
2385         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
2386         (elmo-msgdb-number-load): Ditto.
2387         (elmo-msgdb-overview-load): Ditto.
2388         (elmo-msgdb-mark-load): Ditto.
2389         (elmo-msgdb-number-save): Ditto.
2390         (elmo-msgdb-mark-save): Ditto.
2391         (elmo-msgdb-overview-save): Ditto.
2392         (modb-legacy-make-message-entity): New inline function.
2393         (elmo-msgdb-insert-file-header): Ditto.
2394         (elmo-msgdb-make-message-entity): Define.
2395         (elmo-msgdb-create-message-entity-from-file): Ditto.
2396         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2397         (elmo-msgdb-message-entity-number): Ditto.
2398         (elmo-msgdb-message-entity-set-number): Ditto.
2399         (elmo-msgdb-message-entity-field): Ditto.
2400         (elmo-msgdb-message-entity-set-field): Ditto.
2401         (elmo-msgdb-copy-message-entity): Ditto.
2402         (elmo-msgdb-match-condition-internal): Ditto.
2403
2404         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
2405         (elmo-message-copy-entity): Rewrite.
2406         (elmo-message-entity-number): Ditto.
2407         (elmo-message-entity-set-number): Ditto.
2408         (elmo-message-entity-field): Use elmo-message-entity-db.
2409         (elmo-message-entity-set-field): Ditto.
2410         (elmo-message-field): Rewrite.
2411
2412         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
2413         elmo-msgdb.el
2414         (elmo-msgdb-get-message-id-from-buffer): Ditto.
2415
2416         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
2417         elmo-message-entity-field.
2418         (elmo-shimbun-folder-shimbun-header): Ditto.
2419         (elmo-shimbun-entity-to-header): Ditto.
2420         (elmo-folder-msgdb-create): Ditto.
2421         (elmo-shimbun-msgdb-create-entity): Ditto;
2422         Use elmo-msgdb-create-message-entity-from-buffer.
2423         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
2424         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
2425
2426         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
2427         elmo-msgdb-create-message-entity-from-file and 
2428         elmo-message-entity-field.
2429
2430         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
2431         elmo-message-entity-number.
2432         (elmo-pop3-msgdb-create-message): Use
2433         elmo-msgdb-create-message-entity-from-buffer,
2434         elmo-message-entity-set-field, elmo-message-entity-number and
2435         elmo-message-entity-set-number.
2436
2437         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
2438         the API change in elmo-msgdb-make-message-entity.
2439         (elmo-nntp-msgdb-create-message): Use
2440         elmo-msgdb-create-message-entity-from-buffer.
2441
2442         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
2443         elmo-message-entity-field and
2444         elmo-msgdb-create-message-entity-from-file.
2445
2446         * elmo-msgdb.el (toplevel): Don't require modb-entity.
2447         (elmo-msgdb-get-field): Abolish.
2448         (elmo-msgdb-get-number): Rewrite.
2449         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
2450         (elmo-msgdb-flag-table): Ditto.
2451         (elmo-msgdb-get-last-message-id,
2452         elmo-msgdb-number-load, elmo-msgdb-overview-load,
2453         elmo-msgdb-mark-load, elmo-msgdb-number-save,
2454         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
2455         (elmo-msgdb-create-overview-from-buffer,
2456         elmo-msgdb-overview-get-parent-entity): Abolish.
2457
2458         * elmo-mime.el (elmo-mime-display-as-is): Use
2459         elmo-message-entity-field.
2460
2461         * elmo-map.el (elmo-folder-pack-numbers): Use
2462         elmo-message-entity-set-number.
2463
2464         * elmo-maildir.el (elmo-folder-msgdb-create): 
2465         elmo-msgdb-create-message-entity-from-file instead of
2466         elmo-msgdb-create-overview-entity-from-file.
2467
2468         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
2469         msgdb.
2470         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
2471         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
2472
2473         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
2474         elmo-messge-entity-field and elmo-message-entity-number.
2475         (elmo-imap4-fetch-callback-1): Call
2476         elmo-msgdb-create-message-entity-from-buffer instead of
2477         elmo-msgdb-create-overview-from-buffer. 
2478         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
2479         (elmo-find-fetch-strategy): Likewise.
2480
2481         * elmo-flag.el (elmo-folder-msgdb-create): Call 
2482         elmo-localdir-msgdb-create-entity with argument msgdb.
2483
2484         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
2485         and elmo-message-entity-set-number.
2486
2487         * elmo-cache.el (elmo-folder-msgdb-create): Use
2488         elmo-message-entity-field.
2489         (elmo-folder-msgdb-create): Call
2490         elmo-msgdb-create-message-entity-from-file instead of
2491         elmo-msgdb-create-overview-entity-from-file.
2492
2493         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
2494         argument msgdb; Call elmo-msgdb-create-message-from-buffer
2495         instead of elmo-msgdb-create-overview-from-buffer.
2496         (elmo-archive-msgdb-create-entity): Ditto.
2497         (elmo-archive-msgdb-create-as-numlist-subr1): Use
2498         elmo-message-entity-field.
2499         (elmo-archive-parse-mmdf): Ditto.
2500
2501         * modb-entity.el: Removed.
2502
2503         * elmo-version.el (elmo-version): Up to 2.11.16.
2504
2505 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
2506
2507         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
2508         `is-local'.
2509         (elmo-folder-flag-as-answered): Ditto.
2510
2511 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2512
2513         * modb-standard.el: New file.
2514
2515         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
2516         elmo-msgdb-convert-type is `sync'.
2517
2518         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
2519         (elmo-msgdb-convert-type): New user option.
2520
2521         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
2522         (elmo-load-msgdb): Auto detect saved type.
2523
2524         * elmo-version.el (elmo-version): Up to 2.11.15.
2525
2526 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
2527
2528         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
2529
2530         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
2531         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
2532         with argument `delete-if-none' when dst-folder is 'null.
2533
2534         * elmo-flag.el (elmo-folder-append-messages): Defined.
2535         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
2536
2537 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
2538
2539         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
2540
2541 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2542
2543         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
2544         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
2545         (elmo-folder-commit): Ditto.
2546
2547 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
2548
2549         * elmo-flag.el: New file.
2550
2551         * elmo-mark.el: Removed.
2552
2553         * modb-legacy.el (modb-legacy-new-mark,
2554         modb-legacy-unread-uncached-mark,
2555         modb-legacy-unread-cached-mark,
2556         modb-legacy-read-uncached-mark,
2557         modb-legacy-answered-cached-mark,
2558         modb-legacy-answered-uncached-mark,
2559         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
2560         All other related portions are changed.
2561
2562         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
2563         (elmo-folder-list-messages-with-global-mark): Abolish.
2564         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
2565         (elmo-folder-flag-as-important): Ditto.
2566         (elmo-folder-unflag-read): Ditto.
2567         (elmo-folder-flag-as-read): Ditto.
2568         (elmo-folder-unflag-answered): Ditto.
2569         (elmo-folder-flag-as-answered): Ditto.
2570         (elmo-message-encache): Return the cache path.
2571         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
2572         (elmo-message-set-flag): Transitional implementation.
2573         (elmo-message-unset-flag): Ditto.
2574         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
2575         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
2576         (elmo-init): Call elmo-global-flag-initialize.
2577         (toplevel): Added autoload settings for elmo-flag.
2578
2579         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
2580
2581         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
2582         (elmo-file-cache-delete): Don't treat global-mark.
2583
2584         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
2585
2586         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2587
2588         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
2589         `elmo-global-flags-set'.
2590
2591         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
2592         `flag'.
2593         (elmo-folder-unflag-read): Ditto.
2594         (elmo-folder-unflag-important): Ditto.
2595         (elmo-folder-flag-as-important): Ditto.
2596         (elmo-folder-unflag-answered): Ditto.
2597         (elmo-folder-flag-as-answered): Ditto.
2598
2599         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
2600         `elmo-global-flags-set'.
2601         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
2602
2603         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
2604
2605         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
2606         `flag'.
2607         (elmo-folder-flag-as-important): Ditto.
2608         (elmo-folder-unflag-important): Ditto.
2609         (elmo-folder-flag-as-important): Ditto.
2610         (elmo-folder-unflag-read): Ditto.
2611         (elmo-folder-flag-as-read): Ditto.
2612         (elmo-folder-unflag-answered): Ditto.
2613         (elmo-folder-flag-as-answered): Ditto.
2614
2615         * elmo-multi.el (elmo-folder-list-importants): Don't call
2616         elmo-folder-list-messages-with-global-mark.
2617         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
2618         (elmo-folder-unflag-important): Ditto.
2619         (elmo-folder-flag-as-read): Ditto.
2620         (elmo-folder-unflag-read): Ditto.
2621         (elmo-folder-flag-as-answered): Ditto.
2622         (elmo-folder-unflag-answered): Ditto.
2623
2624         * elmo-msgdb.el (elmo-msgdb-new-mark,
2625         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
2626         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
2627         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
2628         (Moved to modb-legacy.el).
2629         (elmo-flag-table-get): Treat important flag too.
2630
2631         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
2632         `mark' to `flag'.
2633         (elmo-map-folder-flag-as-important): Ditto.
2634         (elmo-map-folder-unflag-read): Ditto.
2635         (elmo-map-folder-flag-as-read): Ditto.
2636         (elmo-map-folder-unflag-answered): Ditto.
2637         (elmo-map-folder-flag-as-answered): Ditto.
2638         (elmo-folder-unflag-important): Ditto.
2639         (elmo-folder-flag-as-important): Ditto.
2640         (elmo-folder-unflag-read): Ditto.
2641         (elmo-folder-flag-as-read): Ditto.
2642         (elmo-folder-unflag-answered): Ditto.
2643         (elmo-folder-flag-as-answered): Ditto.
2644
2645         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2646         (elmo-map-folder-flag-as-important): Renamed from `mark' to
2647         `flag'.
2648         (elmo-map-folder-unflag-important): Ditto.
2649         (elmo-map-folder-flag-as-read): Ditto.
2650         (elmo-map-folder-unflag-read): Ditto.
2651         (elmo-map-folder-flag-as-answered): Ditto.
2652         (elmo-map-folder-unflag-answered): Ditto.
2653
2654         * elmo-localdir.el (elmo-folder-msgdb-create): Call
2655         `elmo-global-flags-set'.
2656         (elmo-global-flags-set): Added autoload setting.
2657
2658         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
2659         `flag'.
2660
2661         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
2662         `elmo-msgdb-global-mark-set'.
2663         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
2664         Call `elmo-global-flags-set'.
2665         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
2666         `flag'.
2667         (elmo-folder-flag-as-important-plugged): Ditto.
2668         (elmo-folder-unflag-read-plugged): Ditto.
2669         (elmo-folder-flag-as-read-plugged): Ditto.
2670         (elmo-folder-unflag-answered-plugged): Ditto.
2671         (elmo-folder-flag-as-answered-plugged): Ditto.
2672         (elmo-global-flags-set): Added autoload setting.
2673
2674         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
2675         `flag'.
2676         (elmo-folder-unflag-read): Ditto.
2677         (elmo-folder-flag-as-important): Ditto.
2678         (elmo-folder-unflag-important): Ditto.
2679         (elmo-folder-flag-as-answered): Ditto.
2680         (elmo-folder-unflag-answered): Ditto.
2681
2682         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
2683         change of `mark'->`flag'.
2684         (elmo-dop-queue-method-name-alist): Ditto.
2685         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
2686         (elmo-folder-unflag-read-dop): Ditto.
2687         (elmo-folder-flag-as-important-dop): Ditto.
2688         (elmo-folder-unflag-important-dop): Ditto.
2689         (elmo-folder-flag-as-answered-dop): Ditto.
2690         (elmo-folder-unflag-answered-dop): Ditto.
2691
2692         * elmo-cache.el (elmo-folder-msgdb-create): Call
2693         `elmo-global-flags-set'.
2694
2695         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
2696         Call `elmo-global-flags-set'.
2697         (elmo-archive-msgdb-create-as-numlist-subr2): Call
2698         elmo-archive-parse-mmdf with argument `folder'.
2699         (elmo-archive-parse-mmdf): Added argument `folder';
2700         Call `elmo-global-flags-set'.
2701
2702         * elmo-version.el (elmo-version): Up to 2.11.14.
2703
2704 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2705
2706         * modb.el (elmo-msgdb-length): Define.
2707
2708         * elmo.el (elmo-make-folder): Fixed.
2709         (elmo-generic-folder-append-messages): Follow the API change.
2710
2711         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
2712         API change.
2713
2714 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2715
2716         * modb.el: New file.
2717
2718         * modb-entity.el: Ditto.
2719
2720         * modb-legacy.el: Ditto.
2721
2722         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
2723         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
2724         of `elmo-msgdb-overview-get-entity'.
2725         (elmo-msgdb-get-field): Ditto.
2726         (elmo-msgdb-merge): Moved to `elmo.el'.
2727         (elmo-msgdb-length): Removed; redefine as modb method.
2728         (elmo-msgdb-change-mark): Abolish.
2729         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
2730         (elmo-msgdb-match-condition): Don't use mark.
2731         (elmo-msgdb-overview-get-entity): Abolish.
2732         Split modb part into `modb*.el'.
2733
2734         * elmo-vars.el (elmo-msgdb-default-type): New user option.
2735
2736         * elmo-shimbun.el (shimbun-mua-search-id): Use
2737         `elmo-msgdb-message-entity' instead of
2738         `elmo-msgdb-overview-get-entity'.
2739         (elmo-shimbun-folder-shimbun-header): Ditto.
2740         (elmo-shimbun-get-headers): Ditto.
2741         (elmo-shimbun-update-overview): Ditto.
2742
2743         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
2744
2745         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
2746
2747         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
2748         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
2749
2750         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
2751         `elmo-msgdb-mark-to-flags'.
2752
2753         * elmo-map.el (elmo-folder-pack-numbers): Don't use
2754         `elmo-msgdb-set-path'.
2755
2756         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
2757  
2758         * elmo-version.el (elmo-version): Up to 2.11.13.
2759
2760         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
2761
2762         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
2763         of mark.
2764
2765 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2766
2767         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
2768         mismatch.
2769
2770 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2771
2772         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
2773         instead of `elmo-msgdb-get-cached'.
2774         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
2775
2776         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
2777         (elmo-msgdb-set-cached): Ditto.
2778         (elmo-msgdb-set-flag): Rewrite.
2779         (elmo-msgdb-unset-flag): Ditto.
2780
2781         * elmo-msgdb.el: Rewrite with luna.
2782
2783         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
2784         (elmo-folder-msgdb): Follow the change above.
2785         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
2786         (elmo-folder-unmark-important): Follow the API change.
2787         (elmo-folder-mark-as-important): Ditto.
2788         (elmo-folder-unmark-read): Ditto.
2789         (elmo-folder-mark-as-read): Ditto.
2790         (elmo-folder-unmark-answered): Ditto.
2791         (elmo-folder-mark-as-answered): Ditto.
2792         (elmo-folder-clear): Likewise.
2793
2794         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
2795         instead of `elmo-msgdb-load' (renamed).
2796
2797         * elmo-version.el (elmo-version): Up to 2.11.12.
2798
2799 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2800
2801         * elmo.el (elmo-generic-folder-append-messages): Follow the API
2802         change.
2803         (elmo-message-mark): Abolish.
2804         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
2805         instead of `elmo-msgdb-change-mark'.
2806
2807         * elmo-pipe.el (elmo-message-mark): Abolish.
2808
2809         * elmo-multi.el (elmo-message-mark): Ditto.
2810
2811         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
2812         (elmo-msgdb-unread-uncached-mark): Ditto.
2813         (elmo-msgdb-unread-cached-mark): Ditto.
2814         (elmo-msgdb-read-uncached-mark): Ditto.
2815         (elmo-msgdb-answered-cached-mark): Ditto.
2816         (elmo-msgdb-answered-uncached-mark): Ditto.
2817         (elmo-msgdb-important-mark): Ditto.
2818         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
2819         `use-cache'.
2820         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
2821         `flags'.
2822         (elmo-flag-table-load): Changed flag to list of flag.
2823         (elmo-flag-table-set): If flags is nil, set read flag.
2824         (elmo-flag-table-get): Return derived flags from global mark,
2825         cache status and saved flags.
2826         (elmo-msgdb-flag-table): Follow the change above.
2827         (elmo-msgdb-out-of-date-messages): New function.
2828
2829         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
2830
2831         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2832
2833         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2834
2835         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
2836         (elmo-nntp-msgdb-create-message): Ditto.
2837
2838         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
2839
2840         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
2841         independent.
2842         (elmo-folder-msgdb-create): Follow the API change.
2843
2844         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
2845         (elmo-folder-append-messages): Ditto.
2846
2847         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
2848         (elmo-folder-append-buffer): Ditto.
2849
2850         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
2851
2852         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2853
2854         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
2855         (elmo-archive-parse-mmdf): Ditto.
2856
2857         * elmo-version.el (elmo-version): Up to 2.11.11.
2858
2859 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2860
2861         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
2862         `elmo-msgdb-mark'.
2863
2864         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
2865
2866         * elmo-pipe.el (elmo-message-flags): Defined.
2867
2868         * elmo-multi.el (elmo-message-flags): Ditto.
2869
2870 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2871
2872         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
2873         `elmo-msgdb-delete-msgs'.
2874
2875         * elmo.el (elmo-folder-count-flags): Don't use
2876         `elmo-msgdb-get-mark-alist'.
2877         (elmo-folder-detach-messages): Follow the API change.
2878
2879         * elmo.el (elmo-folder-list-messages): Append killed messages into
2880         result if `visible-only' is nil.
2881
2882         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
2883         canceled messages.
2884         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
2885         (elmo-folder-update-number): Likewise.
2886
2887         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
2888         (elmo-pop3-sort-msgdb-by-original-number): Use
2889         `elmo-msgdb-sort-entities'.
2890
2891         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
2892         (elmo-msgdb-sort-by-date): Use it.
2893         (elmo-msgdb-overview-sort-by-date): Abolish.
2894
2895         * elmo-dop.el (elmo-folder-status-dop): Fixed.
2896
2897         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
2898         (elmo-msgdb-flags): New function.
2899         (elmo-msgdb-merge): Use elmo-msgdb-append.
2900
2901         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
2902         change.
2903
2904         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
2905
2906         * elmo-dop.el (elmo-folder-status-dop): Use
2907         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
2908
2909 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2910
2911         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
2912
2913         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
2914
2915         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
2916
2917         * elmo-util.el (elmo-with-progress-display): New macro.
2918
2919         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
2920
2921 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2922
2923         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
2924         `elmo-folder-list-message-entities' instead of
2925         `elmo-msgdb-get-overview'.
2926         (elmo-map-folder-list-message-locations): Ditto.
2927
2928         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
2929         methods instead of treat directly).
2930         (elmo-msgdb-clear): Ditto.
2931         (elmo-msgdb-delete-msgs): Ditto.
2932         (elmo-msgdb-sort-by-date): Ditto.
2933
2934         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
2935         local variables.
2936         (elmo-nntp-folder-msgdb-create): Follow the API change.
2937
2938         * elmo-version.el (elmo-version): Up to 2.11.10.
2939
2940 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2941
2942         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
2943         (elmo-msgdb-flags-to-mark): Ditto.
2944         (elmo-msgdb-append-entity): Ditto.
2945
2946         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
2947         Use `elmo-msgdb-append-entity' instead of construct msgdb.
2948         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
2949         (elmo-archive-parse-mmdf): Ditto.
2950
2951         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2952
2953         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
2954
2955         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
2956
2957         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2958
2959         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
2960
2961         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
2962
2963         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2964
2965         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
2966
2967         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
2968         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
2969         to empty msgdb.
2970
2971         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
2972         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
2973         instead of directly construction.
2974         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
2975         instead of construct msgdb.
2976
2977         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
2978         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
2979         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
2980         instead of construct msgdb.
2981
2982 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2983
2984         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
2985         when field is from or subject.
2986
2987 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
2988
2989         * elmo-multi.el (elmo-message-entity-parent): Define.
2990         (elmo-folder-search): Rewrite.
2991
2992 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2993
2994         * elmo-multi.el (elmo-message-cached-p): Define.
2995
2996         * elmo.el (elmo-message-cached-p): New method.
2997         (elmo-message-accessible-p): Use it instead of msgdb API directly.
2998         (elmo-message-flags): New method.
2999         (elmo-message-flagged-p): New function.
3000
3001         * elmo-version.el (elmo-version): Up to 2.11.9.
3002
3003 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3004
3005         * elmo-version.el (elmo-version): Up to 2.11.8.
3006
3007         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3008
3009         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3010
3011 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
3012
3013         * elmo.el (elmo-folder-detach-messages): Undo last change.
3014
3015 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
3016
3017         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3018
3019         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3020         only when src folder type is pop3.
3021
3022 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
3023
3024         * elmo-msgdb.el (elmo-msgdb-make-index): Use
3025         elmo-msgdb-overview-entity-get-number instead of
3026         elmo-message-entity-number.
3027
3028 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3029
3030         * elmo-version.el (elmo-version): Up to 2.11.7.
3031
3032 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
3033
3034         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3035         function.
3036
3037         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3038         (elmo-msgdb-merge): New function.
3039         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3040         (elmo-msgdb-make-index): Rewrite.
3041
3042         * elmo-version.el (elmo-version): Up to 2.11.6.
3043
3044         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3045         use it as a the path for loading message entities.
3046
3047         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3048
3049 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
3050
3051         * elmo-filter.el (elmo-folder-set-message-modified): Set 
3052         message-modified slot of itself if it does not require target msgdb.
3053
3054         * elmo-mime.el (elmo-mime-message-display): Display message entirely
3055         if folder length is zero.
3056         (elmo-mime-display-as-is): Ditto.
3057
3058         * elmo-filter.el (elmo-folder-set-message-modified): Define.
3059
3060         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3061
3062 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3063
3064         * elmo.el (elmo-folder-set-message-modified): New method.
3065         (elmo-generic-folder-commit): Use it.
3066         (elmo-folder-synchronize): Ditto.
3067
3068         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3069         (elmo-folder-commit): Remove duplicate definition.
3070
3071 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3072
3073         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3074
3075 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3076
3077         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3078         (elmo-strict-folder-diff): Ditto.
3079         (elmo-folder-set-info-max-by-numdb): Simplify.
3080
3081         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3082         elmo-msgdb-list-messages.
3083
3084         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3085         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3086
3087 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3088
3089         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
3090         visible-only is non-nil.
3091         (elmo-folder-confirm-appends): Changed message.
3092         (elmo-folder-synchronize): Added argument disable-killed.
3093
3094         * elmo-multi.el (elmo-folder-synchronize): Added argument
3095         disable-killed.
3096
3097         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
3098
3099         * elmo-version.el (elmo-version): Up to 2.11.5.
3100
3101         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
3102         elmo-list-filter.
3103
3104         * elmo-util.el (elmo-list-filter): Simplify.
3105
3106         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
3107         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
3108         (elmo-generic-folder-diff): Abolish argument.
3109         (elmo-msgdb-load): Don't use number-alist.
3110
3111         * elmo-filter.el (elmo-folder-diff): Abolish argument.
3112
3113         * elmo-pipe.el (elmo-folder-diff): Ditto.
3114
3115         * elmo-nmz.el (elmo-folder-diff): Ditto.
3116
3117         * elmo-net.el (elmo-folder-diff): Ditto.
3118
3119         * elmo-maildir.el (elmo-folder-diff): Ditto.
3120
3121         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
3122
3123         * elmo-multi.el (elmo-folder-diff): Ditto
3124         (elmo-multi-folder-diff): Rewrite.
3125
3126 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3127
3128         * elmo-pipe.el (elmo-folder-msgdb): Define.
3129
3130 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
3131
3132         * elmo.el (elmo-message-set-cached): Define as a method.
3133
3134         * elmo-pipe.el (elmo-message-set-cached): Define.
3135         (elmo-find-fetch-strategy): Ditto.
3136
3137         * elmo-multi.el (elmo-message-set-cached): Define.
3138         (elmo-find-fetch-strategy): Rewrite.
3139
3140         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
3141
3142         * elmo-pipe.el (elmo-message-folder): Fixed definition.
3143
3144 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
3145
3146         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
3147         instead of number-alist.
3148
3149         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
3150         mark nor message-id when msgdb of source folder is not loaded.
3151
3152         * elmo.el (elmo-generic-folder-append-messages): Ditto.
3153
3154         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
3155
3156 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
3157
3158         * elmo.el (elmo-folder-length): Don't require msgdb.
3159
3160 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
3161
3162         * elmo.el (elmo-message-mark): Cause an error when empty folder.
3163         (elmo-message-field): Ditto.
3164
3165         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
3166         (elmo-map-folder-list-message-locations): Setup `answered-locations'
3167         slot.
3168         (elmo-map-folder-list-answereds): Define.
3169         (elmo-maildir-list-location): Treat 'R' info.
3170         (elmo-folder-msgdb-create): Treat flag-table.
3171         (elmo-folder-append-messages): Save flag-table.
3172
3173 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
3174
3175         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
3176         Use SELECT when elmo-imap4-use-select-to-update-status is t.
3177
3178 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3179
3180         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
3181
3182         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
3183         'read when mark is null.
3184
3185 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
3186
3187         * elmo-version.el (elmo-version): Up to 2.11.4.
3188
3189 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3190
3191         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
3192         (elmo-folder-mark-as-answered): Ditto.
3193
3194 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
3195
3196         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
3197         (elmo-pop3-get-session): Make msgdb directory after session.
3198         (elmo-folder-exists-p): Check exactly at the first time even when the
3199         elmo-pop3-exists-exactly is nil.
3200
3201         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
3202         (elmo-folder-list-messages): Define instead of
3203         elmo-folder-list-messages-internal.
3204         (elmo-folder-check): Check destination folder.
3205         (elmo-folder-synchronize): Drain the pipe.
3206
3207         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
3208         when msgdb is not loaded.
3209
3210         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
3211
3212         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
3213         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
3214         messages.
3215
3216         * elmo.el (elmo-folder-kill-messages-before): New function.
3217         (elmo-folder-kill-messages): Ditto.
3218         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
3219
3220         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
3221         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
3222         killed not by synchronize (e.g. scoring).
3223
3224 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3225
3226         * elmo.el (elmo-folder-search-fast): Return t if condition is not
3227         treated.
3228         (elmo-folder-search): Follow the change above.
3229
3230         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
3231         into the candidates of search field.
3232
3233 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
3234
3235         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
3236         (elmo-msgdb-unset-flag): Ditto.
3237
3238         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
3239
3240 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
3241
3242         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
3243         (elmo-folder-commit): Define.
3244         (elmo-folder-synchronize): Ditto.
3245         (elmo-folder-list-flagged): Ditto.
3246         (elmo-folder-commit): Ditto.
3247         (elmo-folder-length): Ditto.
3248         (elmo-folder-count-flags): Ditto.
3249         (elmo-message-mark): Ditto.
3250         (elmo-message-field): Ditto.
3251         (elmo-message-entity): Ditto.
3252         (elmo-message-folder): Ditto.
3253
3254 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
3255
3256         * elmo.el (elmo-message-field): Define as a method.
3257
3258         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
3259         (elmo-message-field): Define.
3260
3261         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
3262         (elmo-folder-list-importants): Ditto.
3263         (elmo-folder-list-answereds): Ditto.
3264
3265         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
3266         qualifier.
3267         (elmo-folder-mark-as-read): Ditto.
3268         (elmo-folder-unmark-read): Ditto.
3269         (elmo-folder-mark-as-answered): Ditto.
3270         (elmo-folder-unmark-answered): Ditto.
3271         (elmo-folder-list-flagged): Define.
3272         (elmo-folder-commit): Ditto.
3273         (elmo-folder-length): Ditto.
3274         (elmo-folder-count-flags): Ditto.
3275
3276 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3277
3278         * elmo.el (elmo-folder-detach-messages): New method.
3279         (elmo-folder-move-messages): Use it.
3280         (elmo-folder-synchronize): Ditto.
3281
3282         * elmo-multi.el (elmo-folder-detach-messages): Define.
3283
3284         * elmo.el (elmo-message-copy-entity): New function.
3285         (elmo-message-entity-set-number): Ditto.
3286         (elmo-message-mark): Define as method.
3287
3288         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
3289         (elmo-folder-synchronize): Return 0 (Should be reconsider).
3290         (elmo-message-entity): Fixed last change.
3291         (elmo-message-mark): Define.
3292         (elmo-folder-msgdb-create): Abolish.
3293         (elmo-multi-folder-append-msgdb): Ditto.
3294         (elmo-multi-folder-diff): Fixed.
3295         (elmo-multi-split-number-alist): Removed.
3296         (elmo-multi-split-mark-alist): Removed.
3297         (elmo-folder-list-messages): Define.
3298         (elmo-folder-list-messages-internal): Removed.
3299
3300         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
3301         local file messages.
3302         (elmo-folder-msgdb-create): Fixed read mark.
3303
3304 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3305
3306         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
3307         if mark is nil.
3308
3309 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3310
3311         * elmo.el (elmo-folder-list-message-entities): Define as inline
3312         function.
3313         (elmo-folder-messages): Abolish.
3314
3315         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
3316         folder.
3317         (elmo-folder-synchronize): Define.
3318         (elmo-message-entity): Define.
3319
3320 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
3321
3322         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
3323         elmo-imap4-session-select-mailbox.
3324
3325         * elmo.el (elmo-folder-move-messages): Don't display any message.
3326
3327         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
3328         parsing.
3329         (elmo-imap4-session-check): Don't wait CHECK response.
3330         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
3331
3332 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
3333
3334         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
3335
3336 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
3337
3338         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
3339         API.
3340         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
3341
3342
3343         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
3344         (elmo-folder-list-message-entities): Added argument in-msgdb and
3345         numbers.
3346         (elmo-folder-synchronize): Define as a method.
3347
3348         * elmo-nntp.el (elmo-folder-initialize): Don't use
3349         elmo-nntp-default-user if zero-length username is specified
3350         explicitly.
3351
3352 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3353
3354         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
3355         server name in case with username.
3356         (XXX: this is ad-hoc fix against username includes "@", it
3357         should be solved fundamentally)
3358
3359 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
3360
3361         * elmo-nntp.el (elmo-nntp-debug): New function.
3362         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
3363         (elmo-network-authenticate-session): Hide auth-info from the log.
3364
3365         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
3366         user name if it is equal to elmo-nntp-default-user.
3367
3368 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
3369
3370         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
3371         instead of shimbun-server-internal;
3372         Use shimbun-current-group instead of shimbun-current-group-internal.
3373         (elmo-folder-plugged-p): Use shimbun-server instead of
3374         shimbun-server-internal.
3375         (elmo-folder-set-plugged): Ditto.
3376         (elmo-net-port-info): Ditto.
3377         (elmo-folder-check): Ditto.
3378         (elmo-folder-expand-msgdb-path): Ditto.
3379         (elmo-folder-list-subfolders): Ditto.
3380
3381 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
3382
3383         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
3384         Convert field-name to lower case.
3385         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3386
3387 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
3388
3389         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
3390         `message' and `error' take format string.
3391
3392 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3393
3394         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
3395
3396 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3397
3398         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
3399         recursive call (can't byte compile on emacs 20.7).
3400
3401 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
3402
3403         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
3404         (elmo-folder-list-message-entities): New API.
3405         (elmo-message-entity): Ditto.
3406         (elmo-message-entity-parent): Ditto.
3407         (elmo-folder-do-each-message-entity): Ditto.
3408         (elmo-message-entity-number): Ditto.
3409         (elmo-message-entity-field): Ditto.
3410         (elmo-message-entity-set-field): Ditto.
3411         (elmo-folder-count-flags): Ditto.
3412         (elmo-folder-length): Ditto.
3413
3414         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
3415         not.
3416
3417         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
3418         (elmo-msgdb-count-marks): Abolish.
3419         (elmo-msgdb-make-entity): Ditto.
3420         (elmo-msgdb-do-each-entity): Ditto.
3421         (elmo-msgdb-message-entity): New inline function.
3422         (elmo-msgdb-message-entity-field): Ditto.
3423         (elmo-msgdb-message-entity-set-field): Ditto.
3424         (elmo-msgdb-make-message-entity): New function.
3425
3426 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
3427
3428         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
3429         to flag. (All other related portions are changed.)
3430         (elmo-folder-msgdb-create): Likewise.
3431         (elmo-generic-folder-append-messages): Use flag-table instead of
3432         seen-list.
3433         (elmo-folder-move-messages): Removed redundant process.
3434         (elmo-folder-synchronize): Likewise.
3435
3436         * elmo-msgdb.el (elmo-flag-table-get): New function.
3437         (elmo-flag-table-save): Fixed.
3438         (elmo-msgdb-length): New inline function.
3439         (elmo-msgdb-flag-table): New function.
3440         (elmo-msgdb-mark): Add optional argument new.
3441         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
3442         (elmo-msgdb-seen-list): Ditto.
3443         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
3444
3445
3446 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
3447
3448         * elmo.el (elmo-message-set-mark): Abolish.
3449         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
3450         (All related portions are changed.)
3451
3452         * elmo-msgdb.el (toplevel): Added comment.
3453         (elmo-load-msgdb): Added 4th element `path'.
3454         (elmo-msgdb-append): Follow the change above.
3455         (elmo-msgdb-clear): Ditto.
3456         (elmo-msgdb-delete-msgs): Ditto.
3457         (elmo-msgdb-get-path): New inline function.
3458         (elmo-msgdb-set-path): Ditto.
3459         (elmo-flag-table-filename): New variable.
3460         (elmo-flag-table-load): New function.
3461         (elmo-flag-table-set): Ditto.
3462         (elmo-flag-table-save): Ditto.
3463         (elmo-msgdb-get-field-value): Abolish.
3464         (elmo-msgdb-overview-get-entity-by-number): Ditto.
3465
3466 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
3467
3468         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
3469         the folder has been deleted successfully.
3470         * elmo-imap4.el (elmo-folder-delete): Ditto.
3471         * elmo-archive.el (elmo-folder-delete): Ditto.
3472         * elmo-localdir.el (elmo-folder-delete): Ditto.
3473         * elmo-maildir.el (elmo-folder-delete): Ditto.
3474
3475 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
3476
3477         * elmo-util.el (elmo-string-member-ignore-case): New function.
3478         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
3479         (elmo-imap4-fetch-callback-1-subr): Likewise.
3480
3481 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
3482
3483         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
3484         the case of the name attribute "\Noselect".
3485
3486 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3487
3488         * elmo.el (elmo-folder-rename-internal): New method to cause error.
3489
3490         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
3491         flist, is not always a member of onum-alist.
3492
3493 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3494
3495         * elmo-version.el (elmo-version): Up to 2.11.3.
3496
3497 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3498
3499         * elmo-maildir.el (elmo-folder-rename-internal): New method,
3500         copied from localdir's one.
3501
3502         * elmo-pipe.el (elmo-folder-rename): New method, rename
3503         destination folder with leaving source folder as it is.
3504
3505 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
3506
3507         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
3508         replace-regexp.
3509
3510 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3511
3512         * elmo-version.el (elmo-version): Up to 2.11.2.
3513
3514 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3515
3516         * elmo-shimbun.el (elmo-folder-initialize): Do not call
3517         shimbun-open in case of "@".
3518         (elmo-folder-open-internal): Cope with shimbun = nil case.
3519         (elmo-folder-plugged-p): Ditto.
3520         (elmo-folder-list-subfolders): Make list for "@/" group.
3521
3522 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3523
3524         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
3525         mailbox (e.g. for %~/something).
3526
3527 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3528
3529         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
3530         Replace nested conditional with guard clauses.
3531
3532 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
3533
3534         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
3535         error [wl:11327].
3536
3537         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
3538         print-depth.
3539
3540 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3541
3542         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
3543         Replace nested conditional with guard clauses.
3544
3545 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3546
3547         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
3548         (elmo-passwd-alist-save): Ditto.
3549         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
3550
3551 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3552
3553         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
3554         dir-name only if it is absolute path.
3555         (TODO: distinguish +/something and +something)
3556
3557 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3558
3559         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
3560         path for "+~/something".
3561
3562 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3563
3564         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
3565         as non-directory, cause error before rename-file.
3566         * elmo-archive.el (elmo-folder-rename-internal): Create directory
3567         apropriately, mimic localdir's one.
3568         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
3569
3570 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
3571
3572         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
3573
3574 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
3575
3576         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
3577
3578         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
3579         
3580         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
3581         is included in the global-mark or not.
3582
3583 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3584
3585         * utf7.el (toplevel): Avoid error when the function
3586         find-coding-system does not exist.
3587
3588 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3589
3590         * elmo-nntp.el (elmo-folder-search): Body search is to search from
3591         cache even if the folder is plugged.
3592         (elmo-nntp-search-primitive): Do nothing when body search is
3593         invoked (although it is not used by the change above).
3594         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
3595
3596 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
3597
3598         * elmo-version.el (elmo-version): Up to 2.11.1.
3599
3600 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
3601
3602         * elmo-archive.el: Specify charset.
3603
3604 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
3605
3606         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
3607         process buffer lives or not.
3608
3609         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
3610         while flushing queues (It causes infinite loop).
3611
3612 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
3613
3614         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
3615
3616 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
3617
3618         * utf7.el (toplevel): Check the ucs features dynamically.
3619         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
3620
3621         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
3622         folder is creatabe or not if it already exists.
3623
3624 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
3625
3626         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
3627
3628         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
3629
3630         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
3631         (elmo-imap4-read-response): Take care of garbage response.
3632
3633 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3634
3635         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
3636         just return nil instead of error.
3637
3638 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3639
3640         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
3641         search-key is "body".
3642
3643 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
3644
3645         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
3646         of elmo-string-matched-assoc to use match-data.
3647         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
3648
3649 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3650
3651         * elmo-split.el (elmo-split->): New function.
3652         (elmo-split-<): Ditto.
3653
3654 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
3655
3656         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
3657         workaround for invalid message-id.
3658
3659 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
3660
3661         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
3662         return normal pop3 session or pop3 biff session.
3663
3664 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
3665
3666         * elmo-maildir.el (elmo-maildir-update-current): Don't append
3667         info part to the cur files when the new files already have it.
3668         (Adviced by Jared Rhine <jared@wordzoo.com>)
3669
3670 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3671
3672         * elmo-split.el (elmo-split-default-action): New variable.
3673         (elmo-split-subr): Use it if all other conditions are passed.
3674         Extend `fname' and rename it as `action'. (implemented
3675         Teranishi-san's idea in [wl:10800])
3676
3677 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3678
3679         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
3680         * elmo-util.el: Ditto.
3681
3682 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
3683
3684         * elmo.el (elmo-message-accessible-p): Renamed from
3685         elmo-message-cached-p and rewritten.
3686
3687 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
3688
3689         * elmo.el (elmo-folder-list-flagged): New generic function.
3690         (elmo-folder-list-importants): New implementation.
3691         (elmo-folder-list-answereds): Ditto.
3692         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
3693         Added 'digest'.
3694         (elmo-message-cached-p): New function.
3695         (elmo-message-set-flag): Ditto (no content).
3696         (elmo-message-unset-flag): Ditto.
3697         (elmo-folder-list-messages-mark-match): Abolish.
3698
3699         * elmo-util.el (elmo-regexp-opt): New function.
3700
3701         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
3702         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
3703         Added 'digest'.
3704         (elmo-msgdb-list-flagged): New function.
3705
3706         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
3707         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
3708         Added 'digest'.
3709
3710         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
3711
3712 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
3713
3714         * elmo-version.el (elmo-version): Up to 2.11.0.
3715
3716 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3717
3718         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
3719         `elmo-file-cache-exists-p'; use proper mark that depends on
3720         `use-cache'.
3721         (elmo-msgdb-unset-flag): Ditto.
3722         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
3723
3724         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
3725         with 4th argument `use-cache'.
3726
3727 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
3728
3729         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
3730         (elmo-folder-mark-as-important): Ditto.
3731         (elmo-folder-unmark-read): Ditto.
3732         (elmo-folder-mark-as-read): Ditto.
3733         (elmo-folder-unmark-answered): Ditto.
3734         (elmo-folder-mark-as-answered): Ditto.
3735
3736         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
3737         message status.
3738         (elmo-msgdb-mark): Likewise.
3739         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
3740         (elmo-msgdb-unset-flag): Likewise.
3741
3742         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
3743
3744 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3745
3746         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
3747         `last:' filter.
3748
3749 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3750
3751         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
3752         set spool-length to 0.
3753
3754 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3755
3756         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
3757         (elmo-dop-queue-flush): Fixed last change.
3758
3759 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3760
3761         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
3762         if require-msgdb slot is nil.
3763         (elmo-folder-list-importants): Likewise.
3764
3765 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3766
3767         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
3768         mark is changed.
3769
3770         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
3771         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
3772         is changed.
3773
3774 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3775
3776         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
3777
3778 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3779
3780         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
3781
3782         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
3783
3784 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3785
3786         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
3787         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
3788
3789 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3790
3791         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
3792         the problem reported by Sean Rima [wl-en:180].
3793
3794 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3795
3796         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
3797
3798         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
3799
3800         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
3801
3802         * elmo-map.el (elmo-folder-unmark-read): Ditto.
3803
3804         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
3805
3806         * elmo-net.el (elmo-folder-unmark-read): Ditto.
3807
3808         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
3809
3810 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3811
3812         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
3813         status number.
3814
3815 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
3816
3817         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
3818         (elmo-folder-mark-as-read): Follow the API change.
3819         (elmo-message-set-cached): New function.
3820
3821         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
3822
3823         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
3824
3825         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
3826         (elmo-folder-mark-as-important): Ditto.
3827         (elmo-folder-unmark-read): Ditto.
3828         (elmo-folder-mark-as-read): Ditto.
3829         (elmo-folder-unmark-answered): Ditto.
3830         (elmo-folder-mark-as-answered): Ditto.
3831
3832         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
3833         (elmo-folder-unmark-important): Ditto.
3834         (elmo-folder-mark-as-read): Ditto.
3835         (elmo-folder-unmark-read): Ditto.
3836         (elmo-folder-mark-as-answered): Ditto.
3837         (elmo-folder-unmark-answered): Ditto.
3838
3839         * elmo-mark.el (toplevel): Removed some mark method definitions.
3840
3841         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
3842         (elmo-map-folder-mark-as-answered): Ditto.
3843         (elmo-folder-unmark-important): Add :before qualifier.
3844         (elmo-folder-mark-as-important): Ditto.
3845         (elmo-folder-unmark-read): Ditto.
3846         (elmo-folder-mark-as-read): Ditto.
3847         (elmo-folder-unmark-answered): Define.
3848         (elmo-folder-mark-as-answered): Ditto.
3849
3850         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
3851         (elmo-map-folder-unmark-answered): Ditto.
3852
3853         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
3854
3855         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
3856         (elmo-folder-mark-as-important): Ditto.
3857         (elmo-folder-unmark-read): Ditto.
3858         (elmo-folder-mark-as-read): Ditto.
3859         (elmo-folder-unmark-answered): Ditto.
3860         (elmo-folder-mark-as-answered): Ditto.
3861
3862         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
3863         `mark'; evaluate mark condition.
3864         (elmo-msgdb-match-condition-internal): New function.
3865         (elmo-msgdb-match-condition): Call it; changed argument.
3866
3867         * elmo.el (elmo-folder-search): Follow the API change on
3868         `elmo-msgdb-match-condition'.
3869
3870 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3871
3872         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
3873         original mark is non-nil.
3874
3875 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
3876
3877         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
3878         (elmo-map-folder-list-answereds): New method.
3879         (elmo-folder-list-unreads): Add :around qualifier.
3880         (elmo-folder-list-importants): Ditto.
3881         (elmo-folder-list-answereds): Ditto.
3882
3883 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
3884
3885         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
3886
3887         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
3888         method if msgdb is not required.
3889         (elmo-filter-folder-list-importants): Don't treat global-mark.
3890
3891         * elmo.el (elmo-folder-list-importants): Ditto.
3892
3893         * elmo-net.el (elmo-folder-list-importants): Ditto.
3894
3895         * elmo-map.el (elmo-folder-list-importants): Ditto.
3896
3897         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
3898
3899         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
3900         (elmo-imap4-folder-list-any-plugged): New function.
3901         (elmo-imap4-search-internal-primitive): Use it.
3902
3903         * elmo-filter.el (elmo-folder-check): Synchronize original folder
3904         only when require-msgdb slot is non-nil.
3905         (elmo-folder-close): Clear target folder's msgdb.
3906
3907 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
3908
3909         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
3910         (elmo-pop3-msgdb-create-by-header): Ditto.
3911         (elmo-pop3-msgdb-create-message): Ditto.
3912
3913         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3914
3915         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3916
3917         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3918
3919         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3920         (elmo-folder-msgdb-create): Ditto.
3921         (elmo-nntp-folder-msgdb-create): Ditto.
3922         (elmo-nntp-msgdb-create-by-header): Ditto.
3923         (elmo-nntp-msgdb-create-message): Ditto.
3924         (elmo-folder-list-unreads): Define.
3925
3926         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
3927         (elmo-folder-append-messages): Ditto.
3928         (elmo-folder-list-unreads): Define.
3929         (elmo-folder-list-importants): Ditto.
3930         (elmo-folder-list-answereds): Ditto.
3931
3932         * elmo-net.el (elmo-folder-list-unreads): Define.
3933         (elmo-folder-list-importants): Ditto.
3934         (elmo-folder-list-answereds): Ditto.
3935         (elmo-folder-list-answereds-plugged): Ditto.
3936         (elmo-folder-msgdb-create): Follow the API change.
3937         (elmo-folder-msgdb-create-unplugged): Ditto.
3938         (elmo-folder-unmark-answered): Define.
3939         (elmo-folder-mark-as-answered-unplugged): Ditto.
3940         (elmo-folder-unmark-answered-unplugged): Ditto.
3941
3942         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
3943         (elmo-msgdb-unread-uncached-mark): Ditto.
3944         (elmo-msgdb-unread-cached-mark): Ditto.
3945         (elmo-msgdb-read-uncached-mark): Ditto.
3946         (elmo-msgdb-answered-cached-mark): Ditto.
3947         (elmo-msgdb-answered-uncached-mark): Ditto.
3948         (elmo-msgdb-important-mark): Ditto.
3949         (elmo-msgdb-set-mark): Rewrite.
3950         (elmo-msgdb-count-marks): Rewrite.
3951         (elmo-msgdb-mark-alist-set): Abolish.
3952         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
3953         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
3954
3955         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
3956         (elmo-folder-close): Define.
3957         (elmo-folder-msgdb-create): Follow the API change.
3958         (elmo-folder-list-unreads): Rewrite.
3959         (elmo-folder-mark-as-important): Ditto.
3960         (elmo-folder-unmark-important): Ditto.
3961         (elmo-folder-mark-as-read): Ditto.
3962         (elmo-folder-unmark-read): Ditto.
3963         (elmo-folder-mark-as-answered): Define.
3964         (elmo-folder-unmark-answered): Ditto.
3965
3966         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
3967         (elmo-folder-append-messages): Ditto.
3968
3969         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
3970
3971         * elmo-map.el (elmo-folder-list-unreads): Ditto.
3972         (elmo-folder-list-importants): Ditto.
3973
3974         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3975         (elmo-folder-append-messages): Ditto.
3976
3977         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
3978         change.
3979         (elmo-folder-msgdb-create-plugged): Ditto.
3980         (elmo-folder-append-messages): Ditto.
3981         (elmo-folder-list-answereds-plugged): Define.
3982         (elmo-imap4-search-internal-primitive): Add `mark' processing.
3983         (elmo-folder-unmark-answered-plugged): Define.
3984         (elmo-folder-mark-as-answered-plugged): Ditto.
3985         (elmo-folder-search-requires-msgdb-p): Ditto.
3986
3987         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
3988         (elmo-folder-initialize): Set it.
3989         (elmo-folder-msgdb): Define.
3990         (elmo-folder-check): Call elmo-folder-synchronize.
3991         (elmo-folder-close): Define.
3992         (elmo-folder-commit): Ditto.
3993         (elmo-folder-msgdb-create): Rewrite.
3994         (elmo-folder-list-unreads): Ditto.
3995         (elmo-folder-list-importants): Ditto.
3996         (elmo-folder-mark-as-read): Ditto.
3997         (elmo-folder-unmark-read): Ditto.
3998         (elmo-folder-mark-as-important): Ditto.
3999         (elmo-folder-unmark-important): Ditto.
4000         (elmo-folder-mark-as-answered): Define.
4001         (elmo-folder-unmark-answered): Ditto.
4002
4003         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4004         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4005         (elmo-dop-queue-method-name-alist): Likewise.
4006         (elmo-folder-mark-as-answered-dop): New inline function.
4007         (elmo-folder-unmark-answered-dop): Ditto.
4008         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4009
4010         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4011         (elmo-folder-msgdb-create): Ditto.
4012         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4013         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4014         (elmo-archive-parse-mmdf): Ditto.
4015
4016         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4017         (elmo-folder-list-unreads-internal): Ditto.
4018
4019         * elmo.el (elmo-folder-msgdb): Define as generic function.
4020         (elmo-folder-list-messages): Added argument `in-msgdb'.
4021         (elmo-folder-list-unreads): Define as generic function.
4022         (elmo-folder-list-importants): Ditto.
4023         (elmo-folder-list-answereds): Ditto.
4024         (elmo-folder-list-messages-with-global-mark): New function.
4025         (elmo-folder-msgdb-create): Removed mark arguments.
4026         (elmo-folder-unmark-answered): New generic function.
4027         (elmo-folder-mark-as-answered): Ditto.
4028         (elmo-folder-append-messages): Removed argunment `unread-marks'
4029         (elmo-folder-list-unreads-internal): Abolish.
4030         (elmo-folder-list-importants-internal): Ditto.
4031         (elmo-folder-search-requires-msgdb-p): New generic function.
4032         (elmo-folder-search-requires-msgdb-p-internal): New function.
4033         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4034         elmo-msgdb-load.
4035         (elmo-folder-search-fast): Added key 'mark'.
4036         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4037         instead of unread-marks argument.
4038         (elmo-folder-move-messages): Removed argunment `unread-marks'
4039         (elmo-folder-unmark-important): Define.
4040         (elmo-folder-mark-as-important): Ditto.
4041         (elmo-folder-unmark-read): Ditto.
4042         (elmo-folder-mark-as-read): Ditto.
4043         (elmo-folder-unmark-answered): Ditto.
4044         (elmo-folder-mark-as-answered): Ditto.
4045         (elmo-folder-replace-marks): Abolish.
4046         (elmo-generic-folder-append-msgdb): Append msgdb before checking
4047         duplicates.
4048         (elmo-folder-synchronize): Removed mark arguments;
4049         return crosspost only number.
4050
4051 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4052
4053         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4054         Remove redundunt connectivity check.
4055
4056 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4057
4058         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4059         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4060
4061 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
4062
4063         * pldap.el (ldap-decode-string): Return string as-is if
4064         `ldap-coding-system' is nil.
4065         (ldap-encode-string): Ditto.
4066         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4067         (ldap-default-host): Fixed docstring.
4068
4069 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
4070
4071         * elmo-util.el (elmo-warning): Define as a macro which uses
4072         `display-warning' if it is defined as a function.
4073
4074         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4075         (elmo-split-equal): Use it.
4076         (elmo-split-match): Ditto.
4077         (elmo-split-message-entity): New buffer-local variable.
4078         (elmo-split-subr): Set it.
4079
4080         * elmo-version.el (elmo-version): Up to 2.9.15.
4081
4082 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
4083
4084         * elmo-imap4.el (elmo-network-initialize-session):
4085         Check capability after starttls.
4086
4087 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
4088
4089         * elmo-util.el (elmo-list-delete): Added optional argument
4090         DELETE-FUNCTION.
4091
4092         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
4093
4094         * elmo-util.el (elmo-warning): Ignore errors while recenter.
4095
4096         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
4097
4098         * elmo-imap4.el (elmo-folder-initialize): Don't use
4099         elmo-imap4-default-mailbox.
4100
4101 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4102
4103         * elmo-split.el (toplevel): Use `product-provide'.
4104         (elmo-split): Checkdoc.
4105
4106 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
4107
4108         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
4109         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
4110         the function `elmo-imap4-debug-1'.
4111
4112 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4113
4114         * elmo-split.el (elmo-split): Moved to run hooks and to show
4115         message from elmo-split-subr.
4116         (elmo-split-subr): Follow the change above.
4117
4118         * elmo-split.el (elmo-split-subr): New function (renamed from
4119         elmo-split-subr).
4120         (elmo-split): Changed to call elmo-split-subr by element of
4121         elmo-split-folder.
4122         (elmo-split-folder): Changed customization type to choice.
4123
4124 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4125
4126         * elmo-split.el (elmo-split-and): Fixed condition.
4127
4128 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4129
4130         * elmo-split.el: New file.
4131         (elmo-split): Fixed logic.
4132         Display "Test:" instead of "Folder:" when reharsal.
4133
4134         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
4135         explicitly.
4136
4137         * elmo-version.el (elmo-version): Up to 2.9.14.
4138
4139         * elmo-util.el (elmo-expand-newtext): New function (renamed from
4140         wl-expand-newtext).
4141
4142 2002-06-10  Kenichi Sato <ksato@sonycom.com>
4143
4144         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
4145         message with no message-id field.
4146
4147 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
4148
4149         * elmo-version.el (elmo-version): Up to 2.9.13.
4150
4151         * elmo-dop.el (elmo-folder-status-dop): Fix.
4152
4153 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
4154
4155         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
4156
4157         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
4158         changing default value of default-mime-charset.
4159         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
4160
4161         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
4162
4163         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
4164         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
4165         instead of elmo-dop-queue-method-name-alist to check merging queue.
4166         (elmo-folder-delete-messages-dop): Delete from queue if negative
4167         message number.
4168         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
4169         file is already removed.
4170
4171 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
4172
4173         * elmo-vars.el: Bind colon keywords for old Emacsen.
4174
4175 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4176
4177         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
4178         against non-exsisting charset.
4179
4180 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
4181
4182         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
4183         Use eword-decode-and-unfold-unstructured-field-body.
4184
4185         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
4186         (elmo-msgdb-create-overview-from-buffer): Use document charset if
4187         exists to decode raw subject string.
4188         (toplevel): Require 'mime.
4189
4190         * elmo-version.el (elmo-version): Up to 2.9.12.
4191
4192 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
4193
4194         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
4195         (elmo-msgdb-set-mark): Ditto.
4196
4197         * elmo-version.el (elmo-version): Up to 2.9.11.
4198
4199 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
4200
4201         * elmo-util.el (elmo-delete-match-files): New function.
4202
4203         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
4204         instead of elmo-delete-directory.
4205
4206         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
4207         elmo-hash-minimun-size as 63.
4208
4209         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
4210         elmo-diff-unread is nil.
4211
4212         * elmo-imap4.el (elmo-folder-open): Fix.
4213
4214         * elmo.el (elmo-message-mark): Rewrite.
4215         (elmo-message-field): Ditto.
4216         (elmo-message-set-mark): Ditto.
4217         (elmo-folder-replace-marks): New function.
4218         (elmo-generic-folder-append-msgdb): Removed third argument for
4219         elmo-msgdb-append.
4220         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
4221         (elmo-msgdb-load): New implementation.
4222
4223         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
4224
4225         * elmo-util.el (elmo-list-insert): New implementation.
4226
4227         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
4228         argument for elmo-msgdb-append.
4229         
4230
4231         * elmo-msgdb.el (elmo-load-msgdb): New function.
4232         (elmo-make-msgdb): Ditto.
4233         (elmo-msgdb-get-index): New inline function.
4234         (elmo-msgdb-set-index): Ditto.
4235         (elmo-msgdb-get-entity-hashtb): Ditto.
4236         (elmo-msgdb-get-mark-hashtb): Ditto.
4237         (elmo-msgdb-get-mark): Ditto.
4238         (elmo-msgdb-set-mark): Ditto.
4239         (elmo-msgdb-count-marks): Ditto.
4240         (elmo-msgdb-get-number): Ditto.
4241         (elmo-msgdb-get-field): Ditto.
4242         (elmo-msgdb-seen-list): Ditto.
4243         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
4244         (elmo-msgdb-delete-msgs): Follow the changes above.
4245         (elmo-msgdb-overview-get-entity): Ditto.
4246         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4247         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
4248         and rewritten.
4249         (elmo-msgdb-make-index): Likewise.
4250         (elmo-msgdb-append): Removed third argument.
4251         (elmo-msgdb-clear): Clear index as nil.
4252         (elmo-folder-set-info-hashtb): Removed.
4253         (elmo-folder-set-info-max-by-numdb): Ditto.
4254         (elmo-folder-info-make-hashtb): Ditto.
4255
4256         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
4257
4258         * elmo-map.el (elmo-folder-pack-number): Ditto.
4259
4260 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
4261
4262         * elmo-version.el (elmo-version): Up to 2.9.10.
4263
4264         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
4265
4266         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
4267
4268 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
4269
4270         * elmo-utils.el (elmo-make-directory): Add option.
4271         Default file mode is 700.
4272
4273 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4274
4275         * elmo-shimbun.el (elmo-folder-local-p): Defined.
4276
4277 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
4278
4279         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
4280         mime-charset.
4281
4282         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
4283         and "smaller".
4284
4285 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4286
4287         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
4288         (elmo-shimbun-folder-entity-hash): New function.
4289         (elmo-shimbun-folder-shimbun-header): Ditto.
4290         (elmo-shimbun-entity-to-header): Ditto.
4291         (elmo-shimbun-msgdb-to-headers): Removed.
4292         (elmo-shimbun-folder-setup): Ditto.
4293         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
4294         for hash key.
4295         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
4296         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
4297         Removed useless local bind.
4298         (elmo-folder-open-internal): Don't call
4299         `elmo-shimbun-folder-setup'.
4300         (elmo-folder-close-internal): Clear entity-hash slot.
4301         (elmo-folder-clear): Ditto.
4302         (elmo-shimbun-msgdb-create-entity): Use
4303         `elmo-shimbun-folder-shimbun-header'.
4304         (elmo-map-message-fetch): Ditto.
4305         (elmo-shimbun-update-overview): Use overview entity instead of
4306         shimbun header to lookup id by references.
4307         (elmo-map-folder-list-message-locations): Use not only headers but
4308         also overviews to list locations.
4309
4310 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4311
4312         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
4313         msgdb path.
4314
4315         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
4316
4317 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4318
4319         * elmo-util.el (elmo-read-search-condition-internal): Give default
4320         value for date.
4321
4322 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
4323
4324         * elmo-util.el (elmo-condition-parse-search-value): Accept
4325         YYYY-MM-DD format to search.
4326         * elmo-date.el (elmo-date-get-datevec): Likewise.
4327
4328 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
4329
4330         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
4331         debugging code.
4332
4333 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4334
4335         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
4336         from t.
4337
4338         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
4339
4340         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
4341         case from `elmo-folder-exists-p'.
4342         (elmo-folder-exists-p): Removed.
4343         (elmo-folder-creatable-p) Ditto.
4344
4345         * elmo-net.el (elmo-folder-create): Defined.
4346         (elmo-folder-create-unplugged): New function.
4347         (elmo-folder-exists-p): Changed default value to nil from t.
4348
4349         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
4350         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
4351
4352         * elmo-dop.el (elmo-folder-create-dop): Renamed from
4353         `elmo-create-folder-dop' and append queue
4354         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
4355         (elmo-folder-create-dop-delayed): New function.
4356
4357         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
4358
4359         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
4360
4361         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
4362         (elmo-folder-writable-p) : Ditto.
4363
4364         * elmo-version.el (elmo-version): Up to 2.9.9.
4365
4366 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4367
4368         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
4369         `elmo-message-use-cache-p' returns nil.
4370         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
4371         (ignore cache file and refer the substance in local folders)
4372
4373 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4374
4375         * elmo-version.el (elmo-version): Up to 2.9.8.
4376
4377 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
4378
4379         * elmo-version.el (elmo-version): Up to 2.9.7.
4380
4381         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
4382
4383 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
4384
4385         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
4386
4387 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
4388
4389         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
4390         from --early.
4391         (elmo-map-folder-list-message-locations): Reverse location list.
4392
4393 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
4394
4395         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
4396
4397 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
4398
4399         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
4400         as a key.
4401         (elmo-nntp-folder-list-subfolders): Follow the change above.
4402
4403 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
4404
4405         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
4406         name if authentication type is specified.
4407
4408 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
4409
4410         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
4411         variable.
4412         (elmo-default-nntp-stream-type): Ditto.
4413         (elmo-default-pop3-stream-type): Ditto.
4414
4415 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
4416
4417         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
4418
4419 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4420
4421         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
4422         elmo-vars.el.
4423         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
4424
4425         * elmo-vars.el (elmo-localnews-folder-path): Removed.
4426         (elmo-maildir-folder-path): Ditto.
4427         (elmo-maildir-list): Ditto (abolished).
4428
4429 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
4430
4431         * elmo-version.el (elmo-version): Up to 2.9.6.
4432
4433 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4434
4435         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
4436         (elmo-maildir-folder-path): Ditto.
4437         (elmo-msgdb-directory): Ditto.
4438         (elmo-passwd-life-time): Ditto.
4439         (elmo-msgdb-extra-fields): Ditto.
4440         (elmo-enable-disconnected-operation): Ditto.
4441
4442 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
4443
4444         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4445         other choices.
4446         (elmo-pop3-default-authenticate-type): Ditto.
4447
4448 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4449
4450         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4451         choices for custom.
4452         (elmo-pop3-default-authenticate-type): Ditto.
4453
4454 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
4455
4456         * elmo-imap4.el (elmo-folder-rename-internal): Change current
4457         mailbox to new-folder.
4458
4459 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
4460
4461         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
4462         less than new, set new as unread.
4463
4464         * elmo-util.el (elmo-string): Don't put text-property if nil.
4465
4466 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
4467
4468         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
4469         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
4470
4471 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
4472
4473         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
4474         is nil on `completing-read'.
4475
4476 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
4477
4478         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
4479         for namespace part.
4480         (elmo-imap4-parse-namespace-subr): Ditto.
4481         (elmo-folder-list-subfolders): Append a delimiter when the specified
4482         folder path is a root with namespace and does not end with delimiter.
4483
4484 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4485
4486         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
4487         was used.
4488
4489 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4490
4491         * elmo-util.el (elmo-save-buffer): The first argument of message
4492         is a format control string.
4493
4494 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4495
4496         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
4497         `elmo-folder-diff').
4498         (elmo-diff-unread): Likewise.
4499
4500 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
4501
4502         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
4503         is t on `completing-read'.
4504
4505 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4506
4507         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
4508         method of target folder with self mark-alist if MARK-ALIST is nil.
4509
4510 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
4511
4512         * elmo-version.el (elmo-version): Up to 2.9.5.
4513
4514 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
4515
4516         * elmo-dop.el (elmo-dop-queue-merge): Implement.
4517         (elmo-dop-merge-funcs): Remove.
4518
4519 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4520
4521         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
4522         Return t if PATH is directory, too.
4523         Use `dolist' instead of while loop.
4524
4525 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4526
4527         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
4528         is deleted.
4529
4530 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4531
4532         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
4533         return value to t.
4534         (elmo-folder-list-messages-unplugged): Return t if
4535         elmo-enable-disconnected-operation is nil.
4536
4537         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
4538         `elmo-folder-list-messages-internal'.
4539
4540 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
4541
4542         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
4543         Change to looking-at `[23][0-9]+'.
4544         (elmo-network-initialize-session): Use 'error-msg'
4545         * elmo-net.el (elmo-network-open-session): Set unplugged
4546         if elmo-network-initialize-session returns 'elmo-open-err.
4547
4548 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
4549
4550         * elmo-version.el (elmo-version): Up to 2.9.4.
4551
4552 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
4553
4554         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
4555         `elmo-folder-list-messages-internal'.
4556
4557 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4558
4559         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
4560         (elmo-message-match-condition): New method.
4561         (elmo-folder-search-fast): New inline function.
4562         (elmo-msgdb-search): Removed.
4563
4564         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
4565         target folder if it is unplugged.
4566         (elmo-folder-list-messages-internal): Return t if target folder is
4567         unplugged and itself is persistent; In this case, use list be
4568         searched already.
4569
4570         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
4571         (elmo-msgdb-search-internal-primitive): Ditto.
4572         (elmo-msgdb-match-condition): New function.
4573         (elmo-msgdb-match-condition-primitive): Ditto.
4574
4575         * elmo-util.el (elmo-filter-condition-p): New macro.
4576
4577         * elmo-cache.el (elmo-folder-search): Removed.
4578
4579         * elmo-localdir.el (elmo-folder-search): Ditto.
4580
4581         * elmo-maildir.el (elmo-folder-search): Ditto.
4582
4583         * elmo-mark.el (elmo-folder-search): Ditto.
4584
4585         * elmo-nmz.el (elmo-folder-search): Ditto.
4586
4587         * elmo-sendlog.el (elmo-folder-search): Ditto.
4588
4589         * elmo-shimbun.el (elmo-folder-search): Ditto.
4590
4591         * elmo-imap4.el (elmo-folder-search): Call method of parent class
4592         if folder is unplugged.
4593
4594         * elmo-nntp.el (elmo-folder-search): Likewise.
4595         (elmo-nntp-search-internal): New function.
4596
4597         * elmo-version.el (elmo-version): Up to 2.9.3.
4598
4599 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4600
4601         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
4602
4603 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
4604
4605         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
4606
4607 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
4608
4609         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
4610
4611 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
4612
4613         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
4614         (elmo-map-folder-list-message-locations): Do drive letter conversion
4615         on Windows environment.
4616         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
4617         (elmo-map-message-fetch): Ditto.
4618
4619 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
4620
4621         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
4622         (elmo-network-initialize-session): Ditto.
4623
4624 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
4625
4626         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
4627
4628         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
4629
4630         * elmo-util.el (elmo-progress-clear): Ditto.
4631
4632         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
4633         `DD-Mon-YYYY' type date.
4634
4635 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4636
4637         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
4638         `elmo-date-make-sortable-string' instead of
4639         `timezone-make-date-sortable'.
4640
4641         * elmo-date.el (elmo-date-make-sortable-string): Use
4642         `timezone-make-time-string'.
4643
4644 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
4645
4646         * elmo.el (elmo-folder-synchronize): Delete important messages too.
4647
4648         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
4649         `since'; Fix timezone.
4650
4651         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
4652
4653         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
4654
4655 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4656
4657         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
4658
4659 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4660
4661         * elmo.el (elmo-generic-folder-append-messages): Make
4662         fetch-strategy with `use-cache' as 'maybe. Check return value of
4663         `elmo-message-fetch'.
4664         (elmo-message-fetch): Return return value of
4665         `elmo-message-fetch-with-cache-process'.
4666         (elmo-message-fetch-with-cache-process): Return non-nil if
4667         fetching was succeed. Load cache when fetching was failed and
4668         fetch-strategy-use-cache is 'maybe.
4669
4670         * elmo-util.el (elmo-file-cache-load): New function.
4671
4672         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
4673         defun.
4674
4675         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
4676         non-nil if fetching was succeed.
4677
4678         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
4679
4680         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
4681
4682         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
4683         (elmo-message-fetch-with-cache-process): Likwise.
4684
4685         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
4686
4687         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
4688
4689         * elmo-version.el (elmo-version): Up to 2.9.2.
4690
4691 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
4692
4693         * elmo.el (elmo-folder-delete): Delete msgdb path.
4694
4695         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
4696
4697         * elmo-maildir.el (elmo-folder-delete): Ditto.
4698
4699         * elmo-localdir.el (elmo-folder-delete): Ditto.
4700
4701         * elmo-imap4.el (elmo-folder-delete): Ditto.
4702
4703 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
4704
4705         * elmo.el (luna-define-class): Added `biff' slot.
4706
4707         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
4708         (elmo-pop3-debug-inhibit-logging): Abolished.
4709         (elmo-network-close-session): Eliminated needless let.
4710         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
4711         (elmo-pop3-send-command): Added `no-log' argument.
4712         (elmo-pop3-process-filter): Use `with-current-buffer'.
4713         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
4714         if login failure.
4715         (elmo-pop3-auth-apop): Likewise.
4716         (elmo-network-authenticate-session): Likewise.
4717
4718         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
4719         if biff folder.
4720
4721         * elmo-net.el (elmo-network-session-password-key): Use class symbol
4722         string to determine protocol.
4723         (elmo-network-session-name-prefix): Abolished.
4724         (elmo-network-session-cache-key): Follow the change above.
4725         (elmo-network-open-session): Ditto.
4726
4727         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
4728         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
4729
4730         * elmo-version.el (elmo-version): Up to 2.9.1.
4731
4732         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
4733         unmatch condition checking.
4734
4735         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
4736         condition.
4737
4738 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4739
4740         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
4741
4742 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
4743
4744         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
4745         test for while loop to execute at least one SEARCH command.
4746
4747 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
4748
4749         * elmo-version.el (elmo-version): Up to 2.9.0.
4750
4751 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
4752
4753         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
4754         (elmo-archive-folder-path): Define.
4755         (elmo-folder-initialize): Setup `dir-name' slot.
4756         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
4757         Use `dir-name' as prefix of each subfolders.
4758         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
4759
4760 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4761
4762         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
4763         (elmo-pipe-folder-list-target-messages): New internal function.
4764         (elmo-pipe-drain): Use new argument `ignore-list' instead of
4765         `killed-list'.
4766         (elmo-pipe-folder-copied-list-load): New function.
4767         (elmo-pipe-folder-copied-list-save): Ditto.
4768         (elmo-folder-open-internal): Follow the change above.
4769         (elmo-folder-status): Fixed for copy.
4770
4771 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
4772
4773         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
4774
4775 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
4776
4777         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
4778         elmo-copy-file instead of elmo-add-name-to-file.
4779
4780         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
4781
4782         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
4783         "file://..." index.
4784
4785         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
4786         of accept-process-output as 1.
4787         (elmo-pop3-read-contents): Ditto.
4788         (elmo-pop3-read-body): Ditto.
4789
4790 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4791
4792         * elmo-version.el (product-version-as-string): Remove define.
4793
4794 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
4795
4796         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
4797         (elmo-imap4-copy-messages): Chop number set using
4798         `elmo-imap4-number-set-chop-length'.
4799         (elmo-imap4-set-flag): Ditto.
4800         (elmo-imap4-search-internal-primitive): Ditto.
4801
4802 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4803
4804         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
4805         `elmo-folder-make-temp-dir'
4806
4807         * elmo-vars.el (elmo-cache-directory): New variable.
4808         (elmo-cache-dir): Abolished.
4809         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
4810
4811         * elmo-version.el (elmo-version): Up to 2.7.7.
4812
4813 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
4814
4815         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
4816         defcustom; Set default value as t.
4817
4818 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
4819
4820         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
4821         (ldap-search-program-arguments): Changed default value.
4822         (ldap-search-basic): Accept exit status 4.
4823         (ldap/field-body): Parse options.
4824         (ldap/collect-field): Ditto.
4825         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
4826
4827         * elmo-imap4.el (elmo-imap4-process-bye): New function.
4828         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
4829         (elmo-imap4-accept-ok): Ditto.
4830         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
4831         'notify-bye, only BYE error is reported.
4832         (elmo-folder-exists-p-plugged): Set no-error argument of
4833         `elmo-imap4-session-select-mailbox' as 'notify-bye.
4834
4835         * elmo.el (elmo-imap4-bye-error): Changed message.
4836
4837         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
4838         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
4839         queues (It causes infinite loop).
4840
4841 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4842
4843         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
4844         (RECENT UNSEEN MESSAGES) extension.
4845
4846 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
4847
4848         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
4849         Check number of overview fields.
4850
4851 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
4852
4853         * elmo.el (elmo-folder-confirm-appends): Changed message.
4854         (elmo-folder-confirm-appends): Ditto.
4855
4856         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
4857         `with-temp-buffer'.
4858         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
4859
4860 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
4861
4862         * elmo.el (elmo-folder-confirm-appends): Check whether the value
4863         of elmo-folder-update-threshold is nil, which can be set by
4864         wl-summary-update-confirm-threshold.
4865
4866 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
4867
4868         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
4869         (elmo-nmz-index-alias-alist): Ditto.
4870         (elmo-map-folder-list-message-locations): Follow the change above.
4871
4872 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4873
4874         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
4875
4876         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
4877
4878         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
4879
4880         * elmo-util.el (elmo-read): Ditto.
4881         (elmo-display-error): Ditto.
4882
4883         * elmo-vars.el (elmo-date-match): Ditto.
4884
4885         * pldap.el (ldap-coding-system): Ditto.
4886
4887         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
4888         `elmo-inhibit-number-mapping' as nil.
4889
4890 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
4891
4892         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
4893         space delimiter for list response.
4894
4895 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
4896
4897         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
4898
4899 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
4900
4901         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
4902         (elmo-map-message-fetch): Fix.
4903         * elmo-map.el (elmo-folder-status): Fix for killed.
4904
4905 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
4906
4907         * elmo-sendlog.el: New file.
4908         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
4909
4910 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
4911
4912         * acap.el (acap-logging-out): New buffer local variable.
4913         (acap-close): Set it.
4914         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
4915         an error.
4916
4917 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
4918
4919         * acap.el (acap-response-bye-p): New function.
4920         (acap-response-bye-message): Ditto.
4921         (acap-wait-for-response): If bye response is received, cause an error.
4922         (acap-parse-response): Make bye response when 'Bye' is received.
4923
4924 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
4925
4926         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
4927
4928 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4929
4930         * elmo-util.el (elmo-copy-file): Added argument
4931         `ok-if-already-exists'.
4932         (elmo-copy-file): Fixed typo.
4933
4934 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
4935
4936         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
4937
4938 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
4939
4940         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
4941
4942 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
4943
4944         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
4945         to killed-list.
4946
4947 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
4948
4949         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
4950         (elmo-folder-initialize): Fix for `copy'.
4951         (elmo-pipe-drain): Ditto.
4952         (elmo-folder-open-internal): Ditto.
4953         (elmo-folder-newsgroups): Fix.
4954
4955 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4956
4957         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
4958         for each message.
4959
4960         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
4961         recent value is returned from imap folder.
4962
4963         * elmo.el (elmo-folder-newsgroups): New generic function.
4964
4965         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
4966         (elmo-folder-initialize): Set it.
4967         (elmo-folder-expand-msgdb-path): Use it.
4968         (elmo-folder-newsgroups): Define.
4969
4970         * elmo-filter.el (elmo-folder-newsgroups): Define.
4971
4972         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
4973
4974         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
4975
4976         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
4977
4978 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4979
4980         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
4981         user option.
4982         (elmo-shimbun-header-extra-field): New inline function.
4983         (elmo-shimbun-header-set-extra-field): Ditto.
4984         (elmo-shimbun-folder-header-hash-setup): Ditto.
4985         (elmo-shimbun-update-overview): Ditto.
4986         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
4987         (elmo-shimbun-folder-setup): Use
4988         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
4989         (elmo-shimbun-get-headers): Ditto.
4990         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
4991         Insert `X-Shimbun-Id:' header if extra field is set.
4992         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
4993         field's value instead of `shimbun-header-id'.
4994
4995         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
4996         inline function.
4997         (elmo-msgdb-overview-entity-set-date): Ditto.
4998         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4999
5000 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
5001
5002         * mmimap.el (mmimap-entity-section): Changed body node number from
5003         "0" to "1".
5004
5005 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5006
5007         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5008         `elmo-folder-delete-messages'.
5009
5010         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5011         (elmo-folder-initialize): Changed to expand alias into index path.
5012
5013         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5014         `elmo-mime-insert-header-from-buffer' with 6th arg
5015         `sorted-fields'.
5016
5017 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5018
5019         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5020
5021         * elmo.el (elmo-diff-new): New inline function.
5022         (elmo-diff-unread): Ditto.
5023         (elmo-diff-all): Ditto.
5024
5025         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5026         value from responseb.
5027         (elmo-imap4-folder-diff-plugged): Ditto.
5028         (elmo-imap4-server-diff-async): Added recent argument.
5029         (elmo-server-diff-async): Ditto.
5030         (elmo-imap4-folder-diff-plugged): Ditto.
5031
5032         * elmo-version.el (elmo-version): Up to 2.7.6.
5033
5034 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5035
5036         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5037         in quoted-stirng.
5038
5039 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
5040
5041         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5042
5043         * elmo-imap4.el (elmo-folder-initialize): Ditto.
5044
5045         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5046
5047         * elmo-multi.el (elmo-folder-initialize): Ditto.
5048
5049         * elmo-util.el (elmo-parse-token): New function.
5050         (elmo-parse-prefixed-element): Ditto.
5051
5052 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
5053
5054         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5055         delete process.
5056         (elmo-imap4-accept-ok): Ditto.
5057
5058 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5059
5060         * mmimap.el (mime-imap-entity-header-string): Don't check first
5061         element of node-id is `0' (Follow last change).
5062
5063 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5064
5065         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5066         assigned irregular node-id to nested multipart section.
5067         (initialize-instance): Followed above change.
5068
5069 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5070
5071         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5072         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5073         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5074         `elmo-shimbun-get-headers');
5075         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5076         visible article on summary exists in headers).
5077         (elmo-map-message-fetch): Cause an error when folder is unplugged.
5078
5079 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5080
5081         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5082         definition.
5083
5084 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
5085
5086         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5087
5088 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5089
5090         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
5091         header separator into loop condition.
5092
5093 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5094
5095         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
5096         Return duplicate folder if it has subfolder.
5097
5098 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
5099
5100         * elmo.el (elmo-make-folder): Add folder name error check.
5101
5102         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
5103         (elmo-nntp-encode-group-string): New inline function.
5104         (elmo-nntp-decode-group-string): Ditto.
5105         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
5106         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
5107         Use `not' instead of `null';
5108         Use elmo-nntp-decode-group-string.
5109
5110         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
5111
5112         * elmo-version.el (elmo-version): Up to 2.7.5.
5113
5114 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5115
5116         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
5117         Hide progress gauge if `elmo-folder-move-messages' exits
5118         nonlocally.
5119
5120 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
5121
5122         * elmo-imap4.el (elmo-folder-initialize): Use
5123         `elmo-imap4-encode-folder-string' for folder name.
5124
5125 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5126
5127         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
5128         `done'.
5129
5130 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5131
5132         * elmo-util.el (elmo-progress-counter-alist): New internal
5133         variable.
5134         (elmo-progress-counter-value): New macro.
5135         (elmo-progress-counter-all-value): Ditto.
5136         (elmo-progress-counter-format): Ditto.
5137         (elmo-progress-counter-set-value): Ditto.
5138         (elmo-progress-set): New function.
5139         (elmo-progress-clear): Ditto.
5140         (elmo-progress-notify): Ditto.
5141
5142         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
5143         counter.
5144
5145         * elmo.el (elmo-generic-folder-append-messages): Call
5146         `elmo-progress-notify'.
5147         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
5148
5149         * elmo-archive.el (elmo-folder-append-messages): Call
5150         `elmo-progress-notify'.
5151
5152         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
5153
5154         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
5155
5156         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
5157
5158 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
5159
5160         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
5161         'Create'.
5162         (elmo-message-encache-dop): Added argument `read'.
5163
5164         * elmo-shimbun.el (elmo-message-encache): Ditto.
5165
5166         * elmo-net.el (elmo-message-encache): Ditto.
5167
5168         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
5169         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
5170         elmo-imap4-seen-messages.
5171         (elmo-folder-msgdb-create-plugged): Initialize
5172         elmo-imap4-seen-messages;
5173         Set seen mark on elmo-imap4-seen-messages.
5174
5175         * elmo-pipe.el (elmo-folder-message-file-p): Define.
5176
5177         * elmo.el (elmo-generic-folder-append-messages): Check return value of
5178         elmo-folder-append-buffer.
5179         (elmo-folder-encache): Added optional argument `read'.
5180         (elmo-message-encache): Ditto.
5181
5182         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
5183
5184         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
5185
5186         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
5187         if append buffer content succeds.
5188
5189 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
5190
5191         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
5192         elmo-display-progress.
5193
5194         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
5195         Set 4th argument of mime-display-message.
5196         (elmo-mime-display-as-is): Ditto.
5197
5198 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
5199
5200         * elmo-nmz.el (toplevel): Require 'mime-edit.
5201         (elmo-nmz-content-type-alist): Abolished.
5202         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
5203         content is not a message.
5204         (elmo-map-message-fetch): Changed behavior exept for message content;
5205         Detect mime-charset automatically, Use `mime-find-file-type' to detect
5206         content-type, Add From: and Subject: field.
5207
5208 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5209
5210         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
5211         (elmo-map-message-fetch): Add `Content-Type' field if contents is
5212         not a message.
5213
5214 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5215
5216         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
5217         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
5218
5219         * elmo-archive.el (elmo-folder-writable-p): Defined.
5220
5221         * elmo-cache.el (elmo-folder-writable-p): Ditto.
5222
5223         * elmo-filter.el (elmo-folder-writable-p): Ditto.
5224
5225         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
5226
5227         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
5228
5229         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
5230
5231         * elmo-mark.el (elmo-folder-writable-p): Ditto.
5232
5233         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
5234
5235         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
5236
5237 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
5238
5239         * elmo-util.el (elmo-address-quote-specials): New function;
5240         Renamed from `wl-address-quote-specials'.
5241
5242 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5243
5244         * elmo-version.el (elmo-version): Up to 2.7.4.
5245
5246 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
5247
5248         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
5249
5250 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
5251
5252         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
5253         both compile-time and run-time to avoid byte-compile warning.
5254
5255 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
5256
5257         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
5258
5259 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5260
5261         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
5262         option.
5263         (elmo-mime-display-as-is-internal): Use it.
5264
5265         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
5266         if `read-passwd' is not defined.
5267
5268 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
5269
5270         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
5271         by original number.
5272         (elmo-folder-status): Call `elmo-folder-open-internal';
5273         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
5274         (elmo-folder-close-internal): Set location-alist as nil.
5275         (elmo-folder-clear): Define.
5276         (elmo-folder-check): Don't set location-alist as nil.
5277
5278         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
5279
5280 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
5281
5282         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
5283         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
5284
5285         * mmimap.el (mime-imap-entity::requested): New slot.
5286         (mime-imap-location-fetch-entity-p): New generic function.
5287         (mime-decode-parameters): Define using `defun-maybe'.
5288         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
5289         content-type structure.
5290         (mime-entity-body): Return empty body if
5291         `mime-imap-location-fetch-entity-p' returns nil in the first request.
5292
5293         * elmo.el (elmo-message-displaying): New variable.
5294
5295         * elmo-mime.el (elmo-mime-message-display): Bind
5296         elmo-message-displaying as t.
5297
5298         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
5299
5300 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
5301
5302         * acap.el (acap-open): erase buffer before starting network process.
5303         (acap-store): Rewrite.
5304
5305 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
5306
5307         * elmo-imap4.el (elmo-imap4-default-mailbox,
5308         elmo-imap4-default-server
5309         elmo-imap4-default-authenticate-type,
5310         elmo-imap4-default-user,
5311         elmo-imap4-default-port,
5312         elmo-imap4-default-stream-type,
5313         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
5314
5315         * elmo-pop3.el (elmo-pop3-default-user,
5316         elmo-pop3-default-server,
5317         elmo-pop3-default-authenticate-type,
5318         elmo-pop3-default-port,
5319         elmo-pop3-default-stream-type,
5320         elmo-pop3-stream-type-alist): Ditto.
5321
5322         * elmo-nntp.el (elmo-nntp-default-server,
5323         elmo-nntp-default-user,
5324         elmo-nntp-default-port,
5325         elmo-nntp-default-stream-type,
5326         elmo-nntp-stream-type-alist): Ditto.
5327
5328         * elmo-vars.el: Follow changes above.
5329         (elmo-setting): New custom group; added 'elmo-setting group to
5330         above variables.
5331
5332         * elmo-version.el (elmo-version): Up to 2.7.3.
5333
5334         * acap.el (acap-parse-response): Don't delete process when BYE
5335         response (It causes hang-up on slow network environment).
5336         (toplevel): Added comment.
5337
5338 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
5339
5340         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
5341
5342         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
5343         parsing NIL.
5344         (acap-parse-return-metadata): Ditto.
5345
5346         * slp.el: New file.
5347         (toplevel): Fixed typo.
5348
5349         * acap.el: New file.
5350         (acap-network-stream-open): Show "Connecting..." message.
5351         (acap-parse-response): Fixed problem for BYE untagged response.
5352         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
5353         (toplevel): Added tiny comments.
5354
5355 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
5356
5357         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
5358         space delimiter for uidl response.
5359
5360 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
5361
5362         * elmo-vars.el (elmo-use-semi): Eliminated.
5363
5364         * elmo-util.el (elmo-string-assoc-all): New function.
5365
5366 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5367
5368         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
5369         property 'mime-preview-situation for `mime-preview-quit'.
5370
5371 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5372
5373         * elmo.el (elmo-message-fetch-with-cache-process): Call
5374         elmo-message-fetch-internal instead of causing an error when fetch
5375         strategy is 'entire but only 'section cache is available.
5376
5377 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
5378
5379         * elmo-version.el (elmo-version): Up to 2.7.2.
5380
5381         * elmo.el (elmo-generic-folder-append-messages): Make
5382         fetch-strategy with `use-cache'.
5383
5384         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
5385         (elmo-dop-queue-method-name): New macro.
5386
5387 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5388
5389         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
5390         unbalanced parenthesis.
5391
5392 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
5393
5394         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
5395
5396 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
5397
5398         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
5399         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
5400
5401 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
5402
5403         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
5404         local variables.
5405
5406 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
5407
5408         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
5409         (elmo-message-use-cache-p): Define.
5410         (elmo-folder-msgdb-create): Treat cache.
5411
5412 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
5413
5414         * elmo-nntp.el (elmo-network-initialize-session): Call
5415         `elmo-nntp-send-mode-reader'.
5416         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
5417
5418 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
5419
5420         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
5421         alist.
5422         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
5423         assoc.
5424
5425         * elmo-net.el (elmo-network-get-session): Set stream-type argument
5426         for `elmo-plugged-p'.
5427         (elmo-open-network-stream): Fixed stream-type argument.
5428
5429 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
5430
5431         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
5432         unknown archive type is specified.
5433
5434 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
5435
5436         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
5437
5438         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
5439         while loading msgdb.
5440
5441         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
5442         (elmo-folder-open-internal): Rewrite.
5443
5444 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
5445
5446         * elmo-mime.el (elmo-mime-display-as-is-internal):
5447         Adjust buffer-multibyte status.
5448
5449 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
5450
5451         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
5452         of elmo-condition-find-key.
5453
5454         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
5455         (elmo-condition-in-msgdb-p): Ditto.
5456         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
5457         argument.
5458
5459 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5460
5461         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
5462
5463 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
5464
5465         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
5466         label for elmo-display-progress.
5467
5468 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
5469
5470         * elmo.el (elmo-folder-clear): New method.
5471         (elmo-folder-clear): Define.
5472         (elmo-folder-synchronize): Call `elmo-folder-clear'.
5473
5474         * elmo-shimbun.el (elmo-folder-check): Rewrite.
5475         (elmo-folder-clear): Define.
5476
5477         * elmo-map.el (elmo-folder-clear): Define.
5478
5479         * elmo-version.el (elmo-version): Up to 2.7.1.
5480
5481 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
5482
5483         * elmo.el (elmo-folder-synchronize): Return list of nil when no
5484         updates.
5485
5486 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
5487
5488         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
5489         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
5490
5491 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
5492
5493         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
5494
5495         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
5496         and re-written.
5497
5498         * elmo-imap4.el (elmo-folder-initialize): Use
5499         elmo-get-network-stream-type.
5500
5501         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5502
5503         * elmo-pop3.el (elmo-folder-initialize): Ditto.
5504
5505 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
5506
5507         * elmo.el (elmo-message-encache): Set unread argument for
5508         elmo-message-fetch.
5509
5510         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
5511
5512         * elmo.el (elmo-net-port-info): New method.
5513
5514         * elmo-shimbun.el (elmo-net-port-info): Define.
5515         (elmo-message-encache): Ditto.
5516
5517         * elmo-net.el (elmo-net-port-info): Define as method.
5518
5519         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
5520         unplugged status when elmo-enable-disconnected-operation is t.
5521
5522         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
5523         of spool folder before checking new number.
5524
5525 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
5526
5527         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
5528         (elmo-network-setup-session): Ditto.
5529         (elmo-message-fetch-plugged): Ditto.
5530         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
5531         (elmo-network-initialize-session): Ditto.
5532         (elmo-pop3-read-response): Abolish 3rd argument.
5533         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
5534         (elmo-pop3-read-contents): Ditto.
5535         (elmo-pop3-read-body): Ditto.
5536         (elmo-folder-status): Call elmo-folder-close.
5537         (elmo-pop3-lock): Abolish.
5538         (elmo-pop3-unlock): Ditto.
5539         (elmo-pop3-locked-p): Ditto.
5540         (elmo-folder-check): Don't call elmo-pop3-locked-p.
5541
5542 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
5543
5544         * elmo-version.el (elmo-version): Up to 2.7.0.
5545
5546         * elmo-pop3.el (elmo-pop3-debug): New variable.
5547         (elmo-pop3-debug-inhibit-logging): Ditto.
5548         (elmo-pop3-debug): New function.
5549         (elmo-pop3-send-command): Call elmo-pop3-debug.
5550         (elmo-pop3-read-response): Added keep-lock optional argument;
5551         Don't unlock if keep-lock is non-nil.
5552         (elmo-pop3-process-filter): Call elmo-pop3-debug.
5553         (elmo-network-authenticate-session): Bind
5554         elmo-pop3-debug-inhibit-logging as t.
5555         (elmo-network-setup-session): Call elmo-pop3-read-response with
5556         keep-lock argument.
5557         (elmo-pop3-read-msg): Ditto.
5558         (elmo-pop3-locked-p): Call elmo-pop3-debug.
5559         (elmo-pop3-read-body): Call elmo-pop3-unlock.
5560         (elmo-network-initialize-session): Call elmo-pop3-lock.
5561         (elmo-folder-close-internal): Don't clear location-alist slot.
5562         (elmo-folder-check): Clear location-alist slot.
5563
5564 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
5565
5566         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
5567         (elmo-pop3-send-command): Call elmo-pop3-lock.
5568         (elmo-pop3-read-response): Call elmo-pop3-unlock.
5569         (elmo-pop3-read-contents): Ditto.
5570         (elmo-pop3-lock): New function.
5571         (elmo-pop3-unlock): Ditto.
5572         (elmo-pop3-locked-p): Ditto.
5573         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
5574         returns t.
5575
5576 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
5577
5578         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
5579
5580         * elmo-util.el (elmo-file-field-primitive-condition-match):
5581         New inline function (Don't fetch file content if "first" or "last").
5582         (elmo-file-field-condition-match): Use
5583         elmo-file-field-primitive-condition-match.
5584
5585         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
5586         "first".
5587
5588         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
5589         (elmo-message-fetch-plugged): Fixed.
5590
5591         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
5592
5593 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
5594
5595         * elmo.el (elmo-folder-move-messages): Bind
5596         elmo-inhibit-display-retrieval-progress as t while moving messages.
5597
5598         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
5599         New variable.
5600         (elmo-inhibit-display-retrieval-progress): Ditto.
5601
5602         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
5603         for retrieval progress;
5604         Don't display progress when total buffer size is smaller than
5605         elmo-display-retrieval-progress-threshold.
5606         (elmo-message-fetch-plugged): Don't display progress when
5607         elmo-inhibit-display-retrieval-progress is non-nil.
5608
5609         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
5610         for retrieval progress;
5611         Don't display progress when literal size is smaller than
5612         elmo-display-retrieval-progress-threshold.
5613         (elmo-imap4-message-fetch): Don't display progress when
5614         elmo-inhibit-display-retrieval-progress is non-nil.
5615
5616 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
5617
5618         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
5619         (elmo-imap4-find-next-line): Display progress whille literal fetching.
5620         (elmo-imap4-message-fetch): Likewise.
5621
5622         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
5623         (elmo-shimbun-index-range-alist): Ditto.
5624         (elmo-shimbun-use-entire-index): Abolish.
5625         (shimbun-mua-use-entire-index): Ditto.
5626         (elmo-shimbun-folder): Added new slot `range'.
5627         (elmo-folder-initialize): Setup slot `range'.
5628
5629 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
5630
5631         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
5632         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
5633         (elmo-shimbun-get-headers): Use return value of
5634         `shimbun-article-expiration-days'.
5635         (elmo-folder-close-internal): Clean up last-check slot.
5636
5637         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
5638         (elmo-pop3-total-size): New variable.
5639         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
5640
5641         * elmo.el (elmo-folder-reserve-status-p): New method.
5642
5643         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
5644         (elmo-shimbun-use-entire-index): New user option.
5645         (shimbun-elmo-mua): New class.
5646         (shimbun-mua-search-id): Define.
5647         (shimbun-mua-use-entire-index): Ditto.
5648         (elmo-shimbun-folder:last-check): New slot.
5649         (elmo-shimbun-headers-cache-header-list): Abolish.
5650         (elmo-shimbun-headers-cache-set-header-list): Ditto.
5651         (elmo-shimbun-headers-cache-header-hash): Ditto.
5652         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
5653         (elmo-shimbun-headers-cache-last-check): Ditto.
5654         (elmo-shimbun-headers-cache-set-last-check): Ditto.
5655         (elmo-shimbun-headers-check-p): Rewrite.
5656         (elmo-shimbun-msgdb-to-headers): New function.
5657         (elmo-shimbun-get-headers): Rewrite.
5658         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
5659         (elmo-folder-open-internal): Get headers only if
5660         `elmo-shimbun-headers-check-p' is non-nil.
5661         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
5662         is non-nil.
5663         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
5664         (elmo-quit): Removed.
5665
5666         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
5667         function.
5668         (elmo-msgdb-overview-entity-set-extra): Ditto.
5669         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
5670
5671         * elmo-map.el (elmo-folder-status): Don't call
5672         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
5673         is non-nil.
5674
5675 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5676
5677         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
5678         of `elmo-msgdb-search-internal-primitive' when condition's car is
5679         `and' or `or'.
5680
5681 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
5682
5683         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
5684
5685 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5686
5687         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
5688         call `elmo-pipe-drain'.
5689
5690 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
5691
5692         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
5693         typo. (elmo-cache-folder -> elmo-mark-folder)
5694
5695 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5696
5697         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
5698         `elmo-message-fetch'.
5699
5700 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5701
5702         * elmo-net.el (elmo-message-encache): Fixed typo.
5703         (elmo-message-fetch-unplugged): Changed call
5704         `elmo-message-fetch-internal' without argument `outbuf'.
5705
5706 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
5707
5708         * elmo.el (elmo-message-encache): Define as generic function.
5709         (elmo-message-fetch-field): New generic function.
5710         (elmo-message-fetch-with-cache-process): Cause an error when
5711         fetch strategy is 'entire but only 'section cache is available.
5712         (toplevel): Fixed nmz folder definition.
5713
5714         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
5715         (elmo-msgdb-resume-list-filename): Ditto.
5716         (elmo-queue-filename): Ditto.
5717         (elmo-enable-disconnected-operation): Changed default value to t.
5718
5719         * elmo-util.el (elmo-cache-path-section-p): New function.
5720         (elmo-file-cache-get): Use it.
5721         (elmo-dop-queue-filename): Moved from elmo-dop.el.
5722         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
5723         (elmo-dop-queue-save): Ditto.
5724
5725         * elmo-net.el (elmo-folder-status-unplugged): Call
5726         elmo-folder-status-dop.
5727         (elmo-folder-list-messages-unplugged): Implemented.
5728         (elmo-folder-delete-messages-unplugged): Define.
5729         (elmo-folder-msgdb-create): Define.
5730         (elmo-folder-msgdb-create-unplugged): Define.
5731         (elmo-folder-mark-as-read-unplugged): Ditto.
5732         (elmo-folder-unmark-read-unplugged): Ditto.
5733         (elmo-folder-mark-as-important-unplugged): Ditto.
5734         (elmo-folder-unmark-important-unplugged): Ditto.
5735         (elmo-message-encache): Ditto.
5736
5737         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
5738         (elmo-dop-queue-save): Ditto.
5739
5740         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
5741         `elmo-folder-msgdb-create'.
5742         (elmo-folder-append-buffer): Implemented unplugged operation.
5743         (elmo-folder-append-messages): Call parent method in unplugged status.
5744         (elmo-message-fetch-unplugged): Removed definition.
5745         (elmo-message-fetch-field): Implemented.
5746
5747         * elmo-dop.el (toplevel): Require 'elmo-localdir.
5748         (elmo-dop-folder): Removed variable definition.
5749         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
5750         (elmo-dop-queue-flush): Implemented.
5751         (elmo-dop-queue-merge): Removed definition (TODO).
5752         (elmo-dop-spool-folder): New function.
5753         (elmo-dop-spool-folder-append-buffer): Ditto.
5754         (elmo-dop-spool-folder-list-messages): Ditto.
5755         (elmo-dop-list-deleting-messages): Ditto.
5756         (elmo-folder-append-buffer-dop): Ditto.
5757         (elmo-folder-delete-messages-dop): Ditto.
5758         (elmo-message-encache-dop): New inline function.
5759         (elmo-create-folder-dop): Ditto.
5760         (elmo-folder-mark-as-read-dop): Ditto.
5761         (elmo-folder-unmark-read-dop): Ditto.
5762         (elmo-folder-mark-as-important-dop): Ditto.
5763         (elmo-folder-unmark-important-dop): Ditto.
5764         (elmo-folder-status-dop): Fixed.
5765         (elmo-folder-append-buffer-dop-delayed): New function.
5766         (elmo-folder-delete-messages-dop-delayed): Ditto.
5767         (elmo-dop-msgdb): Ditto.
5768
5769 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5770
5771         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
5772
5773 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5774
5775         * elmo.el (elmo-folder-move-messages): Fixed problem when
5776         `dst-folder' is 'null.
5777
5778 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5779
5780         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
5781         instead of current mark.
5782
5783         * elmo-multi.el (elmo-folder-list-importants-internal): No
5784         operation if importants is not list.
5785
5786         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
5787         Return t if importants is not list.
5788
5789         * elmo-map.el (elmo-map-folder-list-importants): Define.
5790         (elmo-folder-list-importants-internal): Check return value of
5791         `elmo-map-folder-list-importants-internal'.
5792
5793         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
5794
5795         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
5796
5797         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
5798
5799         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
5800
5801 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
5802
5803         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
5804         (Patch is provided by <kita@coe.nttdata.co.jp>).
5805
5806 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5807
5808         * elmo.el (elmo-folder-synchronize): Don't check important mark in
5809         mark folder.
5810
5811 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5812
5813         * elmo.el (elmo-message-fetch): Define.
5814         (elmo-message-fetch-with-cache-process): New generic method.
5815         (elmo-message-fetch-internal): New generic method.
5816         (elmo-folder-synchronize):
5817
5818         * elmo-archive.el (elmo-message-fetch-internal): Define.
5819         (elmo-message-fetch): Eliminated.
5820
5821         * elmo-localdir.el (elmo-message-fetch-internal): Define.
5822         (elmo-message-fetch): Eliminated.
5823
5824         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
5825         argument OUTBUF.
5826         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
5827
5828         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
5829         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
5830
5831         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
5832         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
5833
5834         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
5835
5836         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
5837
5838         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
5839
5840         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
5841         (elmo-message-fetch-unplugged): New generic method.
5842         (elmo-message-fetch-internal): Remove cache process (Renamed from
5843         `elmo-message-fetch').
5844
5845         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
5846         (elmo-message-fetch): Eliminated.
5847         (elmo-message-fetch-unplugged): Ditto.
5848
5849         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
5850
5851 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5852
5853         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
5854         of `to-be-deleted' from number-alist to number-list.
5855
5856 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5857
5858         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
5859         (elmo-folder-mark-as-important): Ditto.
5860
5861 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
5862
5863         * elmo.el (elmo-folder): Added process-duplicates slot.
5864
5865         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
5866         (elmo-folder-unmark-read): Ditto.
5867         (elmo-folder-unmark-important): Ditto.
5868         (elmo-folder-mark-as-important): Ditto.
5869
5870         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
5871         duplicated message processing.
5872
5873         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
5874
5875 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5876
5877         * elmo-util.el (elmo-list-subdirectories-1): New function.
5878         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
5879         (elmo-mapcar-list-of-list): New function.
5880
5881         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
5882         `elmo-mapcar-list-of-list' instead of `mapcar'.
5883
5884         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
5885
5886         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
5887         `elmo-have-link-count'. Return the fully qualified folder name.
5888
5889 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
5890
5891         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
5892         (elmo-shimbun-headers-cache): New internal variable.
5893         (elmo-shimbun-headers-cache-header-list): New inline function.
5894         (elmo-shimbun-headers-cache-set-header-list): Ditto.
5895         (elmo-shimbun-headers-cache-header-hash): Ditto.
5896         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
5897         (elmo-shimbun-headers-cache-last-check): Ditto.
5898         (elmo-shimbun-headers-cache-set-last-check): Ditto.
5899         (elmo-shimbun-lapse-seconds): Ditto.
5900         (elmo-shimbun-headers-cache-check-p): Ditto.
5901         (elmo-shimbun-get-headers): New function.
5902         (elmo-folder-open-internal): Call it.
5903         (elmo-quit): Define (Clear headers-cache).
5904
5905 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
5906
5907         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
5908
5909         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
5910         (elmo-msgdb-flist-save): Ditto.
5911
5912         * elmo-shimbun.el (elmo-folder-list-subfolders):
5913         Use `shimbun-groups' instead of `shimbun-groups-internal'.
5914         (elmo-folder-exists-p): Ditto.
5915
5916         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
5917         argument for `shimbun-header-insert'.
5918
5919 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
5920
5921         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
5922         at first time.
5923
5924         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
5925         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
5926
5927 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
5928
5929         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
5930         (elmo-folder-plugged-p): Define.
5931         (elmo-folder-set-plugged): Ditto.
5932         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
5933         (elmo-folder-list-messages-internal): Return t if unplugged.
5934         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
5935
5936         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
5937         when elmo-folder-list-messages-internal method of children returns t.
5938
5939         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
5940         pair is nil.
5941         (elmo-folder-open-internal): Don't update if unplugged status.
5942
5943 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
5944
5945         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
5946         new message.
5947
5948 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
5949
5950         * elmo-util.el (elmo-file-cache-save): Ignore errors.
5951
5952         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
5953         saving.
5954
5955 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
5956
5957         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
5958
5959         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
5960         (elmo-folder-open-internal): Set up headers slot.
5961         (elmo-folder-check): Call elmo-folder-close-internal and
5962         elmo-folder-open-internal.
5963         (elmo-folder-close-internal): Clean up headers slot.
5964
5965 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
5966
5967         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
5968         exactly folder list.
5969         (elmo-folder-append-messages): Fixed append archive with prefix.
5970
5971         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
5972         make temp files with start-number.
5973
5974         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
5975
5976 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5977
5978         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
5979         argument `visible-only'.
5980         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
5981         instead of `if'.
5982
5983         * elmo-pop3.el (elmo-folder-open-internal): Check
5984         `elmo-inhibit-number-mapping' is non-nil.
5985
5986         * elmo-pipe.el (elmo-folder-status): Fixed.
5987
5988 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
5989
5990         * elmo.el (elmo-dop-queue-flush): Added autload setting.
5991
5992         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
5993         (elmo-folder-open-internal): Setup `header-hash' slot.
5994         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
5995         information.
5996         (elmo-map-message-fetch): Ditto.
5997
5998 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
5999
6000         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6001         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6002         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6003         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6004
6005         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6006
6007 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
6008
6009         * sb-airs.el: Added footer.
6010
6011         * shimbun.el (shimbun-article): Define as luna-method.
6012
6013         * sb-tcup.el: New file.
6014
6015         * sb-airs.el (toplevel): Require 'sb-mhonarc.
6016         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6017
6018 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
6019
6020         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6021         (shimbun-get-headers): Ditto.
6022
6023         * elmo.el: Moved obsolete variable definitions from
6024         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6025
6026         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6027         groups.
6028
6029         * shimbun.el: New file.
6030
6031         * elmo-shimbun.el: New file.
6032
6033         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6034         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6035         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6036         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6037
6038 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
6039
6040         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6041         hierarchy is t.
6042
6043 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
6044
6045         * elmo.el (elmo-folder-msgdb): Define as macro.
6046         (elmo-folder-open): Added argument `load-msgdb'.
6047         (elmo-generic-folder-open): Ditto.
6048         (elmo-folder-encache): New function.
6049
6050         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6051
6052         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6053
6054         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6055         Eliminated argument FOLDER and added argument MSGDB.
6056         (elmo-dop-queue-load): Moved from elmo-dop.el.
6057         (elmo-dop-queue-save): Ditto.
6058
6059         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6060
6061         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6062
6063         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6064         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6065         (elmo-filter-folder-list-importants-internal): Ditto.
6066
6067         * elmo-map.el (elmo-folder-pack-number): Ditto.
6068
6069         * elmo-mime.el (elmo-mime-message-display): Ditto.
6070
6071         * elmo.el (elmo-generic-folder-commit): Ditto.
6072         (elmo-folder-list-unreads): Ditto.
6073         (elmo-folder-list-importants): Ditto.
6074         (elmo-generic-folder-commit): Ditto.
6075         (elmo-message-set-mark): Ditto.
6076         (elmo-generic-folder-append-msgdb): Ditto.
6077         (elmo-folder-synchronize): Ditto.
6078         (elmo-folder-messages): Ditto.
6079         (elmo-init): Call elmo-dop-queue-load.
6080         (elmo-folder-list-messages): Ditto.
6081
6082         * elmo-nntp.el (elmo-folder-update-number): Ditto.
6083         (elmo-nntp-folder-process-crosspost): Ditto.
6084         (elmo-folder-list-unreads-internal): Ditto.
6085
6086         * elmo-dop.el: Removed old functions.
6087
6088 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
6089
6090         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
6091         `folder' to `msgdb'.
6092
6093 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
6094
6095         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
6096         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
6097
6098         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
6099         case-fold-search.
6100
6101 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
6102
6103         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
6104         defined.
6105
6106         * mmimap.el (toplevel): Require 'mime-parse and 'static.
6107         (mmimap-parse-parameters-from-list): Define as alias for
6108         `mime-decode-parameter-plist' if it is defined as function.
6109         (mmimap-make-mime-entity): Added argument `number'.
6110         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
6111         as 0.
6112         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
6113
6114         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
6115
6116         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
6117
6118         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
6119
6120 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
6121
6122         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
6123
6124         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
6125         when elmo-imap4-default-authenticate-type is nil.
6126         (elmo-folder-list-subfolders): Ditto
6127         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
6128         (elmo-imap4-fetch-callback-1-subr): Renamed from
6129         `elmo-imap4-fetch-callback-1' and define as inline function.
6130         (elmo-imap4-fetch-callback-1):
6131         Renamed from `elmo-imap4-fetch-callback'.
6132         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
6133
6134         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
6135         msgdb path (To keep compatibility with main trunk).
6136
6137         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
6138
6139         * elmo-util.el (elmo-make-file-cache): Moved position of
6140         some macros.
6141
6142         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
6143         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
6144         instead of `elmo-pop3-inhibit-uidl'.
6145         (elmo-folder-exists-p): Ditto.
6146         (elmo-pop3-folder-list-messages): Ditto.
6147
6148         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
6149         instead of `elmo-pop3-inhibit-uidl'.
6150         (elmo-folder-status): Ditto.
6151
6152         * elmo-dop.el (elmo-dop-folder): New variable.
6153         (elmo-dop-lock-message): Eliminated.
6154         (elmo-dop-unlock-message): Ditto.
6155         (elmo-dop-lock-list-load): Ditto.
6156         (elmo-dop-lock-list-save): Ditto.
6157         (elmo-dop-delete-folder): Ditto.
6158         (elmo-dop-rename-folder): Ditto.
6159
6160         * elmo.el: Removed incomplete commentary.
6161
6162 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6163
6164         * elmo.el (toplevel): Require 'elmo-version first;
6165         for little `recursive-load-depth' settings.
6166         Fix "ends here" comment.
6167
6168 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
6169
6170         * elmo-util.el (toplevel): Require 'poem;
6171         Some functions are moved from elmo-cache.el.
6172
6173         * elmo-net.el (toplevel): Require 'elmo-cache.
6174
6175         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
6176
6177         * elmo.el (toplevel): Ditto.
6178
6179         * elmo-cache.el: Rewrite with luna;
6180         Some functions are moved to elmo-util.el.
6181
6182         * elmo-internal.el (elmo-internal-folder-list): New variable.
6183         (elmo-internal-folder-initialize): Rewrite.
6184         (elmo-folder-list-subfolders): Ditto.
6185
6186         * elmo-cache.el (elmo-cache-search-all): Eliminated.
6187         (elmo-cache-collect-sub-directories): Ditto.
6188
6189 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
6190
6191         * elmo-version.el (elmo-version): Up to 2.5.8.
6192
6193         * elmo.el (elmo-folder-list-messages-mark-match): New function.
6194
6195         * elmo-util.el (elmo-list-insert): New function.
6196
6197 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
6198
6199         * elmo.el (elmo-init): New function.
6200         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
6201
6202         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
6203         (Renamed from `elmo-localdir-header-chop-length').
6204
6205         * elmo-pop3.el (elmo-pop3-use-cache,
6206         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
6207
6208         * elmo-nntp.el (elmo-message-fetch): Define.
6209         (elmo-message-fetch-unplugged): Ditto.
6210         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
6211         (elmo-nntp-use-cache): Ditto.
6212         (elmo-nntp-max-number-precedes-list-active): Ditto.
6213
6214         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
6215
6216         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
6217         `elmo-msgdb-insert-file-header'.
6218         Use `elmo-msgdb-file-header-chop-length'.
6219
6220         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
6221         `elmo-vars.el'.
6222
6223         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
6224         (elmo-cache-msgdb-create-overview-entity-from-file): Use
6225         `elmo-msgdb-insert-file-header'.
6226
6227         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
6228         Use new variable;
6229         Define obsolete variables with `elmo-define-obsolete-variable',
6230
6231         * elmo-util.el (elmo-warning-buffer-name): New constant.
6232         (elmo-warning): New function.
6233         (elmo-obsolete-variable-alist): New variable.
6234         (elmo-obsolete-variable-show-warnings): New variable.
6235         (elmo-define-obsolete-variable): New function.
6236         (elmo-resque-obsolete-variable): Ditto.
6237         (elmo-resque-obsolete-variables): Ditto.
6238
6239 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6240
6241         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
6242         Eliminated.
6243
6244         * elmo-pop3.el, elmo-nntp.el: Use custom.
6245
6246 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6247
6248         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
6249         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
6250
6251 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6252
6253         * Luna-fy Kenichi OKADA's following changes.
6254         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
6255         `nohide'.
6256         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
6257
6258 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
6259
6260         * elmo-util.el (elmo-display-progress): Prefer
6261         `progress-feedback-with-label' to `lprogress-display'.
6262
6263 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6264
6265         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
6266
6267 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
6268
6269         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
6270         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
6271         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6272         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6273         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
6274         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
6275         * elmo-archive.el (elmo-archive-list-folder): Ditto.
6276         * elmo-filter.el (elmo-filter-list-folder): Ditto.
6277         * elmo-internal.el (elmo-internal-list-folder): Ditto.
6278         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6279         * elmo-multi.el (elmo-multi-list-folder): Ditto.
6280         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6281         * elmo-dop.el (elmo-dop-list-folder): Ditto.
6282
6283 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6284
6285         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
6286         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
6287
6288 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6289
6290         * elmo.el (elmo-folder-process-crosspost): New generic method.
6291         (elmo-folder-writable-p): Ditto.
6292         (elmo-folder-message-appendable-p): Eliminated.
6293         (elmo-generic-folder-append-msgdb): Rewrite.
6294         (elmo-newsgroups-hashtb): New internal variable.
6295         (elmo-crosspost-message-set): Eliminated.
6296         (elmo-crosspost-message-delete): Ditto.
6297         (elmo-setup-subscribed-newsgroups): New function.
6298         (elmo-crosspost-message-alist-modified): New internal variable.
6299         (elmo-crosspost-message-alist-load): New function (Renamed from
6300         `wl-crosspost-alist-load').
6301         (elmo-crosspost-message-alist-save): Ditto (Renamed from
6302         `wl-crosspost-alist-save').
6303
6304         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
6305
6306         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
6307         `unreads'.
6308         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
6309         elmo-newsgroups-hashtb).
6310         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
6311         `elmo-nntp-folder-update-crosspost-message-alist'.
6312         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
6313         `elmo-nntp-groups-hashtb'.
6314         (elmo-nntp-make-groups-hashtb): Eliminated.
6315         (elmo-nntp-parse-newsgroups): New function (Renamed from
6316         `wl-parse-newsgroups').
6317         (elmo-folder-creatable-p, elmo-folder-writable-p,
6318         elmo-folder-close-internal, elmo-folder-mark-as-read,
6319         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
6320         Define.
6321         (elmo-nntp-folder-update-crosspost-message-alist): New function.
6322
6323         * elmo-net.el (elmo-message-fetch): Check buffer size.
6324
6325         * elmo-multi.el (elmo-multi-split-number-alist): New function.
6326
6327         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
6328
6329         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
6330         before `close' command.
6331
6332         * elmo.el (elmo-folder-list-unreads-internal): Added argument
6333         `mark-alist' (All other related portions are changed).
6334
6335 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
6336
6337         * elmo-util.el (elmo-create-hash-size): Eliminated.
6338         (elmo-make-hash) Make a hash with `one less than a power of two'
6339         length.
6340
6341         * elmo-vars.el (elmo-hash-minimum-size): New variable.
6342         (elmo-hash-maximum-size): Changed value.
6343
6344 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
6345
6346         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
6347         (elmo-mime-message-display-as-is): Ditto.
6348
6349 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
6350
6351         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
6352         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
6353
6354 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
6355
6356         * elmo-mark.el: New file.
6357
6358         * elmo-internal.el: Rewrite (Almost empty).
6359
6360 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
6361
6362         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
6363         (mime-imap-entity-header-string): Ditto.
6364         (mmimap-entity-section): Rewrite.
6365
6366 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
6367
6368         * elmo-nmz.el: New file.
6369
6370         * elmo-pipe.el: Rewrite with luna.
6371
6372 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
6373
6374         * elmo-archive.el: Rewrite with luna.
6375
6376         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
6377         (elmo-folder-list-importants-internal): Ditto.
6378
6379 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
6380
6381         * elmo-archive.el (elmo-archive-version): Abolish.
6382         (toplevel) Removed `boso' comment.
6383
6384 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
6385
6386         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
6387         elmo-msgdb-add-msgs-to-seen-list-subr;
6388         Changed argument seen-marks to unread-marks.
6389
6390         * elmo-nntp.el: Rewrite with luna.
6391
6392 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
6393
6394         * elmo-filter.el: Rewrite with luna.
6395
6396 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
6397
6398         * elmo-pop3.el: Rewrite with luna.
6399
6400 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
6401
6402         * elmo-multi.el: Rewrite with luna.
6403
6404         * elmo-vars.el (elmo-use-killed-list): Abolish.
6405         All other related portions are changed.
6406         (elmo-filename-replace-string-alist): Renamed from
6407         elmo-msgid-replace-string-alist.
6408
6409 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
6410
6411         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
6412
6413         * elmo-map.el: New file.
6414         * elmo-maildir.el: Rewrite with luna.
6415
6416 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
6417
6418         * elmo.el: Changed meaning of `elmo-folder-commit'.
6419         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
6420
6421 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
6422
6423         * elmo.el (elmo-folder-append-buffer): New function.
6424         (Renamed from `elmo-append-msg')
6425
6426 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
6427
6428         * elmo-mime.el: New file.
6429
6430 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
6431
6432         * elmo-cache.el: Rewrite.
6433
6434 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6435
6436         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
6437
6438 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
6439
6440         * elmo-vars.el (elmo): New group.
6441         (elmo-strict-diff-folder-regexp): New variable.
6442
6443         * elmo-util.el (elmo-call-func): Abolish.
6444         (elmo-folder-get-type): Ditto.
6445         (elmo-*-get-spec): Ditto.
6446         (elmo-*-spec-*): Ditto.
6447         (elmo-imap4-identical-name-space-p): Ditto.
6448         (elmo-folder-identical-system-p): Ditto.
6449         (elmo-folder-direct-copy-alist): Ditto.
6450         (elmo-folder-direct-copy-p): Ditto.
6451
6452         * elmo-pipe.el (elmo-pipe-folder): New luna class.
6453         (elmo-folder-initialize): Define.
6454         (elmo-folder-get-primitive-list): Ditto.
6455
6456         * elmo-nntp.el (elmo-nntp-folder): New luna class.
6457         (elmo-folder-initialize): Define.
6458         Renamed `elmo-network-session-host-internal' to
6459         `elmo-network-session-server-internal'.
6460
6461         * elmo-multi.el (elmo-multi-folder): New luna class.
6462         (elmo-folder-initialize): Define.
6463         (elmo-folder-get-primitive-list): Ditto.
6464         (elmo-folder-contains-type): Ditto.
6465         (elmo-message-use-cache-p): Ditto.
6466
6467         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
6468         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
6469
6470         * elmo-maildir.el (elmo-maildir-folder): New luna class.
6471         (elmo-folder-initialize): Define.
6472
6473         * elmo-filter.el (elmo-filter-folder): New luna class.
6474         (elmo-folder-initialize): Define.
6475         (elmo-folder-get-primitive-list): Ditto.
6476         (elmo-folder-contains-type): Ditto.
6477
6478 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
6479
6480         * elmo-imap4.el: Rewrite with luna.
6481
6482         * mmimap.el: New file.
6483
6484         * mmelmo.el, mmelmo-imap4.el: Removed.
6485
6486         * elmo-net.el: Ditto.
6487
6488         * elmo-pop3.el (elmo-pop3-folder): New luna class.
6489         (elmo-folder-initialize): Define.
6490
6491         * elmo-archive.el (elmo-archive-folder): New luna class.
6492         (elmo-folder-initialize): Define.
6493
6494         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
6495         `elmo-folder-msgdb-path'.
6496         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
6497         `elmo-make-folder'.
6498
6499 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
6500
6501         * elmo.el: New file.
6502
6503         * elmo2.el: Renamed to elmo.el.
6504
6505 \f
6506 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
6507
6508         * elmo-cache.el (elmo-cache-expire-by-size): Count
6509         a disk usage for a cache file entry in KB even when
6510         its kind is a directory.
6511
6512 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
6513
6514         * elmo-version.el (elmo-version): Up to 2.5.7.
6515
6516 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6517
6518         * elmo-version.el (elmo-version): Up to 2.5.6.
6519
6520 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
6521
6522         * elmo-version.el (elmo-version): Up to 2.5.5.
6523
6524 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
6525
6526         * elmo-imap4.el (elmo-network-authenticate-session):
6527         Fixed a logic for response checking.
6528
6529 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
6530
6531         * elmo-net.el: Add autoload settings for `starttls-negotiate',
6532         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
6533         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
6534         `sasl-mechanisms'.
6535
6536         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
6537         for `starttls-open-stream' and `starttls-negotiate'.
6538
6539         * elmo-nntp.el: Remove autoload settings for
6540         `starttls-open-stream' and `starttls-negotiate'.
6541
6542         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
6543         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
6544         `luna-define-class' with `eval-and-compile'.
6545
6546 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
6547
6548         * elmo-util.el (elmo-read-search-condition-internal):
6549         Require an element of table for searching field.
6550
6551 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
6552
6553         * elmo-version.el (elmo-version): Up to 2.5.4.
6554
6555 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
6556
6557         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
6558
6559 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
6560
6561         * elmo-nntp.el (elmo-network-initialize-session): omitted.
6562
6563 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
6564
6565         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
6566         before greeting.
6567
6568 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
6569
6570         * elmo-imap4.el (elmo-imap4-delete-folder):
6571         Send "close" before "delete" (Use commented out line).
6572         (elmo-imap4-rename-folder): Ditto.
6573
6574         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
6575         folder string itself.
6576         (elmo-dop-list-deleted): New function.
6577         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
6578         killed.
6579
6580         * elmo-util.el (elmo-string-rassoc-all): New function.
6581
6582 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
6583
6584         * elmo-version.el (elmo-version): Up to 2.5.3.
6585
6586         * elmo-net.el (elmo-network-get-session): Changed logic for
6587         checking process status.
6588
6589         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
6590         process is nil;
6591         Changed logic for checking process status.
6592
6593 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
6594
6595         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
6596         before greeting.
6597         (elmo-network-setup-session): Set UIDL hash size according to
6598         the length of list response.
6599         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
6600         according to the length of list response;
6601         Return the length of list response.
6602         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
6603
6604 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
6605
6606         * elmo-imap4.el (toplevel): Require 'ssl.
6607         Add autoload 'starttls.
6608         * elmo-pop3.el (toplevel): Ditto.
6609         * elmo-nntp.el (toplevel): Ditto.
6610
6611 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6612
6613         * elmo-imap4.el (toplevel): defun at compile time.
6614         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
6615         sasl-next-step, sasl-step-data, sasl-step-set-data.
6616         * elmo-pop3.el (toplevel): Ditto.
6617
6618 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6619
6620         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
6621
6622 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6623
6624         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
6625         if error.
6626         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
6627         and `elmo-pop-auth-apop'.
6628
6629 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6630
6631         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
6632
6633 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6634
6635         * elmo-pop3.el (elmo-network-authenticate-session): Split
6636         encoded response value.
6637
6638 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6639
6640         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
6641         `elmo-pop3-force-login'.
6642         Redefine `sasl-mechanisms'.
6643         * elmo-vars.el (elmo-pop3-force-login): Ditto.
6644
6645 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6646
6647         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
6648         Delete `elmo-imap4-authenticator-alist'.
6649         (elmo-imap4-auth-cram-md5): Delete.
6650         (elmo-imap4-auth-digest-md5): Delete.
6651
6652 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6653
6654         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
6655         (elmo-pop3-auth-scram-md5): Ditto.
6656         (elmo-pop3-auth-cram-md5): Ditto.
6657
6658 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
6659
6660         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
6661         Delete `elmo-pop3-authenticator-alist'.
6662
6663 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
6664
6665         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
6666         new SASL API.
6667         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
6668
6669 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
6670
6671         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
6672
6673 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
6674
6675         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
6676         Fixed problem when `elmo-pop3-use-uidl' is nil.
6677         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
6678
6679 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
6680
6681         * elmo-version.el (elmo-version): Up to 2.5.2.
6682
6683 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
6684
6685         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
6686         New function.
6687         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
6688         (elmo-pop3-msgdb-create-as-numlist): Use it.
6689
6690         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
6691         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
6692
6693         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
6694         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
6695
6696 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
6697
6698         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
6699         when elmo-mark-as-read is called with second argument nil.
6700
6701 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
6702
6703         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
6704         Moved to elmo-util.el.
6705
6706         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
6707         Moved from elmo-pipe.el
6708
6709         * elmo-archive.el (elmo-archive-call-process): Enclose with
6710         static-if.
6711
6712         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
6713         "RFC822" (because RFC822.PEEK is obsolete).
6714         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
6715
6716 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
6717
6718         * elmo-archive.el (elmo-archive-call-process): Don't check for
6719         the exit status when Nemacs is running.
6720
6721 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
6722
6723         * elmo-net.el (elmo-network-session-password-key): Don't set default to
6724         'plain.
6725
6726         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
6727         (elmo-pop3-get-spec): Set default of auth to 'user.
6728
6729         * elmo-imap4.el (elmo-imap4-session-check):
6730         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
6731         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
6732         (elmo-imap4-auth-login): New function; Revival.
6733         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
6734         `elmo-imap4-auth-login'.
6735
6736 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6737
6738         * elmo2.el (toplevel): Move `product-provide' declare.
6739         * mmelmo.el (toplevel): Ditto.
6740
6741 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
6742
6743         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
6744
6745 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
6746
6747         * elmo-util.el (elmo-folder-get-store-type): New function.
6748         (elmo-folder-direct-copy-p): Use it.
6749
6750 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
6751
6752         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
6753         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
6754         and result of `elmo-imap4-use-flag-p'.
6755         (elmo-imap4-fetch-callback-1): Set mark according to
6756         the result of `elmo-imap4-use-flag-p'.
6757
6758 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
6759
6760         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
6761         (elmo-generic-list-folder-unread): Ditto.
6762         (elmo-folder-get-info): Ditto.
6763         (elmo-folder-set-info-max-by-numdb): Ditto.
6764         (elmo-folder-get-info-max): Ditto.
6765         (elmo-folder-get-info-length): Ditto.
6766         (elmo-folder-get-info-unread): Ditto.
6767         (elmo-folder-info-make-hashtb): Ditto.
6768
6769         * elmo2.el: Removed above functions.
6770
6771 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
6772
6773         * elmo-imap4.el (toplevel): Require 'ssl.
6774         Add autoload 'starttls.
6775         * elmo-pop3.el (toplevel): Ditto.
6776         * elmo-nntp.el (toplevel): Ditto.
6777
6778 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6779
6780         * elmo-imap4.el (toplevel): defun at compile time.
6781         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
6782         sasl-next-step, sasl-step-data, sasl-step-set-data.
6783         * elmo-pop3.el (toplevel): Ditto.
6784
6785 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6786
6787         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
6788
6789 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6790
6791         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
6792         if error.
6793         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
6794         and `elmo-pop-auth-apop'.
6795
6796 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6797
6798         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
6799
6800 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6801
6802         * elmo-pop3.el (elmo-network-authenticate-session): Split
6803         encoded response value.
6804
6805 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6806
6807         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
6808         `elmo-pop3-force-login'.
6809         Redefine `sasl-mechanisms'.
6810         * elmo-vars.el (elmo-pop3-force-login): Ditto.
6811
6812 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6813
6814         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
6815         Delete `elmo-imap4-authenticator-alist'.
6816         (elmo-imap4-auth-cram-md5): Delete.
6817         (elmo-imap4-auth-digest-md5): Delete.
6818
6819 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6820
6821         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
6822         (elmo-pop3-auth-scram-md5): Ditto.
6823         (elmo-pop3-auth-cram-md5): Ditto.
6824
6825 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
6826
6827         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
6828         Delete `elmo-pop3-authenticator-alist'.
6829
6830 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
6831
6832         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
6833         new SASL API.
6834         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
6835
6836 \f
6837 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
6838
6839         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
6840
6841 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
6842
6843         * elmo-nntp.el (elmo-nntp-get-folders-info):
6844         Fixed problem when '\' character is contained in user-id.
6845         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
6846
6847 \f
6848 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
6849
6850         * elmo-imap4.el (elmo-imap4-delete-folder):
6851         Send "close" before "delete" (Use commented out line).
6852         (elmo-imap4-rename-folder): Ditto.
6853
6854         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
6855         folder string itself.
6856         (elmo-dop-list-deleted): New function.
6857         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
6858         killed.
6859
6860         * elmo-util.el (elmo-string-rassoc-all): New function.
6861
6862         * elmo-version.el (elmo-version): Up to 2.5.1.
6863
6864 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
6865
6866         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
6867
6868         * elmo-internal.el (elmo-internal-search): Fix last change.
6869
6870 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
6871
6872         * elmo-internal.el (elmo-internal-search): Rewrite.
6873         (Fixed problem which is pointed out by Akihiro MOTOKI
6874         <motoki@da.jp.nec.com>)
6875
6876         * elmo-version.el (elmo-version): Up to 2.5.0.
6877
6878 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
6879
6880         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
6881
6882 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
6883
6884         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
6885         non-nil, make hierarchy.
6886
6887 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
6888
6889         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
6890         `elmo-pop3-use-uidl' must be bound to nil.
6891         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
6892
6893 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
6894
6895         * elmo-util.el (elmo-copy-file): Don't cause an error after
6896         `add-name-to-file' failed.
6897
6898         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
6899         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
6900
6901 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6902
6903         * elmo-version.el (elmo-version): Up to 2.3.93.
6904
6905 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6906
6907         * elmo-util.el (elmo-flatten): New function.
6908
6909 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6910
6911         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
6912         sync Author header.
6913         * elmo-cache.el (toplevel): Ditto.
6914         * elmo-database.el (toplevel): Ditto.
6915         * elmo-date.el (toplevel): Ditto.
6916         * elmo-dop.el (toplevel): Ditto.
6917         * elmo-filter.el (toplevel): Ditto.
6918         * elmo-imap4.el (toplevel): Ditto.
6919         * elmo-internal.el (toplevel): Ditto.
6920         * elmo-localdir.el (toplevel): Ditto.
6921         * elmo-localnews.el (toplevel): Ditto.
6922         * elmo-maildir.el (toplevel): Ditto.
6923         * elmo-msgdb.el (toplevel): Ditto.
6924         * elmo-multi.el (toplevel): Ditto.
6925         * elmo-net.el (toplevel): Ditto.
6926         * elmo-nntp.el (toplevel): Ditto.
6927         * elmo-pipe.el (toplevel): Ditto.
6928         * elmo-pop3.el (toplevel): Ditto.
6929         * elmo-util.el (toplevel): Ditto.
6930         * elmo-vars.el (toplevel): Ditto.
6931         * elmo2.el (toplevel): Ditto.
6932         * mmelmo-imap4.el (toplevel): Ditto.
6933         * mmelmo.el (toplevel): Ditto.
6934
6935         * elmo-version.el (elmo-version): Move to top.
6936
6937         * elmo-cache.el (toplevel): Fixed multiple Author header format.
6938         * elmo-imap4.el (toplevel): Ditto.
6939         * elmo-localdir.el (toplevel): Ditto.
6940         * elmo-msgdb.el (toplevel): Ditto.
6941         * elmo-nntp.el (toplevel): Ditto.
6942         * elmo-pop3.el (toplevel): Ditto.
6943         * elmo-version.el (toplevel): Ditto.
6944
6945         * elmo-localnews.el (toplevel): Added Keyword header.
6946
6947 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
6948
6949         * elmo-version.el (product-version-as-string): Defined using
6950         `defun-maybe'.
6951         (toplevel): Use it.
6952
6953         * elmo-localdir.el (toplevel): Updated copyright notice.
6954         * elmo-version.el (toplevel): Ditto.
6955         * elmo-msgdb.el (toplevel): Ditto.
6956         * elmo-imap4.el (toplevel): Ditto.
6957         * elmo-nntp.el (toplevel): Ditto.
6958         * elmo-pop3.el (toplevel): Ditto.
6959
6960 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
6961
6962         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
6963         messages.
6964
6965         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
6966         parameter value (It sometimes contains raw kanji).
6967
6968 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
6969
6970         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
6971         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
6972
6973 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
6974
6975         * elmo-imap4.el (elmo-network-initialize-session): Fix.
6976
6977 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
6978
6979         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
6980         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
6981
6982 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
6983
6984         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
6985         value if selecting folder succceeded.
6986         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
6987
6988 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6989
6990         * elmo-util.el (elmo-make-directory): Fixed permission lateral
6991         representation.
6992
6993         * elmo-util.el (elmo-string-matched-member): New function.
6994
6995 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
6996
6997         * elmo-util.el (elmo-unintern): New macro.
6998         (elmo-number-set-member): Fixed docstring.
6999
7000         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7001         tag token.
7002
7003 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
7004
7005         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7006         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7007
7008 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
7009
7010         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7011         `no-error'.
7012         Added docstring.
7013         Return non-nil if selecting folder succeeded.
7014         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7015
7016 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
7017
7018         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7019         `file-name-completion' returns t.
7020         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7021         (elmo-maildir-set-mark): Put `info' part to the files in the cur
7022         directory if it does not exist.
7023         (elmo-maildir-update-current): Use `while' instead of `mapcar'
7024         for iteration.
7025
7026 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
7027
7028         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7029         enclosure (It's harmful in unplugged status).
7030
7031         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7032
7033         * mmelmo-1.el: Removed.
7034
7035         * mmelmo-2.el: Ditto.
7036
7037         * mmelmo-imap4-1.el: Ditto.
7038
7039         * mmelmo-imap4-2.el: Ditto.
7040
7041         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7042
7043         * mmelmo.el: Merged mmelmo-2.el.
7044
7045         * elmo-version.el (elmo-version): Up to 2.3.92.
7046
7047 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7048
7049         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7050         elmo-update-number): Remove last period in "...done." message.
7051         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7052         Ditto.
7053         * elmo-cache.el (elmo-cache-expire-by-size,
7054         elmo-cache-get-sorted-cache-file-list,
7055         elmo-cache-msgdb-create-as-numlist): Ditto.
7056         * elmo-dop.el (elmo-dop-save-pending-messages,
7057         (elmo-dop-flush-pending-append-operations): Ditto.
7058         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7059         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7060         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7061         (elmo-localdir-pack-number): Ditto.
7062         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7063         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7064         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7065         mime-write-entity-content): Ditto.
7066         * pldap.el (ldap-search-basic): Ditto.
7067
7068 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
7069
7070         * elmo-version.el (elmo-version): Up to 2.3.91.
7071
7072         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7073         Only when filter is 'last'.
7074
7075         * elmo-util.el (elmo-condition-atom-regexp): New constant.
7076         (elmo-condition-parse-search-value): Use it.
7077         (elmo-read-search-condition-internal): Quote value only when
7078         it is not an atom.
7079
7080 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
7081
7082         * elmo2.el (elmo-generic-folder-diff): Fix.
7083
7084 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
7085
7086         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7087         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7088         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7089         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7090         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
7091         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
7092
7093 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
7094
7095         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
7096         extra-fields.
7097
7098 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
7099
7100         * elmo-version.el (elmo-version): Up to 2.3.90.
7101
7102         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
7103         (elmo-imap4-list-folder-important): Ditto.
7104
7105 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7106
7107         * elmo-nntp.el (elmo-network-initialize-session): Fix.
7108
7109 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7110
7111         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
7112
7113 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
7114
7115         * elmo-nntp.el (elmo-network-initialize-session):
7116         Add starttls negotiation.
7117
7118 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7119
7120         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
7121         response.
7122         (elmo-network-setup-session): Define.
7123         Call `elmo-nntp-send-mode-reader' when session opened.
7124
7125 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7126
7127         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
7128
7129 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
7130
7131         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
7132         an invalid SPACE character ahead of `SEARCH' command.  Move
7133         a valid SPACE character following `SEARCH' from conditional
7134         `format' arguments to control-strings.
7135
7136 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7137
7138         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
7139         was succeeded.
7140
7141         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
7142
7143 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
7144
7145         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
7146         `w32-get-true-file-link-count' as t.
7147
7148         * elmo-imap4.el (elmo-imap4-read): Abolished.
7149         (Renamed to `elmo-read' and moved to elmo-util.el)
7150         All other related portions are changed.
7151
7152         * elmo-util.el (elmo-read): New function.
7153         (elmo-condition-parse-search-value): Use it.
7154
7155 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
7156
7157         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
7158
7159         * elmo-nntp.el (elmo-nntp-session): Define.
7160         (elmo-nntp-setting): Abolished.
7161         All other related portions are changed.
7162         (elmo-nntp-get-server-command): Changed argument.
7163         (elmo-nntp-set-server-command): Ditto.
7164         (elmo-nntp-xover-p): Ditto.
7165         (elmo-nntp-set-xover): Ditto.
7166         (elmo-nntp-listgroup-p): Ditto.
7167         (elmo-nntp-set-listgroup): Ditto.
7168         (elmo-nntp-list-active-p): Ditto.
7169         (elmo-nntp-set-list-active): Ditto.
7170         (elmo-nntp-xhdr-p): Ditto.
7171         (elmo-nntp-set-xhdr): Ditto.
7172         (elmo-nntp-flush-connection): Abolished.
7173         (elmo-nntp-get-connection): Abolished.
7174         (elmo-nntp-get-session): New function.
7175         (elmo-network-initialize-session): Defined.
7176         (elmo-network-authenticate-session): Ditto.
7177         (elmo-nntp-send-mode-reader): Changed argument.
7178         (elmo-nntp-send-command): Changed argument.
7179         All other related portions are changed.
7180         (elmo-nntp-read-response): Ditto.
7181         (elmo-nntp-read-raw-response): Ditto.
7182         (elmo-nntp-read-contents): Ditto.
7183         (elmo-nntp-read-body): Ditto.
7184         (elmo-nntp-goto-folder): Abolished.
7185         (elmo-nntp-select-group): New function.
7186         All other related portions are changed.
7187         (This function substitutes `elmo-nntp-goto-folder')
7188         (elmo-nntp-msgdb-create-by-header): Rewrite.
7189         (elmo-nntp-get-overview): Eliminated.
7190         (elmo-nntp-get-message): Ditto.
7191         (elmo-nntp-open-connection) Abolished.
7192         (elmo-nntp-read-msg): Rewrite.
7193         (elmo-nntp-post): Ditto.
7194         (elmo-nntp-send-data): Abolished.
7195         (elmo-nntp-send-buffer): New function.
7196         (elmo-nntp-send-data-line): Define as inline function.
7197         (elmo-nntp-get-folders-info-prepare): Use session as key.
7198         (elmo-nntp-groups-read-response): Changed argument.
7199         (elmo-nntp-retrieve-headers): Ditto.
7200         (elmo-nntp-msgdb-create-message): Ditto.
7201
7202         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
7203         when searching by 'since' or 'before'.
7204
7205 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7206
7207         * elmo-version.el (toplevel): Use product-version-as-string for set
7208         verstion-string, if defined.
7209
7210 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
7211
7212         * elmo-util.el: Doc fixes.
7213
7214 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7215
7216         * elmo-archive.el (toplevel): Use product-provide.
7217         * elmo-cache.el (toplevel): Ditto.
7218         * elmo-database.el (toplevel): Ditto.
7219         * elmo-date.el (toplevel): Ditto.
7220         * elmo-dop.el (toplevel): Ditto.
7221         * elmo-filter.el (toplevel): Ditto.
7222         * elmo-imap4.el (toplevel): Ditto.
7223         * elmo-internal.el (toplevel): Ditto.
7224         * elmo-localdir.el (toplevel): Ditto.
7225         * elmo-localnews.el (toplevel): Ditto.
7226         * elmo-maildir.el (toplevel): Ditto.
7227         * elmo-msgdb.el (toplevel): Ditto.
7228         * elmo-multi.el (toplevel): Ditto.
7229         * elmo-net.el (toplevel): Ditto.
7230         * elmo-nntp.el (toplevel): Ditto.
7231         * elmo-pipe.el (toplevel): Ditto.
7232         * elmo-pop3.el (toplevel): Ditto.
7233         * elmo-util.el (toplevel): Ditto.
7234         * elmo-vars.el (toplevel): Ditto.
7235         * elmo2.el (toplevel): Ditto.
7236         * mmelmo-1.el (toplevel): Ditto.
7237         * mmelmo-2.el (toplevel): Ditto.
7238         * mmelmo-imap4-1.el (toplevel): Ditto.
7239         * mmelmo-imap4-2.el (toplevel): Ditto.
7240         * mmelmo-imap4.el (toplevel): Ditto.
7241         * mmelmo.el (toplevel): Ditto.
7242
7243 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
7244
7245         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
7246         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
7247
7248 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
7249
7250         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
7251         before splitting.
7252         (elmo-multi-split-number-alist): Ditto.
7253
7254 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7255
7256         * elmo-version.el: New file.  Use product.el.
7257         * elmo2.el: Add (require 'elmo-version).
7258         * elmo-vars.el (elmo-appname, elmo-version): Move to
7259         elmo-version.el
7260
7261 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
7262
7263         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
7264         `elmo-msgdb-expand-path'.
7265         (elmo-msgdb-load): Ditto.
7266         Abolished 2nd argument. If 1st argument is not string, treat as spec.
7267         (elmo-generic-list-folder-unread): Rewrite.
7268         (elmo-generic-list-folder-important): Changed argument.
7269         (elmo-list-folder-unread): Ditto.
7270         (elmo-list-folder-important): Ditto.
7271         (elmo-folder-diff): Rewrite.
7272         (elmo-generic-folder-diff): New function.
7273         (elmo-multi-get-number-alist-list): Abolished
7274         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
7275         (elmo-multi-folder-diff): Moved to elmo-multi.el
7276         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
7277
7278         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
7279         `elmo-msgdb-expand-path'.
7280         (elmo-pop3-msgdb-create-as-numlist): Ditto.
7281         (elmo-pop3-read-msg): Ditto.
7282         (elmo-pop3-delete-msgs): Ditto.
7283         (elmo-pop3-folder-diff): New alias.
7284
7285         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
7286         `elmo-msgdb-expand-path'.
7287         (elmo-pipe-list-folder-unread): Changed arguments.
7288         (elmo-pipe-list-folder-important): Ditto.
7289         (elmo-pipe-folder-diff): New alias.
7290
7291         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
7292         `elmo-msgdb-expand-path'.
7293         (elmo-nntp-max-of-folder): Ditto.
7294         (elmo-nntp-msgdb-create): Ditto.
7295         (elmo-nntp-delete-msgs): Ditto.
7296         (elmo-nntp-folder-diff): New alias.
7297
7298         * elmo-multi.el (elmo-multi-folder-diff): New function.
7299         (elmo-multi-split-mark-alist): Ditto.
7300         (elmo-multi-split-number-alist): Ditto.
7301         (elmo-multi-mark-alist-list): Abolished (Renamed to
7302         elmo-multi-split-mark-alist).
7303         (elmo-multi-list-folder-unread): Rewrite.
7304         (elmo-multi-list-folder-important): Ditto.
7305         (elmo-multi-list-folder): Set `spec' as 1st argument for
7306         `elmo-msgdb-expand-path'.
7307         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
7308         instead of `elmo-multi-get-number-alist-list'.
7309
7310         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
7311         If 1st argument is not string, treat as spec.
7312         (elmo-list-folder-by-location): Set `spec' as 1st argument for
7313         `elmo-msgdb-expand-path'.
7314         (elmo-msgdb-flist-load): Ditto.
7315         (elmo-msgdb-flist-save): Ditto.
7316         (elmo-msgdb-delete-path): Ditto.
7317         (elmo-msgdb-rename-path): Ditto.
7318
7319         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
7320         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7321         (elmo-maildir-delete-mark-msgs): Ditto.
7322         (elmo-maildir-msgdb-create): Ditto.
7323         (elmo-maildir-read-msg): Ditto.
7324         (elmo-maildir-delete-msgs): Ditto.
7325         (elmo-maildir-list-folder-subr): Ditto.
7326         (elmo-maildir-search): Ditto.
7327         (elmo-maildir-get-msg-filename): Ditto.
7328         (elmo-maildir-pack-number): Ditto.
7329         (elmo-maildir-folder-diff): New alias.
7330
7331         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
7332
7333         * elmo-localdir.el (elmo-localdir-list-folder-subr):
7334         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7335         (elmo-localdir-folder-diff): New alias.
7336
7337         * elmo-internal.el (elmo-internal-list-folder-subr):
7338         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7339         (elmo-internal-list-folder-by-location): Ditto.
7340         (elmo-internal-msgdb-create): Ditto.
7341         (elmo-internal-delete-msgs): Ditto.
7342         (elmo-internal-read-msg): Ditto.
7343         (elmo-internal-folder-diff): New alias.
7344
7345         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
7346         (elmo-imap4-list-folder): Set `spec' as 1st argument for
7347         `elmo-msgdb-expand-path'.
7348         (elmo-imap4-list-folder-unread): Changed arguments.
7349         (elmo-imap4-list-folder-important): Ditto.
7350
7351         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
7352         (elmo-filter-list-folder-important): Ditto.
7353         (elmo-filter-folder-diff): New function.
7354
7355         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
7356
7357         * elmo-cache.el (elmo-cache-list-folder):
7358         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7359         (elmo-cache-copy-msgs): Ditto.
7360         (elmo-cache-folder-diff): New alias.
7361
7362         * elmo-archive.el (elmo-archive-list-folder-subr):
7363         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7364         (elmo-archive-get-archive-name): Ditto.
7365         (elmo-archive-create-file): Ditto.
7366         (elmo-archive-append-msg): Ditto.
7367         (elmo-archive-copy-msgs): Ditto.
7368         (elmo-archive-copy-msgs-froms): Ditto.
7369         (elmo-archive-get-msg-filename): Ditto.
7370         (elmo-archive-folder-diff): New alias.
7371
7372 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
7373
7374         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
7375         (elmo-pop3-stream-type-alist): New variable.
7376         (elmo-nntp-stream-type-alist): New variable.
7377
7378         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
7379         (elmo-kill-buffer): Ditto.
7380         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
7381         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
7382         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
7383         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
7384         (elmo-imap4-get-spec): Take into account
7385         `elmo-imap4-stream-type-alist'.
7386
7387 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
7388
7389         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
7390         (elmo-nntp-list-folders-get-cache): Ditto.
7391
7392 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
7393
7394         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
7395         character before 'uid'.
7396
7397 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
7398
7399         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
7400
7401         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
7402
7403         * elmo-util.el (elmo-number-set-member): New function.
7404         (elmo-number-set-append-list): Ditto.
7405         (elmo-number-set-append): Ditto.
7406
7407         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
7408         Use `elmo-number-set-member'.
7409         (elmo-living-messages): Ditto.
7410         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
7411         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
7412
7413         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
7414         (elmo-imap4-add-to-cont-list): Abolished.
7415         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
7416         instead of elmo-imap4-add-to-cont-list.
7417
7418         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
7419         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
7420
7421         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
7422
7423 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
7424
7425         * elmo-util.el (elmo-condition-parse-search-value):
7426         Fixed date parsing.
7427
7428 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
7429
7430         * elmo-util.el (elmo-condition-find-key-internal): New function.
7431         (elmo-condition-find-key): Ditto.
7432
7433         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
7434         (elmo-msgdb-search-internal): Ditto.
7435         (elmo-msgdb-search): Ditto.
7436
7437 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
7438
7439         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
7440         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
7441
7442         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
7443         (elmo-nntp-search-primitive): Fixed problem when condition is
7444         'unmatch'.
7445
7446         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
7447
7448         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
7449         (elmo-nntp-xhdr-p): New macro.
7450         (elmo-nntp-set-xhdr): Ditto.
7451         (elmo-nntp-parse-xhdr-response): New function.
7452         (elmo-nntp-retrieve-field): Ditto.
7453         (elmo-nntp-search-primitive): Ditto.
7454         (elmo-nntp-search): Implemented.
7455
7456         * elmo-date.el (elmo-date-make-sortable-string): New macro.
7457
7458         * elmo-archive.el (elmo-archive-search): Set all number list to
7459         `elmo-archive-field-condition-match'
7460
7461         * elmo-localdir.el (elmo-localdir-search): Likewise.
7462
7463         * elmo-maildir.el (elmo-maildir-search): Likewise.
7464
7465 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
7466
7467         * elmo-msgdb.el (elmo-living-messages): New function.
7468         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
7469         * elmo-cache.el (elmo-cache-list-folder): Ditto.
7470         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7471         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
7472         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
7473         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
7474         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
7475         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7476         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7477         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7478         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7479
7480 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
7481
7482         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
7483
7484         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
7485
7486         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
7487
7488         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
7489         arguments for `SEARCH' command.
7490         (elmo-imap4-parse-string): Set `POS' argument for char-after.
7491         All other related portions are changed.
7492
7493         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
7494
7495         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
7496         (elmo-list-folder-unread): Rewrite.
7497         (elmo-list-folder-important): Ditto.
7498
7499         * elmo-util.el (elmo-filter-get-spec): Rewrite.
7500         (elmo-condition-parse-error): New inline function.
7501         (elmo-read-search-condition): New function.
7502         (elmo-read-search-condition-internal): Ditto.
7503         (elmo-parse-search-condition): Rewrite.
7504         (elmo-condition-parse): New function.
7505         (elmo-condition-parse-or-expr): Ditto.
7506         (elmo-condition-parse-and-expr): Ditto.
7507         (elmo-condition-parse-primitive): Ditto.
7508         (elmo-condition-parse-search-value): Ditto.
7509         (elmo-buffer-field-primitive-condition-match): Ditto.
7510         (elmo-buffer-field-condition-match): Rewrite.
7511         (elmo-file-field-condition-match): Ditto.
7512
7513         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
7514         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
7515
7516         * elmo-internal.el (elmo-internal-search): Set `number' and
7517         `number-list' argument of `elmo-file-field-condition-match'.
7518
7519         * elmo-maildir.el (elmo-maildir-search): Ditto.
7520
7521         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
7522         `msgdb' as argument instead of `mark-alist'.
7523         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
7524         `overview'.
7525
7526         * elmo-multi.el: Likewise.
7527
7528         * elmo-pipe.el: Likewise.
7529
7530         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
7531         (elmo-imap4-search-internal): Rewrite.
7532         (elmo-imap4-search): Ditto.
7533
7534         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
7535         (elmo-filter-list-folder-unread): Ditto.
7536         (elmo-filter-list-folder-important): Ditto.
7537         (elmo-filter-search): Rewrite.
7538
7539         * elmo-cache.el (elmo-cache-search-all): Set `number' and
7540         `number-list' argument of `elmo-file-field-condition-match'.
7541         (elmo-cache-search): Ditto.
7542
7543         * elmo-localdir.el: Likewise.
7544
7545         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
7546         number-list and pass it to `elmo-buffer-field-condition-match'.
7547         (elmo-archive-field-condition-match): Pass `number-list' to
7548         `elmo-archive-field-condition-match'
7549
7550 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
7551
7552         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
7553         `listgroup'.
7554
7555         * elmo2.el (elmo-folder-diff-async-callback): New variable.
7556         (elmo-folder-diff-async-callback-data): Ditto.
7557         (elmo-folder-diff-async): New function.
7558
7559         * elmo-net.el (elmo-network-session-name-prefix): New variable.
7560         (elmo-network-session-cache-key): Use it as a prefix of the session
7561         name.
7562         (elmo-network-open-session): Ditto.
7563
7564         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
7565         (elmo-imap4-status-callback-data): Ditto.
7566         (elmo-imap4-server-diff-async-callback): New variable.
7567         (elmo-imap4-server-diff-async-callback-data): Ditto.
7568         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
7569         `elmo-imap4-status-callback-data'.
7570         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
7571         `elmo-imap4-status-callback-data' as nil.
7572         (elmo-imap4-server-diff): Ditto.
7573         (elmo-imap4-server-diff-async-callback-1): New function.
7574         (elmo-imap4-server-diff-async): Ditto.
7575         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
7576
7577 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
7578
7579         * elmo-util.el (elmo-list-delete): Doc fix.
7580         (elmo-delete-lists): Abolish.
7581         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
7582         instead of `elmo-delete-lists'.
7583
7584 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
7585
7586         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
7587         before `sort'.
7588
7589 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
7590
7591         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
7592         `elmo-imap4-literal-subr'.
7593         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
7594         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
7595
7596 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
7597
7598         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7599         (elmo-archive-list-folder): Fix.
7600         (elmo-archive-max-of-folder): Fix.
7601
7602 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
7603
7604         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
7605          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
7606         (elmo-localdir-append-msg): Ditto.
7607         (elmo-localdir-list-folder): Fix for `nonsort'.
7608         (elmo-localdir-list-folder-subr): Fix for `killed'.
7609         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7610         (elmo-maildir-list-folder-subr): Ditto.
7611         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7612         (elmo-archive-list-folder-subr): Ditto.
7613         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7614         (elmo-internal-list-folder-subr): Ditto.
7615
7616 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
7617
7618         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
7619
7620 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
7621
7622         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
7623
7624 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
7625
7626         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
7627         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7628
7629         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
7630         before greeting.
7631         (elmo-imap4-read-part): Use "body.peek" to fetch part.
7632         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7633
7634 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
7635
7636         * mmelmo-imap4-2.el (mime-entity-children): Defined.
7637
7638         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
7639         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
7640         before STORE command.
7641
7642 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
7643
7644         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
7645
7646         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
7647         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
7648         of `response'.
7649         (elmo-imap4-list-folders): Removed unused local variable.
7650         (elmo-network-initialize-session): Ditto.
7651         (elmo-imap4-delete-msg-by-id): Ditto.
7652         (elmo-imap4-parse-fetch): Ditto.
7653         (elmo-imap4-copy-msgs): Ditto.
7654         Use `dst-spec' instead of `dst-folder'.
7655         (elmo-network-authenticate-session): Check authenticate type `plain'.
7656
7657 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
7658
7659         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
7660         garbage checking.
7661         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
7662         `elmo-imap4-response-value'.
7663         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
7664
7665 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
7666
7667         * elmo-imap4.el (elmo-imap4-send-command):
7668         Cause elmo-imap4-bye-error when current response is BYE.
7669         (elmo-imap4-arrival-filter): Changed greeting response value.
7670
7671         * elmo2.el (elmo-imap4-bye-error): Define.
7672
7673         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
7674         (elmo-imap4-server-diff): Ditto.
7675         (elmo-imap4-response-bye-p): New macro.
7676         (elmo-imap4-response-error-text): Get text from BYE response.
7677         (elmo-imap4-read-response): Return if BYE response.
7678         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
7679         (elmo-imap4-folder-exists-p): Ditto.
7680         (elmo-imap4-commit): Do nothing when different mailbox is selected.
7681         (elmo-imap4-parse-bye): New function.
7682         (elmo-imap4-parse-response): Remove needless let.
7683         Call `elmo-imap4-parse-bye'.
7684
7685 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
7686
7687         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
7688         the mailbox does not exist.
7689         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
7690
7691 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
7692
7693         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
7694
7695 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
7696
7697         * elmo-vars.el (elmo-search-mime-charset): Abolished.
7698
7699         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
7700         (elmo-network-initialize-session-buffer): Defined.
7701
7702         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
7703         Abolished.
7704         (mmelmo-imap4-get-mime-entity): Rewrite.
7705
7706         * elmo2.el (elmo-error): Capitalize error message.
7707
7708         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
7709         (elmo-network-session-buffer): New macro.
7710         (elmo-network-open-session): Use it.
7711
7712         * elmo-imap4.el: Rewrite.
7713
7714 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
7715
7716         * elmo-nntp.el (Toplevel): Require 'elmo-net.
7717
7718 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
7719
7720         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
7721         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
7722         (elmo-imap4-create-msgdb-from-overview-string): Use
7723         `elmo-msgdb-create-overview-from-buffer'.
7724
7725 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
7726
7727         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
7728         (elmo-imap4-default-hierarchy-delimiter): New variable.
7729         (elmo-imap4-list-folders): Use it.
7730
7731 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
7732
7733         * elmo-net.el (elmo-network-open-session): Add user and
7734         stream-type for process-buffer name.
7735
7736         * elmo-pop3.el (elmo-network-initialize-session): Call
7737         buffer-disable-undo.
7738
7739         * elmo-imap4.el (elmo-network-initialize-session):
7740         Set current-buffer as an argument for `buffer-disable-undo'.
7741
7742         * elmo-pop3.el (elmo-network-close-session): Don't use
7743         `process-live-p'.
7744
7745         * elmo-vars.el (elmo-default-pop3-authenticate-type):
7746         Set default as 'user.
7747
7748         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
7749
7750         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
7751         and `elmo-imap4-flush-connection'.
7752
7753         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
7754         (elmo-pop3-get-spec): Assume auth as symbol.
7755         (elmo-open-network-stream): Moved to `elmo-net'.
7756
7757         * elmo-pop3.el (toplevel): Require 'elmo-net.
7758         Define `sasl-cram-md5' to silence byte compilier.
7759         (elmo-pop3-connection-cache) Abolished.
7760         (elmo-pop3-authenticator-alist) New variable.
7761         (elmo-pop3-session): Define.
7762         (elmo-pop3-connection-get-process): Abolished.
7763         (elmo-pop3-connection-get-buffer): Ditto.
7764         (elmo-pop3-close-connection): Ditto.
7765         (elmo-pop3-flush-connection): Ditto.
7766         (elmo-pop3-get-connection): Ditto.
7767         (elmo-pop3-get-session): New function.
7768         (Replacement for `elmo-pop3-get-connection').
7769         All other related modules are changed.
7770         (elmo-network-close-session): Define.
7771         (elmo-pop3-send-command): Abolished argument `buffer'.
7772         All other related modules are changed.
7773         (elmo-pop3-read-response): Likewise.
7774         (elmo-pop3-open-connection): Abolished.
7775         (elmo-pop3-auth-user): New function.
7776         (elmo-pop3-auth-apop): Ditto.
7777         (elmo-pop3-auth-cram-md5): Ditto.
7778         (elmo-pop3-auth-scram-md5): Ditto.
7779         (elmo-pop3-auth-digest-md5): Ditto.
7780         (elmo-network-initialize-session): Define.
7781         (elmo-network-authenticate-session): Ditto.
7782         (elmo-network-setup-session): Ditto.
7783
7784         * elmo-imap4.el (toplevel): Require 'elmo-net.
7785         (elmo-imap4-session): Define.
7786         (elmo-imap4-connection-cache): Abolished.
7787         (elmo-imap4-password-key): Ditto.
7788         (elmo-imap4-flush-connection): Ditto.
7789         (elmo-imap4-get-connection): Ditto.
7790         All other related modules are changed.
7791         (elmo-imap4-get-session): New function
7792         (Replacement for `elmo-imap4-get-connection').
7793         (elmo-imap4-read-response): Abolished argument `buffer'.
7794         All other related modules are changed.
7795         (elmo-imap4-send-command): Likewise.
7796         (elmo-imap4-select-folder): Abolished.
7797         All other related modules are changed.
7798         (elmo-imap4-select-mailbox): New function.
7799         (Replacement for `elmo-imap4-select-folder').
7800         (elmo-imap4-auth-login): Simplify.
7801         (Assume current buffer as process buffer)
7802         (elmo-imap4-auth-cram-md5): Ditto.
7803         (elmo-imap4-auth-digest-md5): Ditto.
7804         (elmo-imap4-login): Ditto.
7805         (elmo-imap4-open-connection): Abolished.
7806         (elmo-imap4-open-connection-1): Abolished.
7807         (elmo-network-initialize-sessoin): Define.
7808         (elmo-network-authenticate-session): Ditto.
7809         (elmo-network-setup-session): Ditto.
7810
7811         * elmo-net.el: New module.
7812
7813 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
7814
7815         * elmo-util.el (elmo-define-error): New function.
7816
7817         * elmo2.el (elmo-error): Define.
7818         (elmo-open-error): Define.
7819         (elmo-authenticate-error): Define.
7820
7821         * elmo-imap4.el (elmo-imap4-error): Abolish.
7822         (elmo-imap4-error-type): Abolish.
7823         (elmo-imap4-error-process): Abolish.
7824         (elmo-imap4-error-message): Abolish
7825         (elmo-imap4-list-folders): Don't quote lambda.
7826         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
7827         (elmo-imap4-parse-namespace): Ditto.
7828         (elmo-imap4-open-connection): Rewrite.
7829         (elmo-imap4-open-connection-1): Simplified (authenticate only).
7830         (elmo-imap4-get-connection): Abolish local variable `result'.
7831
7832 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
7833
7834         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
7835         wrong-type-argument error when auth is nil.
7836
7837 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
7838
7839         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
7840         (elmo-default-nntp-stream-type): Ditto.
7841         (elmo-default-pop3-stream-type): Ditto.
7842         (elmo-network-stream-type-alist): Ditto.
7843         (elmo-default-imap4-ssl): Abolished.
7844         (elmo-default-nntp-ssl): Ditto.
7845         (elmo-default-pop3-ssl): Ditto.
7846
7847         * elmo-util.el: (toplevel): Removed needless requires.
7848         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
7849         (elmo-open-network-stream): Open network stream according to
7850         the value of `elmo-network-stream-type-alist'.
7851         (elmo-get-network-stream-type): New function.
7852         (elmo-network-stream-type-spec-string): New macro.
7853         (elmo-network-stream-type-symbol): Ditto.
7854         (elmo-network-stream-type-function): Ditto.
7855
7856         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
7857         network-stream-type. All other related portions are changed.
7858         (elmo-pop3-open-connection): Ditto.
7859
7860         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
7861         network-stream-type. All other related portions are changed.
7862
7863         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
7864         network-stream-type.All other related portions are changed.
7865         (elmo-imap4-error): New macro.
7866         (elmo-imap4-error-type): Ditto.
7867         (elmo-imap4-error-process): Ditto.
7868         (elmo-imap4-error-message): Ditto.
7869         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
7870         (elmo-imap4-auth-cram-md5): Ditto.
7871         (elmo-imap4-auth-digest-md5): Ditto.
7872         (elmo-imap4-login): Ditto.
7873         (elmo-imap4-open-connection): Remove password entry if authentication
7874         was in vain.
7875         (elmo-imap4-user-at-host): Abolished.
7876         (elmo-imap4-password-key): New buffer local variable.
7877         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
7878         using protocol, port, auth and stream-type.
7879
7880         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
7881
7882 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
7883
7884         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
7885
7886         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
7887
7888         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
7889         (elmo-imap4-authenticator-alist): New variable.
7890         (elmo-imap4-open-connection-1): Rename from
7891         elmo-imap4-open-connection.
7892         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
7893         only wraps elmo-imap4-open-connection-1.
7894         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
7895         user-at-host.
7896         (elmo-imap4-auth-login): New function.
7897         (elmo-imap4-auth-cram-md5): New function.
7898         (elmo-imap4-auth-digest-md5): New function.
7899         (elmo-imap4-login): New function.
7900
7901 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
7902
7903         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
7904         function `error'.
7905
7906 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
7907
7908         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
7909
7910 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
7911
7912         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
7913
7914 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
7915
7916         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
7917         for server responses, quote `*' regardless of where it appears.
7918
7919 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
7920
7921         * elmo-maildir.el (elmo-maildir-commit): New alias.
7922
7923 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
7924
7925         * elmo-util.el (elmo-display-progress):
7926                 Use `progress-feedback-with-label'.
7927
7928 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
7929
7930         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
7931         (elmo-imap4-non-atom-char-regex): Ditto.
7932         (elmo-imap4-non-text-char-regex): Ditto.
7933         (elmo-imap4-literal-threshold): Ditto.
7934         (elmo-imap4-atom-p): New function.
7935         (elmo-imap4-quotable-p): Ditto.
7936         (elmo-imap4-nil): Ditto.
7937         (elmo-imap4-atom): Ditto.
7938         (elmo-imap4-quoted): Ditto.
7939         (elmo-imap4-literal-subr): Ditto.
7940         (elmo-imap4-literal): Ditto.
7941         (elmo-imap4-buffer-literal): Ditto.
7942         (elmo-imap4-string-subr): Ditto.
7943         (elmo-imap4-string): Ditto.
7944         (elmo-imap4-buffer-string): Ditto.
7945         (elmo-imap4-astring-subr): Ditto.
7946         (elmo-imap4-astring): Ditto.
7947         (elmo-imap4-buffer-astring): Ditto.
7948         (elmo-imap4-nstring): Ditto.
7949         (elmo-imap4-buffer-nstring): Ditto.
7950         (elmo-imap4-mailbox): New alias.
7951         (elmo-imap4-field-body): Ditto.
7952         (elmo-imap4-userid): Ditto.
7953         (elmo-imap4-password): Ditto.
7954         (elmo-imap4-format-quoted): New function.
7955         (elmo-imap4-send-command): Rewritten.  Accept a list of command
7956         arguments and handle "atom", "quoted" and "literal" string here.
7957         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
7958         `elmo-imap4-send-command'.
7959         (elmo-imap4-folder-exists-p): Likewise.
7960         (elmo-imap4-create-folder): Likewise.
7961         (elmo-imap4-delete-folder): Likewise.
7962         (elmo-imap4-rename-folder): Likewise.
7963         (elmo-imap4-max-of-folder): Likewise.
7964         (elmo-imap4-check-validity): Likewise.
7965         (elmo-imap4-sync-validity): Likewise.
7966         (elmo-imap4-server-diff): Likewise.
7967         (elmo-imap4-select-folder): Likewise.
7968         (elmo-imap4-copy-msgs): Likewise.
7969         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
7970         (elmo-imap4-mark-set-on-msgs): Likewise.
7971         (elmo-imap4-read-part): Likewise.
7972         (elmo-imap4-read-msg): Likewise.
7973         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
7974         `elmo-imap4-password' for `elmo-imap4-send-command'.
7975         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
7976         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
7977         `elmo-imap4-buffer-literal'.
7978         (elmo-imap4-append-msg): Likewise.
7979
7980         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
7981         `delete' for removing dead connection from the connection cache.
7982         Move deletion of the process buffer after that.
7983         (elmo-imap4-list): Change `defsubst' to `defun'.
7984         (elmo-imap4-commit): Make error message verbose.
7985         (elmo-imap4-search): Ditto.
7986         (elmo-imap4-list): Ditto.
7987         (elmo-imap4-select-folder): Ditto.
7988         (elmo-imap4-copy-msgs): Ditto.
7989         (elmo-imap4-delete-msg-by-id): Ditto.
7990         (elmo-imap4-append-msg-by-id): Ditto.
7991         (elmo-imap4-append-msg): Ditto.
7992
7993 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7994
7995         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
7996         when dired is used on XEmacs.
7997
7998 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
7999
8000         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8001         instead of `append'.
8002         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8003         `elmo-plugged-p' directly.
8004         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8005         of `elmo-plugged-p' directly.
8006
8007         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8008         Eliminate unused variable.  Use `memq' for checking a process status.
8009         Use `cons' instead of `append' for updating the connection cache.
8010         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8011         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8012
8013 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
8014
8015         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8016         `elmo-imap4-read-point' exactly.
8017
8018         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8019         the local variable `folder' to `mailbox'.
8020         Rename the argument `fld' to `folder'.
8021
8022 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
8023
8024         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8025         * elmo-imap4.el (elmo-imap4-commit): Ditto.
8026
8027 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
8028
8029         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8030         (elmo-pop3-number-uidl-hash): New buffer-local variable.
8031         (elmo-pop3-uidl-number-hash): Ditto.
8032         (elmo-pop3-size-hash): Ditto.
8033         (elmo-pop3-uidl-done): Ditto.
8034         (elmo-pop3-list-done): Ditto.
8035         (elmo-pop3-connection-get-process): New defmacro.
8036         (elmo-pop3-connection-get-buffer): Ditto.
8037         (elmo-pop3-close-connection): Delete buffer and process.
8038         (elmo-pop3-flush-connection): Don't delete buffer and process.
8039         (elmo-pop3-get-connection): Added optional argument `if-exists'.
8040         Setup UIDL and size hash.
8041         (elmo-pop3-send-command-no-erase): Deleted
8042         (elmo-pop3-send-command): Added optional argument `no-erase'.
8043         (elmo-pop3-parse-uidl-response): New function.
8044         (elmo-pop3-parse-list-response): Set size hash.
8045         (elmo-pop3-list-location): New function.
8046         (elmo-pop3-list-by-uidl-subr): Ditto.
8047         (elmo-pop3-list-by-list): Ditto.
8048         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8049         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8050         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8051         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8052         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8053         Use uidl.
8054         (elmo-pop3-uidl-to-number): New function.
8055         (elmo-pop3-number-to-uidl): Ditto.
8056         (elmo-pop3-number-to-size): Ditto.
8057         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8058         Set number by use of uidl.
8059         (elmo-pop3-msgdb-create-message): Likewise.
8060         Set size, loc-alist in msgdb.
8061         (elmo-pop3-read-msg): Set number by use of uidl.
8062         Added optional argument `msgdb'.
8063         (elmo-pop3-delete-msg): Ditto.
8064         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8065         (elmo-pop3-commit): Close connection.
8066
8067         * elmo-pipe.el (elmo-pipe-max-of-folder):
8068         Bind `elmo-pop3-use-uidl' as nil.
8069         (elmo-pipe-drain): Ditto.
8070         Call `elmo-commit'.
8071
8072         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8073         (elmo-msgdb-overview-entity-set-size): New defsubst.
8074
8075 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
8076
8077         * elmo-vars.el (elmo-use-killed-list): New variable
8078         (Renamed from `elmo-nntp-use-killed-list').
8079         (elmo-nntp-use-killed-list): Eliminated.
8080
8081         * elmo-msgdb.el (elmo-msgdb-expand-path):
8082         Changed expanding msgdb path for elmo-multi.
8083
8084         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8085         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8086         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8087         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8088         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8089         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
8090         (toplevel): Deleted time-stamp line.
8091
8092         * elmo2.el (elmo-clear-killed ): Defined as function
8093         (Abolished defining as a backend function).
8094         All other related modules are changed.
8095
8096 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
8097
8098         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
8099
8100 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
8101
8102         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
8103
8104 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
8105
8106         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
8107
8108 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
8109
8110         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
8111         asynchronous folder check.
8112
8113         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
8114
8115         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
8116         `elmo-nntp-use-killed-list'.
8117         (elmo-nntp-list-folder): Use killed list.
8118         (elmo-nntp-max-of-folder): Ditto.
8119         (elmo-nntp-msgdb-create): Set killed list.
8120
8121         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
8122
8123         * elmo2.el (elmo-clear-killed): New backend function.
8124         All other related modules are changed.
8125
8126 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
8127
8128         * elmo-util.el (elmo-imap4-spec-folder): Use
8129         `elmo-imap4-spec-mailbox'; Mark as obsolete.
8130         All callers changed.
8131
8132 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
8133
8134         * mmelmo-2.el (initialize-instance):
8135         Use `mime-buffer-entity-buffer-internal' instead of
8136         `mime-entity-buffer'.
8137
8138         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
8139         (mime-entity-body): Implemented.
8140         (mime-goto-header-start-point): Deleted.
8141         (mime-goto-body-end-point): Ditto.
8142         (mime-entity-point-min): Ditto.
8143         (mime-entity-point-max): Ditto.
8144         (mime-entity-children): Ditto.
8145         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
8146         instead of `mime-entity-buffer'.
8147         (mime-entity-header-buffer): Ditto.
8148         (mime-entity-body-buffer): Ditto.
8149         (mime-write-entity-content): Ditto.
8150
8151         * pldap.el (ldap-static-if): New macro.
8152         (toplevel): Use it instead of `static-if'.
8153
8154 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
8155
8156         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
8157         included in `attrs' argument.
8158
8159 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
8160
8161         * elmo-util.el (elmo-get-passwd): Use old backquote style.
8162
8163         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
8164         (ldap-ldif-safe-init-char-regexp): Ditto.
8165         (ldap-ldif-safe-string-regexp): Ditto.
8166         (ldap/ldif-safe-string-p): New macro.
8167         (ldap/ldif-insert-field): Ditto.
8168         (ldap-modify): Use it.
8169         (ldap-add): Ditto.
8170         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
8171         (ldap-decode-attribute): Decode only when `attr' is consp.
8172         (ldap-delete): Bind `ret'.
8173         (toplevel): Require 'cl at compile time.
8174         Removed (require 'poe) and (require 'std11).
8175         (pldap-version): Eliminated.
8176         (ldap-search-basic): Removed auth and dn binding.
8177         (ldap-ldif-field-name-regexp): New constant.
8178         (ldap-ldif-field-head-regexp): Ditto.
8179         (ldap-ldif-next-field-head-regexp): Ditto.
8180         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
8181         (ldap/field-end): New function.
8182         (ldap/field-body): Use it.
8183         (ldap/collect-field): Ditto.
8184         (ldap-search-basic): Use `ldap/field-body'.
8185
8186 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
8187
8188         * pldap.el (ldap-default-attribute-encoder): New user option.
8189         (ldap/field-body): Decode base64 string.
8190         (ldap/collect-field): Ditto.
8191         (ldap-encode-attribute): New function.
8192         (ldap-add-entries): Use it.
8193         (ldap-modify-entries): Ditto.
8194         (ldap-search-entries): Enclosed decoding function with
8195         `with-temp-buffer' and set as unibyte.
8196         (ldap-search-basic): Set process buffer as unibyte.
8197
8198         * elmo-util.el (elmo-folder-identical-system-p):
8199         Eliminated name space checking.
8200
8201         * pldap.el: New module.
8202         toplevel: Changed condition to detect built-in ldap feature.
8203         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
8204         (ldap-add): Added error handling.
8205         (ldap-modify): Ditto.
8206         (ldap-delete): Ditto.
8207
8208 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
8209
8210         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
8211         Initialize local variables with `let'.  Inline a temporary
8212         variable for the progress percentage.  Sort `setq' to reduce
8213         function call in the while-loop.
8214
8215         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
8216         into the conditional branch.
8217
8218 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
8219
8220         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
8221         Move a conditional out of the while-loop.
8222
8223 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8224
8225         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
8226         elmo-msgdb-overview-get-entity-by-number.
8227         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
8228         throw.
8229
8230 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
8231
8232         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
8233         the local variable for a packed number self descriptively.
8234
8235 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8236
8237         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
8238         * elmo-localdir.el (elmo-localdir-pack-number): Use
8239         `elmo-msgdb-overview-get-entity' instead of
8240         `elmo-msgdb-overview-get-entity-by-number'.
8241         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
8242         (elmo-msgdb-search-overview-entity): Removed.
8243         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
8244         by message-id or number.
8245         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
8246         instead of `elmo-msgdb-overview-get-entity-by-number'.
8247
8248 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8249
8250         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
8251         non-nil, use hash table for overview.
8252         (elmo-hash-maximum-size): New variable.
8253         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
8254         (elmo-msgdb-make-overview-hashtb): New function.
8255         (elmo-msgdb-clear-overview-hashtb): New function.
8256         (elmo-clear-hash-val): New macro.
8257         All other related modules are changed.
8258
8259 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
8260
8261         * elmo2.el (elmo-move-msgs): If there's other message with
8262         same message-id, don't use cache.
8263
8264 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
8265
8266         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
8267         number is already packed.
8268
8269 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
8270
8271         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
8272
8273 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8274
8275         * elmo-vars.el (elmo-display-progress-threshold): New variable.
8276         All other related modules are changed.
8277
8278 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
8279
8280         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
8281         of refiling failure on Maildir.
8282
8283 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8284
8285         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
8286         decoded mime-charset with cache.
8287         (elmo-msgdb-overview-entity-get-from): Ditto.
8288         (elmo-msgdb-overview-entity-get-subject): Ditto.
8289         * elmo-vars.el (elmo-use-decoded-cache): New variable.
8290
8291 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
8292
8293         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
8294         (elmo-remove-passwd): Fill password with 0 before erase.
8295         * elmo-vars.el (elmo-passwd-life-time): New variable.
8296
8297 \f
8298 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
8299
8300         * elmo-cache.el (elmo-buffer-cache-add):
8301         Set message cache buffer as unibyte.
8302
8303 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8304
8305         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
8306         become nil.
8307
8308 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
8309
8310         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
8311         when display is finished.
8312         (elmo-nntp-msgdb-create): Ditto.
8313         (elmo-nntp-groups-read-response): Ditto.
8314         (elmo-nntp-retrieve-headers): Ditto.
8315         (elmo-nntp-msgdb-create-message): Ditto.
8316         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
8317         (elmo-pop3-msgdb-create-message): Ditto.
8318
8319 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8320
8321         * elmo-maildir.el (elmo-maildir-msgdb-create):
8322         Use `elmo-msgdb-sort-by-date'.
8323
8324 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
8325
8326         * elmo2.el (elmo-read-msg-no-cache):
8327         Eliminated arguments after `outbuf'.
8328         Don't use cache even if it exists.
8329         (elmo-read-msg): Don't pass arguments after `outbuf' to
8330         `elmo-read-msg-no-cache'.
8331
8332 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8333
8334         * elmo-archive.el (elmo-archive-list-folders):
8335         Use `file-name-directory' if base folder does not exist.
8336
8337 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
8338
8339         * elmo-archive.el (elmo-archive-list-folders): Don't use
8340         `file-name-directory'.
8341
8342 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
8343
8344         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
8345         If `force' is non-nil, try flushing all operation queues.
8346
8347 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
8348
8349         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
8350         as-binary-process.
8351
8352 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8353
8354         * elmo-util.el (elmo-display-progress): Fixed.
8355
8356 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8357
8358         * elmo-util.el (elmo-display-progress): New function.
8359         All other related modules are changed.