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