72266a1c0a761538050f48c65a35894472c64ce7
[elisp/wanderlust.git] / elmo / ChangeLog
1 2009-05-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2
3         * elmo-version.el (elmo-version): Up to 2.15.7.
4
5 2009-03-22  Tetsurou Okazaki  <okazaki@be.to>
6
7         * elsp-bsfilter.el (elmo-spam-bsfilter-update-switch): Change
8         default value to `--auto-update'.
9
10 2008-07-06  TAKAHASHI Kaoru  <kaoru@kaisei.org>
11
12         * elmo-pop3.el (elmo-pop3-read-contents): Fix double `goto-char'.
13         Add `elmo-pop3-read-point' barrier.
14
15 2008-07-06 YAMASHITA Junji <ysiijj@gmail.com>
16
17         * elmo-pop3.el (elmo-pop3-read-contents): improving performance:
18         goto the previous end-point insead of the head-point, and use
19         `search-forward' instead of `re-search-forward'.
20
21 2008-06-30  Tetsurou Okazaki  <okazaki@be.to>
22
23         * elmo-imap4.el (elmo-imap4-parse-status): Use `case' instead of `cond'.
24
25 2008-06-30  Don Bashford  <Don.Bashford@stjude.org>
26
27         * elmo-imap4.el (elmo-imap4-parse-status): Accept IMAP4 tokens in a
28         case-insensitive fashion.
29
30 2008-03-30  Tetsurou Okazaki  <okazaki@be.to>
31
32         * elmo-imap4.el (elmo-imap4-send-command): Combine `process-send-string' calls.
33
34 2008-02-20  TAKAHASHI Kaoru  <kaoru@kaisei.org>
35
36         * elmo-util.el (elmo-add-name-to-file, elmo-field-body): Use
37         `eval-and-compile' for suppress compile warnings.
38
39         * elmo-vars.el (dynamic-link, dynamic-call): Use `defalias-maybe'
40         instead of `defun-maybe'
41
42         * elmo-util.el: Add (eval-when-compile (require 'static)).
43
44 2008-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
45
46         * mmimap.el: Remove (require 'static).
47         * acap.el: Ditto.
48
49         * elmo-flag.el: Move ';;; Code:' comment.
50         * elmo-imap4.el: Ditto.
51         * elmo-net.el: Ditto.
52
53         * elmo-version.el (product-provide): Fix comment.
54
55 2008-02-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
56
57         * slp.el: Add (eval-when-compile (require 'cl)).
58         * elmo-date.el: Ditto.
59         * elmo-pop3.el: Ditto.
60         * elmo-mime.el: Add (eval-when-compile (require 'elmo)).
61
62 2008-02-17  TAKAHASHI Kaoru  <kaoru@kaisei.org>
63
64         * modb.el (elmo-msgdb-match-condition-primitive): Use
65         `string-to-number' instead of `string-to-int'.
66
67         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer)
68         (elmo-msgdb-message-match-condition)
69         (elmo-msgdb-create-message-entity-from-buffer): Use
70         `string-to-number' instead of `string-to-int'.
71
72         * elmo.el (elmo-folder-confirm-appends): Use `string-to-number'
73         instead of `string-to-int'.
74
75         * elmo-util.el (elmo-cache-expire-by-age): Use `string-to-number'
76         instead of `string-to-int'.
77
78         * elmo-pop3.el (elmo-pop3-list-by-list, elmo-folder-status): Use
79         `string-to-number' instead of `string-to-int'.
80
81         * elmo-nntp.el (elmo-nntp-make-msglist)
82         (elmo-folder-list-messages-plugged, elmo-nntp-folder-status)
83         (elmo-nntp-create-msgdb-from-overview-string)
84         (elmo-nntp-parse-xhdr-response, elmo-nntp-msgdb-create-message)
85         (elmo-nntp-search-primitive): Use `string-to-number' instead of
86         `string-to-int'.
87
88         * elmo-net.el (elmo-net-folder-set-parameters): Use
89         `string-to-number' instead of `string-to-int'.
90
91         * elmo-localdir.el (elmo-localdir-list-subr): Use
92         `string-to-number' instead of `string-to-int'.
93
94         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Use
95         `string-to-number' instead of `string-to-int'.
96
97         * elmo-date.el (elmo-date-get-datevec): Use `string-to-number'
98         instead of `string-to-int'.
99
100         * elmo-archive.el (elmo-archive-list-folder-subr): Use
101         `string-to-number' instead of `string-to-int'.
102
103 2008-02-16  TAKAHASHI Kaoru  <kaoru@kaisei.org>
104
105         * elmo-util.el (elmo-get-passwd): Fix typo.
106
107         * elmo-nntp.el (elmo-nntp-get-server-command)
108         (elmo-nntp-set-server-command, elmo-nntp-xover-p)
109         (elmo-nntp-listgroup-p, elmo-nntp-set-listgroup)
110         (elmo-nntp-list-active-p, elmo-nntp-set-list-active)
111         (elmo-nntp-xhdr-p, elmo-nntp-set-xhdr): New backquote style.
112
113         * elmo-imap4.el (elmo-imap4-debug)
114         (elmo-imap4-response-continue-req-p, elmo-imap4-response-ok-p)
115         (elmo-imap4-response-bye-p, elmo-imap4-response-garbage-p)
116         (elmo-imap4-response-value, elmo-imap4-response-error-text)
117         (elmo-imap4-response-bodydetail-text, elmo-imap4-value)
118         (elmo-imap4-nth, elmo-imap4-detect-search-charset)
119         (elmo-imap4-identical-system-p): New backquote style.
120
121 2008-02-15  TAKAHASHI Kaoru  <kaoru@kaisei.org>
122
123         * elmo-dop.el (elmo-make-dop-queue): New backquote style.
124         (elmo-dop-queue-fname, elmo-dop-queue-method): Ditto.
125         (elmo-dop-queue-arguments): Ditto.
126
127         * elmo-date.el (elmo-match-substring): New backquote style.
128         (elmo-match-string, elmo-match-buffer): Ditto.
129         (elmo-date-make-sortable-string): Ditto.
130
131         * elmo-archive.el (elmo-archive-get-method):New backquote style.
132         (elmo-archive-get-suffix, elmo-archive-get-regexp): Ditto.
133
134         * elmo-multi.el (elmo-multi-real-folder-number): New backquote
135         style.
136
137         * elmo-net.el (elmo-network-stream-type-spec-string): New
138         backquote style.
139         (elmo-network-stream-type-symbol): Ditto.
140         (elmo-network-stream-type-feature): Ditto.
141         (elmo-network-stream-type-function): Ditto.
142         (elmo-network-session-buffer): Ditto.
143
144         * elmo-util.el (elmo-file-cache-expand-path): New backquote style.
145         (elmo-file-cache-status, elmo-file-cache-path): Ditto.
146         (elmo-make-file-cache, elmo-string, elmo-get-passwd): Ditto.
147         (elmo-bind-directory, elmo-set-work-buf): Ditto.
148
149         * elmo.el (elmo-folder-send): New backquote style.
150
151 2008-02-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
152
153         * pldap.el (ldap-static-if): New backquote style.
154         (ldap/ldif-safe-string-p): Ditto.
155         (ldap/ldif-insert-field): Ditto.
156
157         * elmo-version.el (elmo-version): Up to 2.15.6.
158
159 2008-01-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
160
161         * elmo-imap4.el (elmo-folder-list-messages-plugged): Don't include
162         messages with \Deleted flag.
163         (elmo-folder-delete-messages-plugged): Ask before sending expunge
164         command if there are messages with \Deleted flag.
165
166 2007-04-24  Yoichi NAKAYAMA  <yoichi@geiin.org>
167
168         * elmo-pop3.el (elmo-pop3-auth-apop): Use more strict regexp.
169         http://seclists.org/bugtraq/2007/Apr/0018.html
170         (Suggested by Tatsuya Kinoshita)
171
172 2007-04-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
173
174         * elmo-imap4.el (elmo-folder-delete): Don't call close for mailbox
175         with \Noselect attribute.
176
177 2007-04-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
178
179         * elmo-imap4.el (elmo-folder-list-subfolders): Fix handling of
180         hierarchical folder structure with UW-imapd.
181
182 2007-02-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
183
184         * elmo-imap4.el (elmo-imap4-clear-login): Don't send LOGIN command
185         when the LOGINDISABLED capability is advertised.
186
187 2007-01-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
188
189         * elmo-msgdb.el (elmo-msgdb-extra-fields): Make it non-destructive.
190
191 2007-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
192
193         * elmo-shimbun.el (elmo-shimbun-update-overview): Add argnument
194         `entity'.
195         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview' only
196         if the message entity is exists.
197
198 2007-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
199
200         * elmo-util.el (elmo-msgdb-insert-file-header): Call
201         `elmo-delete-cr-buffer'.
202
203         * elmo-localdir.el (elmo-message-fetch-internal): Use
204         `insert-file-contents-as-raw-text' instead of
205         `insert-file-contents-as-binary'.
206
207         * elmo-maildir.el (elmo-map-message-fetch): Ditto.
208
209 2006-12-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
210
211         * elmo-imap4.el (elmo-network-initialize-session): Check to
212         retrieve a whole greeting message.
213
214 2006-11-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
215
216         * elmo-flag.el (elmo-folder-commit): Encode `.minfo' at save.
217
218 2006-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
219
220         * elmo-util.el (elmo-safe-plist-get): New alias or macro.
221         (elmo-progress-notify): Use it instead of `plist-get'.
222
223 2006-11-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
224
225         * elmo.el (elmo-generic-folder-append-messages): Remove unused
226         variable `table'.
227
228 2006-11-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
229
230         * elmo-pipe.el (elmo-folder-set-plugged): Define.
231
232 2006-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
233
234         * elsp-bsfilter.el (elmo-spam-bsfilter-use-remote): New user option.
235         (elmo-spam-list-spam-messages): Check it option.
236
237 2006-11-08  Tetsurou Okazaki  <okazaki@be.to>
238
239         * elmo-util.el (elmo-with-progress-display): Return the value
240         of the last form in `body'.
241
242 2006-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
243
244         * elmo-util.el (elmo-progress-start): Accept nil for `total'.  Set
245         `elmo-progress-counter' as t when a query callback returns nil.
246         (elmo-progress-clear): New function.
247         (elmo-progress-done): Split into `elmo-progress-clear'.
248         (elmo-progress-notify): Update a total slot when it is nil.
249         (elmo-with-progress-display): Call `elmo-progress-clear' in
250         unwind-protect and move calling `elmo-progress-done' to outside.
251
252         * elmo-imap4.el (elmo-imap4-find-next-line): Call
253         `elmo-progress-notify' with :total parameter instead of
254         `elmo-progress-counter-set-total'.
255
256 2006-11-07  Tetsurou Okazaki  <okazaki@be.to>
257
258         * elmo-util.el (elmo-cache-expire-by-age): Add docstring.
259         Make it interactive.
260         (elmo-progress-start): Avoid updating `elmo-progress-counter'
261         when a query callback returns nil.  Return a progress counter
262         instead of t whenever a start callback was called.
263
264 2006-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
265
266         * elmo-imap4.el (elmo-imap4-session-capable-p): New macro.
267         (elmo-imap4-send-command): Use it.
268         (elmo-network-initialize-session): Ditto.
269         (elmo-network-setup-session): Ditto.
270         (elmo-folder-msgdb-create-plugged): Ditto.
271
272 2006-11-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
273
274         * elmo-util.el (elmo-progress-done): Fix a miss refer to
275         `elmo-progress-counter'.
276
277 2006-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
278
279         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Abolish.
280         (elsp-bsfilter-list-spam-filter): New function.
281         (elsp-bsfilter-start-list-spam): Ditto.
282         (elsp-bsfilter-read-list-spam): Ditto.
283         (elmo-spam-list-spam-messages): Use async process to display
284         progress message by each message.
285
286 2006-11-03  Yoichi NAKAYAMA  <yoichi@geiin.org>
287
288         * elmo-spam.el (elmo-spam-process-messages-as-mbox): Fix problem
289         of flushing previously inserted message contents.
290
291         * elmo-imap4.el (elmo-folder-search): Fix return value.
292
293 2006-11-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
294
295         * elmo-imap4.el (elmo-imap4-find-next-line): Check whether a label
296         of reporter is enable or not.
297
298 2006-10-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
299
300         * elmo-util.el (elmo-list-bigger-diff): Abolish.
301         (elmo-display-progress): Ditto.
302         (elmo-progress-counter-alist): Ditto.
303         (elmo-progress-set): Ditto.
304         (elmo-progress-clear): Ditto.
305         (elmo-progress-counter-all-value): Rename to
306         `elmo-progress-counter-total'.
307         (elmo-progress-counter-format): Rename to
308         `elmo-progress-counter-action'.
309         (elmo-progress-counter): New internal variable.
310         (elmo-progress-callback-function): Ditto.
311         (elmo-progress-counter-label): New function.
312         (elmo-progress-counter-set-total): Ditto.
313         (elmo-progress-counter-set-action): Ditto.
314         (elmo-progress-call-callback): Ditto.
315         (elmo-progress-start): Ditto.
316         (elmo-progress-done): Ditto.
317         (elmo-progress-notify): Rewrite.
318         (elmo-with-progress-display): Remove first argument
319         `condition'. Add optional argument `var' in `spec'.
320
321         * elmo-vars.el (elmo-display-progress-threshold): Abolish.
322         (elmo-display-retrieval-progress-threshold): Ditto.
323         (elmo-inhibit-display-retrieval-progress): Ditto.
324
325         * Replace all pair of `elmo-progress-set' and
326         `elmo-progress-clear' into `elmo-with-progress-display'.
327
328         * Replace to call `elmo-display-progress' into pair of
329         `elmo-progress-notify' and `elmo-with-progress-display'.
330
331         * elmo-version.el (elmo-version): Up to 2.15.5.
332
333 2006-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
334
335         * elmo-imap4.el (elmo-imap4-arrival-filter): Use `case' instead of
336         `cond'.
337
338 2006-10-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
339
340         * elmo-imap4.el (elmo-imap4-arrival-filter): Call delete-region in
341         cleanup-forms [wl:14027].
342
343 2006-10-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
344
345         * elmo-flag.el (elmo-global-flag-set-internal): Use
346         `elmo-copy-file' by priority when the message is a file.
347
348 2006-10-01  Yoichi NAKAYAMA  <yoichi@geiin.org>
349
350         * elmo.el: Fix typo: disptch -> dispatch.
351
352 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
353
354         * elmo.el (elmo-file-tag): New class.
355         (elmo-append-messages-disptch-table): New constant.
356         (elmo-folder-type-p): New function.
357         (elmo-folder-append-messages): Redefine as function.
358
359         * elmo-null.el (elmo-folder-append-messages): Renamed from
360         `elmo-folder-append-messages'.
361
362         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
363         (elmo-folder-append-messages-*-maildir): Renamed from
364         `elmo-folder-append-messages'.
365
366         * elmo-localdir.el (elmo-localdir-folder): Inherit
367         `elmo-file-tag'.
368         (elmo-folder-append-messages-*-localdir): Renamed from
369         `elmo-folder-append-messages'.
370
371         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
372         from `elmo-folder-append-messages'.
373
374         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
375         `elmo-folder-append-messages'.
376
377         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
378         function.
379         (elmo-folder-append-messages-*-filter): Ditto.
380
381         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
382
383         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
384         (elmo-folder-append-messages-*-pipe): Renamed from
385         `elmo-folder-append-messages'.
386
387         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
388
389         * elmo-file.el (elmo-file-folder): Ditto.
390
391         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
392
393         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
394         from `elmo-folder-append-messages'
395
396 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
397
398         * elmo-map.el (elmo-location-map-setup): Change an argument
399         `locations' to optional.
400         (elmo-location-map-clear): Abolish.
401         (elmo-folder-clear): Follow the API change.
402
403         * elmo-pop3.el (elmo-folder-clear): Ditto.
404
405         * elmo-pop3.el (toplevel): Require elmo-map.
406         (elmo-pop3-folder): Inherit elmo-location-map and abolish
407         location-alist slot (All other related portions are changed).
408         (elmo-pop3-folder-use-uidl): New function.
409         (elmo-folder-msgdb-create): Don't sort message entities.
410         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
411         (elmo-pop3-number-to-size): Convert return value to number.
412         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
413         working buffer.
414
415         * elmo-map.el: Use `location-map' as a variable name for instance
416         instead of `mapper'.
417         (elmo-location-map-setup): Return location alist.
418         (elmo-location-map-update): Ditto.
419
420 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
421
422         * elmo-map.el (elmo-location-map): New class; split location and
423         number mapping from elmo-map-folder (All other related portions
424         are changed).
425
426         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
427         change.
428
429         * elmo-version.el (elmo-version): Up to 2.15.4.
430
431 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
432
433         * elmo-vars.el (elmo-use-hardlink): New user option.
434
435         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
436         `elmo-use-hardlink'.
437
438         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
439         killed-list.
440         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
441         instead of `*-internal'. Use `elmo-with-progress-display'.
442
443 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
444
445         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
446         `elmo-spam-process-messages-as-mbox'.
447
448         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
449
450 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
451
452         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
453         argument BUFFER of `call-process'.
454
455 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
456
457         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
458         args.
459         (elsp-bsfilter-list-spam-files): Ditto.
460
461 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
462
463         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
464         (elmo-spam-bsfilter-max-messages-per-process): New use option.
465         (elmo-spam-bsfilter-debug): Fix a group.
466         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
467         `--homedir'.
468         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
469         (elsp-bsfilter-list-spam-files): New function.
470         (elmo-spam-list-spam-messages): Define.
471         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
472         (elmo-spam-bsfilter-register-messages): New function.
473         (elmo-spam-register-spam-messages): Define.
474         (elmo-spam-register-good-messages): Ditto.
475
476         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
477
478         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
479         `nconc' and `consp'.
480
481 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
482
483         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
484         hash table to test whether a location is exists.
485
486 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
487
488         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
489         even if some error occurred.
490
491         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
492         meaningless unwind-protect.
493
494         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
495         start-number correctly.
496         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
497         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
498
499 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
500
501         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
502         (elmo-folder-initialize): Use it.
503         (elmo-global-flag-replace-referrer): New function.
504
505         * elmo.el (toplevel): Added autoload setting for
506         `elmo-global-flag-replace-referrer'.
507         (elmo-folder-rename): Rewrite the last change use
508         `elmo-global-flag-replace-referrer'.
509
510         * elmo-pipe.el (elmo-folder-rename): Call
511         `elmo-global-flag-replace-referrer'.
512
513 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
514
515         * elmo.el (elmo-folder-rename): Set meta data for global flags
516         follow the rename.
517
518 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
519
520         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
521         as 'not-loaded.
522         (elmo-folder-close): Ditto.
523         (elmo-filter-folder-number-list-loaded-p): New function.
524         (elmo-filter-folder-number-list): Check whether loaded or not.
525         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
526         of `elmo-filter-folder-number-list-internal'.
527         (elmo-folder-delete-messages): Ditto.
528         (elmo-folder-length): Check whether number-list is loaded or not.
529
530 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
531
532         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
533         field `real field' into each element of list.
534         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
535         (elmo-msgdb-message-entity-field): Ditto.
536         (modb-entity-ml-info-real-fields): New function.
537
538         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
539
540         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
541         `elmo-msgdb-extra-fields'.
542
543 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
544
545         * elmo-util.el (elmo-passwd-alist-load): Move point to min
546         position before read.
547
548 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
549
550         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
551         (elmo-global-flags-initialize): Ditto.
552
553 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
554
555         * elmo-archive.el (toplevel): Don't require emu, std11
556         and elmo-localdir.
557
558         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
559         definition.
560
561 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
562
563         * elmo.el (elmo-folder-confirm-appends): Display folder name.
564
565 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
566
567         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
568         literals.
569
570 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
571
572         * elmo-maildir.el (elmo-maildir-list-location): Reduce
573         `elmo-get-last-modification-time' call.
574
575 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
576
577         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
578         expression.
579         (elmo-maildir-set-mark): Ditto.
580         (elmo-maildir-delete-mark): Ditto.
581
582 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
583
584         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
585         optional argument `separators'.
586
587 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
588
589         * elmo.el (cache-changed): Abolish.
590         (status-changed): New signal.
591         (elmo-message-killed-p): New generic function and define for
592         elmo-folder.
593         (elmo-folder-recover-messages): Ditto.
594         (elmo-message-set-cached): Emit signal `status-changed' instead of
595         `cache-changed'.
596         (elmo-message-status): New macro.
597         (elmo-message-status-folder): Ditto.
598         (elmo-message-status-number): Ditto.
599         (elmo-message-status-set-flags): Ditto.
600         (elmo-message-status-set-killed): Ditto.
601         (elmo-message-status-flags): New function.
602         (elmo-message-status-cached-p): Ditto.
603         (elmo-message-status-killed-p): Ditto.
604
605         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
606         `status-changed' instead of `cache-changed'.
607         (elmo-folder-recover-messages): Define.
608         (elmo-message-killed-p): Ditto.
609
610         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
611         `status-changed' instead of `cache-changed'.
612
613         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
614         (elmo-message-killed-p): Define.
615         (elmo-folder-recover-messages): Ditto.
616
617         * elmo-version.el (elmo-version): Up to 2.15.3.
618
619 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
620
621         * elmo-signal.el (elmo-signal-bindings): Use cons to append
622         element into list.
623         (elmo-define-signal-handler): Add docstring.
624         (elmo-define-signal-filter): Ditto.
625
626         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
627
628 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
629
630         * elmo-util.el (elmo-flatten): Don't use recursive call.
631
632         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
633         assignment.
634         (elmo-folder-message-make-temp-files): Use `number-to-string'
635         instead of `int-to-string'.
636
637 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
638
639         * elmo-search.el (elmo-folder-delete-messages): Define.
640
641 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
642
643         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
644         customization type.
645         (elmo-mailing-list-count-spec-list): Ditto.
646
647         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
648         for `list-id'.
649
650 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
651
652         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
653         handling.
654
655 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
656
657         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
658         (elmo-mailing-list-count-spec-list): Ditto.
659
660         * elmo-util.el (elmo-map-until-success): New function.
661         (elmo-string-match-substring): Ditto.
662         (elmo-find-list-match-value): Ditto.
663
664         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
665         Removed.
666         (modb-entity-extract-ml-info-from-subject): Ditto.
667         (modb-entity-extract-ml-info-from-return-path): Ditto.
668         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
669         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
670         (modb-entity-extract-ml-info-from-mailman): Ditto.
671         (modb-entity-extract-mailing-list-info-functions): Ditto.
672         (modb-entity-extract-mailing-list-info): Rewrite with
673         `elmo-find-list-match-value'.
674
675 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
676
677         * elmo-net.el (elmo-network-session-retry-count): New user option.
678         (elmo-network-session-buffer-name): New internal function.
679         (elmo-network-session-buffer-create): Ditto.
680         (elmo-network-open-session): Retry open network session
681         `elmo-network-session-retry-count' times.
682
683 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
684
685         * elmo-util.el (elmo-list-filter): Rewritten.
686
687 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
688
689         * elmo-util.el (elmo-string-member): Allow symbol element in list.
690
691 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
692
693         * elmo-search.el (elmo-make-search-engine): Use prefix
694         `elmo-search-' for require symbol instead of `else-'.
695         (elmo-search-engine-extprog): New class.
696         (elmo-search-engine-do-search): Remove nil from argument
697         list. Added argument pattern to evaluate element as function.
698         (elmo-search-engine-local-file): Derived from
699         `elmo-search-engine-extprog'.
700         (elmo-search-engine-create-message-entity): Check existance of file.
701         (elmo-search-engine-fetch-message): Ditto.
702         (elmo-search-namazu-index): Follow the API change.
703         (elmo-search-grep-target): Ditto.
704
705 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
706
707         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
708         characters of working buffer.
709
710         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
711         Does not bind `default-mime-charset'.
712         (elmo-msgdb-create-message-entity-from-buffer): Removed
713         unnecessary local bind.
714
715         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
716         function.
717         (modb-entity-extract-mailing-list-info-functions): Added it.
718
719 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
720
721         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
722         when number and message-id are non-nil.
723
724         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
725
726         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
727         conditional steatment.
728         (elmo-pop3-auth-apop): Likewise.
729         (elmo-network-authenticate-session): Likewise.
730
731 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
732
733         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
734         symbol `fill-column'.
735         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
736         decode field value.
737
738         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
739         (elmo-decoded-field-body): Ditto.
740
741 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
742
743         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
744         `tokens' to `params'.
745
746 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
747
748         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
749         working buffer.
750
751 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
752
753         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
754         decide index.
755
756 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
757
758         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
759         Set default value as nil.
760         (toplevel): Register search engines by
761         `elmo-search-register-engine' if there are not defined.
762
763         * elmo.el (autoload): Added autoload setting for
764         `elmo-search-register-engine'.
765
766 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
767
768         * elmo.el (toplevel): `[' is redefined as the prefix of the search
769         folder instead of nmz folder.
770         (elmo-nmz-default-index-path): Added obsolete variable setting.
771         (elmo-nmz-index-alias-alist): Ditto.
772         (elmo-nmz-use-drive-letter): Ditto.
773
774         * elmo-search.el (elmo-search-register-engine): New function.
775
776         * elmo-nmz.el: Removed.
777
778         * elmo-version.el (elmo-version): Up to 2.15.2.
779
780 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
781
782         * elmo-search.el: New file.
783
784 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
785
786         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
787         condition `larger' and `smaller'.
788
789 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
790
791         * elmo-util.el (elmo-safe-filename): Rewrite to replace
792         `"' (double quote) into "_Q_".
793
794 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
795
796         * elmo-net.el (elmo-net-quote-chars): Abolish.
797         (elmo-net-format-quoted): Ditto.
798
799 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
800
801         * elmo.el (elmo-get-folder-function): New variable.
802         (elmo-get-folder): New function.
803         (elmo-folder-rename): Call `elmo-make-folder' with specified
804         mime-charset.
805
806         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
807         `elmo-make-folder'.
808         (elmo-split-subr): Ditto.
809
810         * elmo-multi.el (elmo-folder-initialize): Ditto.
811
812         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
813
814         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
815         (elmo-flag-get-folder): Ditto.
816
817         * elmo-filter.el (elmo-folder-initialize): Ditto.
818
819         * elmo-access.el (elmo-folder-initialize): Ditto.
820         (elmo-access-folder-update-children): Ditto.
821
822         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
823         (elmo-dop-queue-flush): Ditto.
824         (elmo-folder-append-buffer-dop-delayed): Ditto.
825         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
826         mime-charset.
827
828         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
829         instead of `elmo-make-folder'.
830         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
831         destination folder instead of send `elmo-folder-rename-internal'.
832
833         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
834         slot of subfolder instead of create it.
835
836 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
837
838         * elmo-util.el (elmo-collect-separators): New function.
839         (elmo-collect-separators-internal): Ditto.
840         (elmo-collect-trail-separators): Ditto.
841         (elmo-parse-separated-tokens): Ditto.
842         (elmo-parse-separated-tokens-internal): Ditto.
843         (elmo-quote-syntactical-element): Ditto.
844
845         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
846         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
847
848         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
849         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
850         (elmo-nntp-folder-list-subfolders): Quote a user name.
851
852         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
853         (elmo-net-parse-network): Abolish.
854         (elmo-net-folder-set-parameters): New function.
855         (elmo-folder-initialize): Follow the above change.
856
857         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
858         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
859         (elmo-folder-list-subfolders): Use
860         `elmo-quote-syntactical-element' instead of
861         `elmo-net-format-quoted' to quote mailbox and user name.
862
863 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
864
865         * elmo-util.el (elmo-token-valid-p): New function.
866         (elmo-parse-token): Add optional argument `requirement'.
867         (elmo-parse-prefixed-element): Likewise.
868
869         * elmo-net.el (elmo-net-quote-chars): Renamed from
870         `elmo-net-quote-chars-regexp'.
871         (elmo-net-format-quoted): Add optional argument `extra-chars'.
872
873         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
874         by info document. Check token `uidl' is started an alphabet.
875
876         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
877         by info document. Check token `user' is started an alphabet.
878
879         * elmo-imap4.el (elmo-folder-initialize): Ditto.
880         (elmo-folder-list-subfolders): Quote user.
881
882 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
883
884         * elmo-util.el (elmo-quoted-specials-list): New constant.
885         (elmo-quoted-token): New function.
886
887         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
888         (elmo-net-format-quoted): New function.
889         (elmo-net-parse-network): Ditto.
890         (elmo-folder-initialize): Use it.
891
892         * elmo-nntp.el (elmo-folder-initialize): Use
893         `elmo-net-parse-network' to parse network specification instead of
894         `elmo-folder-initialize#elmo-net'.
895
896         * elmo-pop3.el (elmo-folder-initialize): Ditto.
897
898         * elmo-imap4.el (elmo-folder-initialize): Ditto.
899         (elmo-folder-list-subfolders): Quote folder name by
900         `elmo-net-format-quoted'.
901
902 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
903
904         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
905         (elmo-folder-search): Use it.
906
907 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
908
909         * modb-standard.el (modb-standard-loaded-message-id): Use
910         `elmo-msgdb-message-entity-field'.
911
912 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
913
914         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
915         without filename.
916
917 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
918
919         * elmo-util.el (elmo-set-auto-coding): New function.
920         (elmo-object-load): Use it.
921
922 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
923
924         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
925         (elmo-time<): Define as alias of `elmo-time-less-p'.
926         (elmo-time-to-datevec): New function.
927
928         * elmo-date.el (elmo-time-to-days): New function.
929
930 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
931
932         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
933         is not cons cell.
934
935 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
936
937         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
938         parenthesis.
939
940         * elmo-util.el (elmo-map-recursive): New function.
941
942         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
943         (modb-entity-encode-string-recursive): Ditto.
944
945 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
946
947         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
948         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
949         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
950         compare sequence number when last modified time is nil.
951
952 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
953
954         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
955
956         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
957
958 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
959
960         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
961         modification time of the file.
962
963 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
964
965         * elmo-util.el (elmo-condition-optimize): Discriminated against
966         preserved fields, extra fields and the other weight.
967
968 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
969
970         * modb-entity.el (initialize-instance): Define.
971         (modb-entity-handler-mime-charset): New internal function.
972         (modb-standard-entity-set-field): Use it.
973         (elmo-msgdb-message-entity-field): Ditto.
974         (elmo-msgdb-message-entity-field): Ditto.
975
976         * modb.el (elmo-msgdb-match-condition): Rewrite with
977         `elmo-condition-match'.
978         (elmo-msgdb-match-condition-primitive): New function.
979
980         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
981         arguments `flags' and `numbers'.
982         (elmo-msgdb-match-condition-primitive): Abolished (merged to
983         `elmo-msgdb-message-match-condition').
984         (modb-buffer-entity-handler): New class.
985
986         * elmo.el (elmo-folder-search): Optimize condition to use
987         `elmo-condition-optimize'.
988         (elmo-message-buffer-match-condition): New function.
989         (elmo-message-match-condition): Use
990         `elmo-message-buffer-match-condition' instead of
991         `elmo-buffer-field-condition-match'.
992
993         * elmo-util.el (elmo-condition-match): New function.
994         (elmo-condition-optimize): Ditto.
995         (elmo-buffer-field-primitive-condition-match): Abolish.
996         (elmo-buffer-field-condition-match): Ditto.
997
998         * elmo-archive.el (elmo-archive-field-condition-match): Use
999         `elmo-message-buffer-match-condition' instead of
1000         `elmo-buffer-field-condition-match'.
1001
1002 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1003
1004         * elmo-flag.el (elmo-global-flags-initialize): Check the
1005         existence of the flag directory.
1006
1007 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1008
1009         * elmo-access.el (elmo-folder-initialize): Call
1010         `elmo-multi-connect-signals'.
1011
1012         * elmo-pipe.el (elmo-folder-close): Define.
1013
1014         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
1015         children folders.
1016
1017         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
1018         with target folder.
1019
1020         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
1021         `number'.
1022
1023         * elmo-multi.el (elmo-message-entity): Don't use return value of
1024         `elmo-message-entity-set-number'.
1025
1026 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1027
1028         * modb.el (modb-generic): Added slot `mime-charset'.
1029
1030         * modb-standard.el (modb-standard): Added slot `overview-handler'.
1031         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
1032         and `modb-entity-handler-dump-parameters'.
1033         (modb-standard-default-entity-handler): Abolish.
1034         (elmo-msgdb-message-entity-handler): Save created handler by
1035         instance slot.
1036
1037         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
1038         (modb-entity-handler-list-parameters): New method.
1039         (modb-entity-handler-equal-p): New function.
1040         (modb-entity-handler-dump-parameters): Ditto.
1041         (modb-entity-parse-address-string): Encode return value.
1042         (modb-entity-make-address-string): Decode argument value.
1043         (modb-entity-decode-string-recursive): New function.
1044         (modb-entity-encode-string-recursive): Ditto.
1045         (modb-standard-entity-normalizer): Set to encode field value.
1046         (modb-standard-entity-specializer): Follow the above change.
1047         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
1048         mime-charset of handler.
1049         (elmo-msgdb-message-entity-field): Ditto.
1050         (elmo-msgdb-copy-message-entity): Fixed reference to internal
1051         structure.
1052         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
1053
1054         * elmo.el (elmo-folder): Added slot `mime-charset'.
1055         (elmo-make-folder): Added argument `mime-charset'.
1056         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
1057         `mime-charest'.
1058
1059         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
1060         (elmo-make-msgdb): Likewise.
1061
1062         * elmo-internal.el (elmo-internal-folder-initialize): Call
1063         `luna-make-entity' with :mime-charset parameter.
1064
1065 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
1066
1067         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
1068         encoded words in `from' and `subject' field.
1069
1070 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1071
1072         * modb.el (elmo-msgdb-message-field): Add argument `type'.
1073         (elmo-msgdb-match-condition): Get handler from entity instead of
1074         msgdb.
1075
1076         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
1077         (modb-standard-load-entity): Treat new file format.
1078         (modb-standard-save-entity-1): Save as new file format.
1079         (modb-standard-save-entity): Split messages into section here.
1080         (elmo-msgdb-message-field): Follow the API change.
1081         (modb-standard-default-entity-handler): New internal variable.
1082         (elmo-msgdb-message-entity-handler): Define.
1083
1084         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1085         to `elmo-vars.el'.
1086         (modb-entity-field-extractor-alist): New user option.
1087         (elmo-msgdb-message-entity-field): Removed argument `decode' and
1088         added argument `type'.
1089         (elmo-msgdb-copy-message-entity): Add optional argument
1090         `make-handler'.
1091         (modb-set-field-converter): New function.
1092         (modb-convert-field-value): Ditto.
1093         (modb-entity-string-decoder): Ditto.
1094         (modb-entity-string-encoder): Ditto.
1095         (modb-entity-parse-date-string): Ditto.
1096         (modb-entity-make-date-string): Ditto.
1097         (modb-entity-mime-decoder): Ditto.
1098         (modb-entity-mime-encoder): Ditto.
1099         (modb-entity-address-list-decoder): Ditto.
1100         (modb-entity-address-list-encoder): Ditto.
1101         (modb-entity-parse-address-string): Ditto.
1102         (modb-entity-make-address-string): Ditto.
1103         (modb-entity-create-field-indices): Ditto.
1104         (modb-legacy-entity-field-slots): New constant.
1105         (modb-legacy-entity-field-indices): Ditto.
1106         (modb-legacy-entity-normalizer): New variable.
1107         (modb-legacy-entity-specializer): Ditto.
1108         (modb-legacy-entity-field-index): New macro.
1109         (modb-legacy-entity-set-field): New function.
1110         (modb-legacy-make-message-entity): Rewrite.
1111         (elmo-msgdb-create-message-entity-from-buffer): Use
1112         `elmo-msgdb-get-references-from-buffer'. Use
1113         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
1114         Use `modb-legacy-entity-set-field' instead of
1115         `elmo-msgdb-message-entity-set-field'.
1116         (elmo-msgdb-message-entity-field): Rewrite.
1117         (elmo-msgdb-message-entity-set-field): Ditto.
1118         (elmo-msgdb-copy-message-entity): Make new entity by
1119         `make-handler' if it specified.
1120         (elmo-msgdb-message-match-condition): Define a method of
1121         `modb-entity-handler' and follow the API change.
1122         (modb-standard-entity-handler): New class.
1123         (modb-entity-extract-ml-info-from-x-sequence): New function.
1124         (modb-entity-extract-ml-info-from-subject): Ditto.
1125         (modb-entity-extract-ml-info-from-return-path): Ditto.
1126         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
1127         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
1128         (modb-entity-extract-mailing-list-info): Ditto.
1129         (modb-entity-extract-mailing-list-info-functions): New variable.
1130
1131         * elmo.el (elmo-message-field): Add optional argument `type'.
1132
1133         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1134         from `modb-entity.el'.
1135
1136         * elmo-util.el (elmo-object-load): Decode by coding-system from
1137         `set-auto-coding-function'.
1138         (elmo-object-save): Use `detect-mime-charset-region' and add
1139         coding cookie if encode.
1140         (elmo-msgdb-get-references-from-buffer): New function.
1141         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
1142
1143         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
1144
1145         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
1146         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
1147         instead of `shimbun-make-header' and follow the API change.
1148         (elmo-shimbun-update-overview): Follow the API change.
1149         (elmo-map-folder-list-message-locations): Ditto.
1150
1151         * elmo-pipe.el (elmo-message-field): Ditto.
1152
1153         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
1154         Ditto.
1155
1156         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1157
1158         * elmo-multi.el (elmo-message-field): Ditto.
1159
1160         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
1161         (elmo-msgdb-sort-by-date): Ditto.
1162         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
1163         `elmo-message-entity-field'.
1164         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
1165         change.
1166         (elmo-msgdb-overview-entity-get-from): Ditto.
1167         (elmo-msgdb-overview-entity-get-subject): Ditto.
1168         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1169         (elmo-msgdb-overview-entity-get-date): Ditto.
1170         (elmo-msgdb-overview-entity-get-to): Ditto.
1171         (elmo-msgdb-overview-entity-get-cc): Ditto.
1172
1173         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1174         (elmo-mime-collect-message/partial-pieces): Ditto.
1175
1176         * elmo-filter.el (elmo-message-field): Ditto.
1177
1178         * elmo-date.el (elmo-datevec-to-time): New function.
1179         (elmo-time-parse-date-string): Ditto.
1180         (elmo-time-make-date-string): Ditto.
1181         (elmo-time<): Ditto.
1182
1183         * elmo-version.el (elmo-version): Up to 2.15.1.
1184
1185 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
1186
1187         * elmo-flag.el (elmo-global-flags-initialize): Don't include
1188         member of elmo-local-flags.
1189
1190 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
1191
1192         * elmo-version.el (elmo-version): Up to 2.15.0.
1193
1194 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1195
1196         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
1197         `ignore-msgdb' is non-nil.
1198
1199 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1200
1201         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
1202         (elmo-condition-in-msgdb-p): Ditto.
1203         (elmo-file-field-primitive-condition-match): Ditto.
1204         (elmo-file-field-condition-match): Ditto.
1205
1206         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
1207
1208 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1209
1210         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
1211         subdirectories here.
1212         (elmo-global-flags-initialize): New function.
1213
1214         * elmo.el (toplevel): Added autoload setting for
1215         `elmo-global-flags-initialize'.
1216
1217 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
1218
1219         * elmo.el (message-number-changed): Define new signal.
1220         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
1221         message-number-changed signal.
1222         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1223         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1224         Respect `elmo-pack-number-check-strict'.
1225
1226 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1227
1228         * elmo-signal.el (elmo-connect-signal): Document.
1229         (elmo-emit-signal): Ditto.
1230         (elmo-emit-signal): It should pass source argument to filter and
1231         handler, not slot-source.
1232
1233 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1234
1235         * modb.el (elmo-msgdb-update-entity): New API and define generic
1236         implement.
1237
1238         * modb-standard.el (elmo-msgdb-update-entity): Define.
1239
1240         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
1241         API and define generic implement.
1242
1243         * elmo.el (update-overview): New singnal.
1244
1245         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
1246         `elmo-msgdb-update-entity' and emit signal `update-overview'.
1247         (elmo-message-entity-parent): Define.
1248
1249         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
1250         `update-overview'.
1251
1252         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
1253
1254         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
1255
1256 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
1257
1258         * elmo.el (elmo-folder-synchronize): Sort the return value of
1259         `elmo-list-diff'.
1260
1261         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
1262         list.
1263
1264 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1265
1266         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
1267         `default-enable-multibyte-characters'.
1268         (elmo-object-load): Use `with-temp-buffer' instead of
1269         `elmo-set-work-buf'.
1270         (elmo-object-save): Ditto.
1271         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
1272         `elmo-set-work-buf'.
1273         (elmo-decoded-field-body): Ditto.
1274
1275         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
1276
1277         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
1278         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
1279
1280         * elmo-version.el (elmo-version): Up to 2.13.3.
1281
1282 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
1283
1284         * elmo-util.el (elmo-list-diff): Fix the last change.
1285         Reverse order of result lists.
1286
1287 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
1288
1289         * modb-standard.el (elmo-msgdb-set-flag): Use
1290         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
1291         (elmo-msgdb-unset-flag): Ditto.
1292
1293         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
1294         `elmo-list-diff'.
1295
1296         * elmo-util.el (elmo-list-diff): Rewrite.
1297         (elmo-list-diff-nonsortable): New function.
1298
1299 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
1300
1301         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
1302         `elmo-multibypte-buffer-name'.  All referers are updated.
1303
1304 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1305
1306         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
1307         (elmo-mime-entity-fragment-p): New function.
1308         (mime-elmo-buffer-entity): Added slot `reassembled'.
1309         (elmo-message-mime-entity): Added 4th argument `reassemble'.
1310         (elmo-message-mime-entity-internal): New function (renamed from
1311         `elmo-message-mime-entity').
1312         (elmo-mime-inherit-field-list-from-enclosed): New constant.
1313         (elmo-mime-make-reassembled-mime-entity): New function.
1314         (elmo-message-reassembled-mime-entity): Ditto.
1315         (elmo-mime-collect-message/partial-pieces): Ditto.
1316
1317 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1318
1319         * elmo.el (elmo-message-fetch-string): Disable multibyte.
1320
1321         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
1322         (elmo-with-enable-multibyte): New macro.
1323
1324         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
1325
1326 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1327
1328         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
1329         argument `number'.
1330         (elmo-filter-connect-signals): Follow the above change.
1331
1332 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
1333
1334         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
1335
1336         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
1337         that only the first flag is used.
1338
1339 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1340
1341         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
1342         if available.
1343
1344 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1345
1346         * elmo-signal.el: New file.
1347
1348         * elmo.el (toplevel): Require elmo-signal.
1349         (flag-changing, flag-changed, cache-changed): New signal.
1350         (elmo-folder): Remove slog `handlers'.
1351         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1352         `elmo-folder-notify-event'.
1353         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1354         (elmo-folder-unset-flag): Ditto.
1355         (elmo-event-handler): Abolish.
1356         (elmo-event-handler-flag-changed): Ditto.
1357         (elmo-event-handler-cache-changed): Ditto.
1358         (elmo-folder-add-handler): Ditto.
1359         (elmo-folder-remove-handler): Ditto.
1360         (elmo-folder-notify-event): Ditto.
1361
1362         * elmo-pipe.el (toplevel): Require elmo-signal.
1363         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1364         (elmo-pipe-connect-signals): New function.
1365         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1366         (elmo-folder-set-flag): Ditto.
1367         (elmo-folder-unset-flag): Ditto.
1368         (elmo-message-set-cached): Ditto.
1369
1370         * elmo-multi.el (toplevel): Require elmo-signal.
1371         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1372         (elmo-multi-connect-signals): New function.
1373         (elmo-multi-map-numbers): Ditto.
1374         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1375         (elmo-message-fetch): Ditto.
1376         (elmo-folder-set-flag): Ditto.
1377         (elmo-folder-unset-flag): Ditto.
1378
1379         * elmo-filter.el (toplevel): Require elmo-signal.
1380         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1381         (elmo-filter-connect-signals): New function.
1382         (elmo-filter-add-flag-count): Ditto.
1383         (elmo-message-fetch): Does not call
1384         `elmo-filter-folder-countup-message-flags' and
1385         `elmo-folder-notify-event'.
1386         (elmo-message-set-cached): Ditto.
1387         (elmo-folder-set-flag): Ditto.
1388         (elmo-folder-unset-flag): Ditto.
1389
1390         * elmo-version.el (elmo-version): Up to 2.13.2.
1391
1392 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1393
1394         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1395         `flags'.
1396
1397 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1398
1399         * elmo-filter.el (elmo-message-set-cached): Call
1400         `elmo-folder-notify-event' with event `cache-changed'.
1401
1402         * elmo-multi.el (elmo-message-set-cached): Ditto.
1403
1404         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1405
1406 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1407
1408         * elmo.el (elmo-folder-encache): Abolish.
1409
1410 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1411
1412         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1413         (elmo-folder-next-message-number-dop): Return appropriate negative
1414         integer.
1415
1416 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1417
1418         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1419         clearing pending operations.
1420         (elmo-folder-next-message-number-dop): Return appropriate negative
1421         integer.
1422
1423 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1424
1425         * elmo.el (toplevel): Added autoload setting for `md5'.
1426         (elmo-msgdb-path-encode-threshold): New user option.
1427         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1428         longer than `elmo-msgdb-path-encode-threshold'.
1429
1430         * elmo-flag.el (elmo-global-mark-migrate): Use
1431         `elmo-folder-expand-msgdb-path' instead of
1432         `elmo-folder-msgdb-path'.
1433
1434 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1435
1436         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1437         element of the difference is nil.
1438
1439 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1440
1441         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1442         to the check logic of file systems which are weak in colon character.
1443
1444 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1445
1446         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1447
1448 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1449
1450         * elmo-maildir.el (elmo-maildir-move-file): New function.
1451         (elmo-folder-append-buffer): Use it.
1452         (elmo-folder-append-messages): Ditto.
1453         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1454
1455         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1456         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1457
1458         * elmo-maildir.el (elmo-maildir-separator): New user option.
1459         (elmo-maildir-adjust-separator): New macro.
1460         (elmo-maildir-list-location): Use it.
1461         (elmo-maildir-update-current): Ditto.
1462         (elmo-maildir-set-mark): Ditto.
1463         (elmo-maildir-delete-mark): Ditto.
1464         (These changes are based on Hiroya Murata's patch [wl: 13437])
1465
1466 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1467
1468         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1469
1470 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1471
1472         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1473         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1474         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1475
1476 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1477
1478         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1479         Use `with-temp-buffer'.
1480
1481 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1482
1483         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1484
1485         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1486         `wl-read-search-condition').
1487         (elmo-read-search-condition-internal): Likewise.
1488
1489         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1490         (elmo-flag-valid-p): New function.
1491         (elmo-folder-initialize): Check flag name is valid.
1492
1493 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1494
1495         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1496         delimiter to obtain root mailbox itself.
1497
1498 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1499
1500         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1501         type mismatch.
1502
1503 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1504
1505         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1506         as t.
1507
1508 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1509
1510         * elmo-shimbun.el (toplevel): Require cl at compile.
1511
1512         * elmo-nntp.el (toplevel): Ditto.
1513
1514         * elmo-nmz.el (toplevel): Ditto.
1515
1516         * elmo-multi.el (toplevel): Ditto.
1517
1518         * elmo-file.el (toplevel): Ditto.
1519
1520         * elmo-dop.el (toplevel): Ditto.
1521
1522         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1523
1524 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1525
1526         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1527         as nil.
1528
1529         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1530         size of elmo-message-fetch-internal is 0 byte.
1531
1532 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1533
1534         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1535
1536 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1537
1538         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1539         always plugged.
1540
1541 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1542
1543         * elmo-maildir.el (elmo-map-message-fetch): Call
1544         `elmo-map-folder-set-flag'.
1545
1546         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1547         (elmo-message-fetch): Merge from
1548         `elmo-message-fetch-with-cache-process'.
1549
1550         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1551         (elmo-message-fetch): Define.
1552
1553         * elmo-nntp.el (elmo-message-fetch): Renamed from
1554         `elmo-message-fetch-with-cache-process'.
1555
1556         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1557         (elmo-message-fetch): Define.
1558
1559         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1560         search-key.
1561
1562         * elmo-shimbun.el (shimbun-mua-search-id): Use
1563         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1564         (elmo-shimbun-folder-shimbun-header): Ditto.
1565         (elmo-shimbun-get-headers): Ditto.
1566         (elmo-shimbun-update-overview): Ditto.
1567
1568         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1569
1570         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1571         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1572
1573 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1574
1575         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1576         message is cached.
1577         (elmo-message-fetch-string): Fixed argument.
1578
1579 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1580
1581         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1582         exchange order of arguments `section' and `unread'.
1583         (elmo-message-encache): Follow the API change.
1584         (elmo-message-match-condition): Ditto.
1585         (elmo-generic-folder-append-messages): Ditto.
1586         (elmo-message-fetch-string): New function.
1587
1588         * elmo-split.el (elmo-split-subr): Ditto.
1589
1590         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1591
1592         * elmo-pipe.el (elmo-message-fetch): Ditto.
1593
1594         * elmo-multi.el (elmo-message-fetch): Ditto.
1595
1596         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1597
1598         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1599
1600         * elmo-filter.el (elmo-message-fetch): Ditto.
1601
1602         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1603
1604         * elmo-imap4.el (mime-imap-location-section-body): Use
1605         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1606         follow the API change.
1607
1608 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1609
1610         * elmo-access.el: New file.
1611
1612         * elmo-null.el: Ditto.
1613
1614         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1615
1616 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1617
1618         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1619         (elmo-network-session): New attribute `last-accessed'.
1620         (elmo-network-get-session): Discard network cache if elapsed time
1621         since last-accessed is larger than elmo-network-session-idle-timeout.
1622
1623 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1624
1625         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1626         and added `number', `require-entireness'.
1627         (elmo-find-fetch-strategy): Rewrite.
1628         (elmo-message-fetch): Unset `unread' flag when argument unread is
1629         non-nil.
1630
1631         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1632
1633         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1634         (elmo-message-fetch): Notify event `flag-changed'.
1635
1636         * elmo-pipe.el: Likewise.
1637
1638         * elmo-mime.el (elmo-mime-entity): New class.
1639         (elmo-mime-entity-display-p): New generic function.
1640         (elmo-mime-entity-display): Ditto.
1641         (elmo-mime-entity-display-as-is): Ditto.
1642         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1643         elmo-mime-entity.
1644         (elmo-make-mime-message-location): Removed.
1645         (elmo-mime-message-display): Ditto.
1646         (elmo-mime-display-as-is): Ditto.
1647         (elmo-message-mime-entity): New function.
1648
1649         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1650
1651         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1652         change.
1653         (elmo-message-fetch): Re-count flagged message number and notify
1654         event `flag-changed'.
1655
1656         * elmo-version.el (elmo-version): Up to 2.13.1.
1657
1658 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1659
1660         * elmo-filter.el (elmo-message-field): Define.
1661         (elmo-message-set-field): Ditto.
1662
1663 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1664
1665         * elmo.el (elmo-message-set-cached): Call
1666         `elmo-folder-notify-event' with cache-changed.
1667         (elmo-event-handler-cache-changed): New generic function.
1668
1669 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1670
1671         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1672         instead of elmo-add-name-to-file.
1673         (elmo-folder-append-messages): Ditto.
1674
1675 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1676
1677         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1678
1679 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1680
1681         * elmo-version.el (elmo-version): Up to 2.13.0.
1682
1683         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1684         `auto'.
1685
1686         * modb-standard.el (modb-standard-economize-entity-size): Changed
1687         default value to `t'.
1688
1689         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1690         `standard'.
1691
1692         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1693         after parsing greeting string.
1694
1695 2004-11-23  Daishi Kato <daishi@axlight.com>
1696
1697         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1698         New user option.
1699         (elmo-spam-spamoracle-call): Use it.
1700
1701 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1702
1703         * elmo.el (elmo-message-accessible-p): Message in dop spool
1704         is accessible.
1705
1706 2004-11-23  Daishi Kato <daishi@axlight.com>
1707
1708         * elsp-spamoracle.el: New file.
1709
1710 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1711
1712         * elmo.el (elmo-message-flags-for-append): New function.
1713         (elmo-generic-folder-append-messages): Use it.
1714
1715         * elmo-split.el (elmo-split-subr): Ditto.
1716
1717         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1718         `flags' and use elmo-folder-append-buffer instead of
1719         write-region-as-binary.
1720         (elmo-dop-filter-pending-messages): New function.
1721         (elmo-folder-append-buffer-dop): Call
1722         elmo-dop-spool-folder-append-buffer with `flag'.
1723         (elmo-folder-set-flag-dop): Filter messages by
1724         elmo-dop-filter-pending-messages.
1725         (elmo-folder-unset-flag-dop): Ditto.
1726         (elmo-folder-append-buffer-dop-delayed): Use
1727         elmo-message-flags-for-append to get flags of the message and
1728         simplify.
1729
1730 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1731
1732         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1733
1734 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1735
1736         * elmo.el (elmo-folder): Added handlers slot.
1737         (elmo-event-handler): New class.
1738         (elmo-event-handler-flag-changed): New API.
1739         (elmo-folder-add-handler): New function.
1740         (elmo-folder-remove-handler): Ditto.
1741         (elmo-folder-notify-event): Ditto.
1742         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1743         `flag-changed'.
1744         (elmo-folder-unset-flag): Ditto.
1745
1746         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1747         (elmo-folder-unset-flag): Ditto.
1748
1749         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1750         (elmo-folder-unset-flag): Ditto.
1751
1752         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1753         (elmo-folder-unset-flag): Ditto.
1754
1755         * elmo-version.el (elmo-version): Up to 2.11.33.
1756
1757 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1758
1759         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1760
1761 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1762
1763         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1764
1765         * elmo-flag.el (elmo-folder-unset-flag): Define.
1766         (elmo-global-flag-detach): Do process when the flag is not target
1767         flag.
1768
1769 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1770
1771         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1772         variable.
1773         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1774
1775 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1776
1777         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1778         function.
1779         (elmo-folder-delete-messages): Detach messages before delete
1780         messages from target folder.
1781         (elmo-folder-detach-messages): Set updated number-list to slot.
1782
1783 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1784
1785         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1786
1787 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1788
1789         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1790
1791 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1792
1793         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1794         internal use only).
1795         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1796         not modified.
1797         (elmo-folder-delete-messages): Define.
1798         (elmo-folder-move-messages): Don't call
1799         `elmo-folder-detach-messages'.
1800         (elmo-folder-synchronize): Rewrite.
1801         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1802
1803         * elmo-util.el (elmo-last): New function.
1804         (elmo-set-list): Ditto.
1805         (elmo-number-set-delete-list): Ditto.
1806         (elmo-number-set-delete): Ditto.
1807
1808         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1809
1810         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1811         `elmo-folder-delete-messages' and don't delete location map.
1812         (elmo-folder-detach-messages): Define.
1813
1814         * elmo-imap4.el (elmo-folder-delete): Use
1815         `elmo-folder-delete-messages-internal' instead of
1816         `elmo-folder-delete-messages'.
1817
1818         * elmo-filter.el (elmo-folder-delete-messages): Call
1819         `elmo-folder-detach-messages'.
1820         (elmo-folder-detach-messages): Don't call
1821         `elmo-folder-detach-messages' for target folder.
1822
1823         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1824         message deletion is succeeded.
1825
1826         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1827
1828         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1829         from `elmo-folder-delete-messages'.
1830
1831         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1832
1833         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1834
1835         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1836
1837         * elmo-version.el (elmo-version): Up to 2.11.32.
1838
1839 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1840
1841         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1842         (elmo-global-flag-list): Added obsolete variable setting.
1843
1844         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1845
1846         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1847         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1848         `elmo-mime-display-header-analysis' is nil.
1849
1850         * elmo-flag.el (elmo-global-flags): Renamed from
1851         `elmo-global-flag-list' (All other related portions are changed).
1852         (elmo-local-flags): New variable.
1853         (elmo-local-flag-p): New function.
1854         (elmo-global-flag-set-internal): Cause an error when flag is not
1855         global.
1856
1857 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1858
1859         * elmo-util.el (elmo-concat-path): Treat empty path.
1860
1861 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1862
1863         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1864         field-or-fields).
1865         (elmo-split-address-match): Ditto.
1866         (elmo-split-equal): Ditto.
1867         (elmo-split-match): Ditto.
1868
1869 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1870
1871         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1872         (elmo-generic-folder-append-messages): If src message exists but
1873         has no flag, pass (read) for the FLAG argument of
1874         `elmo-folder-append-buffer'. Otherwise, pass nil.
1875
1876         * elmo-split.el (elmo-split-subr): Likewise.
1877
1878         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1879
1880         * elmo-multi.el (elmo-message-flags): Ditto.
1881
1882         * elmo-filter.el (elmo-message-flags): Ditto.
1883
1884         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1885         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1886         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1887         
1888 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1889
1890         * elmo-split.el (elmo-split-rule): Update comment.
1891         (elmo-split-address-equal): Allow 2nd argument to be a list.
1892         (elmo-split-address-match): Ditto.
1893         (elmo-split-equal): Ditto.
1894         (elmo-split-match): Ditto.
1895
1896 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1897
1898         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1899         (elmo-folder-append-msgdb): Don't treat `read'.
1900         (elmo-message-flags): Don't return `read'.
1901
1902         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1903         (elmo-folder-unset-read-delayed): Ditto.
1904
1905         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1906
1907 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1908
1909         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1910         deletion.
1911
1912 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1913
1914         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1915         header.
1916
1917 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1918
1919         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1920         here.
1921         (elmo-msgdb-save): Bind inhibit-quit.
1922         (modb-standard-message-entity): Ditto.
1923
1924 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1925
1926         * elmo-database.el: No need to require elmo-msgdb.
1927
1928 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1929
1930         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1931         instead of `elmo-list-subdirectories'.
1932
1933 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1934
1935         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1936         group entry.
1937         (elmo-folder-exists-p): "[" is empty.
1938         (elmo-folder-list-subfolders): Define.
1939         (elmo-folder-have-subfolder-p): Ditto.
1940
1941 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1942
1943         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1944
1945 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1946
1947         * elmo-filter.el (elmo-folder-local-p): Define.
1948
1949 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1950
1951         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1952         when entity is garbaged.
1953         (modb-standard-save-entity-1): Don't modify the original entity.
1954
1955 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1956
1957         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1958
1959 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1960
1961         * elmo.el (elmo-strict-folder-diff): Use
1962         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1963
1964 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1965
1966         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1967         (elmo-msgdb-message-number): Ditto.
1968         (elmo-msgdb-message-field): Ditto.
1969
1970         * modb-standard.el (modb-standard-economize-entity-size): New user
1971         option.
1972         (modb-standard-loaded-message-id): New inline function.
1973         (modb-standard-load-entity): Use it.
1974         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1975         throw message-id string away.
1976         (elmo-msgdb-flag-available-p): Define.
1977         (elmo-msgdb-message-number): Ditto.
1978         (elmo-msgdb-message-field): Ditto.
1979
1980         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1981         (suppoted -> supported).
1982         (modb-legacy-supported-flag-p): Ditto.
1983         (elmo-msgdb-set-flag): Ditto.
1984         (elmo-msgdb-unset-flag): Ditto.
1985         (elmo-msgdb-flag-available-p): Define.
1986
1987         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1988         is `t', treat it as legacy entity.
1989         
1990         * elmo.el (elmo-message-flag-available-p): New generic function.
1991         (elmo-message-number): Ditto.
1992         (elmo-message-field): Use `elmo-msgdb-message-field'.
1993
1994         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1995
1996         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1997         (elmo-message-number): Ditto.
1998
1999         * elmo-multi.el (elmo-message-number): Define.
2000         (elmo-message-flag-available-p): Ditto.
2001
2002         * elmo-filter.el (elmo-message-flag-available-p): Define.
2003         (elmo-message-number): Ditto.
2004
2005         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
2006         (elmo-folder-initialize): Load `max-number'.
2007         (elmo-folder-commit): Save it.
2008         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
2009         (elmo-global-flag-set-internal): Set up max-number slot.
2010
2011 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
2012
2013         * elmo-version.el (elmo-version): Up to 2.11.31.
2014
2015 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
2016
2017         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
2018         unibyte string of the current buffer for the argument of `md5'
2019         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
2020
2021 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2022
2023         * modb-legacy.el (modb-legacy-flag-list): New constant.
2024         (modb-legacy-suppoted-flag-p): New internal function.
2025         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
2026         (elmo-msgdb-unset-flag): Ditto.
2027
2028 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
2029
2030         * elmo.el (elmo-make-folder): Remove text properties for prefix.
2031
2032         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
2033         from msgdb.
2034
2035 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2036
2037         * elmo-multi.el (elmo-folder-count-flags): Changed return value
2038         (follow the API change).
2039
2040         * elmo-filter.el (elmo-folder-count-flags): Ditto.
2041
2042 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
2043
2044         * modb-standard.el (modb-standard-digest-flags): Abolish.
2045         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
2046
2047         * elmo-vars.el (elmo-digest-flags): New variable.
2048         (elmo-preserved-flags): Moved from elmo-flag.el.
2049
2050         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
2051         (elmo-imap4-flag-to-imap-criteria): Ditto.
2052         (elmo-imap4-folder-list-flagged): Use it.
2053
2054         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
2055
2056         * elmo.el (elmo-folder-count-flags): Changed return value.
2057
2058         * elmo-flag.el (elmo-preserved-flags): New variable.
2059         (elmo-get-global-flags): Use it.
2060
2061         * modb-standard.el (modb-standard-digest-flags): New variable.
2062         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
2063         Changed behavior of `any'.
2064
2065         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
2066         which are defined the Internet draft
2067         (draft-melnikov-imap-keywords-03.txt).
2068         (elmo-imap4-flags-to-imap): New function.
2069         (elmo-folder-append-buffer): Use it.
2070
2071         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
2072         in the docstring.
2073
2074         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
2075         avoid the bug of Emacs 21.3.
2076
2077 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
2078
2079         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
2080         function find-coding-system does not exist.
2081
2082 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2083
2084         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
2085         parsing.
2086
2087 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2088
2089         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
2090         response codes.
2091
2092 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2093
2094         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
2095         (elmo-network-close-session): Follow the changes in
2096         `elmo-pop3-read-response'.
2097         (elmo-pop3-auth-user): Ditto.
2098         (elmo-pop3-auth-apop): Ditto.
2099         (elmo-network-initialize-session): Ditto.
2100         (elmo-network-authenticate-session): Ditto.
2101         (elmo-network-setup-session): Ditto.
2102         (elmo-folder-status): Ditto.
2103         (elmo-message-fetch-plugged): Ditto.
2104         (elmo-pop3-delete-msg): Ditto.
2105
2106 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
2107
2108         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
2109         on failure.
2110
2111 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2112
2113         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
2114         style.
2115         (elmo-bind-directory): Ditto.
2116
2117 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2118
2119         * elmo.el (elmo-folder-append-messages): Note on return value.
2120         * elmo-archive.el (elmo-folder-append-messages): Don't return
2121         message numbers which could not be appended.
2122
2123 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2124
2125         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
2126
2127 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2128
2129         * elmo-version.el (elmo-version): Up to 2.11.30.
2130
2131 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2132
2133         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
2134         `mask'.
2135
2136         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
2137
2138         * elmo-multi.el (elmo-folder-synchronize): Likewise.
2139         (elmo-multi-split-numbers): Add elmo-folder object into each
2140         element of return value at first.
2141         (elmo-folder-delete-messages): Follow the above change.
2142         (elmo-folder-detach-messages): Ditto.
2143
2144         * elmo-filter.el (elmo-folder-synchronize): Minimize message
2145         number which is synchronized in target folder.
2146
2147 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2148
2149         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
2150         Change default value to symbol `all'.
2151         (elmo-map-message-fetch): Change condition to update overview
2152         follow the above.
2153
2154 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2155
2156         * elmo-shimbun.el (elmo-map-message-fetch): Change default
2157         behavior to update overview.
2158         (elmo-shimbun-update-overview-folder-list): Note it.
2159
2160 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2161
2162         * modb-standard.el (modb-standard-message-entity): Avoid infinite
2163         recursive call.
2164
2165 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2166
2167         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
2168         buffer-disable-undo, it is unnecessary.
2169         (elmo-spam-register-good-messages): Ditto.
2170
2171         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2172         Ditto.
2173
2174         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
2175
2176 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2177
2178         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
2179         (elmo-set-work-buf): Use set-buffer-multibyte instead of
2180         elmo-set-buffer-multibyte.
2181         (elmo-object-load): Ditto.
2182         (elmo-save-buffer): Ditto.
2183         (elmo-delete-char): Ditto.
2184         (elmo-file-field-primitive-condition-match): Ditto.
2185         (elmo-mime-string): Ditto.
2186
2187         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
2188         (elmo-archive-field-condition-match): Ditto.
2189
2190         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
2191
2192         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
2193
2194         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
2195         (elmo-nntp-msgdb-create-message): Ditto.
2196
2197         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2198
2199         * elmo.el (elmo-message-match-condition): Ditto.
2200         (elmo-message-match-condition): Ditto.
2201
2202         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2203         Ditto.
2204
2205         * elmo-version.el (elmo-version): Up to 2.11.29.
2206
2207         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
2208         (elsp-header): New backend.
2209
2210         * elmo-util.el (elmo-decoded-field-body): New function.
2211
2212 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2213
2214         * elmo-version.el (elmo-version): Up to 2.11.28.
2215
2216 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2217
2218         * elmo-filter.el: Rewrite.
2219
2220         * elmo-version.el (elmo-version): Up to 2.11.27.
2221
2222 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
2223
2224         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
2225         msgdb path for the localdir folder with absolute path.
2226
2227         * utf7.el: Synch up with latest gnus/utf7.el;
2228         Modified for latest Emacs.
2229
2230 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2231
2232         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
2233         shimbun backend couldn't open.
2234
2235 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
2236
2237         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
2238         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
2239         when a destination folder is a filter folder.
2240
2241 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2242
2243         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
2244         (elmo-generic-folder-append-messages): Call elmo-message-flags
2245         with argument `msgid'.
2246
2247         * elmo-split.el (elmo-split-subr): Ditto.
2248
2249         * elmo-pipe.el (elmo-message-flags): Follow the API change.
2250
2251         * elmo-multi.el (elmo-message-flags): Ditto.
2252
2253 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2254
2255         * elmo.el (elmo-folder): Add new slot `flag-table'.
2256         (elmo-folder-flag-table): New API.
2257         (elmo-folder-close-flag-table): Ditto.
2258         (elmo-folder-preserve-flags): New function.
2259         (elmo-generic-folder-append-messages): Use
2260         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
2261         Flag of a non-registered message, it sets to nil.
2262         Does not set flag to flag-table.
2263
2264         * elmo-maildir.el (elmo-folder-append-buffer): Use
2265         `elmo-folder-preserve-flags'.
2266         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2267         `elmo-folder-close-flag-table'.
2268
2269         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
2270         (elmo-archive-folder-append-buffer): Use
2271         `elmo-folder-preserve-flags'.
2272
2273         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
2274
2275         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
2276
2277         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2278         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2279         `elmo-folder-close-flag-table'.
2280
2281         * elmo-version.el (elmo-version): Up to 2.11.26.
2282
2283 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2284
2285         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
2286
2287         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
2288         md5's 4th and 5th argument (non-existent in flim one).
2289
2290 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2291
2292         * elmo-split.el (elmo-split-subr): Flag of a non-registered
2293         message, It sets to nil.
2294
2295 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2296
2297         * elmo.el (elmo-folder-list-messages): Merge lists only if both
2298         list is non-nil.
2299
2300 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
2301
2302         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
2303
2304         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
2305
2306         * elmo-util.el (elmo-uniq-sorted-list): New function.
2307         (elmo-make-number-list): Ditto.
2308         (elmo-number-set-to-number-list): Use elmo-make-number-list
2309         and don't use nreverse.
2310
2311 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2312
2313         * elmo-version.el (elmo-version): Up to 2.11.25.
2314
2315 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2316
2317         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
2318         field not exists in message, Use md5 message digest of header.
2319
2320 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2321
2322         * elmo.el (elmo-folder-append-buffer): Add note on return value.
2323         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
2324         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2325         * elmo-split.el (elmo-split-subr): Check return value of
2326         elmo-folder-append-buffer.
2327
2328         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
2329         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2330
2331         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
2332         message-id.
2333
2334 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
2335
2336         * elmo-split.el (elmo-split-subr): Append message with flag.
2337
2338         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
2339         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
2340         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2341
2342 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
2343
2344         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
2345         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
2346         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2347
2348 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
2349
2350         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2351         with a function call of `process-buffer'.  All callers are updated.
2352         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2353         Remove redundant `set-buffer' in a while loop.
2354
2355 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2356
2357         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2358         calls.
2359
2360 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2361
2362         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2363         elsp-spamfilter-register-buffer-internal with current buffer.
2364         (elmo-spam-register-spam-buffer): Ditto.
2365         (elmo-spam-register-good-buffer): Ditto.
2366
2367 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2368
2369         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2370         if it is not contained in the response(A workaround for courier-imap).
2371
2372 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2373
2374         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2375         parenthesis.
2376
2377 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2378
2379         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2380         range.
2381
2382 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2383
2384         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2385         of nconc.
2386
2387         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2388         argument handler.
2389         (elmo-msgdb-message-match-condition): Follow the change above.
2390
2391 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2392
2393         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2394         folder name.
2395
2396 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2397
2398         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2399
2400 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2401
2402         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2403
2404 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2405
2406         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2407         not found.
2408
2409 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2410
2411         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2412         value.
2413         (elmo-file-command-argument): Undo last change for cygwin.
2414         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2415         Don't return nil.
2416         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2417
2418 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2419
2420         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2421         value returned from elmo-file-find is nil.
2422
2423 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2424
2425         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2426         to elmo-vars.el.
2427
2428         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2429         instead of insert-file-contents-as-binary.
2430         (elmo-message-set-field): New generic function.
2431
2432         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2433         behavior change on `split-string'.
2434
2435         * elmo-file.el (elmo-file-find): New function.
2436         (elmo-file-command): New user option.
2437         (elmo-file-command-argument): Ditto.
2438         (elmo-file-fetch-max-size): Ditto.
2439         (elmo-file-detect-format): New function.
2440         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2441         Use elmo-file-detect-format.
2442         (elmo-map-folder-list-message-locations): Don't treat directories.
2443
2444 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2445
2446         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2447         (elmo-passwd-alist-clear): Shred password before clear.
2448         (elmo-remove-passwd): Remove all mached pair.
2449
2450 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2451
2452         * elmo.el (elmo-folder-synchronize): Fix description of the return
2453         value.
2454
2455 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2456
2457         * elmo.el (elmo-message-fetch-bodystructure): New method.
2458         (elmo-message-fetch-bodystructure): Define default.
2459
2460         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2461         elmo-message-fetch-bodystructure.
2462         (elmo-message-fetch-bodystructure): Define.
2463
2464         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2465
2466 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2467
2468         * elmo-filter.el (elmo-message-folder): Define.
2469
2470 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2471
2472         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2473         elmo-delete-cr-buffer.
2474
2475         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2476
2477         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2478
2479         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2480
2481         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2482         type seems to be a text.
2483
2484 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2485
2486         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2487         (elmo-spam-register-good-buffer): Ditto.
2488         (elmo-spam-spamassassin-register-messages): Ditto.
2489
2490         * elmo-util.el (elmo-string-member-ignore-case): Define with
2491         static-cond.
2492
2493 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2494
2495         * elmo.el (elmo-folder-type): Undo last change.
2496
2497         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2498
2499         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2500         warnings.
2501
2502         * elmo-file.el: New file.
2503         
2504         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2505
2506         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2507         variable.
2508         (elmo-spam-spamassassin-register-messages): New inline function.
2509         (elmo-spam-register-spam-messages): Define.
2510         (elmo-spam-register-good-messages): Ditto.
2511
2512         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2513         Fixed typo.
2514
2515         * elmo.el (toplevel): Added autoload setting for
2516         `elmo-get-global-flags'.
2517         (elmo-message-has-global-flag-p): New function.
2518         (elmo-message-set-global-flags): Ditto.
2519         (elmo-folder-type): Improvement for name: format.
2520
2521         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2522         availability of keyword flags.
2523         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2524         (elmo-folder-list-flagged-plugged): Renamed from
2525         elmo-folder-list-flagged-unplugged.
2526         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2527         accept any flag as keyword flag.
2528         (elmo-folder-set-flag-plugged): Accept keyword flags.
2529         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2530
2531         * elmo-flag.el (elmo-get-global-flags): New function.
2532
2533         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2534         folders.
2535
2536         * elmo-version.el (elmo-version): Up to 2.11.24.
2537
2538 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2539
2540         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2541         elmo-multiple-field-body instead of std11-field-body to check all
2542         headers.
2543
2544 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2545
2546         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2547         or "size".
2548
2549 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2550
2551         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2552         unintern is unbound.
2553
2554 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2555
2556         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2557         Protect from infinite loop.
2558
2559 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2560
2561         * elsp-bogofilter.el
2562         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2563         (elmo-spam-bogofilter-register-messages): New internal function.
2564         (elmo-spam-register-spam-messages): Define.
2565         (elmo-spam-register-good-messages): Ditto.
2566
2567 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2568
2569         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2570         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2571         (elmo-spam-bogofilter-call): Fixed the last change.
2572         (elmo-spam-bogofilter-arguments): Ditto.
2573
2574         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2575         Follow the options change of latest bogofilter.
2576
2577         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2578         (elmo-spam-bogofilter-good-switch): Ditto.
2579         (elmo-spam-bogofilter-arguments-alist): New user option.
2580         (elmo-spam-bogofilter-debug): Ditto.
2581         (elmo-spam-bogofilter-call): Renamed from
2582         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2583         is non-nil, insert output in buffer for debug.
2584         (elmo-spam-bogofilter-arguments): New macro.
2585         (elmo-spam-buffer-spam-p): Use it.
2586         (elsp-bogofilter-register-buffer): Ditto.
2587
2588 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2589
2590         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2591         regexp.
2592
2593 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2594
2595         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2596         value as "ruby".
2597         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2598         (elmo-spam-bsfilter-program): Set default value as full path for
2599         `bsfilter'.
2600         (elmo-spam-bsfilter-debug): New user option.
2601         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2602         non-nil, insert output in buffer for debug. Fix treating of
2603         argument.
2604
2605 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2606
2607         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2608         `elmo-maildir-flag-specs' element instead of one.
2609         (elmo-map-folder-unset-flag): Ditto.
2610         (Reported by Ken Makimura <macky@astem.or.jp>)
2611
2612         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2613         (elmo-folder-unset-flag-plugged): Ditto.
2614
2615 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2616
2617         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2618         to `reads' slot only if `in-msgdb' is nil.
2619
2620 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2621
2622         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2623         and complement argument list.
2624
2625 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2626
2627         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2628         instead of elmo-folder-list-flagged.
2629
2630 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2631
2632         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2633
2634         * elsp-bsfilter.el: New file.
2635
2636         * elmo-pipe.el (elmo-folder-list-unreads,
2637         elmo-folder-list-answereds,
2638         elmo-folder-list-importants,
2639         elmo-folder-flag-as-important,
2640         elmo-folder-unflag-important,
2641         elmo-folder-flag-as-read,
2642         elmo-folder-unflag-read,
2643         elmo-folder-flag-as-answered,
2644         elmo-folder-unflag-answered): Remove.
2645         (elmo-folder-set-flag): Define.
2646         (elmo-folder-unset-flag): Ditto.
2647
2648         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2649         (elmo-folder-set-flag): Define.
2650         (elmo-folder-unset-flag): Ditto.
2651         (elmo-folder-list-unreads): Remove.
2652         (elmo-folder-list-flagged): Define.
2653
2654         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2655         (elmo-folder-list-unreads,
2656         elmo-folder-list-importants,
2657         elmo-folder-list-answereds,
2658         elmo-folder-list-unreads-plugged,
2659         elmo-folder-list-importants-plugged,
2660         elmo-folder-list-answereds-plugged): Remove.
2661         (elmo-folder-list-flagged-plugged): New method.
2662         (elmo-folder-unflag-important,
2663         elmo-folder-flag-as-important,
2664         elmo-folder-unflag-read,
2665         elmo-folder-flag-as-read,
2666         elmo-folder-unflag-answered,
2667         elmo-folder-flag-as-answered,
2668         elmo-folder-flag-as-read-unplugged,
2669         elmo-folder-unflag-read-unplugged,
2670         elmo-folder-flag-as-important-unplugged,
2671         elmo-folder-unflag-important-unplugged,
2672         elmo-folder-flag-as-answered-unplugged,
2673         elmo-folder-unflag-answered-unplugged): Remove.
2674         (elmo-folder-set-flag): Define.
2675         (elmo-folder-unset-flag): Ditto.
2676         (elmo-folder-set-flag-unplugged): Ditto.
2677         (elmo-folder-unset-flag-unplugged): Ditto.
2678
2679         * elmo-multi.el (elmo-folder-list-unreads,
2680         elmo-folder-list-answereds,
2681         elmo-folder-list-importants,
2682         elmo-folder-flag-as-important,
2683         elmo-folder-unflag-important,
2684         elmo-folder-flag-as-read,
2685         elmo-folder-unflag-read,
2686         elmo-folder-flag-as-answered,
2687         elmo-folder-unflag-answered): Remove.
2688         (elmo-folder-set-flag): Define.
2689         (elmo-folder-unset-flag): Ditto.
2690
2691         * elmo-map.el (elmo-map-folder-unflag-important,
2692         elmo-map-folder-flag-as-important,
2693         elmo-map-folder-unflag-read,
2694         elmo-map-folder-flag-as-read,
2695         elmo-map-folder-unflag-answered,
2696         elmo-map-folder-flag-as-answered): Remove.
2697         (elmo-map-folder-set-flag): New method.
2698         (elmo-map-folder-unset-flag): Ditto.
2699         (elmo-map-folder-list-unreads,
2700         elmo-map-folder-list-importants,
2701         elmo-map-folder-list-answereds): Remove.
2702         (elmo-folder-list-flagged-internal): Define.
2703         (elmo-map-folder-list-flagged): New method.
2704
2705         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2706         (elmo-map-folder-list-unreads,
2707         elmo-map-folder-list-importants,
2708         elmo-map-folder-list-flagged): Remove.
2709         (elmo-map-folder-list-flagged): Define.
2710         (elmo-map-folder-flag-as-important,
2711         elmo-map-folder-unflag-important,
2712         elmo-map-folder-flag-as-read,
2713         elmo-map-folder-unflag-read,
2714         elmo-map-folder-flag-as-answered,
2715         elmo-map-folder-unflag-answered): Remove.
2716         (elmo-maildir-set-mark-messages): New internal function.
2717         (elmo-map-folder-set-flag): Define.
2718         (elmo-map-folder-unset-flag): Ditto.
2719
2720         * elmo.el (toplevel): Added autoload setting for
2721         `elmo-folder-list-global-flag-messages'.
2722         (elmo-folder-list-unreads,
2723         elmo-folder-list-importants,
2724         elmo-folder-list-answereds): Remove.
2725         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2726         Return a list whitch merged with messages have global flag.
2727         (elmo-folder-list-flagged-internal): New method.
2728         (elmo-folder-unflag-important,
2729         elmo-folder-flag-as-important,
2730         elmo-folder-unflag-read,
2731         elmo-folder-flag-as-read,
2732         elmo-folder-unflag-answered,
2733         elmo-folder-flag-as-answered): Remove.
2734         (elmo-folder-set-flag): New method.
2735         (elmo-folder-unset-flag): Ditto.
2736         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2737         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2738
2739         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2740         (elmo-folder-list-unreads-plugged,
2741         elmo-folder-list-importants-plugged,
2742         elmo-folder-list-answereds-plugged,
2743         elmo-folder-list-flagged-unplugged,
2744         elmo-folder-unflag-important-plugged,
2745         elmo-folder-flag-as-important-plugged,
2746         elmo-folder-unflag-read-plugged,
2747         elmo-folder-flag-as-read-plugged,
2748         elmo-folder-unflag-answered-plugged,
2749         elmo-folder-flag-as-answered-plugged): Remove.
2750         (elmo-folder-set-flag-plugged,
2751         elmo-folder-unset-flag-plugged): Define.
2752
2753         * elmo-flag.el (elmo-folder-initialize): Register to
2754         `elmo-global-flag-list' if flag is not global.
2755         (elmo-folder-append-messages): Set flag to source messages.
2756
2757         * elmo-filter.el (elmo-filter-folder-list-unreads,
2758         elmo-folder-list-unreads,
2759         elmo-filter-folder-list-importants,
2760         elmo-folder-list-importants,
2761         elmo-folder-flag-as-read,
2762         elmo-folder-unflag-read,
2763         elmo-folder-flag-as-important,
2764         elmo-folder-unflag-important,
2765         elmo-folder-flag-as-answered,
2766         elmo-folder-unflag-answered): Remove.
2767         (elmo-folder-set-flag): Define.
2768         (elmo-folder-unset-flag): Ditto.
2769
2770         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2771         elmo-folder-unflag-read-dop,
2772         elmo-folder-flag-as-important-dop,
2773         elmo-folder-unflag-important-dop,
2774         elmo-folder-flag-as-answered-dop,
2775         elmo-folder-unflag-answered-dop): Remove.
2776         (elmo-folder-set-flag-dop,
2777         elmo-folder-unset-flag-dop,
2778         elmo-folder-set-important-delayed,
2779         elmo-folder-unset-important-delayed,
2780         elmo-folder-set-read-delayed,
2781         elmo-folder-unset-read-delayed,
2782         elmo-folder-set-answered-delayed,
2783         elmo-folder-unset-answered-delayed): New function.
2784         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2785         (elmo-dop-queue-method-name-alist): Ditto.
2786
2787         * elmo-version.el (elmo-version): Up to 2.11.23.
2788
2789 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2790
2791         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2792
2793         * elsp-sa.el: New file.
2794
2795 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2796
2797         * modb-standard.el (modb-standard-message-entity): New function.
2798         (elmo-msgdb-message-entity): Use it.
2799
2800 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2801
2802         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2803         behavior when one-level is nil.
2804
2805         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2806
2807         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2808
2809 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2810
2811         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2812         get max number.
2813         (elmo-generic-folder-diff): Ditto.
2814
2815         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2816         (elmo-folder-update-number): Ditto.
2817
2818         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2819         (elmo-folder-next-message-number-dop): Ditto.
2820
2821 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2822
2823         * elmo-filter.el (elmo-folder-msgdb-create): Use
2824         `elmo-message-entity' and `elmo-message-flags' instead of
2825         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2826
2827 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2828
2829         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2830         `if-exists'.
2831
2832 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2833
2834         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2835
2836         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2837
2838         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2839
2840 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2841
2842         * elmo-version.el (elmo-version): Up to 2.11.22.
2843
2844 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2845
2846         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2847
2848 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2849
2850         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2851         if the message dose not exist.
2852
2853 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2854
2855         * elmo-version.el (elmo-version): Up to 2.11.21.
2856
2857 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2858
2859         * modb-standard.el (toplevel): Don't require mime.
2860
2861 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2862
2863         * elsp-bogofilter.el (toplevel): Don't require path-util.
2864         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2865         (elmo-spam-bogofilter-header): Abolish.
2866         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2867         (elmo-spam-bogofilter-args): New user option.
2868         (elsp-bogofilter-call-bogofilter): New internal function.
2869         (elmo-spam-buffer-spam-p): Use it.
2870         (elsp-bogofilter-register-buffer): Renamed from
2871         `elmo-spam-bogofilter-register-buffer';
2872         Use `elsp-bogofilter-call-bogofilter'.
2873         (elmo-spam-register-spam-buffer): Follow the change above.
2874         (elmo-spam-register-good-buffer): Ditto.
2875
2876 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2877
2878         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2879         message-id is nil do nothing.
2880
2881 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2882
2883         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2884         Revival.
2885         (elmo-imap4-session): Removed use-flag slot.
2886         (elmo-imap4-session-select-mailbox): Undo last change.
2887         (elmo-folder-use-flag-p): Use
2888         elmo-imap4-disuse-server-flag-mailbox-regexp.
2889
2890 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2891
2892         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2893         (elmo-imap4-session-select-mailbox): Set it up.
2894         (elmo-folder-use-flag-p): Return value of use-flag slot.
2895
2896 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2897
2898         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2899         message-id is nil.
2900         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2901
2902         * modb-entity.el (elmo-message-entity-handler): Likewise.
2903
2904 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2905
2906         * elmo.el (toplevel): Remove setting of autoloding for
2907         elmo-global-flag-initialize.
2908         (elmo-init): Don't call elmo-global-flag-initialize.
2909         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2910
2911         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2912         (elmo-global-mark-migrate): Don't call it.
2913         (elmo-global-mark-upgrade): Ditto.
2914
2915 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2916
2917         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2918         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2919
2920         * elmo-vars.el (elmo-init-hook): New user option.
2921
2922         * elmo.el (elmo-init): Run the elmo-init-hook.
2923
2924         * elmo-flag.el (elmo-global-mark-migrate): New function.
2925
2926 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2927
2928         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2929         Undo last change (move to elmo-msgdb-unset-flag).
2930         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2931         flag is unset.
2932
2933 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2934
2935         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2936         read flag is set.
2937         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2938         (elmo-msgdb-unset-flag): Ditto.
2939
2940 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2941
2942         * elmo-split.el (elmo-split): Return split message count.
2943
2944 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2945
2946         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2947         is nil.
2948
2949 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2950
2951         * elmo.el (elmo-folder-unflag-important): Call
2952         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2953         a symbol `always'.
2954
2955         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2956         before unset flag.
2957         (elmo-global-flag-detach): Delete the message from flag folder, if
2958         `delete-if-none' is a symbol `always'.
2959
2960 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2961
2962         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2963         `elmo-spam-spamfilter-decode-buffer'.
2964         (elsp-spamfilter-register-buffer-internal): New internal function.
2965         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2966         (elmo-spam-register-spam-buffer): Ditto.
2967         (elmo-spam-register-good-buffer): Ditto.
2968
2969         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2970         change.
2971         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2972         (elmo-spam-register-spam-buffer): Follow the API change.
2973         (elmo-spam-register-good-buffer): Ditto.
2974
2975         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2976         (elmo-split-spam-p): Added argument plist; Call
2977         `elmo-spam-buffer-spam-p' with new argument register.
2978
2979         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2980         `register'.
2981         (elmo-spam-message-spam-p): Ditto.
2982         (elmo-spam-register-spam-buffer): Added optional argument
2983         `restore'.
2984         (elmo-spam-register-good-buffer): Ditto.
2985         (elmo-spam-register-spam-messages): Ditto.
2986         (elmo-spam-register-good-messages): Ditto.
2987
2988 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2989
2990         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2991         register into good corpus.
2992         (elmo-spam-register-good-buffer): Fixed to register into bad
2993         corpus.
2994
2995 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2996
2997         * elmo-version.el (elmo-version): Up to 2.11.20.
2998
2999         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
3000         change.
3001
3002         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
3003         flag without depending on \Recent flag.
3004
3005 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3006
3007         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
3008         (elmo-spam-modified-p): Defined.
3009         (elmo-spam-save-status): Set `modified' slot to nil.
3010         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
3011         (elmo-spam-register-good-buffer): Ditto.
3012
3013         * elmo-spam.el (elmo-spam-modified-p): New API.
3014
3015 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3016
3017         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
3018         duplicate definition.
3019
3020         * elmo-util.el (elmo-unfold-field-body): New function.
3021         (elmo-msgdb-get-message-id-from-buffer): Use it.
3022
3023         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3024         Fixed the last change; Use elmo-unfold-field-body.
3025
3026 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3027
3028         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3029         Unfold date value.
3030
3031 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3032
3033         * elmo-spam.el (elmo-spam-save-status): New API.
3034
3035         * elsp-spamfilter.el: New file.
3036
3037 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3038
3039         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
3040
3041 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3042
3043         * elmo-split.el (elmo-split-spam-p): New function.
3044
3045         * elmo-spam.el: New file.
3046
3047         * elsp-bogofilter.el: Ditto.
3048
3049 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
3050
3051         * elmo.el (elmo-folder-next-message-number): New API.
3052         (elmo-folder-next-message-number): Define.
3053         (elmo-message-field): Don't check folder length.
3054
3055         * elmo-net.el (elmo-folder-next-message-number): Define.
3056         (elmo-folder-next-message-number-unplugged): Define.
3057
3058         * elmo-map.el (elmo-folder-next-message-number): Define.
3059         (elmo-folder-delete-messages): Clear hash value.
3060
3061         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
3062
3063         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
3064         (elmo-folder-delete-messages-dop-delayed): Always return t.
3065
3066         * elmo-version.el (elmo-version): Up to 2.11.19.
3067
3068 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3069
3070         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
3071         change.
3072
3073         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
3074         identical cons cell into the mark-alist and the hash table.
3075
3076 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
3077
3078         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
3079         elmo-folder-list-messages with argument `visible-only' as t.
3080
3081         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
3082         (elmo-folder-msgdb-create): Check the target folder.
3083
3084 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
3085
3086         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
3087         `permanentflag' instead of `flags'.
3088         (elmo-folder-open): Ditto.
3089         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
3090         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
3091         (elmo-folder-use-flag-p): Always return t.
3092         (elmo-imap4-session-select-mailbox): Use value of `flags' if
3093         `permanentflags' does not exist.
3094         (elmo-folder-open): Ditto.
3095
3096 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
3097
3098         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
3099         is nil.
3100         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
3101
3102         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
3103         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
3104         response.
3105         (elmo-folder-open): Ditto.
3106         (elmo-imap4-set-flag): Send store flag command only when the `flags'
3107         slot of the session includes the flag.
3108         (elmo-imap4-session-flag-available-p): New function.
3109         (elmo-imap4-folder-list-flagged): Ditto.
3110         (elmo-folder-list-unreads-plugged): Use it.
3111         (elmo-folder-list-importants-plugged): Ditto.
3112         (elmo-folder-list-answereds-plugged): Ditto.
3113         (elmo-imap4-search-internal-primitive): Ditto.
3114         (elmo-imap4-folder-list-any-plugged,
3115         elmo-imap4-folder-list-digest-plugged): Abolish.
3116
3117         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
3118         if numbers is nil.
3119
3120 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3121
3122         * elmo-util.el (toplevel): Require emu for char-list-to-string.
3123
3124 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
3125
3126         * elmo-util.el (elmo-get-hash-val): Simplify.
3127         (elmo-set-hash-val): Rewrite.
3128
3129 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3130
3131         * elmo.el (elmo-folder-list-messages): Append killed messages into
3132         result if `visible-only' is nil and `in-msgdb' is non-nil.
3133
3134         * elmo-util.el (elmo-uniq-list): Added optional argument
3135         `delete-function'.
3136
3137         * modb.el (elmo-msgdb-flag-count): New API.
3138
3139         * modb-standard.el (modb-standard): Added slot flag-count.
3140         (modb-standard-countup-flags): New function.
3141         (modb-standard-load-flag): Call it.
3142         (elmo-msgdb-append): Ditto.
3143         (elmo-msgdb-clear): Clear slot flag-count.
3144         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
3145         (elmo-msgdb-unset-flag): Treat `all' flag and call
3146         modb-standard-countup-flags.
3147         (elmo-msgdb-flag-count): Define.
3148         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
3149         (elmo-msgdb-delete-messages): Ditto.
3150
3151         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
3152         (elmo-msgdb-flag-count): Define.
3153
3154         * elmo.el (elmo-folder-list-messages): Undo last change.
3155         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
3156         (elmo-folder-kill-messages): Unset all flags to numbers.
3157
3158         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
3159         elmo-folder-kill-messages.
3160
3161         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
3162         (elmo-nntp-folder-delete-messages): Abolish.
3163
3164         * elmo-version.el (elmo-version): Up to 2.11.18.
3165
3166 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3167
3168         * elmo.el (elmo-folder-kill-messages-before): Abolish.
3169         (elmo-folder-kill-messages-range): New function.
3170         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
3171         instead of elmo-folder-kill-messages-before.
3172
3173 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
3174
3175         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
3176         elmo-imap4-current-msgdb to decide entity handler.
3177
3178 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3179
3180         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
3181
3182         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
3183         inline function.
3184         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
3185         (elmo-msgdb-overview-entity-set-number,
3186         elmo-msgdb-overview-entity-get-references,
3187         elmo-msgdb-overview-entity-set-references,
3188         elmo-msgdb-overview-entity-get-from-no-decode,
3189         elmo-msgdb-overview-entity-get-from,
3190         elmo-msgdb-overview-entity-set-from,
3191         elmo-msgdb-overview-entity-get-subject,
3192         elmo-msgdb-overview-entity-get-subject-no-decode,
3193         elmo-msgdb-overview-entity-set-subject,
3194         elmo-msgdb-overview-entity-get-date,
3195         elmo-msgdb-overview-entity-set-date,
3196         elmo-msgdb-overview-entity-get-to,
3197         elmo-msgdb-overview-entity-get-cc,
3198         elmo-msgdb-overview-entity-get-size,
3199         elmo-msgdb-overview-entity-set-size,
3200         elmo-msgdb-overview-entity-get-extra,
3201         elmo-msgdb-overview-entity-set-extra,
3202         elmo-msgdb-overview-entity-get-extra-field,
3203         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
3204         (elmo-msgdb-make-index): Use
3205         `elmo-msgdb-overview-entity-get-number-internal'.
3206         (elmo-msgdb-clear-index): Ditto.
3207         (elmo-msgdb-append-entity): Ditto;
3208         Use `elmo-msgdb-overview-entity-get-id-internal'.
3209
3210         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
3211         elmo-msgdb-overview-entity-set-number,
3212         elmo-msgdb-overview-entity-get-references,
3213         elmo-msgdb-overview-entity-set-references,
3214         elmo-msgdb-overview-entity-get-from-no-decode,
3215         elmo-msgdb-overview-entity-get-from,
3216         elmo-msgdb-overview-entity-set-from,
3217         elmo-msgdb-overview-entity-get-subject,
3218         elmo-msgdb-overview-entity-get-subject-no-decode,
3219         elmo-msgdb-overview-entity-set-subject,
3220         elmo-msgdb-overview-entity-get-date,
3221         elmo-msgdb-overview-entity-set-date,
3222         elmo-msgdb-overview-entity-get-to,
3223         elmo-msgdb-overview-entity-get-cc,
3224         elmo-msgdb-overview-entity-get-size,
3225         elmo-msgdb-overview-entity-set-size,
3226         elmo-msgdb-overview-entity-get-extra,
3227         elmo-msgdb-overview-entity-set-extra,
3228         elmo-msgdb-overview-entity-get-extra-field,
3229         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
3230         and rewrote for backward compatibility.
3231
3232 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3233
3234         * elmo.el (elmo-message-entity-number,
3235         elmo-message-entity-set-number,
3236         elmo-message-entity-field,
3237         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
3238
3239         * elmo-msgdb.el (elmo-message-entity-number,
3240         elmo-message-entity-set-number,
3241         elmo-message-entity-field,
3242         elmo-message-entity-set-field): Moved from elmo.el.
3243
3244 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3245
3246         * elmo.el (toplevel): Changed definition orders.
3247
3248 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3249
3250         * modb.el (elmo-msgdb-search): New API .
3251         (elmo-msgdb-match-condition): Ditto.
3252
3253         * modb-standard.el (elmo-msgdb-search): Define.
3254
3255         * modb-legacy.el (elmo-msgdb-search): Ditto.
3256
3257         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
3258         from elmo-msgdb-match-condition-internal.
3259
3260         * elmo.el (elmo-folder-search-fast): Abolish.
3261         (elmo-folder-search): Use elmo-msgdb-search and
3262         elmo-with-progress-display.
3263
3264         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
3265         as msgdb API.
3266
3267         * elmo.el (elmo-folder): Remove slot message-modified and
3268         flag-modified.
3269         (elmo-folder-set-message-modified): Abolish.
3270         (elmo-generic-folder-commit): Follow the change above.
3271         (elmo-folder-synchronize): Ditto.
3272
3273         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
3274
3275         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3276
3277         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
3278
3279 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3280
3281         * modb-standard.el (modb-standard-make-message-entity,
3282         elmo-msgdb-make-message-entity,
3283         elmo-msgdb-create-message-entity-from-buffer,
3284         elmo-msgdb-message-entity-number,
3285         elmo-msgdb-message-entity-set-number,
3286         elmo-msgdb-message-entity-field,
3287         elmo-msgdb-message-entity-set-field,
3288         elmo-msgdb-copy-message-entity,
3289         elmo-msgdb-match-condition-internal): Remove.
3290
3291         * modb-entity.el: New file (again).
3292
3293         * modb.el (toplevel): Require modb-entity.
3294         (elmo-msgdb-message-entity-handler): New method.
3295
3296         * modb-standard.el (modb-standard-entity-id): Use
3297         elmo-message-entity-handler.
3298         (modb-standard-load-entity): Ditto.
3299         (elmo-msgdb-append-entity): Ditto.
3300         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3301
3302         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
3303         elmo-msgdb-decoded-cache-hashtb,
3304         (modb-legacy-make-message-entity,
3305         elmo-msgdb-make-message-entity,
3306         elmo-msgdb-create-message-entity-from-buffer,
3307         elmo-msgdb-message-entity-number,
3308         elmo-msgdb-message-entity-set-number,
3309         elmo-msgdb-message-entity-field,
3310         elmo-msgdb-message-entity-set-field,
3311         elmo-msgdb-copy-message-entity,
3312         elmo-msgdb-match-condition-internal,
3313         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
3314
3315         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
3316         (elmo-message-entity-set-number): Ditto.
3317         (elmo-message-entity-field): Ditto.
3318         (elmo-message-entity-set-field): Ditto.
3319
3320         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
3321
3322         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3323
3324         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3325
3326         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3327         (elmo-nntp-msgdb-create-message): Ditto.
3328
3329         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
3330         (elmo-folder-msgdb-create): Add unread flag.
3331
3332         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3333
3334         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
3335
3336         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
3337
3338         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3339
3340         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
3341         elmo-msgdb-messge-entity-handler.
3342         * elmo-version.el (elmo-version): Up to 2.11.17.
3343
3344 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3345
3346         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
3347         change.
3348
3349 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3350
3351         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3352
3353         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3354         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3355         (elmo-msgdb-flag-table): Ditto.
3356         (elmo-msgdb-sort-by-date): Ditto.
3357
3358         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3359
3360         * modb-standard.el (toplevel): Require mime.
3361         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3362         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3363         elmo-msgdb-message-entity-number.
3364         (elmo-msgdb-append-entity): Ditto.
3365         (elmo-msgdb-create-message-entity-from-file): Remove.
3366         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3367         corresponds to the entity.
3368         (elmo-msgdb-message-entity-number): Do nothing currently.
3369         (elmo-msgdb-message-entity-field): Ditto.
3370         (elmo-msgdb-message-entity-set-field): Ditto.
3371         (elmo-msgdb-copy-message-entity): Ditto.
3372         (elmo-msgdb-match-condition-internal): Ditto.
3373
3374         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3375         elmo-util.el.
3376         (elmo-msgdb-create-message-entity-from-file): Remove.
3377
3378         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3379         modb-legacy.el.
3380         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3381
3382         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3383
3384 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3385
3386         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3387         (elmo-msgdb-message-entity-field): Ditto.
3388         (elmo-msgdb-message-entity-number): Ditto.
3389
3390 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3391
3392         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3393         Fixed how to set extra field into entity.
3394         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3395         symbol.
3396
3397         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3398         Fixed how to set extra field into entity.
3399         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3400         symbol.
3401
3402 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3403
3404         * modb.el (elmo-message-entity-db): New function.
3405         (elmo-msgdb-make-message-entity): New API.
3406         (elmo-msgdb-message-entity-number): Ditto.
3407         (elmo-msgdb-message-entity-set-number): Ditto.
3408         (elmo-msgdb-message-entity-field): Ditto.
3409         (elmo-msgdb-message-entity-set-field): Ditto.
3410         (elmo-msgdb-copy-message-entity): Ditto.
3411         (elmo-msgdb-create-message-entity-from-file): Ditto.
3412         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3413         (elmo-msgdb-match-condition-internal): Ditto.
3414
3415         * modb-standard.el (modb-legacy): Require modb-legacy.
3416         (modb-standard-make-message-entity): New inline function.
3417         (elmo-msgdb-make-message-entity): Define.
3418         (elmo-msgdb-create-message-entity-from-file): Ditto.
3419         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3420         (elmo-msgdb-message-entity-field): Ditto.
3421         (elmo-msgdb-message-entity-set-field): Ditto.
3422         (elmo-msgdb-copy-message-entity): Ditto.
3423         (elmo-msgdb-match-condition-internal): Ditto.
3424
3425         * modb-legacy.el: Don't require modb-entity.
3426         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3427         (elmo-msgdb-match-condition-primitive): Ditto.
3428         (elmo-msgdb-get-decoded-cache): Ditto.
3429         (elmo-msgdb-overview-entity-get-id): Ditto.
3430         (elmo-msgdb-overview-entity-get-number): Ditto.
3431         (elmo-msgdb-overview-entity-set-number): Ditto.
3432         (elmo-msgdb-overview-entity-get-references): Ditto.
3433         (elmo-msgdb-overview-entity-set-references): Ditto.
3434         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3435         (elmo-msgdb-overview-entity-get-from): Ditto.
3436         (elmo-msgdb-overview-entity-set-from): Ditto.
3437         (elmo-msgdb-overview-entity-get-subject): Ditto.
3438         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3439         (elmo-msgdb-overview-entity-set-subject): Ditto.
3440         (elmo-msgdb-overview-entity-get-date): Ditto.
3441         (elmo-msgdb-overview-entity-set-date): Ditto.
3442         (elmo-msgdb-overview-entity-get-to): Ditto.
3443         (elmo-msgdb-overview-entity-get-cc): Ditto.
3444         (elmo-msgdb-overview-entity-get-size): Ditto.
3445         (elmo-msgdb-overview-entity-set-size): Ditto.
3446         (elmo-msgdb-overview-entity-get-extra): Ditto.
3447         (elmo-msgdb-overview-entity-set-extra): Ditto.
3448         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3449         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3450         (elmo-msgdb-number-load): Ditto.
3451         (elmo-msgdb-overview-load): Ditto.
3452         (elmo-msgdb-mark-load): Ditto.
3453         (elmo-msgdb-number-save): Ditto.
3454         (elmo-msgdb-mark-save): Ditto.
3455         (elmo-msgdb-overview-save): Ditto.
3456         (modb-legacy-make-message-entity): New inline function.
3457         (elmo-msgdb-insert-file-header): Ditto.
3458         (elmo-msgdb-make-message-entity): Define.
3459         (elmo-msgdb-create-message-entity-from-file): Ditto.
3460         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3461         (elmo-msgdb-message-entity-number): Ditto.
3462         (elmo-msgdb-message-entity-set-number): Ditto.
3463         (elmo-msgdb-message-entity-field): Ditto.
3464         (elmo-msgdb-message-entity-set-field): Ditto.
3465         (elmo-msgdb-copy-message-entity): Ditto.
3466         (elmo-msgdb-match-condition-internal): Ditto.
3467
3468         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3469         (elmo-message-copy-entity): Rewrite.
3470         (elmo-message-entity-number): Ditto.
3471         (elmo-message-entity-set-number): Ditto.
3472         (elmo-message-entity-field): Use elmo-message-entity-db.
3473         (elmo-message-entity-set-field): Ditto.
3474         (elmo-message-field): Rewrite.
3475
3476         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3477         elmo-msgdb.el
3478         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3479
3480         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3481         elmo-message-entity-field.
3482         (elmo-shimbun-folder-shimbun-header): Ditto.
3483         (elmo-shimbun-entity-to-header): Ditto.
3484         (elmo-folder-msgdb-create): Ditto.
3485         (elmo-shimbun-msgdb-create-entity): Ditto;
3486         Use elmo-msgdb-create-message-entity-from-buffer.
3487         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3488         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3489
3490         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3491         elmo-msgdb-create-message-entity-from-file and 
3492         elmo-message-entity-field.
3493
3494         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3495         elmo-message-entity-number.
3496         (elmo-pop3-msgdb-create-message): Use
3497         elmo-msgdb-create-message-entity-from-buffer,
3498         elmo-message-entity-set-field, elmo-message-entity-number and
3499         elmo-message-entity-set-number.
3500
3501         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3502         the API change in elmo-msgdb-make-message-entity.
3503         (elmo-nntp-msgdb-create-message): Use
3504         elmo-msgdb-create-message-entity-from-buffer.
3505
3506         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3507         elmo-message-entity-field and
3508         elmo-msgdb-create-message-entity-from-file.
3509
3510         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3511         (elmo-msgdb-get-field): Abolish.
3512         (elmo-msgdb-get-number): Rewrite.
3513         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3514         (elmo-msgdb-flag-table): Ditto.
3515         (elmo-msgdb-get-last-message-id,
3516         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3517         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3518         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3519         (elmo-msgdb-create-overview-from-buffer,
3520         elmo-msgdb-overview-get-parent-entity): Abolish.
3521
3522         * elmo-mime.el (elmo-mime-display-as-is): Use
3523         elmo-message-entity-field.
3524
3525         * elmo-map.el (elmo-folder-pack-numbers): Use
3526         elmo-message-entity-set-number.
3527
3528         * elmo-maildir.el (elmo-folder-msgdb-create): 
3529         elmo-msgdb-create-message-entity-from-file instead of
3530         elmo-msgdb-create-overview-entity-from-file.
3531
3532         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3533         msgdb.
3534         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3535         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3536
3537         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3538         elmo-messge-entity-field and elmo-message-entity-number.
3539         (elmo-imap4-fetch-callback-1): Call
3540         elmo-msgdb-create-message-entity-from-buffer instead of
3541         elmo-msgdb-create-overview-from-buffer. 
3542         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3543         (elmo-find-fetch-strategy): Likewise.
3544
3545         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3546         elmo-localdir-msgdb-create-entity with argument msgdb.
3547
3548         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3549         and elmo-message-entity-set-number.
3550
3551         * elmo-cache.el (elmo-folder-msgdb-create): Use
3552         elmo-message-entity-field.
3553         (elmo-folder-msgdb-create): Call
3554         elmo-msgdb-create-message-entity-from-file instead of
3555         elmo-msgdb-create-overview-entity-from-file.
3556
3557         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3558         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3559         instead of elmo-msgdb-create-overview-from-buffer.
3560         (elmo-archive-msgdb-create-entity): Ditto.
3561         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3562         elmo-message-entity-field.
3563         (elmo-archive-parse-mmdf): Ditto.
3564
3565         * modb-entity.el: Removed.
3566
3567         * elmo-version.el (elmo-version): Up to 2.11.16.
3568
3569 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3570
3571         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3572         `is-local'.
3573         (elmo-folder-flag-as-answered): Ditto.
3574
3575 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3576
3577         * modb-standard.el: New file.
3578
3579         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3580         elmo-msgdb-convert-type is `sync'.
3581
3582         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3583         (elmo-msgdb-convert-type): New user option.
3584
3585         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3586         (elmo-load-msgdb): Auto detect saved type.
3587
3588         * elmo-version.el (elmo-version): Up to 2.11.15.
3589
3590 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3591
3592         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3593
3594         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3595         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3596         with argument `delete-if-none' when dst-folder is 'null.
3597
3598         * elmo-flag.el (elmo-folder-append-messages): Defined.
3599         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3600
3601 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3602
3603         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3604
3605 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3606
3607         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3608         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3609         (elmo-folder-commit): Ditto.
3610
3611 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3612
3613         * elmo-flag.el: New file.
3614
3615         * elmo-mark.el: Removed.
3616
3617         * modb-legacy.el (modb-legacy-new-mark,
3618         modb-legacy-unread-uncached-mark,
3619         modb-legacy-unread-cached-mark,
3620         modb-legacy-read-uncached-mark,
3621         modb-legacy-answered-cached-mark,
3622         modb-legacy-answered-uncached-mark,
3623         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3624         All other related portions are changed.
3625
3626         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3627         (elmo-folder-list-messages-with-global-mark): Abolish.
3628         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3629         (elmo-folder-flag-as-important): Ditto.
3630         (elmo-folder-unflag-read): Ditto.
3631         (elmo-folder-flag-as-read): Ditto.
3632         (elmo-folder-unflag-answered): Ditto.
3633         (elmo-folder-flag-as-answered): Ditto.
3634         (elmo-message-encache): Return the cache path.
3635         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3636         (elmo-message-set-flag): Transitional implementation.
3637         (elmo-message-unset-flag): Ditto.
3638         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3639         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3640         (elmo-init): Call elmo-global-flag-initialize.
3641         (toplevel): Added autoload settings for elmo-flag.
3642
3643         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3644
3645         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3646         (elmo-file-cache-delete): Don't treat global-mark.
3647
3648         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3649
3650         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3651
3652         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3653         `elmo-global-flags-set'.
3654
3655         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3656         `flag'.
3657         (elmo-folder-unflag-read): Ditto.
3658         (elmo-folder-unflag-important): Ditto.
3659         (elmo-folder-flag-as-important): Ditto.
3660         (elmo-folder-unflag-answered): Ditto.
3661         (elmo-folder-flag-as-answered): Ditto.
3662
3663         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3664         `elmo-global-flags-set'.
3665         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3666
3667         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3668
3669         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3670         `flag'.
3671         (elmo-folder-flag-as-important): Ditto.
3672         (elmo-folder-unflag-important): Ditto.
3673         (elmo-folder-flag-as-important): Ditto.
3674         (elmo-folder-unflag-read): Ditto.
3675         (elmo-folder-flag-as-read): Ditto.
3676         (elmo-folder-unflag-answered): Ditto.
3677         (elmo-folder-flag-as-answered): Ditto.
3678
3679         * elmo-multi.el (elmo-folder-list-importants): Don't call
3680         elmo-folder-list-messages-with-global-mark.
3681         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3682         (elmo-folder-unflag-important): Ditto.
3683         (elmo-folder-flag-as-read): Ditto.
3684         (elmo-folder-unflag-read): Ditto.
3685         (elmo-folder-flag-as-answered): Ditto.
3686         (elmo-folder-unflag-answered): Ditto.
3687
3688         * elmo-msgdb.el (elmo-msgdb-new-mark,
3689         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3690         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3691         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3692         (Moved to modb-legacy.el).
3693         (elmo-flag-table-get): Treat important flag too.
3694
3695         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3696         `mark' to `flag'.
3697         (elmo-map-folder-flag-as-important): Ditto.
3698         (elmo-map-folder-unflag-read): Ditto.
3699         (elmo-map-folder-flag-as-read): Ditto.
3700         (elmo-map-folder-unflag-answered): Ditto.
3701         (elmo-map-folder-flag-as-answered): Ditto.
3702         (elmo-folder-unflag-important): Ditto.
3703         (elmo-folder-flag-as-important): Ditto.
3704         (elmo-folder-unflag-read): Ditto.
3705         (elmo-folder-flag-as-read): Ditto.
3706         (elmo-folder-unflag-answered): Ditto.
3707         (elmo-folder-flag-as-answered): Ditto.
3708
3709         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3710         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3711         `flag'.
3712         (elmo-map-folder-unflag-important): Ditto.
3713         (elmo-map-folder-flag-as-read): Ditto.
3714         (elmo-map-folder-unflag-read): Ditto.
3715         (elmo-map-folder-flag-as-answered): Ditto.
3716         (elmo-map-folder-unflag-answered): Ditto.
3717
3718         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3719         `elmo-global-flags-set'.
3720         (elmo-global-flags-set): Added autoload setting.
3721
3722         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3723         `flag'.
3724
3725         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3726         `elmo-msgdb-global-mark-set'.
3727         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3728         Call `elmo-global-flags-set'.
3729         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3730         `flag'.
3731         (elmo-folder-flag-as-important-plugged): Ditto.
3732         (elmo-folder-unflag-read-plugged): Ditto.
3733         (elmo-folder-flag-as-read-plugged): Ditto.
3734         (elmo-folder-unflag-answered-plugged): Ditto.
3735         (elmo-folder-flag-as-answered-plugged): Ditto.
3736         (elmo-global-flags-set): Added autoload setting.
3737
3738         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3739         `flag'.
3740         (elmo-folder-unflag-read): Ditto.
3741         (elmo-folder-flag-as-important): Ditto.
3742         (elmo-folder-unflag-important): Ditto.
3743         (elmo-folder-flag-as-answered): Ditto.
3744         (elmo-folder-unflag-answered): Ditto.
3745
3746         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3747         change of `mark'->`flag'.
3748         (elmo-dop-queue-method-name-alist): Ditto.
3749         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3750         (elmo-folder-unflag-read-dop): Ditto.
3751         (elmo-folder-flag-as-important-dop): Ditto.
3752         (elmo-folder-unflag-important-dop): Ditto.
3753         (elmo-folder-flag-as-answered-dop): Ditto.
3754         (elmo-folder-unflag-answered-dop): Ditto.
3755
3756         * elmo-cache.el (elmo-folder-msgdb-create): Call
3757         `elmo-global-flags-set'.
3758
3759         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3760         Call `elmo-global-flags-set'.
3761         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3762         elmo-archive-parse-mmdf with argument `folder'.
3763         (elmo-archive-parse-mmdf): Added argument `folder';
3764         Call `elmo-global-flags-set'.
3765
3766         * elmo-version.el (elmo-version): Up to 2.11.14.
3767
3768 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3769
3770         * modb.el (elmo-msgdb-length): Define.
3771
3772         * elmo.el (elmo-make-folder): Fixed.
3773         (elmo-generic-folder-append-messages): Follow the API change.
3774
3775         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3776         API change.
3777
3778 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3779
3780         * modb.el: New file.
3781
3782         * modb-entity.el: Ditto.
3783
3784         * modb-legacy.el: Ditto.
3785
3786         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3787         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3788         of `elmo-msgdb-overview-get-entity'.
3789         (elmo-msgdb-get-field): Ditto.
3790         (elmo-msgdb-merge): Moved to `elmo.el'.
3791         (elmo-msgdb-length): Removed; redefine as modb method.
3792         (elmo-msgdb-change-mark): Abolish.
3793         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3794         (elmo-msgdb-match-condition): Don't use mark.
3795         (elmo-msgdb-overview-get-entity): Abolish.
3796         Split modb part into `modb*.el'.
3797
3798         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3799
3800         * elmo-shimbun.el (shimbun-mua-search-id): Use
3801         `elmo-msgdb-message-entity' instead of
3802         `elmo-msgdb-overview-get-entity'.
3803         (elmo-shimbun-folder-shimbun-header): Ditto.
3804         (elmo-shimbun-get-headers): Ditto.
3805         (elmo-shimbun-update-overview): Ditto.
3806
3807         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3808
3809         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3810
3811         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3812         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3813
3814         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3815         `elmo-msgdb-mark-to-flags'.
3816
3817         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3818         `elmo-msgdb-set-path'.
3819
3820         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3821  
3822         * elmo-version.el (elmo-version): Up to 2.11.13.
3823
3824         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3825
3826         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3827         of mark.
3828
3829 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3830
3831         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3832         mismatch.
3833
3834 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3835
3836         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3837         instead of `elmo-msgdb-get-cached'.
3838         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3839
3840         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3841         (elmo-msgdb-set-cached): Ditto.
3842         (elmo-msgdb-set-flag): Rewrite.
3843         (elmo-msgdb-unset-flag): Ditto.
3844
3845         * elmo-msgdb.el: Rewrite with luna.
3846
3847         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3848         (elmo-folder-msgdb): Follow the change above.
3849         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3850         (elmo-folder-unmark-important): Follow the API change.
3851         (elmo-folder-mark-as-important): Ditto.
3852         (elmo-folder-unmark-read): Ditto.
3853         (elmo-folder-mark-as-read): Ditto.
3854         (elmo-folder-unmark-answered): Ditto.
3855         (elmo-folder-mark-as-answered): Ditto.
3856         (elmo-folder-clear): Likewise.
3857
3858         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3859         instead of `elmo-msgdb-load' (renamed).
3860
3861         * elmo-version.el (elmo-version): Up to 2.11.12.
3862
3863 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3864
3865         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3866         change.
3867         (elmo-message-mark): Abolish.
3868         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3869         instead of `elmo-msgdb-change-mark'.
3870
3871         * elmo-pipe.el (elmo-message-mark): Abolish.
3872
3873         * elmo-multi.el (elmo-message-mark): Ditto.
3874
3875         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3876         (elmo-msgdb-unread-uncached-mark): Ditto.
3877         (elmo-msgdb-unread-cached-mark): Ditto.
3878         (elmo-msgdb-read-uncached-mark): Ditto.
3879         (elmo-msgdb-answered-cached-mark): Ditto.
3880         (elmo-msgdb-answered-uncached-mark): Ditto.
3881         (elmo-msgdb-important-mark): Ditto.
3882         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3883         `use-cache'.
3884         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3885         `flags'.
3886         (elmo-flag-table-load): Changed flag to list of flag.
3887         (elmo-flag-table-set): If flags is nil, set read flag.
3888         (elmo-flag-table-get): Return derived flags from global mark,
3889         cache status and saved flags.
3890         (elmo-msgdb-flag-table): Follow the change above.
3891         (elmo-msgdb-out-of-date-messages): New function.
3892
3893         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3894
3895         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3896
3897         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3898
3899         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3900         (elmo-nntp-msgdb-create-message): Ditto.
3901
3902         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3903
3904         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3905         independent.
3906         (elmo-folder-msgdb-create): Follow the API change.
3907
3908         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3909         (elmo-folder-append-messages): Ditto.
3910
3911         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3912         (elmo-folder-append-buffer): Ditto.
3913
3914         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3915
3916         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3917
3918         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3919         (elmo-archive-parse-mmdf): Ditto.
3920
3921         * elmo-version.el (elmo-version): Up to 2.11.11.
3922
3923 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3924
3925         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3926         `elmo-msgdb-mark'.
3927
3928         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3929
3930         * elmo-pipe.el (elmo-message-flags): Defined.
3931
3932         * elmo-multi.el (elmo-message-flags): Ditto.
3933
3934 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3935
3936         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3937         `elmo-msgdb-delete-msgs'.
3938
3939         * elmo.el (elmo-folder-count-flags): Don't use
3940         `elmo-msgdb-get-mark-alist'.
3941         (elmo-folder-detach-messages): Follow the API change.
3942
3943         * elmo.el (elmo-folder-list-messages): Append killed messages into
3944         result if `visible-only' is nil.
3945
3946         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3947         canceled messages.
3948         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3949         (elmo-folder-update-number): Likewise.
3950
3951         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3952         (elmo-pop3-sort-msgdb-by-original-number): Use
3953         `elmo-msgdb-sort-entities'.
3954
3955         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3956         (elmo-msgdb-sort-by-date): Use it.
3957         (elmo-msgdb-overview-sort-by-date): Abolish.
3958
3959         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3960
3961         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3962         (elmo-msgdb-flags): New function.
3963         (elmo-msgdb-merge): Use elmo-msgdb-append.
3964
3965         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3966         change.
3967
3968         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3969
3970         * elmo-dop.el (elmo-folder-status-dop): Use
3971         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3972
3973 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3974
3975         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3976
3977         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3978
3979         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3980
3981         * elmo-util.el (elmo-with-progress-display): New macro.
3982
3983         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3984
3985 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3986
3987         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3988         `elmo-folder-list-message-entities' instead of
3989         `elmo-msgdb-get-overview'.
3990         (elmo-map-folder-list-message-locations): Ditto.
3991
3992         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3993         methods instead of treat directly).
3994         (elmo-msgdb-clear): Ditto.
3995         (elmo-msgdb-delete-msgs): Ditto.
3996         (elmo-msgdb-sort-by-date): Ditto.
3997
3998         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3999         local variables.
4000         (elmo-nntp-folder-msgdb-create): Follow the API change.
4001
4002         * elmo-version.el (elmo-version): Up to 2.11.10.
4003
4004 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4005
4006         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
4007         (elmo-msgdb-flags-to-mark): Ditto.
4008         (elmo-msgdb-append-entity): Ditto.
4009
4010         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
4011         Use `elmo-msgdb-append-entity' instead of construct msgdb.
4012         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4013         (elmo-archive-parse-mmdf): Ditto.
4014
4015         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4016
4017         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
4018
4019         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
4020
4021         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4022
4023         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
4024
4025         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4026
4027         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4028
4029         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4030
4031         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
4032         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
4033         to empty msgdb.
4034
4035         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
4036         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
4037         instead of directly construction.
4038         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
4039         instead of construct msgdb.
4040
4041         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
4042         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
4043         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
4044         instead of construct msgdb.
4045
4046 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4047
4048         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
4049         when field is from or subject.
4050
4051 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
4052
4053         * elmo-multi.el (elmo-message-entity-parent): Define.
4054         (elmo-folder-search): Rewrite.
4055
4056 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4057
4058         * elmo-multi.el (elmo-message-cached-p): Define.
4059
4060         * elmo.el (elmo-message-cached-p): New method.
4061         (elmo-message-accessible-p): Use it instead of msgdb API directly.
4062         (elmo-message-flags): New method.
4063         (elmo-message-flagged-p): New function.
4064
4065         * elmo-version.el (elmo-version): Up to 2.11.9.
4066
4067 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4068
4069         * elmo-version.el (elmo-version): Up to 2.11.8.
4070
4071         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
4072
4073         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
4074
4075 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
4076
4077         * elmo.el (elmo-folder-detach-messages): Undo last change.
4078
4079 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
4080
4081         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
4082
4083         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
4084         only when src folder type is pop3.
4085
4086 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
4087
4088         * elmo-msgdb.el (elmo-msgdb-make-index): Use
4089         elmo-msgdb-overview-entity-get-number instead of
4090         elmo-message-entity-number.
4091
4092 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4093
4094         * elmo-version.el (elmo-version): Up to 2.11.7.
4095
4096 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
4097
4098         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
4099         function.
4100
4101         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
4102         (elmo-msgdb-merge): New function.
4103         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
4104         (elmo-msgdb-make-index): Rewrite.
4105
4106         * elmo-version.el (elmo-version): Up to 2.11.6.
4107
4108         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
4109         use it as a the path for loading message entities.
4110
4111         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
4112
4113 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
4114
4115         * elmo-filter.el (elmo-folder-set-message-modified): Set 
4116         message-modified slot of itself if it does not require target msgdb.
4117
4118         * elmo-mime.el (elmo-mime-message-display): Display message entirely
4119         if folder length is zero.
4120         (elmo-mime-display-as-is): Ditto.
4121
4122         * elmo-filter.el (elmo-folder-set-message-modified): Define.
4123
4124         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
4125
4126 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4127
4128         * elmo.el (elmo-folder-set-message-modified): New method.
4129         (elmo-generic-folder-commit): Use it.
4130         (elmo-folder-synchronize): Ditto.
4131
4132         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
4133         (elmo-folder-commit): Remove duplicate definition.
4134
4135 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4136
4137         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
4138
4139 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4140
4141         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
4142         (elmo-strict-folder-diff): Ditto.
4143         (elmo-folder-set-info-max-by-numdb): Simplify.
4144
4145         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
4146         elmo-msgdb-list-messages.
4147
4148         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
4149         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
4150
4151 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4152
4153         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
4154         visible-only is non-nil.
4155         (elmo-folder-confirm-appends): Changed message.
4156         (elmo-folder-synchronize): Added argument disable-killed.
4157
4158         * elmo-multi.el (elmo-folder-synchronize): Added argument
4159         disable-killed.
4160
4161         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
4162
4163         * elmo-version.el (elmo-version): Up to 2.11.5.
4164
4165         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
4166         elmo-list-filter.
4167
4168         * elmo-util.el (elmo-list-filter): Simplify.
4169
4170         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
4171         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
4172         (elmo-generic-folder-diff): Abolish argument.
4173         (elmo-msgdb-load): Don't use number-alist.
4174
4175         * elmo-filter.el (elmo-folder-diff): Abolish argument.
4176
4177         * elmo-pipe.el (elmo-folder-diff): Ditto.
4178
4179         * elmo-nmz.el (elmo-folder-diff): Ditto.
4180
4181         * elmo-net.el (elmo-folder-diff): Ditto.
4182
4183         * elmo-maildir.el (elmo-folder-diff): Ditto.
4184
4185         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
4186
4187         * elmo-multi.el (elmo-folder-diff): Ditto
4188         (elmo-multi-folder-diff): Rewrite.
4189
4190 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4191
4192         * elmo-pipe.el (elmo-folder-msgdb): Define.
4193
4194 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
4195
4196         * elmo.el (elmo-message-set-cached): Define as a method.
4197
4198         * elmo-pipe.el (elmo-message-set-cached): Define.
4199         (elmo-find-fetch-strategy): Ditto.
4200
4201         * elmo-multi.el (elmo-message-set-cached): Define.
4202         (elmo-find-fetch-strategy): Rewrite.
4203
4204         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
4205
4206         * elmo-pipe.el (elmo-message-folder): Fixed definition.
4207
4208 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4209
4210         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
4211         instead of number-alist.
4212
4213         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
4214         mark nor message-id when msgdb of source folder is not loaded.
4215
4216         * elmo.el (elmo-generic-folder-append-messages): Ditto.
4217
4218         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4219
4220 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
4221
4222         * elmo.el (elmo-folder-length): Don't require msgdb.
4223
4224 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
4225
4226         * elmo.el (elmo-message-mark): Cause an error when empty folder.
4227         (elmo-message-field): Ditto.
4228
4229         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
4230         (elmo-map-folder-list-message-locations): Setup `answered-locations'
4231         slot.
4232         (elmo-map-folder-list-answereds): Define.
4233         (elmo-maildir-list-location): Treat 'R' info.
4234         (elmo-folder-msgdb-create): Treat flag-table.
4235         (elmo-folder-append-messages): Save flag-table.
4236
4237 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
4238
4239         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
4240         Use SELECT when elmo-imap4-use-select-to-update-status is t.
4241
4242 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4243
4244         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
4245
4246         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
4247         'read when mark is null.
4248
4249 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
4250
4251         * elmo-version.el (elmo-version): Up to 2.11.4.
4252
4253 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4254
4255         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
4256         (elmo-folder-mark-as-answered): Ditto.
4257
4258 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
4259
4260         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
4261         (elmo-pop3-get-session): Make msgdb directory after session.
4262         (elmo-folder-exists-p): Check exactly at the first time even when the
4263         elmo-pop3-exists-exactly is nil.
4264
4265         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
4266         (elmo-folder-list-messages): Define instead of
4267         elmo-folder-list-messages-internal.
4268         (elmo-folder-check): Check destination folder.
4269         (elmo-folder-synchronize): Drain the pipe.
4270
4271         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
4272         when msgdb is not loaded.
4273
4274         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
4275
4276         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
4277         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
4278         messages.
4279
4280         * elmo.el (elmo-folder-kill-messages-before): New function.
4281         (elmo-folder-kill-messages): Ditto.
4282         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
4283
4284         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
4285         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
4286         killed not by synchronize (e.g. scoring).
4287
4288 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4289
4290         * elmo.el (elmo-folder-search-fast): Return t if condition is not
4291         treated.
4292         (elmo-folder-search): Follow the change above.
4293
4294         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
4295         into the candidates of search field.
4296
4297 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
4298
4299         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
4300         (elmo-msgdb-unset-flag): Ditto.
4301
4302         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
4303
4304 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
4305
4306         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
4307         (elmo-folder-commit): Define.
4308         (elmo-folder-synchronize): Ditto.
4309         (elmo-folder-list-flagged): Ditto.
4310         (elmo-folder-commit): Ditto.
4311         (elmo-folder-length): Ditto.
4312         (elmo-folder-count-flags): Ditto.
4313         (elmo-message-mark): Ditto.
4314         (elmo-message-field): Ditto.
4315         (elmo-message-entity): Ditto.
4316         (elmo-message-folder): Ditto.
4317
4318 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
4319
4320         * elmo.el (elmo-message-field): Define as a method.
4321
4322         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
4323         (elmo-message-field): Define.
4324
4325         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
4326         (elmo-folder-list-importants): Ditto.
4327         (elmo-folder-list-answereds): Ditto.
4328
4329         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
4330         qualifier.
4331         (elmo-folder-mark-as-read): Ditto.
4332         (elmo-folder-unmark-read): Ditto.
4333         (elmo-folder-mark-as-answered): Ditto.
4334         (elmo-folder-unmark-answered): Ditto.
4335         (elmo-folder-list-flagged): Define.
4336         (elmo-folder-commit): Ditto.
4337         (elmo-folder-length): Ditto.
4338         (elmo-folder-count-flags): Ditto.
4339
4340 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4341
4342         * elmo.el (elmo-folder-detach-messages): New method.
4343         (elmo-folder-move-messages): Use it.
4344         (elmo-folder-synchronize): Ditto.
4345
4346         * elmo-multi.el (elmo-folder-detach-messages): Define.
4347
4348         * elmo.el (elmo-message-copy-entity): New function.
4349         (elmo-message-entity-set-number): Ditto.
4350         (elmo-message-mark): Define as method.
4351
4352         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4353         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4354         (elmo-message-entity): Fixed last change.
4355         (elmo-message-mark): Define.
4356         (elmo-folder-msgdb-create): Abolish.
4357         (elmo-multi-folder-append-msgdb): Ditto.
4358         (elmo-multi-folder-diff): Fixed.
4359         (elmo-multi-split-number-alist): Removed.
4360         (elmo-multi-split-mark-alist): Removed.
4361         (elmo-folder-list-messages): Define.
4362         (elmo-folder-list-messages-internal): Removed.
4363
4364         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4365         local file messages.
4366         (elmo-folder-msgdb-create): Fixed read mark.
4367
4368 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4369
4370         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4371         if mark is nil.
4372
4373 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4374
4375         * elmo.el (elmo-folder-list-message-entities): Define as inline
4376         function.
4377         (elmo-folder-messages): Abolish.
4378
4379         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4380         folder.
4381         (elmo-folder-synchronize): Define.
4382         (elmo-message-entity): Define.
4383
4384 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4385
4386         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4387         elmo-imap4-session-select-mailbox.
4388
4389         * elmo.el (elmo-folder-move-messages): Don't display any message.
4390
4391         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4392         parsing.
4393         (elmo-imap4-session-check): Don't wait CHECK response.
4394         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4395
4396 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4397
4398         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4399
4400 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4401
4402         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4403         API.
4404         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4405
4406
4407         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4408         (elmo-folder-list-message-entities): Added argument in-msgdb and
4409         numbers.
4410         (elmo-folder-synchronize): Define as a method.
4411
4412         * elmo-nntp.el (elmo-folder-initialize): Don't use
4413         elmo-nntp-default-user if zero-length username is specified
4414         explicitly.
4415
4416 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4417
4418         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4419         server name in case with username.
4420         (XXX: this is ad-hoc fix against username includes "@", it
4421         should be solved fundamentally)
4422
4423 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4424
4425         * elmo-nntp.el (elmo-nntp-debug): New function.
4426         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4427         (elmo-network-authenticate-session): Hide auth-info from the log.
4428
4429         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4430         user name if it is equal to elmo-nntp-default-user.
4431
4432 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4433
4434         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4435         instead of shimbun-server-internal;
4436         Use shimbun-current-group instead of shimbun-current-group-internal.
4437         (elmo-folder-plugged-p): Use shimbun-server instead of
4438         shimbun-server-internal.
4439         (elmo-folder-set-plugged): Ditto.
4440         (elmo-net-port-info): Ditto.
4441         (elmo-folder-check): Ditto.
4442         (elmo-folder-expand-msgdb-path): Ditto.
4443         (elmo-folder-list-subfolders): Ditto.
4444
4445 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4446
4447         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4448         Convert field-name to lower case.
4449         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4450
4451 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4452
4453         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4454         `message' and `error' take format string.
4455
4456 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4457
4458         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4459
4460 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4461
4462         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4463         recursive call (can't byte compile on emacs 20.7).
4464
4465 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4466
4467         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4468         (elmo-folder-list-message-entities): New API.
4469         (elmo-message-entity): Ditto.
4470         (elmo-message-entity-parent): Ditto.
4471         (elmo-folder-do-each-message-entity): Ditto.
4472         (elmo-message-entity-number): Ditto.
4473         (elmo-message-entity-field): Ditto.
4474         (elmo-message-entity-set-field): Ditto.
4475         (elmo-folder-count-flags): Ditto.
4476         (elmo-folder-length): Ditto.
4477
4478         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4479         not.
4480
4481         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4482         (elmo-msgdb-count-marks): Abolish.
4483         (elmo-msgdb-make-entity): Ditto.
4484         (elmo-msgdb-do-each-entity): Ditto.
4485         (elmo-msgdb-message-entity): New inline function.
4486         (elmo-msgdb-message-entity-field): Ditto.
4487         (elmo-msgdb-message-entity-set-field): Ditto.
4488         (elmo-msgdb-make-message-entity): New function.
4489
4490 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4491
4492         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4493         to flag. (All other related portions are changed.)
4494         (elmo-folder-msgdb-create): Likewise.
4495         (elmo-generic-folder-append-messages): Use flag-table instead of
4496         seen-list.
4497         (elmo-folder-move-messages): Removed redundant process.
4498         (elmo-folder-synchronize): Likewise.
4499
4500         * elmo-msgdb.el (elmo-flag-table-get): New function.
4501         (elmo-flag-table-save): Fixed.
4502         (elmo-msgdb-length): New inline function.
4503         (elmo-msgdb-flag-table): New function.
4504         (elmo-msgdb-mark): Add optional argument new.
4505         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4506         (elmo-msgdb-seen-list): Ditto.
4507         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4508
4509
4510 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4511
4512         * elmo.el (elmo-message-set-mark): Abolish.
4513         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4514         (All related portions are changed.)
4515
4516         * elmo-msgdb.el (toplevel): Added comment.
4517         (elmo-load-msgdb): Added 4th element `path'.
4518         (elmo-msgdb-append): Follow the change above.
4519         (elmo-msgdb-clear): Ditto.
4520         (elmo-msgdb-delete-msgs): Ditto.
4521         (elmo-msgdb-get-path): New inline function.
4522         (elmo-msgdb-set-path): Ditto.
4523         (elmo-flag-table-filename): New variable.
4524         (elmo-flag-table-load): New function.
4525         (elmo-flag-table-set): Ditto.
4526         (elmo-flag-table-save): Ditto.
4527         (elmo-msgdb-get-field-value): Abolish.
4528         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4529
4530 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4531
4532         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4533         the folder has been deleted successfully.
4534         * elmo-imap4.el (elmo-folder-delete): Ditto.
4535         * elmo-archive.el (elmo-folder-delete): Ditto.
4536         * elmo-localdir.el (elmo-folder-delete): Ditto.
4537         * elmo-maildir.el (elmo-folder-delete): Ditto.
4538
4539 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4540
4541         * elmo-util.el (elmo-string-member-ignore-case): New function.
4542         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4543         (elmo-imap4-fetch-callback-1-subr): Likewise.
4544
4545 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4546
4547         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4548         the case of the name attribute "\Noselect".
4549
4550 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4551
4552         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4553
4554         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4555         flist, is not always a member of onum-alist.
4556
4557 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4558
4559         * elmo-version.el (elmo-version): Up to 2.11.3.
4560
4561 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4562
4563         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4564         copied from localdir's one.
4565
4566         * elmo-pipe.el (elmo-folder-rename): New method, rename
4567         destination folder with leaving source folder as it is.
4568
4569 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4570
4571         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4572         replace-regexp.
4573
4574 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4575
4576         * elmo-version.el (elmo-version): Up to 2.11.2.
4577
4578 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4579
4580         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4581         shimbun-open in case of "@".
4582         (elmo-folder-open-internal): Cope with shimbun = nil case.
4583         (elmo-folder-plugged-p): Ditto.
4584         (elmo-folder-list-subfolders): Make list for "@/" group.
4585
4586 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4587
4588         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4589         mailbox (e.g. for %~/something).
4590
4591 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4592
4593         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4594         Replace nested conditional with guard clauses.
4595
4596 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4597
4598         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4599         error [wl:11327].
4600
4601         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4602         print-depth.
4603
4604 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4605
4606         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4607         Replace nested conditional with guard clauses.
4608
4609 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4610
4611         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4612         (elmo-passwd-alist-save): Ditto.
4613         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4614
4615 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4616
4617         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4618         dir-name only if it is absolute path.
4619         (TODO: distinguish +/something and +something)
4620
4621 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4622
4623         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4624         path for "+~/something".
4625
4626 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4627
4628         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4629         as non-directory, cause error before rename-file.
4630         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4631         apropriately, mimic localdir's one.
4632         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4633
4634 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4635
4636         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4637
4638 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4639
4640         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4641
4642         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4643         
4644         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4645         is included in the global-mark or not.
4646
4647 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4648
4649         * utf7.el (toplevel): Avoid error when the function
4650         find-coding-system does not exist.
4651
4652 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4653
4654         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4655         cache even if the folder is plugged.
4656         (elmo-nntp-search-primitive): Do nothing when body search is
4657         invoked (although it is not used by the change above).
4658         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4659
4660 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4661
4662         * elmo-version.el (elmo-version): Up to 2.11.1.
4663
4664 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4665
4666         * elmo-archive.el: Specify charset.
4667
4668 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4669
4670         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4671         process buffer lives or not.
4672
4673         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4674         while flushing queues (It causes infinite loop).
4675
4676 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4677
4678         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4679
4680 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4681
4682         * utf7.el (toplevel): Check the ucs features dynamically.
4683         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4684
4685         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4686         folder is creatabe or not if it already exists.
4687
4688 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4689
4690         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4691
4692         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4693
4694         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4695         (elmo-imap4-read-response): Take care of garbage response.
4696
4697 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4698
4699         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4700         just return nil instead of error.
4701
4702 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4703
4704         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4705         search-key is "body".
4706
4707 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4708
4709         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4710         of elmo-string-matched-assoc to use match-data.
4711         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4712
4713 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4714
4715         * elmo-split.el (elmo-split->): New function.
4716         (elmo-split-<): Ditto.
4717
4718 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4719
4720         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4721         workaround for invalid message-id.
4722
4723 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4724
4725         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4726         return normal pop3 session or pop3 biff session.
4727
4728 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4729
4730         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4731         info part to the cur files when the new files already have it.
4732         (Adviced by Jared Rhine <jared@wordzoo.com>)
4733
4734 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4735
4736         * elmo-split.el (elmo-split-default-action): New variable.
4737         (elmo-split-subr): Use it if all other conditions are passed.
4738         Extend `fname' and rename it as `action'. (implemented
4739         Teranishi-san's idea in [wl:10800])
4740
4741 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4742
4743         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4744         * elmo-util.el: Ditto.
4745
4746 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4747
4748         * elmo.el (elmo-message-accessible-p): Renamed from
4749         elmo-message-cached-p and rewritten.
4750
4751 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4752
4753         * elmo.el (elmo-folder-list-flagged): New generic function.
4754         (elmo-folder-list-importants): New implementation.
4755         (elmo-folder-list-answereds): Ditto.
4756         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4757         Added 'digest'.
4758         (elmo-message-cached-p): New function.
4759         (elmo-message-set-flag): Ditto (no content).
4760         (elmo-message-unset-flag): Ditto.
4761         (elmo-folder-list-messages-mark-match): Abolish.
4762
4763         * elmo-util.el (elmo-regexp-opt): New function.
4764
4765         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4766         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4767         Added 'digest'.
4768         (elmo-msgdb-list-flagged): New function.
4769
4770         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4771         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4772         Added 'digest'.
4773
4774         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4775
4776 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4777
4778         * elmo-version.el (elmo-version): Up to 2.11.0.
4779
4780 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4781
4782         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4783         `elmo-file-cache-exists-p'; use proper mark that depends on
4784         `use-cache'.
4785         (elmo-msgdb-unset-flag): Ditto.
4786         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4787
4788         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4789         with 4th argument `use-cache'.
4790
4791 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4792
4793         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4794         (elmo-folder-mark-as-important): Ditto.
4795         (elmo-folder-unmark-read): Ditto.
4796         (elmo-folder-mark-as-read): Ditto.
4797         (elmo-folder-unmark-answered): Ditto.
4798         (elmo-folder-mark-as-answered): Ditto.
4799
4800         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4801         message status.
4802         (elmo-msgdb-mark): Likewise.
4803         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4804         (elmo-msgdb-unset-flag): Likewise.
4805
4806         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4807
4808 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4809
4810         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4811         `last:' filter.
4812
4813 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4814
4815         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4816         set spool-length to 0.
4817
4818 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4819
4820         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4821         (elmo-dop-queue-flush): Fixed last change.
4822
4823 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4824
4825         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4826         if require-msgdb slot is nil.
4827         (elmo-folder-list-importants): Likewise.
4828
4829 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4830
4831         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4832         mark is changed.
4833
4834         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4835         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4836         is changed.
4837
4838 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4839
4840         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4841
4842 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4843
4844         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4845
4846         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4847
4848 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4849
4850         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4851         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4852
4853 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4854
4855         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4856         the problem reported by Sean Rima [wl-en:180].
4857
4858 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4859
4860         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4861
4862         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4863
4864         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4865
4866         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4867
4868         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4869
4870         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4871
4872         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4873
4874 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4875
4876         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4877         status number.
4878
4879 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4880
4881         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4882         (elmo-folder-mark-as-read): Follow the API change.
4883         (elmo-message-set-cached): New function.
4884
4885         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4886
4887         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4888
4889         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4890         (elmo-folder-mark-as-important): Ditto.
4891         (elmo-folder-unmark-read): Ditto.
4892         (elmo-folder-mark-as-read): Ditto.
4893         (elmo-folder-unmark-answered): Ditto.
4894         (elmo-folder-mark-as-answered): Ditto.
4895
4896         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4897         (elmo-folder-unmark-important): Ditto.
4898         (elmo-folder-mark-as-read): Ditto.
4899         (elmo-folder-unmark-read): Ditto.
4900         (elmo-folder-mark-as-answered): Ditto.
4901         (elmo-folder-unmark-answered): Ditto.
4902
4903         * elmo-mark.el (toplevel): Removed some mark method definitions.
4904
4905         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4906         (elmo-map-folder-mark-as-answered): Ditto.
4907         (elmo-folder-unmark-important): Add :before qualifier.
4908         (elmo-folder-mark-as-important): Ditto.
4909         (elmo-folder-unmark-read): Ditto.
4910         (elmo-folder-mark-as-read): Ditto.
4911         (elmo-folder-unmark-answered): Define.
4912         (elmo-folder-mark-as-answered): Ditto.
4913
4914         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4915         (elmo-map-folder-unmark-answered): Ditto.
4916
4917         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4918
4919         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4920         (elmo-folder-mark-as-important): Ditto.
4921         (elmo-folder-unmark-read): Ditto.
4922         (elmo-folder-mark-as-read): Ditto.
4923         (elmo-folder-unmark-answered): Ditto.
4924         (elmo-folder-mark-as-answered): Ditto.
4925
4926         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4927         `mark'; evaluate mark condition.
4928         (elmo-msgdb-match-condition-internal): New function.
4929         (elmo-msgdb-match-condition): Call it; changed argument.
4930
4931         * elmo.el (elmo-folder-search): Follow the API change on
4932         `elmo-msgdb-match-condition'.
4933
4934 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4935
4936         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4937         original mark is non-nil.
4938
4939 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4940
4941         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4942         (elmo-map-folder-list-answereds): New method.
4943         (elmo-folder-list-unreads): Add :around qualifier.
4944         (elmo-folder-list-importants): Ditto.
4945         (elmo-folder-list-answereds): Ditto.
4946
4947 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4948
4949         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4950
4951         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4952         method if msgdb is not required.
4953         (elmo-filter-folder-list-importants): Don't treat global-mark.
4954
4955         * elmo.el (elmo-folder-list-importants): Ditto.
4956
4957         * elmo-net.el (elmo-folder-list-importants): Ditto.
4958
4959         * elmo-map.el (elmo-folder-list-importants): Ditto.
4960
4961         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4962
4963         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4964         (elmo-imap4-folder-list-any-plugged): New function.
4965         (elmo-imap4-search-internal-primitive): Use it.
4966
4967         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4968         only when require-msgdb slot is non-nil.
4969         (elmo-folder-close): Clear target folder's msgdb.
4970
4971 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4972
4973         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4974         (elmo-pop3-msgdb-create-by-header): Ditto.
4975         (elmo-pop3-msgdb-create-message): Ditto.
4976
4977         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4978
4979         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4980
4981         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4982
4983         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4984         (elmo-folder-msgdb-create): Ditto.
4985         (elmo-nntp-folder-msgdb-create): Ditto.
4986         (elmo-nntp-msgdb-create-by-header): Ditto.
4987         (elmo-nntp-msgdb-create-message): Ditto.
4988         (elmo-folder-list-unreads): Define.
4989
4990         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4991         (elmo-folder-append-messages): Ditto.
4992         (elmo-folder-list-unreads): Define.
4993         (elmo-folder-list-importants): Ditto.
4994         (elmo-folder-list-answereds): Ditto.
4995
4996         * elmo-net.el (elmo-folder-list-unreads): Define.
4997         (elmo-folder-list-importants): Ditto.
4998         (elmo-folder-list-answereds): Ditto.
4999         (elmo-folder-list-answereds-plugged): Ditto.
5000         (elmo-folder-msgdb-create): Follow the API change.
5001         (elmo-folder-msgdb-create-unplugged): Ditto.
5002         (elmo-folder-unmark-answered): Define.
5003         (elmo-folder-mark-as-answered-unplugged): Ditto.
5004         (elmo-folder-unmark-answered-unplugged): Ditto.
5005
5006         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
5007         (elmo-msgdb-unread-uncached-mark): Ditto.
5008         (elmo-msgdb-unread-cached-mark): Ditto.
5009         (elmo-msgdb-read-uncached-mark): Ditto.
5010         (elmo-msgdb-answered-cached-mark): Ditto.
5011         (elmo-msgdb-answered-uncached-mark): Ditto.
5012         (elmo-msgdb-important-mark): Ditto.
5013         (elmo-msgdb-set-mark): Rewrite.
5014         (elmo-msgdb-count-marks): Rewrite.
5015         (elmo-msgdb-mark-alist-set): Abolish.
5016         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
5017         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
5018
5019         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
5020         (elmo-folder-close): Define.
5021         (elmo-folder-msgdb-create): Follow the API change.
5022         (elmo-folder-list-unreads): Rewrite.
5023         (elmo-folder-mark-as-important): Ditto.
5024         (elmo-folder-unmark-important): Ditto.
5025         (elmo-folder-mark-as-read): Ditto.
5026         (elmo-folder-unmark-read): Ditto.
5027         (elmo-folder-mark-as-answered): Define.
5028         (elmo-folder-unmark-answered): Ditto.
5029
5030         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
5031         (elmo-folder-append-messages): Ditto.
5032
5033         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
5034
5035         * elmo-map.el (elmo-folder-list-unreads): Ditto.
5036         (elmo-folder-list-importants): Ditto.
5037
5038         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
5039         (elmo-folder-append-messages): Ditto.
5040
5041         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
5042         change.
5043         (elmo-folder-msgdb-create-plugged): Ditto.
5044         (elmo-folder-append-messages): Ditto.
5045         (elmo-folder-list-answereds-plugged): Define.
5046         (elmo-imap4-search-internal-primitive): Add `mark' processing.
5047         (elmo-folder-unmark-answered-plugged): Define.
5048         (elmo-folder-mark-as-answered-plugged): Ditto.
5049         (elmo-folder-search-requires-msgdb-p): Ditto.
5050
5051         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
5052         (elmo-folder-initialize): Set it.
5053         (elmo-folder-msgdb): Define.
5054         (elmo-folder-check): Call elmo-folder-synchronize.
5055         (elmo-folder-close): Define.
5056         (elmo-folder-commit): Ditto.
5057         (elmo-folder-msgdb-create): Rewrite.
5058         (elmo-folder-list-unreads): Ditto.
5059         (elmo-folder-list-importants): Ditto.
5060         (elmo-folder-mark-as-read): Ditto.
5061         (elmo-folder-unmark-read): Ditto.
5062         (elmo-folder-mark-as-important): Ditto.
5063         (elmo-folder-unmark-important): Ditto.
5064         (elmo-folder-mark-as-answered): Define.
5065         (elmo-folder-unmark-answered): Ditto.
5066
5067         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
5068         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
5069         (elmo-dop-queue-method-name-alist): Likewise.
5070         (elmo-folder-mark-as-answered-dop): New inline function.
5071         (elmo-folder-unmark-answered-dop): Ditto.
5072         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
5073
5074         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
5075         (elmo-folder-msgdb-create): Ditto.
5076         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
5077         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
5078         (elmo-archive-parse-mmdf): Ditto.
5079
5080         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
5081         (elmo-folder-list-unreads-internal): Ditto.
5082
5083         * elmo.el (elmo-folder-msgdb): Define as generic function.
5084         (elmo-folder-list-messages): Added argument `in-msgdb'.
5085         (elmo-folder-list-unreads): Define as generic function.
5086         (elmo-folder-list-importants): Ditto.
5087         (elmo-folder-list-answereds): Ditto.
5088         (elmo-folder-list-messages-with-global-mark): New function.
5089         (elmo-folder-msgdb-create): Removed mark arguments.
5090         (elmo-folder-unmark-answered): New generic function.
5091         (elmo-folder-mark-as-answered): Ditto.
5092         (elmo-folder-append-messages): Removed argunment `unread-marks'
5093         (elmo-folder-list-unreads-internal): Abolish.
5094         (elmo-folder-list-importants-internal): Ditto.
5095         (elmo-folder-search-requires-msgdb-p): New generic function.
5096         (elmo-folder-search-requires-msgdb-p-internal): New function.
5097         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
5098         elmo-msgdb-load.
5099         (elmo-folder-search-fast): Added key 'mark'.
5100         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
5101         instead of unread-marks argument.
5102         (elmo-folder-move-messages): Removed argunment `unread-marks'
5103         (elmo-folder-unmark-important): Define.
5104         (elmo-folder-mark-as-important): Ditto.
5105         (elmo-folder-unmark-read): Ditto.
5106         (elmo-folder-mark-as-read): Ditto.
5107         (elmo-folder-unmark-answered): Ditto.
5108         (elmo-folder-mark-as-answered): Ditto.
5109         (elmo-folder-replace-marks): Abolish.
5110         (elmo-generic-folder-append-msgdb): Append msgdb before checking
5111         duplicates.
5112         (elmo-folder-synchronize): Removed mark arguments;
5113         return crosspost only number.
5114
5115 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5116
5117         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
5118         Remove redundunt connectivity check.
5119
5120 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5121
5122         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
5123         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
5124
5125 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
5126
5127         * pldap.el (ldap-decode-string): Return string as-is if
5128         `ldap-coding-system' is nil.
5129         (ldap-encode-string): Ditto.
5130         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
5131         (ldap-default-host): Fixed docstring.
5132
5133 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
5134
5135         * elmo-util.el (elmo-warning): Define as a macro which uses
5136         `display-warning' if it is defined as a function.
5137
5138         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
5139         (elmo-split-equal): Use it.
5140         (elmo-split-match): Ditto.
5141         (elmo-split-message-entity): New buffer-local variable.
5142         (elmo-split-subr): Set it.
5143
5144         * elmo-version.el (elmo-version): Up to 2.9.15.
5145
5146 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
5147
5148         * elmo-imap4.el (elmo-network-initialize-session):
5149         Check capability after starttls.
5150
5151 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
5152
5153         * elmo-util.el (elmo-list-delete): Added optional argument
5154         DELETE-FUNCTION.
5155
5156         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
5157
5158         * elmo-util.el (elmo-warning): Ignore errors while recenter.
5159
5160         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
5161
5162         * elmo-imap4.el (elmo-folder-initialize): Don't use
5163         elmo-imap4-default-mailbox.
5164
5165 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5166
5167         * elmo-split.el (toplevel): Use `product-provide'.
5168         (elmo-split): Checkdoc.
5169
5170 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
5171
5172         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
5173         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
5174         the function `elmo-imap4-debug-1'.
5175
5176 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5177
5178         * elmo-split.el (elmo-split): Moved to run hooks and to show
5179         message from elmo-split-subr.
5180         (elmo-split-subr): Follow the change above.
5181
5182         * elmo-split.el (elmo-split-subr): New function (renamed from
5183         elmo-split-subr).
5184         (elmo-split): Changed to call elmo-split-subr by element of
5185         elmo-split-folder.
5186         (elmo-split-folder): Changed customization type to choice.
5187
5188 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5189
5190         * elmo-split.el (elmo-split-and): Fixed condition.
5191
5192 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5193
5194         * elmo-split.el: New file.
5195         (elmo-split): Fixed logic.
5196         Display "Test:" instead of "Folder:" when reharsal.
5197
5198         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
5199         explicitly.
5200
5201         * elmo-version.el (elmo-version): Up to 2.9.14.
5202
5203         * elmo-util.el (elmo-expand-newtext): New function (renamed from
5204         wl-expand-newtext).
5205
5206 2002-06-10  Kenichi Sato <ksato@sonycom.com>
5207
5208         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
5209         message with no message-id field.
5210
5211 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
5212
5213         * elmo-version.el (elmo-version): Up to 2.9.13.
5214
5215         * elmo-dop.el (elmo-folder-status-dop): Fix.
5216
5217 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
5218
5219         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
5220
5221         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
5222         changing default value of default-mime-charset.
5223         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
5224
5225         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
5226
5227         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
5228         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
5229         instead of elmo-dop-queue-method-name-alist to check merging queue.
5230         (elmo-folder-delete-messages-dop): Delete from queue if negative
5231         message number.
5232         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
5233         file is already removed.
5234
5235 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
5236
5237         * elmo-vars.el: Bind colon keywords for old Emacsen.
5238
5239 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5240
5241         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
5242         against non-exsisting charset.
5243
5244 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
5245
5246         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
5247         Use eword-decode-and-unfold-unstructured-field-body.
5248
5249         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
5250         (elmo-msgdb-create-overview-from-buffer): Use document charset if
5251         exists to decode raw subject string.
5252         (toplevel): Require 'mime.
5253
5254         * elmo-version.el (elmo-version): Up to 2.9.12.
5255
5256 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
5257
5258         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
5259         (elmo-msgdb-set-mark): Ditto.
5260
5261         * elmo-version.el (elmo-version): Up to 2.9.11.
5262
5263 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
5264
5265         * elmo-util.el (elmo-delete-match-files): New function.
5266
5267         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
5268         instead of elmo-delete-directory.
5269
5270         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
5271         elmo-hash-minimun-size as 63.
5272
5273         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
5274         elmo-diff-unread is nil.
5275
5276         * elmo-imap4.el (elmo-folder-open): Fix.
5277
5278         * elmo.el (elmo-message-mark): Rewrite.
5279         (elmo-message-field): Ditto.
5280         (elmo-message-set-mark): Ditto.
5281         (elmo-folder-replace-marks): New function.
5282         (elmo-generic-folder-append-msgdb): Removed third argument for
5283         elmo-msgdb-append.
5284         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
5285         (elmo-msgdb-load): New implementation.
5286
5287         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
5288
5289         * elmo-util.el (elmo-list-insert): New implementation.
5290
5291         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
5292         argument for elmo-msgdb-append.
5293         
5294
5295         * elmo-msgdb.el (elmo-load-msgdb): New function.
5296         (elmo-make-msgdb): Ditto.
5297         (elmo-msgdb-get-index): New inline function.
5298         (elmo-msgdb-set-index): Ditto.
5299         (elmo-msgdb-get-entity-hashtb): Ditto.
5300         (elmo-msgdb-get-mark-hashtb): Ditto.
5301         (elmo-msgdb-get-mark): Ditto.
5302         (elmo-msgdb-set-mark): Ditto.
5303         (elmo-msgdb-count-marks): Ditto.
5304         (elmo-msgdb-get-number): Ditto.
5305         (elmo-msgdb-get-field): Ditto.
5306         (elmo-msgdb-seen-list): Ditto.
5307         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
5308         (elmo-msgdb-delete-msgs): Follow the changes above.
5309         (elmo-msgdb-overview-get-entity): Ditto.
5310         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
5311         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
5312         and rewritten.
5313         (elmo-msgdb-make-index): Likewise.
5314         (elmo-msgdb-append): Removed third argument.
5315         (elmo-msgdb-clear): Clear index as nil.
5316         (elmo-folder-set-info-hashtb): Removed.
5317         (elmo-folder-set-info-max-by-numdb): Ditto.
5318         (elmo-folder-info-make-hashtb): Ditto.
5319
5320         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
5321
5322         * elmo-map.el (elmo-folder-pack-number): Ditto.
5323
5324 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
5325
5326         * elmo-version.el (elmo-version): Up to 2.9.10.
5327
5328         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
5329
5330         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
5331
5332 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
5333
5334         * elmo-utils.el (elmo-make-directory): Add option.
5335         Default file mode is 700.
5336
5337 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5338
5339         * elmo-shimbun.el (elmo-folder-local-p): Defined.
5340
5341 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
5342
5343         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
5344         mime-charset.
5345
5346         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
5347         and "smaller".
5348
5349 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5350
5351         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5352         (elmo-shimbun-folder-entity-hash): New function.
5353         (elmo-shimbun-folder-shimbun-header): Ditto.
5354         (elmo-shimbun-entity-to-header): Ditto.
5355         (elmo-shimbun-msgdb-to-headers): Removed.
5356         (elmo-shimbun-folder-setup): Ditto.
5357         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5358         for hash key.
5359         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5360         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5361         Removed useless local bind.
5362         (elmo-folder-open-internal): Don't call
5363         `elmo-shimbun-folder-setup'.
5364         (elmo-folder-close-internal): Clear entity-hash slot.
5365         (elmo-folder-clear): Ditto.
5366         (elmo-shimbun-msgdb-create-entity): Use
5367         `elmo-shimbun-folder-shimbun-header'.
5368         (elmo-map-message-fetch): Ditto.
5369         (elmo-shimbun-update-overview): Use overview entity instead of
5370         shimbun header to lookup id by references.
5371         (elmo-map-folder-list-message-locations): Use not only headers but
5372         also overviews to list locations.
5373
5374 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5375
5376         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5377         msgdb path.
5378
5379         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5380
5381 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5382
5383         * elmo-util.el (elmo-read-search-condition-internal): Give default
5384         value for date.
5385
5386 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5387
5388         * elmo-util.el (elmo-condition-parse-search-value): Accept
5389         YYYY-MM-DD format to search.
5390         * elmo-date.el (elmo-date-get-datevec): Likewise.
5391
5392 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5393
5394         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5395         debugging code.
5396
5397 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5398
5399         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5400         from t.
5401
5402         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5403
5404         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5405         case from `elmo-folder-exists-p'.
5406         (elmo-folder-exists-p): Removed.
5407         (elmo-folder-creatable-p) Ditto.
5408
5409         * elmo-net.el (elmo-folder-create): Defined.
5410         (elmo-folder-create-unplugged): New function.
5411         (elmo-folder-exists-p): Changed default value to nil from t.
5412
5413         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5414         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5415
5416         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5417         `elmo-create-folder-dop' and append queue
5418         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5419         (elmo-folder-create-dop-delayed): New function.
5420
5421         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5422
5423         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5424
5425         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5426         (elmo-folder-writable-p) : Ditto.
5427
5428         * elmo-version.el (elmo-version): Up to 2.9.9.
5429
5430 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5431
5432         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5433         `elmo-message-use-cache-p' returns nil.
5434         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5435         (ignore cache file and refer the substance in local folders)
5436
5437 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5438
5439         * elmo-version.el (elmo-version): Up to 2.9.8.
5440
5441 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5442
5443         * elmo-version.el (elmo-version): Up to 2.9.7.
5444
5445         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5446
5447 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5448
5449         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5450
5451 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5452
5453         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5454         from --early.
5455         (elmo-map-folder-list-message-locations): Reverse location list.
5456
5457 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5458
5459         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5460
5461 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5462
5463         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5464         as a key.
5465         (elmo-nntp-folder-list-subfolders): Follow the change above.
5466
5467 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5468
5469         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5470         name if authentication type is specified.
5471
5472 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5473
5474         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5475         variable.
5476         (elmo-default-nntp-stream-type): Ditto.
5477         (elmo-default-pop3-stream-type): Ditto.
5478
5479 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5480
5481         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5482
5483 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5484
5485         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5486         elmo-vars.el.
5487         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5488
5489         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5490         (elmo-maildir-folder-path): Ditto.
5491         (elmo-maildir-list): Ditto (abolished).
5492
5493 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5494
5495         * elmo-version.el (elmo-version): Up to 2.9.6.
5496
5497 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5498
5499         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5500         (elmo-maildir-folder-path): Ditto.
5501         (elmo-msgdb-directory): Ditto.
5502         (elmo-passwd-life-time): Ditto.
5503         (elmo-msgdb-extra-fields): Ditto.
5504         (elmo-enable-disconnected-operation): Ditto.
5505
5506 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5507
5508         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5509         other choices.
5510         (elmo-pop3-default-authenticate-type): Ditto.
5511
5512 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5513
5514         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5515         choices for custom.
5516         (elmo-pop3-default-authenticate-type): Ditto.
5517
5518 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5519
5520         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5521         mailbox to new-folder.
5522
5523 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5524
5525         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5526         less than new, set new as unread.
5527
5528         * elmo-util.el (elmo-string): Don't put text-property if nil.
5529
5530 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5531
5532         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5533         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5534
5535 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5536
5537         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5538         is nil on `completing-read'.
5539
5540 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5541
5542         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5543         for namespace part.
5544         (elmo-imap4-parse-namespace-subr): Ditto.
5545         (elmo-folder-list-subfolders): Append a delimiter when the specified
5546         folder path is a root with namespace and does not end with delimiter.
5547
5548 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5549
5550         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5551         was used.
5552
5553 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5554
5555         * elmo-util.el (elmo-save-buffer): The first argument of message
5556         is a format control string.
5557
5558 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5559
5560         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5561         `elmo-folder-diff').
5562         (elmo-diff-unread): Likewise.
5563
5564 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5565
5566         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5567         is t on `completing-read'.
5568
5569 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5570
5571         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5572         method of target folder with self mark-alist if MARK-ALIST is nil.
5573
5574 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5575
5576         * elmo-version.el (elmo-version): Up to 2.9.5.
5577
5578 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5579
5580         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5581         (elmo-dop-merge-funcs): Remove.
5582
5583 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5584
5585         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5586         Return t if PATH is directory, too.
5587         Use `dolist' instead of while loop.
5588
5589 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5590
5591         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5592         is deleted.
5593
5594 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5595
5596         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5597         return value to t.
5598         (elmo-folder-list-messages-unplugged): Return t if
5599         elmo-enable-disconnected-operation is nil.
5600
5601         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5602         `elmo-folder-list-messages-internal'.
5603
5604 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5605
5606         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5607         Change to looking-at `[23][0-9]+'.
5608         (elmo-network-initialize-session): Use 'error-msg'
5609         * elmo-net.el (elmo-network-open-session): Set unplugged
5610         if elmo-network-initialize-session returns 'elmo-open-err.
5611
5612 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5613
5614         * elmo-version.el (elmo-version): Up to 2.9.4.
5615
5616 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5617
5618         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5619         `elmo-folder-list-messages-internal'.
5620
5621 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5622
5623         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5624         (elmo-message-match-condition): New method.
5625         (elmo-folder-search-fast): New inline function.
5626         (elmo-msgdb-search): Removed.
5627
5628         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5629         target folder if it is unplugged.
5630         (elmo-folder-list-messages-internal): Return t if target folder is
5631         unplugged and itself is persistent; In this case, use list be
5632         searched already.
5633
5634         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5635         (elmo-msgdb-search-internal-primitive): Ditto.
5636         (elmo-msgdb-match-condition): New function.
5637         (elmo-msgdb-match-condition-primitive): Ditto.
5638
5639         * elmo-util.el (elmo-filter-condition-p): New macro.
5640
5641         * elmo-cache.el (elmo-folder-search): Removed.
5642
5643         * elmo-localdir.el (elmo-folder-search): Ditto.
5644
5645         * elmo-maildir.el (elmo-folder-search): Ditto.
5646
5647         * elmo-mark.el (elmo-folder-search): Ditto.
5648
5649         * elmo-nmz.el (elmo-folder-search): Ditto.
5650
5651         * elmo-sendlog.el (elmo-folder-search): Ditto.
5652
5653         * elmo-shimbun.el (elmo-folder-search): Ditto.
5654
5655         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5656         if folder is unplugged.
5657
5658         * elmo-nntp.el (elmo-folder-search): Likewise.
5659         (elmo-nntp-search-internal): New function.
5660
5661         * elmo-version.el (elmo-version): Up to 2.9.3.
5662
5663 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5664
5665         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5666
5667 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5668
5669         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5670
5671 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5672
5673         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5674
5675 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5676
5677         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5678         (elmo-map-folder-list-message-locations): Do drive letter conversion
5679         on Windows environment.
5680         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5681         (elmo-map-message-fetch): Ditto.
5682
5683 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5684
5685         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5686         (elmo-network-initialize-session): Ditto.
5687
5688 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5689
5690         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5691
5692         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5693
5694         * elmo-util.el (elmo-progress-clear): Ditto.
5695
5696         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5697         `DD-Mon-YYYY' type date.
5698
5699 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5700
5701         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5702         `elmo-date-make-sortable-string' instead of
5703         `timezone-make-date-sortable'.
5704
5705         * elmo-date.el (elmo-date-make-sortable-string): Use
5706         `timezone-make-time-string'.
5707
5708 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5709
5710         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5711
5712         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5713         `since'; Fix timezone.
5714
5715         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5716
5717         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5718
5719 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5720
5721         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5722
5723 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5724
5725         * elmo.el (elmo-generic-folder-append-messages): Make
5726         fetch-strategy with `use-cache' as 'maybe. Check return value of
5727         `elmo-message-fetch'.
5728         (elmo-message-fetch): Return return value of
5729         `elmo-message-fetch-with-cache-process'.
5730         (elmo-message-fetch-with-cache-process): Return non-nil if
5731         fetching was succeed. Load cache when fetching was failed and
5732         fetch-strategy-use-cache is 'maybe.
5733
5734         * elmo-util.el (elmo-file-cache-load): New function.
5735
5736         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5737         defun.
5738
5739         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5740         non-nil if fetching was succeed.
5741
5742         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5743
5744         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5745
5746         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5747         (elmo-message-fetch-with-cache-process): Likwise.
5748
5749         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5750
5751         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5752
5753         * elmo-version.el (elmo-version): Up to 2.9.2.
5754
5755 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5756
5757         * elmo.el (elmo-folder-delete): Delete msgdb path.
5758
5759         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5760
5761         * elmo-maildir.el (elmo-folder-delete): Ditto.
5762
5763         * elmo-localdir.el (elmo-folder-delete): Ditto.
5764
5765         * elmo-imap4.el (elmo-folder-delete): Ditto.
5766
5767 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5768
5769         * elmo.el (luna-define-class): Added `biff' slot.
5770
5771         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5772         (elmo-pop3-debug-inhibit-logging): Abolished.
5773         (elmo-network-close-session): Eliminated needless let.
5774         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5775         (elmo-pop3-send-command): Added `no-log' argument.
5776         (elmo-pop3-process-filter): Use `with-current-buffer'.
5777         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5778         if login failure.
5779         (elmo-pop3-auth-apop): Likewise.
5780         (elmo-network-authenticate-session): Likewise.
5781
5782         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5783         if biff folder.
5784
5785         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5786         string to determine protocol.
5787         (elmo-network-session-name-prefix): Abolished.
5788         (elmo-network-session-cache-key): Follow the change above.
5789         (elmo-network-open-session): Ditto.
5790
5791         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5792         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5793
5794         * elmo-version.el (elmo-version): Up to 2.9.1.
5795
5796         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5797         unmatch condition checking.
5798
5799         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5800         condition.
5801
5802 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5803
5804         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5805
5806 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5807
5808         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5809         test for while loop to execute at least one SEARCH command.
5810
5811 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5812
5813         * elmo-version.el (elmo-version): Up to 2.9.0.
5814
5815 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5816
5817         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5818         (elmo-archive-folder-path): Define.
5819         (elmo-folder-initialize): Setup `dir-name' slot.
5820         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5821         Use `dir-name' as prefix of each subfolders.
5822         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5823
5824 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5825
5826         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5827         (elmo-pipe-folder-list-target-messages): New internal function.
5828         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5829         `killed-list'.
5830         (elmo-pipe-folder-copied-list-load): New function.
5831         (elmo-pipe-folder-copied-list-save): Ditto.
5832         (elmo-folder-open-internal): Follow the change above.
5833         (elmo-folder-status): Fixed for copy.
5834
5835 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5836
5837         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5838
5839 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5840
5841         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5842         elmo-copy-file instead of elmo-add-name-to-file.
5843
5844         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5845
5846         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5847         "file://..." index.
5848
5849         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5850         of accept-process-output as 1.
5851         (elmo-pop3-read-contents): Ditto.
5852         (elmo-pop3-read-body): Ditto.
5853
5854 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5855
5856         * elmo-version.el (product-version-as-string): Remove define.
5857
5858 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5859
5860         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5861         (elmo-imap4-copy-messages): Chop number set using
5862         `elmo-imap4-number-set-chop-length'.
5863         (elmo-imap4-set-flag): Ditto.
5864         (elmo-imap4-search-internal-primitive): Ditto.
5865
5866 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5867
5868         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5869         `elmo-folder-make-temp-dir'
5870
5871         * elmo-vars.el (elmo-cache-directory): New variable.
5872         (elmo-cache-dir): Abolished.
5873         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5874
5875         * elmo-version.el (elmo-version): Up to 2.7.7.
5876
5877 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5878
5879         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5880         defcustom; Set default value as t.
5881
5882 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5883
5884         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5885         (ldap-search-program-arguments): Changed default value.
5886         (ldap-search-basic): Accept exit status 4.
5887         (ldap/field-body): Parse options.
5888         (ldap/collect-field): Ditto.
5889         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5890
5891         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5892         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5893         (elmo-imap4-accept-ok): Ditto.
5894         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5895         'notify-bye, only BYE error is reported.
5896         (elmo-folder-exists-p-plugged): Set no-error argument of
5897         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5898
5899         * elmo.el (elmo-imap4-bye-error): Changed message.
5900
5901         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5902         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5903         queues (It causes infinite loop).
5904
5905 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5906
5907         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5908         (RECENT UNSEEN MESSAGES) extension.
5909
5910 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5911
5912         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5913         Check number of overview fields.
5914
5915 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5916
5917         * elmo.el (elmo-folder-confirm-appends): Changed message.
5918         (elmo-folder-confirm-appends): Ditto.
5919
5920         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5921         `with-temp-buffer'.
5922         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5923
5924 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5925
5926         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5927         of elmo-folder-update-threshold is nil, which can be set by
5928         wl-summary-update-confirm-threshold.
5929
5930 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5931
5932         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5933         (elmo-nmz-index-alias-alist): Ditto.
5934         (elmo-map-folder-list-message-locations): Follow the change above.
5935
5936 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5937
5938         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5939
5940         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5941
5942         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5943
5944         * elmo-util.el (elmo-read): Ditto.
5945         (elmo-display-error): Ditto.
5946
5947         * elmo-vars.el (elmo-date-match): Ditto.
5948
5949         * pldap.el (ldap-coding-system): Ditto.
5950
5951         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5952         `elmo-inhibit-number-mapping' as nil.
5953
5954 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5955
5956         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5957         space delimiter for list response.
5958
5959 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5960
5961         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5962
5963 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5964
5965         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5966         (elmo-map-message-fetch): Fix.
5967         * elmo-map.el (elmo-folder-status): Fix for killed.
5968
5969 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5970
5971         * elmo-sendlog.el: New file.
5972         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5973
5974 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5975
5976         * acap.el (acap-logging-out): New buffer local variable.
5977         (acap-close): Set it.
5978         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5979         an error.
5980
5981 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5982
5983         * acap.el (acap-response-bye-p): New function.
5984         (acap-response-bye-message): Ditto.
5985         (acap-wait-for-response): If bye response is received, cause an error.
5986         (acap-parse-response): Make bye response when 'Bye' is received.
5987
5988 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5989
5990         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5991
5992 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5993
5994         * elmo-util.el (elmo-copy-file): Added argument
5995         `ok-if-already-exists'.
5996         (elmo-copy-file): Fixed typo.
5997
5998 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5999
6000         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
6001
6002 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
6003
6004         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
6005
6006 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
6007
6008         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
6009         to killed-list.
6010
6011 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
6012
6013         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
6014         (elmo-folder-initialize): Fix for `copy'.
6015         (elmo-pipe-drain): Ditto.
6016         (elmo-folder-open-internal): Ditto.
6017         (elmo-folder-newsgroups): Fix.
6018
6019 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
6020
6021         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
6022         for each message.
6023
6024         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
6025         recent value is returned from imap folder.
6026
6027         * elmo.el (elmo-folder-newsgroups): New generic function.
6028
6029         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
6030         (elmo-folder-initialize): Set it.
6031         (elmo-folder-expand-msgdb-path): Use it.
6032         (elmo-folder-newsgroups): Define.
6033
6034         * elmo-filter.el (elmo-folder-newsgroups): Define.
6035
6036         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
6037
6038         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
6039
6040         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
6041
6042 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6043
6044         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
6045         user option.
6046         (elmo-shimbun-header-extra-field): New inline function.
6047         (elmo-shimbun-header-set-extra-field): Ditto.
6048         (elmo-shimbun-folder-header-hash-setup): Ditto.
6049         (elmo-shimbun-update-overview): Ditto.
6050         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
6051         (elmo-shimbun-folder-setup): Use
6052         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
6053         (elmo-shimbun-get-headers): Ditto.
6054         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
6055         Insert `X-Shimbun-Id:' header if extra field is set.
6056         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
6057         field's value instead of `shimbun-header-id'.
6058
6059         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
6060         inline function.
6061         (elmo-msgdb-overview-entity-set-date): Ditto.
6062         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
6063
6064 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
6065
6066         * mmimap.el (mmimap-entity-section): Changed body node number from
6067         "0" to "1".
6068
6069 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6070
6071         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
6072         `elmo-folder-delete-messages'.
6073
6074         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
6075         (elmo-folder-initialize): Changed to expand alias into index path.
6076
6077         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
6078         `elmo-mime-insert-header-from-buffer' with 6th arg
6079         `sorted-fields'.
6080
6081 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
6082
6083         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
6084
6085         * elmo.el (elmo-diff-new): New inline function.
6086         (elmo-diff-unread): Ditto.
6087         (elmo-diff-all): Ditto.
6088
6089         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
6090         value from responseb.
6091         (elmo-imap4-folder-diff-plugged): Ditto.
6092         (elmo-imap4-server-diff-async): Added recent argument.
6093         (elmo-server-diff-async): Ditto.
6094         (elmo-imap4-folder-diff-plugged): Ditto.
6095
6096         * elmo-version.el (elmo-version): Up to 2.7.6.
6097
6098 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6099
6100         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
6101         in quoted-stirng.
6102
6103 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
6104
6105         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
6106
6107         * elmo-imap4.el (elmo-folder-initialize): Ditto.
6108
6109         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6110
6111         * elmo-multi.el (elmo-folder-initialize): Ditto.
6112
6113         * elmo-util.el (elmo-parse-token): New function.
6114         (elmo-parse-prefixed-element): Ditto.
6115
6116 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6117
6118         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
6119         delete process.
6120         (elmo-imap4-accept-ok): Ditto.
6121
6122 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6123
6124         * mmimap.el (mime-imap-entity-header-string): Don't check first
6125         element of node-id is `0' (Follow last change).
6126
6127 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6128
6129         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
6130         assigned irregular node-id to nested multipart section.
6131         (initialize-instance): Followed above change.
6132
6133 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6134
6135         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
6136         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
6137         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
6138         `elmo-shimbun-get-headers');
6139         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
6140         visible article on summary exists in headers).
6141         (elmo-map-message-fetch): Cause an error when folder is unplugged.
6142
6143 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
6144
6145         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
6146         definition.
6147
6148 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
6149
6150         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
6151
6152 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6153
6154         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
6155         header separator into loop condition.
6156
6157 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6158
6159         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
6160         Return duplicate folder if it has subfolder.
6161
6162 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6163
6164         * elmo.el (elmo-make-folder): Add folder name error check.
6165
6166         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
6167         (elmo-nntp-encode-group-string): New inline function.
6168         (elmo-nntp-decode-group-string): Ditto.
6169         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
6170         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
6171         Use `not' instead of `null';
6172         Use elmo-nntp-decode-group-string.
6173
6174         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
6175
6176         * elmo-version.el (elmo-version): Up to 2.7.5.
6177
6178 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6179
6180         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
6181         Hide progress gauge if `elmo-folder-move-messages' exits
6182         nonlocally.
6183
6184 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6185
6186         * elmo-imap4.el (elmo-folder-initialize): Use
6187         `elmo-imap4-encode-folder-string' for folder name.
6188
6189 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6190
6191         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
6192         `done'.
6193
6194 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6195
6196         * elmo-util.el (elmo-progress-counter-alist): New internal
6197         variable.
6198         (elmo-progress-counter-value): New macro.
6199         (elmo-progress-counter-all-value): Ditto.
6200         (elmo-progress-counter-format): Ditto.
6201         (elmo-progress-counter-set-value): Ditto.
6202         (elmo-progress-set): New function.
6203         (elmo-progress-clear): Ditto.
6204         (elmo-progress-notify): Ditto.
6205
6206         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
6207         counter.
6208
6209         * elmo.el (elmo-generic-folder-append-messages): Call
6210         `elmo-progress-notify'.
6211         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
6212
6213         * elmo-archive.el (elmo-folder-append-messages): Call
6214         `elmo-progress-notify'.
6215
6216         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
6217
6218         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
6219
6220         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
6221
6222 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6223
6224         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
6225         'Create'.
6226         (elmo-message-encache-dop): Added argument `read'.
6227
6228         * elmo-shimbun.el (elmo-message-encache): Ditto.
6229
6230         * elmo-net.el (elmo-message-encache): Ditto.
6231
6232         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
6233         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
6234         elmo-imap4-seen-messages.
6235         (elmo-folder-msgdb-create-plugged): Initialize
6236         elmo-imap4-seen-messages;
6237         Set seen mark on elmo-imap4-seen-messages.
6238
6239         * elmo-pipe.el (elmo-folder-message-file-p): Define.
6240
6241         * elmo.el (elmo-generic-folder-append-messages): Check return value of
6242         elmo-folder-append-buffer.
6243         (elmo-folder-encache): Added optional argument `read'.
6244         (elmo-message-encache): Ditto.
6245
6246         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
6247
6248         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
6249
6250         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
6251         if append buffer content succeds.
6252
6253 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6254
6255         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
6256         elmo-display-progress.
6257
6258         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
6259         Set 4th argument of mime-display-message.
6260         (elmo-mime-display-as-is): Ditto.
6261
6262 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
6263
6264         * elmo-nmz.el (toplevel): Require 'mime-edit.
6265         (elmo-nmz-content-type-alist): Abolished.
6266         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
6267         content is not a message.
6268         (elmo-map-message-fetch): Changed behavior exept for message content;
6269         Detect mime-charset automatically, Use `mime-find-file-type' to detect
6270         content-type, Add From: and Subject: field.
6271
6272 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6273
6274         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
6275         (elmo-map-message-fetch): Add `Content-Type' field if contents is
6276         not a message.
6277
6278 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6279
6280         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
6281         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
6282
6283         * elmo-archive.el (elmo-folder-writable-p): Defined.
6284
6285         * elmo-cache.el (elmo-folder-writable-p): Ditto.
6286
6287         * elmo-filter.el (elmo-folder-writable-p): Ditto.
6288
6289         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
6290
6291         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
6292
6293         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
6294
6295         * elmo-mark.el (elmo-folder-writable-p): Ditto.
6296
6297         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
6298
6299         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
6300
6301 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
6302
6303         * elmo-util.el (elmo-address-quote-specials): New function;
6304         Renamed from `wl-address-quote-specials'.
6305
6306 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6307
6308         * elmo-version.el (elmo-version): Up to 2.7.4.
6309
6310 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
6311
6312         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
6313
6314 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6315
6316         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
6317         both compile-time and run-time to avoid byte-compile warning.
6318
6319 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
6320
6321         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
6322
6323 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6324
6325         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
6326         option.
6327         (elmo-mime-display-as-is-internal): Use it.
6328
6329         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
6330         if `read-passwd' is not defined.
6331
6332 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6333
6334         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
6335         by original number.
6336         (elmo-folder-status): Call `elmo-folder-open-internal';
6337         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
6338         (elmo-folder-close-internal): Set location-alist as nil.
6339         (elmo-folder-clear): Define.
6340         (elmo-folder-check): Don't set location-alist as nil.
6341
6342         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
6343
6344 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
6345
6346         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
6347         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
6348
6349         * mmimap.el (mime-imap-entity::requested): New slot.
6350         (mime-imap-location-fetch-entity-p): New generic function.
6351         (mime-decode-parameters): Define using `defun-maybe'.
6352         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6353         content-type structure.
6354         (mime-entity-body): Return empty body if
6355         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6356
6357         * elmo.el (elmo-message-displaying): New variable.
6358
6359         * elmo-mime.el (elmo-mime-message-display): Bind
6360         elmo-message-displaying as t.
6361
6362         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6363
6364 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6365
6366         * acap.el (acap-open): erase buffer before starting network process.
6367         (acap-store): Rewrite.
6368
6369 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6370
6371         * elmo-imap4.el (elmo-imap4-default-mailbox,
6372         elmo-imap4-default-server
6373         elmo-imap4-default-authenticate-type,
6374         elmo-imap4-default-user,
6375         elmo-imap4-default-port,
6376         elmo-imap4-default-stream-type,
6377         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6378
6379         * elmo-pop3.el (elmo-pop3-default-user,
6380         elmo-pop3-default-server,
6381         elmo-pop3-default-authenticate-type,
6382         elmo-pop3-default-port,
6383         elmo-pop3-default-stream-type,
6384         elmo-pop3-stream-type-alist): Ditto.
6385
6386         * elmo-nntp.el (elmo-nntp-default-server,
6387         elmo-nntp-default-user,
6388         elmo-nntp-default-port,
6389         elmo-nntp-default-stream-type,
6390         elmo-nntp-stream-type-alist): Ditto.
6391
6392         * elmo-vars.el: Follow changes above.
6393         (elmo-setting): New custom group; added 'elmo-setting group to
6394         above variables.
6395
6396         * elmo-version.el (elmo-version): Up to 2.7.3.
6397
6398         * acap.el (acap-parse-response): Don't delete process when BYE
6399         response (It causes hang-up on slow network environment).
6400         (toplevel): Added comment.
6401
6402 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6403
6404         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6405
6406         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6407         parsing NIL.
6408         (acap-parse-return-metadata): Ditto.
6409
6410         * slp.el: New file.
6411         (toplevel): Fixed typo.
6412
6413         * acap.el: New file.
6414         (acap-network-stream-open): Show "Connecting..." message.
6415         (acap-parse-response): Fixed problem for BYE untagged response.
6416         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6417         (toplevel): Added tiny comments.
6418
6419 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6420
6421         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6422         space delimiter for uidl response.
6423
6424 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6425
6426         * elmo-vars.el (elmo-use-semi): Eliminated.
6427
6428         * elmo-util.el (elmo-string-assoc-all): New function.
6429
6430 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6431
6432         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6433         property 'mime-preview-situation for `mime-preview-quit'.
6434
6435 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6436
6437         * elmo.el (elmo-message-fetch-with-cache-process): Call
6438         elmo-message-fetch-internal instead of causing an error when fetch
6439         strategy is 'entire but only 'section cache is available.
6440
6441 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6442
6443         * elmo-version.el (elmo-version): Up to 2.7.2.
6444
6445         * elmo.el (elmo-generic-folder-append-messages): Make
6446         fetch-strategy with `use-cache'.
6447
6448         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6449         (elmo-dop-queue-method-name): New macro.
6450
6451 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6452
6453         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6454         unbalanced parenthesis.
6455
6456 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6457
6458         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6459
6460 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6461
6462         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6463         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6464
6465 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6466
6467         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6468         local variables.
6469
6470 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6471
6472         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6473         (elmo-message-use-cache-p): Define.
6474         (elmo-folder-msgdb-create): Treat cache.
6475
6476 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6477
6478         * elmo-nntp.el (elmo-network-initialize-session): Call
6479         `elmo-nntp-send-mode-reader'.
6480         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6481
6482 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6483
6484         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6485         alist.
6486         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6487         assoc.
6488
6489         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6490         for `elmo-plugged-p'.
6491         (elmo-open-network-stream): Fixed stream-type argument.
6492
6493 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6494
6495         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6496         unknown archive type is specified.
6497
6498 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6499
6500         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6501
6502         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6503         while loading msgdb.
6504
6505         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6506         (elmo-folder-open-internal): Rewrite.
6507
6508 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6509
6510         * elmo-mime.el (elmo-mime-display-as-is-internal):
6511         Adjust buffer-multibyte status.
6512
6513 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6514
6515         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6516         of elmo-condition-find-key.
6517
6518         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6519         (elmo-condition-in-msgdb-p): Ditto.
6520         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6521         argument.
6522
6523 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6524
6525         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6526
6527 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6528
6529         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6530         label for elmo-display-progress.
6531
6532 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6533
6534         * elmo.el (elmo-folder-clear): New method.
6535         (elmo-folder-clear): Define.
6536         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6537
6538         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6539         (elmo-folder-clear): Define.
6540
6541         * elmo-map.el (elmo-folder-clear): Define.
6542
6543         * elmo-version.el (elmo-version): Up to 2.7.1.
6544
6545 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6546
6547         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6548         updates.
6549
6550 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6551
6552         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6553         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6554
6555 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6556
6557         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6558
6559         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6560         and re-written.
6561
6562         * elmo-imap4.el (elmo-folder-initialize): Use
6563         elmo-get-network-stream-type.
6564
6565         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6566
6567         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6568
6569 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6570
6571         * elmo.el (elmo-message-encache): Set unread argument for
6572         elmo-message-fetch.
6573
6574         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6575
6576         * elmo.el (elmo-net-port-info): New method.
6577
6578         * elmo-shimbun.el (elmo-net-port-info): Define.
6579         (elmo-message-encache): Ditto.
6580
6581         * elmo-net.el (elmo-net-port-info): Define as method.
6582
6583         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6584         unplugged status when elmo-enable-disconnected-operation is t.
6585
6586         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6587         of spool folder before checking new number.
6588
6589 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6590
6591         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6592         (elmo-network-setup-session): Ditto.
6593         (elmo-message-fetch-plugged): Ditto.
6594         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6595         (elmo-network-initialize-session): Ditto.
6596         (elmo-pop3-read-response): Abolish 3rd argument.
6597         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6598         (elmo-pop3-read-contents): Ditto.
6599         (elmo-pop3-read-body): Ditto.
6600         (elmo-folder-status): Call elmo-folder-close.
6601         (elmo-pop3-lock): Abolish.
6602         (elmo-pop3-unlock): Ditto.
6603         (elmo-pop3-locked-p): Ditto.
6604         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6605
6606 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6607
6608         * elmo-version.el (elmo-version): Up to 2.7.0.
6609
6610         * elmo-pop3.el (elmo-pop3-debug): New variable.
6611         (elmo-pop3-debug-inhibit-logging): Ditto.
6612         (elmo-pop3-debug): New function.
6613         (elmo-pop3-send-command): Call elmo-pop3-debug.
6614         (elmo-pop3-read-response): Added keep-lock optional argument;
6615         Don't unlock if keep-lock is non-nil.
6616         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6617         (elmo-network-authenticate-session): Bind
6618         elmo-pop3-debug-inhibit-logging as t.
6619         (elmo-network-setup-session): Call elmo-pop3-read-response with
6620         keep-lock argument.
6621         (elmo-pop3-read-msg): Ditto.
6622         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6623         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6624         (elmo-network-initialize-session): Call elmo-pop3-lock.
6625         (elmo-folder-close-internal): Don't clear location-alist slot.
6626         (elmo-folder-check): Clear location-alist slot.
6627
6628 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6629
6630         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6631         (elmo-pop3-send-command): Call elmo-pop3-lock.
6632         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6633         (elmo-pop3-read-contents): Ditto.
6634         (elmo-pop3-lock): New function.
6635         (elmo-pop3-unlock): Ditto.
6636         (elmo-pop3-locked-p): Ditto.
6637         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6638         returns t.
6639
6640 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6641
6642         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6643
6644         * elmo-util.el (elmo-file-field-primitive-condition-match):
6645         New inline function (Don't fetch file content if "first" or "last").
6646         (elmo-file-field-condition-match): Use
6647         elmo-file-field-primitive-condition-match.
6648
6649         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6650         "first".
6651
6652         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6653         (elmo-message-fetch-plugged): Fixed.
6654
6655         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6656
6657 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6658
6659         * elmo.el (elmo-folder-move-messages): Bind
6660         elmo-inhibit-display-retrieval-progress as t while moving messages.
6661
6662         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6663         New variable.
6664         (elmo-inhibit-display-retrieval-progress): Ditto.
6665
6666         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6667         for retrieval progress;
6668         Don't display progress when total buffer size is smaller than
6669         elmo-display-retrieval-progress-threshold.
6670         (elmo-message-fetch-plugged): Don't display progress when
6671         elmo-inhibit-display-retrieval-progress is non-nil.
6672
6673         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6674         for retrieval progress;
6675         Don't display progress when literal size is smaller than
6676         elmo-display-retrieval-progress-threshold.
6677         (elmo-imap4-message-fetch): Don't display progress when
6678         elmo-inhibit-display-retrieval-progress is non-nil.
6679
6680 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6681
6682         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6683         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6684         (elmo-imap4-message-fetch): Likewise.
6685
6686         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6687         (elmo-shimbun-index-range-alist): Ditto.
6688         (elmo-shimbun-use-entire-index): Abolish.
6689         (shimbun-mua-use-entire-index): Ditto.
6690         (elmo-shimbun-folder): Added new slot `range'.
6691         (elmo-folder-initialize): Setup slot `range'.
6692
6693 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6694
6695         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6696         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6697         (elmo-shimbun-get-headers): Use return value of
6698         `shimbun-article-expiration-days'.
6699         (elmo-folder-close-internal): Clean up last-check slot.
6700
6701         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6702         (elmo-pop3-total-size): New variable.
6703         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6704
6705         * elmo.el (elmo-folder-reserve-status-p): New method.
6706
6707         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6708         (elmo-shimbun-use-entire-index): New user option.
6709         (shimbun-elmo-mua): New class.
6710         (shimbun-mua-search-id): Define.
6711         (shimbun-mua-use-entire-index): Ditto.
6712         (elmo-shimbun-folder:last-check): New slot.
6713         (elmo-shimbun-headers-cache-header-list): Abolish.
6714         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6715         (elmo-shimbun-headers-cache-header-hash): Ditto.
6716         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6717         (elmo-shimbun-headers-cache-last-check): Ditto.
6718         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6719         (elmo-shimbun-headers-check-p): Rewrite.
6720         (elmo-shimbun-msgdb-to-headers): New function.
6721         (elmo-shimbun-get-headers): Rewrite.
6722         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6723         (elmo-folder-open-internal): Get headers only if
6724         `elmo-shimbun-headers-check-p' is non-nil.
6725         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6726         is non-nil.
6727         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6728         (elmo-quit): Removed.
6729
6730         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6731         function.
6732         (elmo-msgdb-overview-entity-set-extra): Ditto.
6733         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6734
6735         * elmo-map.el (elmo-folder-status): Don't call
6736         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6737         is non-nil.
6738
6739 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6740
6741         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6742         of `elmo-msgdb-search-internal-primitive' when condition's car is
6743         `and' or `or'.
6744
6745 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6746
6747         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6748
6749 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6750
6751         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6752         call `elmo-pipe-drain'.
6753
6754 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6755
6756         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6757         typo. (elmo-cache-folder -> elmo-mark-folder)
6758
6759 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6760
6761         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6762         `elmo-message-fetch'.
6763
6764 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6765
6766         * elmo-net.el (elmo-message-encache): Fixed typo.
6767         (elmo-message-fetch-unplugged): Changed call
6768         `elmo-message-fetch-internal' without argument `outbuf'.
6769
6770 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6771
6772         * elmo.el (elmo-message-encache): Define as generic function.
6773         (elmo-message-fetch-field): New generic function.
6774         (elmo-message-fetch-with-cache-process): Cause an error when
6775         fetch strategy is 'entire but only 'section cache is available.
6776         (toplevel): Fixed nmz folder definition.
6777
6778         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6779         (elmo-msgdb-resume-list-filename): Ditto.
6780         (elmo-queue-filename): Ditto.
6781         (elmo-enable-disconnected-operation): Changed default value to t.
6782
6783         * elmo-util.el (elmo-cache-path-section-p): New function.
6784         (elmo-file-cache-get): Use it.
6785         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6786         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6787         (elmo-dop-queue-save): Ditto.
6788
6789         * elmo-net.el (elmo-folder-status-unplugged): Call
6790         elmo-folder-status-dop.
6791         (elmo-folder-list-messages-unplugged): Implemented.
6792         (elmo-folder-delete-messages-unplugged): Define.
6793         (elmo-folder-msgdb-create): Define.
6794         (elmo-folder-msgdb-create-unplugged): Define.
6795         (elmo-folder-mark-as-read-unplugged): Ditto.
6796         (elmo-folder-unmark-read-unplugged): Ditto.
6797         (elmo-folder-mark-as-important-unplugged): Ditto.
6798         (elmo-folder-unmark-important-unplugged): Ditto.
6799         (elmo-message-encache): Ditto.
6800
6801         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6802         (elmo-dop-queue-save): Ditto.
6803
6804         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6805         `elmo-folder-msgdb-create'.
6806         (elmo-folder-append-buffer): Implemented unplugged operation.
6807         (elmo-folder-append-messages): Call parent method in unplugged status.
6808         (elmo-message-fetch-unplugged): Removed definition.
6809         (elmo-message-fetch-field): Implemented.
6810
6811         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6812         (elmo-dop-folder): Removed variable definition.
6813         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6814         (elmo-dop-queue-flush): Implemented.
6815         (elmo-dop-queue-merge): Removed definition (TODO).
6816         (elmo-dop-spool-folder): New function.
6817         (elmo-dop-spool-folder-append-buffer): Ditto.
6818         (elmo-dop-spool-folder-list-messages): Ditto.
6819         (elmo-dop-list-deleting-messages): Ditto.
6820         (elmo-folder-append-buffer-dop): Ditto.
6821         (elmo-folder-delete-messages-dop): Ditto.
6822         (elmo-message-encache-dop): New inline function.
6823         (elmo-create-folder-dop): Ditto.
6824         (elmo-folder-mark-as-read-dop): Ditto.
6825         (elmo-folder-unmark-read-dop): Ditto.
6826         (elmo-folder-mark-as-important-dop): Ditto.
6827         (elmo-folder-unmark-important-dop): Ditto.
6828         (elmo-folder-status-dop): Fixed.
6829         (elmo-folder-append-buffer-dop-delayed): New function.
6830         (elmo-folder-delete-messages-dop-delayed): Ditto.
6831         (elmo-dop-msgdb): Ditto.
6832
6833 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6834
6835         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6836
6837 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6838
6839         * elmo.el (elmo-folder-move-messages): Fixed problem when
6840         `dst-folder' is 'null.
6841
6842 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6843
6844         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6845         instead of current mark.
6846
6847         * elmo-multi.el (elmo-folder-list-importants-internal): No
6848         operation if importants is not list.
6849
6850         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6851         Return t if importants is not list.
6852
6853         * elmo-map.el (elmo-map-folder-list-importants): Define.
6854         (elmo-folder-list-importants-internal): Check return value of
6855         `elmo-map-folder-list-importants-internal'.
6856
6857         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6858
6859         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6860
6861         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6862
6863         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6864
6865 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6866
6867         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6868         (Patch is provided by <kita@coe.nttdata.co.jp>).
6869
6870 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6871
6872         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6873         mark folder.
6874
6875 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6876
6877         * elmo.el (elmo-message-fetch): Define.
6878         (elmo-message-fetch-with-cache-process): New generic method.
6879         (elmo-message-fetch-internal): New generic method.
6880         (elmo-folder-synchronize):
6881
6882         * elmo-archive.el (elmo-message-fetch-internal): Define.
6883         (elmo-message-fetch): Eliminated.
6884
6885         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6886         (elmo-message-fetch): Eliminated.
6887
6888         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6889         argument OUTBUF.
6890         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6891
6892         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6893         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6894
6895         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6896         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6897
6898         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6899
6900         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6901
6902         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6903
6904         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6905         (elmo-message-fetch-unplugged): New generic method.
6906         (elmo-message-fetch-internal): Remove cache process (Renamed from
6907         `elmo-message-fetch').
6908
6909         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6910         (elmo-message-fetch): Eliminated.
6911         (elmo-message-fetch-unplugged): Ditto.
6912
6913         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6914
6915 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6916
6917         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6918         of `to-be-deleted' from number-alist to number-list.
6919
6920 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6921
6922         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6923         (elmo-folder-mark-as-important): Ditto.
6924
6925 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6926
6927         * elmo.el (elmo-folder): Added process-duplicates slot.
6928
6929         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6930         (elmo-folder-unmark-read): Ditto.
6931         (elmo-folder-unmark-important): Ditto.
6932         (elmo-folder-mark-as-important): Ditto.
6933
6934         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6935         duplicated message processing.
6936
6937         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6938
6939 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6940
6941         * elmo-util.el (elmo-list-subdirectories-1): New function.
6942         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6943         (elmo-mapcar-list-of-list): New function.
6944
6945         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6946         `elmo-mapcar-list-of-list' instead of `mapcar'.
6947
6948         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6949
6950         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6951         `elmo-have-link-count'. Return the fully qualified folder name.
6952
6953 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6954
6955         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6956         (elmo-shimbun-headers-cache): New internal variable.
6957         (elmo-shimbun-headers-cache-header-list): New inline function.
6958         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6959         (elmo-shimbun-headers-cache-header-hash): Ditto.
6960         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6961         (elmo-shimbun-headers-cache-last-check): Ditto.
6962         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6963         (elmo-shimbun-lapse-seconds): Ditto.
6964         (elmo-shimbun-headers-cache-check-p): Ditto.
6965         (elmo-shimbun-get-headers): New function.
6966         (elmo-folder-open-internal): Call it.
6967         (elmo-quit): Define (Clear headers-cache).
6968
6969 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6970
6971         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6972
6973         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6974         (elmo-msgdb-flist-save): Ditto.
6975
6976         * elmo-shimbun.el (elmo-folder-list-subfolders):
6977         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6978         (elmo-folder-exists-p): Ditto.
6979
6980         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6981         argument for `shimbun-header-insert'.
6982
6983 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6984
6985         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6986         at first time.
6987
6988         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6989         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6990
6991 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6992
6993         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6994         (elmo-folder-plugged-p): Define.
6995         (elmo-folder-set-plugged): Ditto.
6996         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6997         (elmo-folder-list-messages-internal): Return t if unplugged.
6998         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6999
7000         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
7001         when elmo-folder-list-messages-internal method of children returns t.
7002
7003         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
7004         pair is nil.
7005         (elmo-folder-open-internal): Don't update if unplugged status.
7006
7007 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
7008
7009         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
7010         new message.
7011
7012 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
7013
7014         * elmo-util.el (elmo-file-cache-save): Ignore errors.
7015
7016         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
7017         saving.
7018
7019 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
7020
7021         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
7022
7023         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
7024         (elmo-folder-open-internal): Set up headers slot.
7025         (elmo-folder-check): Call elmo-folder-close-internal and
7026         elmo-folder-open-internal.
7027         (elmo-folder-close-internal): Clean up headers slot.
7028
7029 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7030
7031         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
7032         exactly folder list.
7033         (elmo-folder-append-messages): Fixed append archive with prefix.
7034
7035         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
7036         make temp files with start-number.
7037
7038         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
7039
7040 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7041
7042         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
7043         argument `visible-only'.
7044         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
7045         instead of `if'.
7046
7047         * elmo-pop3.el (elmo-folder-open-internal): Check
7048         `elmo-inhibit-number-mapping' is non-nil.
7049
7050         * elmo-pipe.el (elmo-folder-status): Fixed.
7051
7052 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
7053
7054         * elmo.el (elmo-dop-queue-flush): Added autload setting.
7055
7056         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
7057         (elmo-folder-open-internal): Setup `header-hash' slot.
7058         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
7059         information.
7060         (elmo-map-message-fetch): Ditto.
7061
7062 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
7063
7064         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7065         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7066         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7067         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
7068
7069         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
7070
7071 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
7072
7073         * sb-airs.el: Added footer.
7074
7075         * shimbun.el (shimbun-article): Define as luna-method.
7076
7077         * sb-tcup.el: New file.
7078
7079         * sb-airs.el (toplevel): Require 'sb-mhonarc.
7080         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
7081
7082 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
7083
7084         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
7085         (shimbun-get-headers): Ditto.
7086
7087         * elmo.el: Moved obsolete variable definitions from
7088         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
7089
7090         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
7091         groups.
7092
7093         * shimbun.el: New file.
7094
7095         * elmo-shimbun.el: New file.
7096
7097         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7098         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7099         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7100         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
7101
7102 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
7103
7104         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
7105         hierarchy is t.
7106
7107 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
7108
7109         * elmo.el (elmo-folder-msgdb): Define as macro.
7110         (elmo-folder-open): Added argument `load-msgdb'.
7111         (elmo-generic-folder-open): Ditto.
7112         (elmo-folder-encache): New function.
7113
7114         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
7115
7116         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
7117
7118         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
7119         Eliminated argument FOLDER and added argument MSGDB.
7120         (elmo-dop-queue-load): Moved from elmo-dop.el.
7121         (elmo-dop-queue-save): Ditto.
7122
7123         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
7124
7125         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
7126
7127         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
7128         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
7129         (elmo-filter-folder-list-importants-internal): Ditto.
7130
7131         * elmo-map.el (elmo-folder-pack-number): Ditto.
7132
7133         * elmo-mime.el (elmo-mime-message-display): Ditto.
7134
7135         * elmo.el (elmo-generic-folder-commit): Ditto.
7136         (elmo-folder-list-unreads): Ditto.
7137         (elmo-folder-list-importants): Ditto.
7138         (elmo-generic-folder-commit): Ditto.
7139         (elmo-message-set-mark): Ditto.
7140         (elmo-generic-folder-append-msgdb): Ditto.
7141         (elmo-folder-synchronize): Ditto.
7142         (elmo-folder-messages): Ditto.
7143         (elmo-init): Call elmo-dop-queue-load.
7144         (elmo-folder-list-messages): Ditto.
7145
7146         * elmo-nntp.el (elmo-folder-update-number): Ditto.
7147         (elmo-nntp-folder-process-crosspost): Ditto.
7148         (elmo-folder-list-unreads-internal): Ditto.
7149
7150         * elmo-dop.el: Removed old functions.
7151
7152 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
7153
7154         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
7155         `folder' to `msgdb'.
7156
7157 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
7158
7159         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
7160         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
7161
7162         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
7163         case-fold-search.
7164
7165 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
7166
7167         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
7168         defined.
7169
7170         * mmimap.el (toplevel): Require 'mime-parse and 'static.
7171         (mmimap-parse-parameters-from-list): Define as alias for
7172         `mime-decode-parameter-plist' if it is defined as function.
7173         (mmimap-make-mime-entity): Added argument `number'.
7174         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
7175         as 0.
7176         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
7177
7178         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
7179
7180         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
7181
7182         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
7183
7184 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
7185
7186         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
7187
7188         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
7189         when elmo-imap4-default-authenticate-type is nil.
7190         (elmo-folder-list-subfolders): Ditto
7191         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
7192         (elmo-imap4-fetch-callback-1-subr): Renamed from
7193         `elmo-imap4-fetch-callback-1' and define as inline function.
7194         (elmo-imap4-fetch-callback-1):
7195         Renamed from `elmo-imap4-fetch-callback'.
7196         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
7197
7198         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
7199         msgdb path (To keep compatibility with main trunk).
7200
7201         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
7202
7203         * elmo-util.el (elmo-make-file-cache): Moved position of
7204         some macros.
7205
7206         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
7207         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
7208         instead of `elmo-pop3-inhibit-uidl'.
7209         (elmo-folder-exists-p): Ditto.
7210         (elmo-pop3-folder-list-messages): Ditto.
7211
7212         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
7213         instead of `elmo-pop3-inhibit-uidl'.
7214         (elmo-folder-status): Ditto.
7215
7216         * elmo-dop.el (elmo-dop-folder): New variable.
7217         (elmo-dop-lock-message): Eliminated.
7218         (elmo-dop-unlock-message): Ditto.
7219         (elmo-dop-lock-list-load): Ditto.
7220         (elmo-dop-lock-list-save): Ditto.
7221         (elmo-dop-delete-folder): Ditto.
7222         (elmo-dop-rename-folder): Ditto.
7223
7224         * elmo.el: Removed incomplete commentary.
7225
7226 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7227
7228         * elmo.el (toplevel): Require 'elmo-version first;
7229         for little `recursive-load-depth' settings.
7230         Fix "ends here" comment.
7231
7232 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
7233
7234         * elmo-util.el (toplevel): Require 'poem;
7235         Some functions are moved from elmo-cache.el.
7236
7237         * elmo-net.el (toplevel): Require 'elmo-cache.
7238
7239         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
7240
7241         * elmo.el (toplevel): Ditto.
7242
7243         * elmo-cache.el: Rewrite with luna;
7244         Some functions are moved to elmo-util.el.
7245
7246         * elmo-internal.el (elmo-internal-folder-list): New variable.
7247         (elmo-internal-folder-initialize): Rewrite.
7248         (elmo-folder-list-subfolders): Ditto.
7249
7250         * elmo-cache.el (elmo-cache-search-all): Eliminated.
7251         (elmo-cache-collect-sub-directories): Ditto.
7252
7253 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
7254
7255         * elmo-version.el (elmo-version): Up to 2.5.8.
7256
7257         * elmo.el (elmo-folder-list-messages-mark-match): New function.
7258
7259         * elmo-util.el (elmo-list-insert): New function.
7260
7261 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
7262
7263         * elmo.el (elmo-init): New function.
7264         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
7265
7266         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
7267         (Renamed from `elmo-localdir-header-chop-length').
7268
7269         * elmo-pop3.el (elmo-pop3-use-cache,
7270         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
7271
7272         * elmo-nntp.el (elmo-message-fetch): Define.
7273         (elmo-message-fetch-unplugged): Ditto.
7274         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
7275         (elmo-nntp-use-cache): Ditto.
7276         (elmo-nntp-max-number-precedes-list-active): Ditto.
7277
7278         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
7279
7280         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
7281         `elmo-msgdb-insert-file-header'.
7282         Use `elmo-msgdb-file-header-chop-length'.
7283
7284         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
7285         `elmo-vars.el'.
7286
7287         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
7288         (elmo-cache-msgdb-create-overview-entity-from-file): Use
7289         `elmo-msgdb-insert-file-header'.
7290
7291         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
7292         Use new variable;
7293         Define obsolete variables with `elmo-define-obsolete-variable',
7294
7295         * elmo-util.el (elmo-warning-buffer-name): New constant.
7296         (elmo-warning): New function.
7297         (elmo-obsolete-variable-alist): New variable.
7298         (elmo-obsolete-variable-show-warnings): New variable.
7299         (elmo-define-obsolete-variable): New function.
7300         (elmo-resque-obsolete-variable): Ditto.
7301         (elmo-resque-obsolete-variables): Ditto.
7302
7303 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7304
7305         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
7306         Eliminated.
7307
7308         * elmo-pop3.el, elmo-nntp.el: Use custom.
7309
7310 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7311
7312         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
7313         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
7314
7315 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7316
7317         * Luna-fy Kenichi OKADA's following changes.
7318         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
7319         `nohide'.
7320         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
7321
7322 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
7323
7324         * elmo-util.el (elmo-display-progress): Prefer
7325         `progress-feedback-with-label' to `lprogress-display'.
7326
7327 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7328
7329         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
7330
7331 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
7332
7333         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
7334         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
7335         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7336         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7337         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
7338         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
7339         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7340         * elmo-filter.el (elmo-filter-list-folder): Ditto.
7341         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7342         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7343         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7344         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7345         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7346
7347 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7348
7349         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
7350         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7351
7352 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7353
7354         * elmo.el (elmo-folder-process-crosspost): New generic method.
7355         (elmo-folder-writable-p): Ditto.
7356         (elmo-folder-message-appendable-p): Eliminated.
7357         (elmo-generic-folder-append-msgdb): Rewrite.
7358         (elmo-newsgroups-hashtb): New internal variable.
7359         (elmo-crosspost-message-set): Eliminated.
7360         (elmo-crosspost-message-delete): Ditto.
7361         (elmo-setup-subscribed-newsgroups): New function.
7362         (elmo-crosspost-message-alist-modified): New internal variable.
7363         (elmo-crosspost-message-alist-load): New function (Renamed from
7364         `wl-crosspost-alist-load').
7365         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7366         `wl-crosspost-alist-save').
7367
7368         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7369
7370         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7371         `unreads'.
7372         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7373         elmo-newsgroups-hashtb).
7374         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7375         `elmo-nntp-folder-update-crosspost-message-alist'.
7376         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7377         `elmo-nntp-groups-hashtb'.
7378         (elmo-nntp-make-groups-hashtb): Eliminated.
7379         (elmo-nntp-parse-newsgroups): New function (Renamed from
7380         `wl-parse-newsgroups').
7381         (elmo-folder-creatable-p, elmo-folder-writable-p,
7382         elmo-folder-close-internal, elmo-folder-mark-as-read,
7383         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7384         Define.
7385         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7386
7387         * elmo-net.el (elmo-message-fetch): Check buffer size.
7388
7389         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7390
7391         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7392
7393         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7394         before `close' command.
7395
7396         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7397         `mark-alist' (All other related portions are changed).
7398
7399 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7400
7401         * elmo-util.el (elmo-create-hash-size): Eliminated.
7402         (elmo-make-hash) Make a hash with `one less than a power of two'
7403         length.
7404
7405         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7406         (elmo-hash-maximum-size): Changed value.
7407
7408 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7409
7410         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7411         (elmo-mime-message-display-as-is): Ditto.
7412
7413 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7414
7415         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7416         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7417
7418 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7419
7420         * elmo-mark.el: New file.
7421
7422         * elmo-internal.el: Rewrite (Almost empty).
7423
7424 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7425
7426         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7427         (mime-imap-entity-header-string): Ditto.
7428         (mmimap-entity-section): Rewrite.
7429
7430 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7431
7432         * elmo-nmz.el: New file.
7433
7434         * elmo-pipe.el: Rewrite with luna.
7435
7436 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7437
7438         * elmo-archive.el: Rewrite with luna.
7439
7440         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7441         (elmo-folder-list-importants-internal): Ditto.
7442
7443 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7444
7445         * elmo-archive.el (elmo-archive-version): Abolish.
7446         (toplevel) Removed `boso' comment.
7447
7448 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7449
7450         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7451         elmo-msgdb-add-msgs-to-seen-list-subr;
7452         Changed argument seen-marks to unread-marks.
7453
7454         * elmo-nntp.el: Rewrite with luna.
7455
7456 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7457
7458         * elmo-filter.el: Rewrite with luna.
7459
7460 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7461
7462         * elmo-pop3.el: Rewrite with luna.
7463
7464 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7465
7466         * elmo-multi.el: Rewrite with luna.
7467
7468         * elmo-vars.el (elmo-use-killed-list): Abolish.
7469         All other related portions are changed.
7470         (elmo-filename-replace-string-alist): Renamed from
7471         elmo-msgid-replace-string-alist.
7472
7473 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7474
7475         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7476
7477         * elmo-map.el: New file.
7478         * elmo-maildir.el: Rewrite with luna.
7479
7480 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7481
7482         * elmo.el: Changed meaning of `elmo-folder-commit'.
7483         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7484
7485 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7486
7487         * elmo.el (elmo-folder-append-buffer): New function.
7488         (Renamed from `elmo-append-msg')
7489
7490 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7491
7492         * elmo-mime.el: New file.
7493
7494 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7495
7496         * elmo-cache.el: Rewrite.
7497
7498 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7499
7500         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7501
7502 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7503
7504         * elmo-vars.el (elmo): New group.
7505         (elmo-strict-diff-folder-regexp): New variable.
7506
7507         * elmo-util.el (elmo-call-func): Abolish.
7508         (elmo-folder-get-type): Ditto.
7509         (elmo-*-get-spec): Ditto.
7510         (elmo-*-spec-*): Ditto.
7511         (elmo-imap4-identical-name-space-p): Ditto.
7512         (elmo-folder-identical-system-p): Ditto.
7513         (elmo-folder-direct-copy-alist): Ditto.
7514         (elmo-folder-direct-copy-p): Ditto.
7515
7516         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7517         (elmo-folder-initialize): Define.
7518         (elmo-folder-get-primitive-list): Ditto.
7519
7520         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7521         (elmo-folder-initialize): Define.
7522         Renamed `elmo-network-session-host-internal' to
7523         `elmo-network-session-server-internal'.
7524
7525         * elmo-multi.el (elmo-multi-folder): New luna class.
7526         (elmo-folder-initialize): Define.
7527         (elmo-folder-get-primitive-list): Ditto.
7528         (elmo-folder-contains-type): Ditto.
7529         (elmo-message-use-cache-p): Ditto.
7530
7531         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7532         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7533
7534         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7535         (elmo-folder-initialize): Define.
7536
7537         * elmo-filter.el (elmo-filter-folder): New luna class.
7538         (elmo-folder-initialize): Define.
7539         (elmo-folder-get-primitive-list): Ditto.
7540         (elmo-folder-contains-type): Ditto.
7541
7542 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7543
7544         * elmo-imap4.el: Rewrite with luna.
7545
7546         * mmimap.el: New file.
7547
7548         * mmelmo.el, mmelmo-imap4.el: Removed.
7549
7550         * elmo-net.el: Ditto.
7551
7552         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7553         (elmo-folder-initialize): Define.
7554
7555         * elmo-archive.el (elmo-archive-folder): New luna class.
7556         (elmo-folder-initialize): Define.
7557
7558         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7559         `elmo-folder-msgdb-path'.
7560         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7561         `elmo-make-folder'.
7562
7563 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7564
7565         * elmo.el: New file.
7566
7567         * elmo2.el: Renamed to elmo.el.
7568
7569 \f
7570 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7571
7572         * elmo-cache.el (elmo-cache-expire-by-size): Count
7573         a disk usage for a cache file entry in KB even when
7574         its kind is a directory.
7575
7576 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7577
7578         * elmo-version.el (elmo-version): Up to 2.5.7.
7579
7580 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7581
7582         * elmo-version.el (elmo-version): Up to 2.5.6.
7583
7584 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7585
7586         * elmo-version.el (elmo-version): Up to 2.5.5.
7587
7588 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7589
7590         * elmo-imap4.el (elmo-network-authenticate-session):
7591         Fixed a logic for response checking.
7592
7593 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7594
7595         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7596         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7597         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7598         `sasl-mechanisms'.
7599
7600         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7601         for `starttls-open-stream' and `starttls-negotiate'.
7602
7603         * elmo-nntp.el: Remove autoload settings for
7604         `starttls-open-stream' and `starttls-negotiate'.
7605
7606         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7607         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7608         `luna-define-class' with `eval-and-compile'.
7609
7610 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7611
7612         * elmo-util.el (elmo-read-search-condition-internal):
7613         Require an element of table for searching field.
7614
7615 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7616
7617         * elmo-version.el (elmo-version): Up to 2.5.4.
7618
7619 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7620
7621         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7622
7623 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7624
7625         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7626
7627 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7628
7629         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7630         before greeting.
7631
7632 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7633
7634         * elmo-imap4.el (elmo-imap4-delete-folder):
7635         Send "close" before "delete" (Use commented out line).
7636         (elmo-imap4-rename-folder): Ditto.
7637
7638         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7639         folder string itself.
7640         (elmo-dop-list-deleted): New function.
7641         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7642         killed.
7643
7644         * elmo-util.el (elmo-string-rassoc-all): New function.
7645
7646 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7647
7648         * elmo-version.el (elmo-version): Up to 2.5.3.
7649
7650         * elmo-net.el (elmo-network-get-session): Changed logic for
7651         checking process status.
7652
7653         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7654         process is nil;
7655         Changed logic for checking process status.
7656
7657 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7658
7659         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7660         before greeting.
7661         (elmo-network-setup-session): Set UIDL hash size according to
7662         the length of list response.
7663         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7664         according to the length of list response;
7665         Return the length of list response.
7666         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7667
7668 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7669
7670         * elmo-imap4.el (toplevel): Require 'ssl.
7671         Add autoload 'starttls.
7672         * elmo-pop3.el (toplevel): Ditto.
7673         * elmo-nntp.el (toplevel): Ditto.
7674
7675 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7676
7677         * elmo-imap4.el (toplevel): defun at compile time.
7678         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7679         sasl-next-step, sasl-step-data, sasl-step-set-data.
7680         * elmo-pop3.el (toplevel): Ditto.
7681
7682 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7683
7684         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7685
7686 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7687
7688         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7689         if error.
7690         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7691         and `elmo-pop-auth-apop'.
7692
7693 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7694
7695         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7696
7697 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7698
7699         * elmo-pop3.el (elmo-network-authenticate-session): Split
7700         encoded response value.
7701
7702 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7703
7704         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7705         `elmo-pop3-force-login'.
7706         Redefine `sasl-mechanisms'.
7707         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7708
7709 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7710
7711         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7712         Delete `elmo-imap4-authenticator-alist'.
7713         (elmo-imap4-auth-cram-md5): Delete.
7714         (elmo-imap4-auth-digest-md5): Delete.
7715
7716 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7717
7718         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7719         (elmo-pop3-auth-scram-md5): Ditto.
7720         (elmo-pop3-auth-cram-md5): Ditto.
7721
7722 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7723
7724         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7725         Delete `elmo-pop3-authenticator-alist'.
7726
7727 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7728
7729         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7730         new SASL API.
7731         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7732
7733 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7734
7735         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7736
7737 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7738
7739         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7740         Fixed problem when `elmo-pop3-use-uidl' is nil.
7741         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7742
7743 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7744
7745         * elmo-version.el (elmo-version): Up to 2.5.2.
7746
7747 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7748
7749         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7750         New function.
7751         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7752         (elmo-pop3-msgdb-create-as-numlist): Use it.
7753
7754         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7755         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7756
7757         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7758         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7759
7760 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7761
7762         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7763         when elmo-mark-as-read is called with second argument nil.
7764
7765 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7766
7767         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7768         Moved to elmo-util.el.
7769
7770         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7771         Moved from elmo-pipe.el
7772
7773         * elmo-archive.el (elmo-archive-call-process): Enclose with
7774         static-if.
7775
7776         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7777         "RFC822" (because RFC822.PEEK is obsolete).
7778         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7779
7780 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7781
7782         * elmo-archive.el (elmo-archive-call-process): Don't check for
7783         the exit status when Nemacs is running.
7784
7785 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7786
7787         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7788         'plain.
7789
7790         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7791         (elmo-pop3-get-spec): Set default of auth to 'user.
7792
7793         * elmo-imap4.el (elmo-imap4-session-check):
7794         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7795         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7796         (elmo-imap4-auth-login): New function; Revival.
7797         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7798         `elmo-imap4-auth-login'.
7799
7800 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7801
7802         * elmo2.el (toplevel): Move `product-provide' declare.
7803         * mmelmo.el (toplevel): Ditto.
7804
7805 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7806
7807         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7808
7809 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7810
7811         * elmo-util.el (elmo-folder-get-store-type): New function.
7812         (elmo-folder-direct-copy-p): Use it.
7813
7814 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7815
7816         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7817         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7818         and result of `elmo-imap4-use-flag-p'.
7819         (elmo-imap4-fetch-callback-1): Set mark according to
7820         the result of `elmo-imap4-use-flag-p'.
7821
7822 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7823
7824         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7825         (elmo-generic-list-folder-unread): Ditto.
7826         (elmo-folder-get-info): Ditto.
7827         (elmo-folder-set-info-max-by-numdb): Ditto.
7828         (elmo-folder-get-info-max): Ditto.
7829         (elmo-folder-get-info-length): Ditto.
7830         (elmo-folder-get-info-unread): Ditto.
7831         (elmo-folder-info-make-hashtb): Ditto.
7832
7833         * elmo2.el: Removed above functions.
7834
7835 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7836
7837         * elmo-imap4.el (toplevel): Require 'ssl.
7838         Add autoload 'starttls.
7839         * elmo-pop3.el (toplevel): Ditto.
7840         * elmo-nntp.el (toplevel): Ditto.
7841
7842 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7843
7844         * elmo-imap4.el (toplevel): defun at compile time.
7845         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7846         sasl-next-step, sasl-step-data, sasl-step-set-data.
7847         * elmo-pop3.el (toplevel): Ditto.
7848
7849 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7850
7851         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7852
7853 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7854
7855         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7856         if error.
7857         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7858         and `elmo-pop-auth-apop'.
7859
7860 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7861
7862         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7863
7864 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7865
7866         * elmo-pop3.el (elmo-network-authenticate-session): Split
7867         encoded response value.
7868
7869 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7870
7871         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7872         `elmo-pop3-force-login'.
7873         Redefine `sasl-mechanisms'.
7874         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7875
7876 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7877
7878         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7879         Delete `elmo-imap4-authenticator-alist'.
7880         (elmo-imap4-auth-cram-md5): Delete.
7881         (elmo-imap4-auth-digest-md5): Delete.
7882
7883 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7884
7885         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7886         (elmo-pop3-auth-scram-md5): Ditto.
7887         (elmo-pop3-auth-cram-md5): Ditto.
7888
7889 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7890
7891         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7892         Delete `elmo-pop3-authenticator-alist'.
7893
7894 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7895
7896         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7897         new SASL API.
7898         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7899
7900 \f
7901 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7902
7903         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7904
7905 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7906
7907         * elmo-nntp.el (elmo-nntp-get-folders-info):
7908         Fixed problem when '\' character is contained in user-id.
7909         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7910
7911 \f
7912 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7913
7914         * elmo-imap4.el (elmo-imap4-delete-folder):
7915         Send "close" before "delete" (Use commented out line).
7916         (elmo-imap4-rename-folder): Ditto.
7917
7918         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7919         folder string itself.
7920         (elmo-dop-list-deleted): New function.
7921         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7922         killed.
7923
7924         * elmo-util.el (elmo-string-rassoc-all): New function.
7925
7926         * elmo-version.el (elmo-version): Up to 2.5.1.
7927
7928 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7929
7930         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7931
7932         * elmo-internal.el (elmo-internal-search): Fix last change.
7933
7934 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7935
7936         * elmo-internal.el (elmo-internal-search): Rewrite.
7937         (Fixed problem which is pointed out by Akihiro MOTOKI
7938         <motoki@da.jp.nec.com>)
7939
7940         * elmo-version.el (elmo-version): Up to 2.5.0.
7941
7942 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7943
7944         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7945
7946 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7947
7948         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7949         non-nil, make hierarchy.
7950
7951 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7952
7953         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7954         `elmo-pop3-use-uidl' must be bound to nil.
7955         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7956
7957 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7958
7959         * elmo-util.el (elmo-copy-file): Don't cause an error after
7960         `add-name-to-file' failed.
7961
7962         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7963         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7964
7965 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7966
7967         * elmo-version.el (elmo-version): Up to 2.3.93.
7968
7969 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7970
7971         * elmo-util.el (elmo-flatten): New function.
7972
7973 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7974
7975         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7976         sync Author header.
7977         * elmo-cache.el (toplevel): Ditto.
7978         * elmo-database.el (toplevel): Ditto.
7979         * elmo-date.el (toplevel): Ditto.
7980         * elmo-dop.el (toplevel): Ditto.
7981         * elmo-filter.el (toplevel): Ditto.
7982         * elmo-imap4.el (toplevel): Ditto.
7983         * elmo-internal.el (toplevel): Ditto.
7984         * elmo-localdir.el (toplevel): Ditto.
7985         * elmo-localnews.el (toplevel): Ditto.
7986         * elmo-maildir.el (toplevel): Ditto.
7987         * elmo-msgdb.el (toplevel): Ditto.
7988         * elmo-multi.el (toplevel): Ditto.
7989         * elmo-net.el (toplevel): Ditto.
7990         * elmo-nntp.el (toplevel): Ditto.
7991         * elmo-pipe.el (toplevel): Ditto.
7992         * elmo-pop3.el (toplevel): Ditto.
7993         * elmo-util.el (toplevel): Ditto.
7994         * elmo-vars.el (toplevel): Ditto.
7995         * elmo2.el (toplevel): Ditto.
7996         * mmelmo-imap4.el (toplevel): Ditto.
7997         * mmelmo.el (toplevel): Ditto.
7998
7999         * elmo-version.el (elmo-version): Move to top.
8000
8001         * elmo-cache.el (toplevel): Fixed multiple Author header format.
8002         * elmo-imap4.el (toplevel): Ditto.
8003         * elmo-localdir.el (toplevel): Ditto.
8004         * elmo-msgdb.el (toplevel): Ditto.
8005         * elmo-nntp.el (toplevel): Ditto.
8006         * elmo-pop3.el (toplevel): Ditto.
8007         * elmo-version.el (toplevel): Ditto.
8008
8009         * elmo-localnews.el (toplevel): Added Keyword header.
8010
8011 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
8012
8013         * elmo-version.el (product-version-as-string): Defined using
8014         `defun-maybe'.
8015         (toplevel): Use it.
8016
8017         * elmo-localdir.el (toplevel): Updated copyright notice.
8018         * elmo-version.el (toplevel): Ditto.
8019         * elmo-msgdb.el (toplevel): Ditto.
8020         * elmo-imap4.el (toplevel): Ditto.
8021         * elmo-nntp.el (toplevel): Ditto.
8022         * elmo-pop3.el (toplevel): Ditto.
8023
8024 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
8025
8026         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
8027         messages.
8028
8029         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
8030         parameter value (It sometimes contains raw kanji).
8031
8032 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8033
8034         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
8035         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
8036
8037 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8038
8039         * elmo-imap4.el (elmo-network-initialize-session): Fix.
8040
8041 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8042
8043         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
8044         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
8045
8046 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
8047
8048         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
8049         value if selecting folder succceeded.
8050         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
8051
8052 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8053
8054         * elmo-util.el (elmo-make-directory): Fixed permission lateral
8055         representation.
8056
8057         * elmo-util.el (elmo-string-matched-member): New function.
8058
8059 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
8060
8061         * elmo-util.el (elmo-unintern): New macro.
8062         (elmo-number-set-member): Fixed docstring.
8063
8064         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
8065         tag token.
8066
8067 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
8068
8069         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
8070         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
8071
8072 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
8073
8074         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
8075         `no-error'.
8076         Added docstring.
8077         Return non-nil if selecting folder succeeded.
8078         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
8079
8080 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
8081
8082         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
8083         `file-name-completion' returns t.
8084         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
8085         (elmo-maildir-set-mark): Put `info' part to the files in the cur
8086         directory if it does not exist.
8087         (elmo-maildir-update-current): Use `while' instead of `mapcar'
8088         for iteration.
8089
8090 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
8091
8092         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
8093         enclosure (It's harmful in unplugged status).
8094
8095         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
8096
8097         * mmelmo-1.el: Removed.
8098
8099         * mmelmo-2.el: Ditto.
8100
8101         * mmelmo-imap4-1.el: Ditto.
8102
8103         * mmelmo-imap4-2.el: Ditto.
8104
8105         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
8106
8107         * mmelmo.el: Merged mmelmo-2.el.
8108
8109         * elmo-version.el (elmo-version): Up to 2.3.92.
8110
8111 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8112
8113         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
8114         elmo-update-number): Remove last period in "...done." message.
8115         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
8116         Ditto.
8117         * elmo-cache.el (elmo-cache-expire-by-size,
8118         elmo-cache-get-sorted-cache-file-list,
8119         elmo-cache-msgdb-create-as-numlist): Ditto.
8120         * elmo-dop.el (elmo-dop-save-pending-messages,
8121         (elmo-dop-flush-pending-append-operations): Ditto.
8122         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
8123         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
8124         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
8125         (elmo-localdir-pack-number): Ditto.
8126         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
8127         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
8128         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
8129         mime-write-entity-content): Ditto.
8130         * pldap.el (ldap-search-basic): Ditto.
8131
8132 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
8133
8134         * elmo-version.el (elmo-version): Up to 2.3.91.
8135
8136         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
8137         Only when filter is 'last'.
8138
8139         * elmo-util.el (elmo-condition-atom-regexp): New constant.
8140         (elmo-condition-parse-search-value): Use it.
8141         (elmo-read-search-condition-internal): Quote value only when
8142         it is not an atom.
8143
8144 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
8145
8146         * elmo2.el (elmo-generic-folder-diff): Fix.
8147
8148 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
8149
8150         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
8151         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
8152         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
8153         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8154         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
8155         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
8156
8157 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
8158
8159         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
8160         extra-fields.
8161
8162 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
8163
8164         * elmo-version.el (elmo-version): Up to 2.3.90.
8165
8166         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
8167         (elmo-imap4-list-folder-important): Ditto.
8168
8169 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8170
8171         * elmo-nntp.el (elmo-network-initialize-session): Fix.
8172
8173 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8174
8175         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
8176
8177 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
8178
8179         * elmo-nntp.el (elmo-network-initialize-session):
8180         Add starttls negotiation.
8181
8182 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8183
8184         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
8185         response.
8186         (elmo-network-setup-session): Define.
8187         Call `elmo-nntp-send-mode-reader' when session opened.
8188
8189 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8190
8191         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
8192
8193 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
8194
8195         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
8196         an invalid SPACE character ahead of `SEARCH' command.  Move
8197         a valid SPACE character following `SEARCH' from conditional
8198         `format' arguments to control-strings.
8199
8200 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8201
8202         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
8203         was succeeded.
8204
8205         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
8206
8207 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
8208
8209         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
8210         `w32-get-true-file-link-count' as t.
8211
8212         * elmo-imap4.el (elmo-imap4-read): Abolished.
8213         (Renamed to `elmo-read' and moved to elmo-util.el)
8214         All other related portions are changed.
8215
8216         * elmo-util.el (elmo-read): New function.
8217         (elmo-condition-parse-search-value): Use it.
8218
8219 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
8220
8221         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
8222
8223         * elmo-nntp.el (elmo-nntp-session): Define.
8224         (elmo-nntp-setting): Abolished.
8225         All other related portions are changed.
8226         (elmo-nntp-get-server-command): Changed argument.
8227         (elmo-nntp-set-server-command): Ditto.
8228         (elmo-nntp-xover-p): Ditto.
8229         (elmo-nntp-set-xover): Ditto.
8230         (elmo-nntp-listgroup-p): Ditto.
8231         (elmo-nntp-set-listgroup): Ditto.
8232         (elmo-nntp-list-active-p): Ditto.
8233         (elmo-nntp-set-list-active): Ditto.
8234         (elmo-nntp-xhdr-p): Ditto.
8235         (elmo-nntp-set-xhdr): Ditto.
8236         (elmo-nntp-flush-connection): Abolished.
8237         (elmo-nntp-get-connection): Abolished.
8238         (elmo-nntp-get-session): New function.
8239         (elmo-network-initialize-session): Defined.
8240         (elmo-network-authenticate-session): Ditto.
8241         (elmo-nntp-send-mode-reader): Changed argument.
8242         (elmo-nntp-send-command): Changed argument.
8243         All other related portions are changed.
8244         (elmo-nntp-read-response): Ditto.
8245         (elmo-nntp-read-raw-response): Ditto.
8246         (elmo-nntp-read-contents): Ditto.
8247         (elmo-nntp-read-body): Ditto.
8248         (elmo-nntp-goto-folder): Abolished.
8249         (elmo-nntp-select-group): New function.
8250         All other related portions are changed.
8251         (This function substitutes `elmo-nntp-goto-folder')
8252         (elmo-nntp-msgdb-create-by-header): Rewrite.
8253         (elmo-nntp-get-overview): Eliminated.
8254         (elmo-nntp-get-message): Ditto.
8255         (elmo-nntp-open-connection) Abolished.
8256         (elmo-nntp-read-msg): Rewrite.
8257         (elmo-nntp-post): Ditto.
8258         (elmo-nntp-send-data): Abolished.
8259         (elmo-nntp-send-buffer): New function.
8260         (elmo-nntp-send-data-line): Define as inline function.
8261         (elmo-nntp-get-folders-info-prepare): Use session as key.
8262         (elmo-nntp-groups-read-response): Changed argument.
8263         (elmo-nntp-retrieve-headers): Ditto.
8264         (elmo-nntp-msgdb-create-message): Ditto.
8265
8266         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
8267         when searching by 'since' or 'before'.
8268
8269 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8270
8271         * elmo-version.el (toplevel): Use product-version-as-string for set
8272         verstion-string, if defined.
8273
8274 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
8275
8276         * elmo-util.el: Doc fixes.
8277
8278 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8279
8280         * elmo-archive.el (toplevel): Use product-provide.
8281         * elmo-cache.el (toplevel): Ditto.
8282         * elmo-database.el (toplevel): Ditto.
8283         * elmo-date.el (toplevel): Ditto.
8284         * elmo-dop.el (toplevel): Ditto.
8285         * elmo-filter.el (toplevel): Ditto.
8286         * elmo-imap4.el (toplevel): Ditto.
8287         * elmo-internal.el (toplevel): Ditto.
8288         * elmo-localdir.el (toplevel): Ditto.
8289         * elmo-localnews.el (toplevel): Ditto.
8290         * elmo-maildir.el (toplevel): Ditto.
8291         * elmo-msgdb.el (toplevel): Ditto.
8292         * elmo-multi.el (toplevel): Ditto.
8293         * elmo-net.el (toplevel): Ditto.
8294         * elmo-nntp.el (toplevel): Ditto.
8295         * elmo-pipe.el (toplevel): Ditto.
8296         * elmo-pop3.el (toplevel): Ditto.
8297         * elmo-util.el (toplevel): Ditto.
8298         * elmo-vars.el (toplevel): Ditto.
8299         * elmo2.el (toplevel): Ditto.
8300         * mmelmo-1.el (toplevel): Ditto.
8301         * mmelmo-2.el (toplevel): Ditto.
8302         * mmelmo-imap4-1.el (toplevel): Ditto.
8303         * mmelmo-imap4-2.el (toplevel): Ditto.
8304         * mmelmo-imap4.el (toplevel): Ditto.
8305         * mmelmo.el (toplevel): Ditto.
8306
8307 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
8308
8309         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
8310         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
8311
8312 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
8313
8314         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
8315         before splitting.
8316         (elmo-multi-split-number-alist): Ditto.
8317
8318 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8319
8320         * elmo-version.el: New file.  Use product.el.
8321         * elmo2.el: Add (require 'elmo-version).
8322         * elmo-vars.el (elmo-appname, elmo-version): Move to
8323         elmo-version.el
8324
8325 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
8326
8327         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
8328         `elmo-msgdb-expand-path'.
8329         (elmo-msgdb-load): Ditto.
8330         Abolished 2nd argument. If 1st argument is not string, treat as spec.
8331         (elmo-generic-list-folder-unread): Rewrite.
8332         (elmo-generic-list-folder-important): Changed argument.
8333         (elmo-list-folder-unread): Ditto.
8334         (elmo-list-folder-important): Ditto.
8335         (elmo-folder-diff): Rewrite.
8336         (elmo-generic-folder-diff): New function.
8337         (elmo-multi-get-number-alist-list): Abolished
8338         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
8339         (elmo-multi-folder-diff): Moved to elmo-multi.el
8340         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
8341
8342         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
8343         `elmo-msgdb-expand-path'.
8344         (elmo-pop3-msgdb-create-as-numlist): Ditto.
8345         (elmo-pop3-read-msg): Ditto.
8346         (elmo-pop3-delete-msgs): Ditto.
8347         (elmo-pop3-folder-diff): New alias.
8348
8349         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
8350         `elmo-msgdb-expand-path'.
8351         (elmo-pipe-list-folder-unread): Changed arguments.
8352         (elmo-pipe-list-folder-important): Ditto.
8353         (elmo-pipe-folder-diff): New alias.
8354
8355         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8356         `elmo-msgdb-expand-path'.
8357         (elmo-nntp-max-of-folder): Ditto.
8358         (elmo-nntp-msgdb-create): Ditto.
8359         (elmo-nntp-delete-msgs): Ditto.
8360         (elmo-nntp-folder-diff): New alias.
8361
8362         * elmo-multi.el (elmo-multi-folder-diff): New function.
8363         (elmo-multi-split-mark-alist): Ditto.
8364         (elmo-multi-split-number-alist): Ditto.
8365         (elmo-multi-mark-alist-list): Abolished (Renamed to
8366         elmo-multi-split-mark-alist).
8367         (elmo-multi-list-folder-unread): Rewrite.
8368         (elmo-multi-list-folder-important): Ditto.
8369         (elmo-multi-list-folder): Set `spec' as 1st argument for
8370         `elmo-msgdb-expand-path'.
8371         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8372         instead of `elmo-multi-get-number-alist-list'.
8373
8374         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8375         If 1st argument is not string, treat as spec.
8376         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8377         `elmo-msgdb-expand-path'.
8378         (elmo-msgdb-flist-load): Ditto.
8379         (elmo-msgdb-flist-save): Ditto.
8380         (elmo-msgdb-delete-path): Ditto.
8381         (elmo-msgdb-rename-path): Ditto.
8382
8383         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8384         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8385         (elmo-maildir-delete-mark-msgs): Ditto.
8386         (elmo-maildir-msgdb-create): Ditto.
8387         (elmo-maildir-read-msg): Ditto.
8388         (elmo-maildir-delete-msgs): Ditto.
8389         (elmo-maildir-list-folder-subr): Ditto.
8390         (elmo-maildir-search): Ditto.
8391         (elmo-maildir-get-msg-filename): Ditto.
8392         (elmo-maildir-pack-number): Ditto.
8393         (elmo-maildir-folder-diff): New alias.
8394
8395         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8396
8397         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8398         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8399         (elmo-localdir-folder-diff): New alias.
8400
8401         * elmo-internal.el (elmo-internal-list-folder-subr):
8402         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8403         (elmo-internal-list-folder-by-location): Ditto.
8404         (elmo-internal-msgdb-create): Ditto.
8405         (elmo-internal-delete-msgs): Ditto.
8406         (elmo-internal-read-msg): Ditto.
8407         (elmo-internal-folder-diff): New alias.
8408
8409         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8410         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8411         `elmo-msgdb-expand-path'.
8412         (elmo-imap4-list-folder-unread): Changed arguments.
8413         (elmo-imap4-list-folder-important): Ditto.
8414
8415         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8416         (elmo-filter-list-folder-important): Ditto.
8417         (elmo-filter-folder-diff): New function.
8418
8419         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8420
8421         * elmo-cache.el (elmo-cache-list-folder):
8422         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8423         (elmo-cache-copy-msgs): Ditto.
8424         (elmo-cache-folder-diff): New alias.
8425
8426         * elmo-archive.el (elmo-archive-list-folder-subr):
8427         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8428         (elmo-archive-get-archive-name): Ditto.
8429         (elmo-archive-create-file): Ditto.
8430         (elmo-archive-append-msg): Ditto.
8431         (elmo-archive-copy-msgs): Ditto.
8432         (elmo-archive-copy-msgs-froms): Ditto.
8433         (elmo-archive-get-msg-filename): Ditto.
8434         (elmo-archive-folder-diff): New alias.
8435
8436 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8437
8438         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8439         (elmo-pop3-stream-type-alist): New variable.
8440         (elmo-nntp-stream-type-alist): New variable.
8441
8442         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8443         (elmo-kill-buffer): Ditto.
8444         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8445         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8446         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8447         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8448         (elmo-imap4-get-spec): Take into account
8449         `elmo-imap4-stream-type-alist'.
8450
8451 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8452
8453         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8454         (elmo-nntp-list-folders-get-cache): Ditto.
8455
8456 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8457
8458         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8459         character before 'uid'.
8460
8461 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8462
8463         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8464
8465         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8466
8467         * elmo-util.el (elmo-number-set-member): New function.
8468         (elmo-number-set-append-list): Ditto.
8469         (elmo-number-set-append): Ditto.
8470
8471         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8472         Use `elmo-number-set-member'.
8473         (elmo-living-messages): Ditto.
8474         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8475         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8476
8477         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8478         (elmo-imap4-add-to-cont-list): Abolished.
8479         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8480         instead of elmo-imap4-add-to-cont-list.
8481
8482         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8483         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8484
8485         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8486
8487 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8488
8489         * elmo-util.el (elmo-condition-parse-search-value):
8490         Fixed date parsing.
8491
8492 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8493
8494         * elmo-util.el (elmo-condition-find-key-internal): New function.
8495         (elmo-condition-find-key): Ditto.
8496
8497         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8498         (elmo-msgdb-search-internal): Ditto.
8499         (elmo-msgdb-search): Ditto.
8500
8501 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8502
8503         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8504         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8505
8506         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8507         (elmo-nntp-search-primitive): Fixed problem when condition is
8508         'unmatch'.
8509
8510         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8511
8512         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8513         (elmo-nntp-xhdr-p): New macro.
8514         (elmo-nntp-set-xhdr): Ditto.
8515         (elmo-nntp-parse-xhdr-response): New function.
8516         (elmo-nntp-retrieve-field): Ditto.
8517         (elmo-nntp-search-primitive): Ditto.
8518         (elmo-nntp-search): Implemented.
8519
8520         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8521
8522         * elmo-archive.el (elmo-archive-search): Set all number list to
8523         `elmo-archive-field-condition-match'
8524
8525         * elmo-localdir.el (elmo-localdir-search): Likewise.
8526
8527         * elmo-maildir.el (elmo-maildir-search): Likewise.
8528
8529 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8530
8531         * elmo-msgdb.el (elmo-living-messages): New function.
8532         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8533         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8534         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8535         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8536         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8537         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8538         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8539         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8540         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8541         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8542         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8543
8544 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8545
8546         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8547
8548         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8549
8550         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8551
8552         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8553         arguments for `SEARCH' command.
8554         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8555         All other related portions are changed.
8556
8557         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8558
8559         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8560         (elmo-list-folder-unread): Rewrite.
8561         (elmo-list-folder-important): Ditto.
8562
8563         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8564         (elmo-condition-parse-error): New inline function.
8565         (elmo-read-search-condition): New function.
8566         (elmo-read-search-condition-internal): Ditto.
8567         (elmo-parse-search-condition): Rewrite.
8568         (elmo-condition-parse): New function.
8569         (elmo-condition-parse-or-expr): Ditto.
8570         (elmo-condition-parse-and-expr): Ditto.
8571         (elmo-condition-parse-primitive): Ditto.
8572         (elmo-condition-parse-search-value): Ditto.
8573         (elmo-buffer-field-primitive-condition-match): Ditto.
8574         (elmo-buffer-field-condition-match): Rewrite.
8575         (elmo-file-field-condition-match): Ditto.
8576
8577         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8578         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8579
8580         * elmo-internal.el (elmo-internal-search): Set `number' and
8581         `number-list' argument of `elmo-file-field-condition-match'.
8582
8583         * elmo-maildir.el (elmo-maildir-search): Ditto.
8584
8585         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8586         `msgdb' as argument instead of `mark-alist'.
8587         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8588         `overview'.
8589
8590         * elmo-multi.el: Likewise.
8591
8592         * elmo-pipe.el: Likewise.
8593
8594         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8595         (elmo-imap4-search-internal): Rewrite.
8596         (elmo-imap4-search): Ditto.
8597
8598         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8599         (elmo-filter-list-folder-unread): Ditto.
8600         (elmo-filter-list-folder-important): Ditto.
8601         (elmo-filter-search): Rewrite.
8602
8603         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8604         `number-list' argument of `elmo-file-field-condition-match'.
8605         (elmo-cache-search): Ditto.
8606
8607         * elmo-localdir.el: Likewise.
8608
8609         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8610         number-list and pass it to `elmo-buffer-field-condition-match'.
8611         (elmo-archive-field-condition-match): Pass `number-list' to
8612         `elmo-archive-field-condition-match'
8613
8614 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8615
8616         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8617         `listgroup'.
8618
8619         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8620         (elmo-folder-diff-async-callback-data): Ditto.
8621         (elmo-folder-diff-async): New function.
8622
8623         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8624         (elmo-network-session-cache-key): Use it as a prefix of the session
8625         name.
8626         (elmo-network-open-session): Ditto.
8627
8628         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8629         (elmo-imap4-status-callback-data): Ditto.
8630         (elmo-imap4-server-diff-async-callback): New variable.
8631         (elmo-imap4-server-diff-async-callback-data): Ditto.
8632         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8633         `elmo-imap4-status-callback-data'.
8634         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8635         `elmo-imap4-status-callback-data' as nil.
8636         (elmo-imap4-server-diff): Ditto.
8637         (elmo-imap4-server-diff-async-callback-1): New function.
8638         (elmo-imap4-server-diff-async): Ditto.
8639         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8640
8641 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8642
8643         * elmo-util.el (elmo-list-delete): Doc fix.
8644         (elmo-delete-lists): Abolish.
8645         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8646         instead of `elmo-delete-lists'.
8647
8648 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8649
8650         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8651         before `sort'.
8652
8653 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8654
8655         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8656         `elmo-imap4-literal-subr'.
8657         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8658         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8659
8660 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8661
8662         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8663         (elmo-archive-list-folder): Fix.
8664         (elmo-archive-max-of-folder): Fix.
8665
8666 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8667
8668         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8669          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8670         (elmo-localdir-append-msg): Ditto.
8671         (elmo-localdir-list-folder): Fix for `nonsort'.
8672         (elmo-localdir-list-folder-subr): Fix for `killed'.
8673         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8674         (elmo-maildir-list-folder-subr): Ditto.
8675         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8676         (elmo-archive-list-folder-subr): Ditto.
8677         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8678         (elmo-internal-list-folder-subr): Ditto.
8679
8680 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8681
8682         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8683
8684 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8685
8686         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8687
8688 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8689
8690         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8691         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8692
8693         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8694         before greeting.
8695         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8696         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8697
8698 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8699
8700         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8701
8702         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8703         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8704         before STORE command.
8705
8706 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8707
8708         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8709
8710         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8711         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8712         of `response'.
8713         (elmo-imap4-list-folders): Removed unused local variable.
8714         (elmo-network-initialize-session): Ditto.
8715         (elmo-imap4-delete-msg-by-id): Ditto.
8716         (elmo-imap4-parse-fetch): Ditto.
8717         (elmo-imap4-copy-msgs): Ditto.
8718         Use `dst-spec' instead of `dst-folder'.
8719         (elmo-network-authenticate-session): Check authenticate type `plain'.
8720
8721 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8722
8723         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8724         garbage checking.
8725         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8726         `elmo-imap4-response-value'.
8727         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8728
8729 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8730
8731         * elmo-imap4.el (elmo-imap4-send-command):
8732         Cause elmo-imap4-bye-error when current response is BYE.
8733         (elmo-imap4-arrival-filter): Changed greeting response value.
8734
8735         * elmo2.el (elmo-imap4-bye-error): Define.
8736
8737         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8738         (elmo-imap4-server-diff): Ditto.
8739         (elmo-imap4-response-bye-p): New macro.
8740         (elmo-imap4-response-error-text): Get text from BYE response.
8741         (elmo-imap4-read-response): Return if BYE response.
8742         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8743         (elmo-imap4-folder-exists-p): Ditto.
8744         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8745         (elmo-imap4-parse-bye): New function.
8746         (elmo-imap4-parse-response): Remove needless let.
8747         Call `elmo-imap4-parse-bye'.
8748
8749 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8750
8751         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8752         the mailbox does not exist.
8753         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8754
8755 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8756
8757         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8758
8759 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8760
8761         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8762
8763         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8764         (elmo-network-initialize-session-buffer): Defined.
8765
8766         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8767         Abolished.
8768         (mmelmo-imap4-get-mime-entity): Rewrite.
8769
8770         * elmo2.el (elmo-error): Capitalize error message.
8771
8772         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8773         (elmo-network-session-buffer): New macro.
8774         (elmo-network-open-session): Use it.
8775
8776         * elmo-imap4.el: Rewrite.
8777
8778 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8779
8780         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8781
8782 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8783
8784         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8785         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8786         (elmo-imap4-create-msgdb-from-overview-string): Use
8787         `elmo-msgdb-create-overview-from-buffer'.
8788
8789 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8790
8791         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8792         (elmo-imap4-default-hierarchy-delimiter): New variable.
8793         (elmo-imap4-list-folders): Use it.
8794
8795 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8796
8797         * elmo-net.el (elmo-network-open-session): Add user and
8798         stream-type for process-buffer name.
8799
8800         * elmo-pop3.el (elmo-network-initialize-session): Call
8801         buffer-disable-undo.
8802
8803         * elmo-imap4.el (elmo-network-initialize-session):
8804         Set current-buffer as an argument for `buffer-disable-undo'.
8805
8806         * elmo-pop3.el (elmo-network-close-session): Don't use
8807         `process-live-p'.
8808
8809         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8810         Set default as 'user.
8811
8812         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8813
8814         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8815         and `elmo-imap4-flush-connection'.
8816
8817         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8818         (elmo-pop3-get-spec): Assume auth as symbol.
8819         (elmo-open-network-stream): Moved to `elmo-net'.
8820
8821         * elmo-pop3.el (toplevel): Require 'elmo-net.
8822         Define `sasl-cram-md5' to silence byte compilier.
8823         (elmo-pop3-connection-cache) Abolished.
8824         (elmo-pop3-authenticator-alist) New variable.
8825         (elmo-pop3-session): Define.
8826         (elmo-pop3-connection-get-process): Abolished.
8827         (elmo-pop3-connection-get-buffer): Ditto.
8828         (elmo-pop3-close-connection): Ditto.
8829         (elmo-pop3-flush-connection): Ditto.
8830         (elmo-pop3-get-connection): Ditto.
8831         (elmo-pop3-get-session): New function.
8832         (Replacement for `elmo-pop3-get-connection').
8833         All other related modules are changed.
8834         (elmo-network-close-session): Define.
8835         (elmo-pop3-send-command): Abolished argument `buffer'.
8836         All other related modules are changed.
8837         (elmo-pop3-read-response): Likewise.
8838         (elmo-pop3-open-connection): Abolished.
8839         (elmo-pop3-auth-user): New function.
8840         (elmo-pop3-auth-apop): Ditto.
8841         (elmo-pop3-auth-cram-md5): Ditto.
8842         (elmo-pop3-auth-scram-md5): Ditto.
8843         (elmo-pop3-auth-digest-md5): Ditto.
8844         (elmo-network-initialize-session): Define.
8845         (elmo-network-authenticate-session): Ditto.
8846         (elmo-network-setup-session): Ditto.
8847
8848         * elmo-imap4.el (toplevel): Require 'elmo-net.
8849         (elmo-imap4-session): Define.
8850         (elmo-imap4-connection-cache): Abolished.
8851         (elmo-imap4-password-key): Ditto.
8852         (elmo-imap4-flush-connection): Ditto.
8853         (elmo-imap4-get-connection): Ditto.
8854         All other related modules are changed.
8855         (elmo-imap4-get-session): New function
8856         (Replacement for `elmo-imap4-get-connection').
8857         (elmo-imap4-read-response): Abolished argument `buffer'.
8858         All other related modules are changed.
8859         (elmo-imap4-send-command): Likewise.
8860         (elmo-imap4-select-folder): Abolished.
8861         All other related modules are changed.
8862         (elmo-imap4-select-mailbox): New function.
8863         (Replacement for `elmo-imap4-select-folder').
8864         (elmo-imap4-auth-login): Simplify.
8865         (Assume current buffer as process buffer)
8866         (elmo-imap4-auth-cram-md5): Ditto.
8867         (elmo-imap4-auth-digest-md5): Ditto.
8868         (elmo-imap4-login): Ditto.
8869         (elmo-imap4-open-connection): Abolished.
8870         (elmo-imap4-open-connection-1): Abolished.
8871         (elmo-network-initialize-sessoin): Define.
8872         (elmo-network-authenticate-session): Ditto.
8873         (elmo-network-setup-session): Ditto.
8874
8875         * elmo-net.el: New module.
8876
8877 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8878
8879         * elmo-util.el (elmo-define-error): New function.
8880
8881         * elmo2.el (elmo-error): Define.
8882         (elmo-open-error): Define.
8883         (elmo-authenticate-error): Define.
8884
8885         * elmo-imap4.el (elmo-imap4-error): Abolish.
8886         (elmo-imap4-error-type): Abolish.
8887         (elmo-imap4-error-process): Abolish.
8888         (elmo-imap4-error-message): Abolish
8889         (elmo-imap4-list-folders): Don't quote lambda.
8890         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8891         (elmo-imap4-parse-namespace): Ditto.
8892         (elmo-imap4-open-connection): Rewrite.
8893         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8894         (elmo-imap4-get-connection): Abolish local variable `result'.
8895
8896 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8897
8898         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8899         wrong-type-argument error when auth is nil.
8900
8901 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8902
8903         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8904         (elmo-default-nntp-stream-type): Ditto.
8905         (elmo-default-pop3-stream-type): Ditto.
8906         (elmo-network-stream-type-alist): Ditto.
8907         (elmo-default-imap4-ssl): Abolished.
8908         (elmo-default-nntp-ssl): Ditto.
8909         (elmo-default-pop3-ssl): Ditto.
8910
8911         * elmo-util.el: (toplevel): Removed needless requires.
8912         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8913         (elmo-open-network-stream): Open network stream according to
8914         the value of `elmo-network-stream-type-alist'.
8915         (elmo-get-network-stream-type): New function.
8916         (elmo-network-stream-type-spec-string): New macro.
8917         (elmo-network-stream-type-symbol): Ditto.
8918         (elmo-network-stream-type-function): Ditto.
8919
8920         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8921         network-stream-type. All other related portions are changed.
8922         (elmo-pop3-open-connection): Ditto.
8923
8924         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8925         network-stream-type. All other related portions are changed.
8926
8927         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8928         network-stream-type.All other related portions are changed.
8929         (elmo-imap4-error): New macro.
8930         (elmo-imap4-error-type): Ditto.
8931         (elmo-imap4-error-process): Ditto.
8932         (elmo-imap4-error-message): Ditto.
8933         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8934         (elmo-imap4-auth-cram-md5): Ditto.
8935         (elmo-imap4-auth-digest-md5): Ditto.
8936         (elmo-imap4-login): Ditto.
8937         (elmo-imap4-open-connection): Remove password entry if authentication
8938         was in vain.
8939         (elmo-imap4-user-at-host): Abolished.
8940         (elmo-imap4-password-key): New buffer local variable.
8941         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8942         using protocol, port, auth and stream-type.
8943
8944         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8945
8946 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8947
8948         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8949
8950         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8951
8952         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8953         (elmo-imap4-authenticator-alist): New variable.
8954         (elmo-imap4-open-connection-1): Rename from
8955         elmo-imap4-open-connection.
8956         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8957         only wraps elmo-imap4-open-connection-1.
8958         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8959         user-at-host.
8960         (elmo-imap4-auth-login): New function.
8961         (elmo-imap4-auth-cram-md5): New function.
8962         (elmo-imap4-auth-digest-md5): New function.
8963         (elmo-imap4-login): New function.
8964
8965 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8966
8967         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8968         function `error'.
8969
8970 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8971
8972         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8973
8974 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8975
8976         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8977
8978 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8979
8980         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8981         for server responses, quote `*' regardless of where it appears.
8982
8983 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8984
8985         * elmo-maildir.el (elmo-maildir-commit): New alias.
8986
8987 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8988
8989         * elmo-util.el (elmo-display-progress):
8990                 Use `progress-feedback-with-label'.
8991
8992 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8993
8994         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8995         (elmo-imap4-non-atom-char-regex): Ditto.
8996         (elmo-imap4-non-text-char-regex): Ditto.
8997         (elmo-imap4-literal-threshold): Ditto.
8998         (elmo-imap4-atom-p): New function.
8999         (elmo-imap4-quotable-p): Ditto.
9000         (elmo-imap4-nil): Ditto.
9001         (elmo-imap4-atom): Ditto.
9002         (elmo-imap4-quoted): Ditto.
9003         (elmo-imap4-literal-subr): Ditto.
9004         (elmo-imap4-literal): Ditto.
9005         (elmo-imap4-buffer-literal): Ditto.
9006         (elmo-imap4-string-subr): Ditto.
9007         (elmo-imap4-string): Ditto.
9008         (elmo-imap4-buffer-string): Ditto.
9009         (elmo-imap4-astring-subr): Ditto.
9010         (elmo-imap4-astring): Ditto.
9011         (elmo-imap4-buffer-astring): Ditto.
9012         (elmo-imap4-nstring): Ditto.
9013         (elmo-imap4-buffer-nstring): Ditto.
9014         (elmo-imap4-mailbox): New alias.
9015         (elmo-imap4-field-body): Ditto.
9016         (elmo-imap4-userid): Ditto.
9017         (elmo-imap4-password): Ditto.
9018         (elmo-imap4-format-quoted): New function.
9019         (elmo-imap4-send-command): Rewritten.  Accept a list of command
9020         arguments and handle "atom", "quoted" and "literal" string here.
9021         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
9022         `elmo-imap4-send-command'.
9023         (elmo-imap4-folder-exists-p): Likewise.
9024         (elmo-imap4-create-folder): Likewise.
9025         (elmo-imap4-delete-folder): Likewise.
9026         (elmo-imap4-rename-folder): Likewise.
9027         (elmo-imap4-max-of-folder): Likewise.
9028         (elmo-imap4-check-validity): Likewise.
9029         (elmo-imap4-sync-validity): Likewise.
9030         (elmo-imap4-server-diff): Likewise.
9031         (elmo-imap4-select-folder): Likewise.
9032         (elmo-imap4-copy-msgs): Likewise.
9033         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
9034         (elmo-imap4-mark-set-on-msgs): Likewise.
9035         (elmo-imap4-read-part): Likewise.
9036         (elmo-imap4-read-msg): Likewise.
9037         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
9038         `elmo-imap4-password' for `elmo-imap4-send-command'.
9039         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
9040         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
9041         `elmo-imap4-buffer-literal'.
9042         (elmo-imap4-append-msg): Likewise.
9043
9044         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
9045         `delete' for removing dead connection from the connection cache.
9046         Move deletion of the process buffer after that.
9047         (elmo-imap4-list): Change `defsubst' to `defun'.
9048         (elmo-imap4-commit): Make error message verbose.
9049         (elmo-imap4-search): Ditto.
9050         (elmo-imap4-list): Ditto.
9051         (elmo-imap4-select-folder): Ditto.
9052         (elmo-imap4-copy-msgs): Ditto.
9053         (elmo-imap4-delete-msg-by-id): Ditto.
9054         (elmo-imap4-append-msg-by-id): Ditto.
9055         (elmo-imap4-append-msg): Ditto.
9056
9057 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
9058
9059         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
9060         when dired is used on XEmacs.
9061
9062 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
9063
9064         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
9065         instead of `append'.
9066         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
9067         `elmo-plugged-p' directly.
9068         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
9069         of `elmo-plugged-p' directly.
9070
9071         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
9072         Eliminate unused variable.  Use `memq' for checking a process status.
9073         Use `cons' instead of `append' for updating the connection cache.
9074         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
9075         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
9076
9077 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
9078
9079         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
9080         `elmo-imap4-read-point' exactly.
9081
9082         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
9083         the local variable `folder' to `mailbox'.
9084         Rename the argument `fld' to `folder'.
9085
9086 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
9087
9088         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
9089         * elmo-imap4.el (elmo-imap4-commit): Ditto.
9090
9091 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
9092
9093         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
9094         (elmo-pop3-number-uidl-hash): New buffer-local variable.
9095         (elmo-pop3-uidl-number-hash): Ditto.
9096         (elmo-pop3-size-hash): Ditto.
9097         (elmo-pop3-uidl-done): Ditto.
9098         (elmo-pop3-list-done): Ditto.
9099         (elmo-pop3-connection-get-process): New defmacro.
9100         (elmo-pop3-connection-get-buffer): Ditto.
9101         (elmo-pop3-close-connection): Delete buffer and process.
9102         (elmo-pop3-flush-connection): Don't delete buffer and process.
9103         (elmo-pop3-get-connection): Added optional argument `if-exists'.
9104         Setup UIDL and size hash.
9105         (elmo-pop3-send-command-no-erase): Deleted
9106         (elmo-pop3-send-command): Added optional argument `no-erase'.
9107         (elmo-pop3-parse-uidl-response): New function.
9108         (elmo-pop3-parse-list-response): Set size hash.
9109         (elmo-pop3-list-location): New function.
9110         (elmo-pop3-list-by-uidl-subr): Ditto.
9111         (elmo-pop3-list-by-list): Ditto.
9112         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
9113         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
9114         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
9115         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
9116         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
9117         Use uidl.
9118         (elmo-pop3-uidl-to-number): New function.
9119         (elmo-pop3-number-to-uidl): Ditto.
9120         (elmo-pop3-number-to-size): Ditto.
9121         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
9122         Set number by use of uidl.
9123         (elmo-pop3-msgdb-create-message): Likewise.
9124         Set size, loc-alist in msgdb.
9125         (elmo-pop3-read-msg): Set number by use of uidl.
9126         Added optional argument `msgdb'.
9127         (elmo-pop3-delete-msg): Ditto.
9128         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
9129         (elmo-pop3-commit): Close connection.
9130
9131         * elmo-pipe.el (elmo-pipe-max-of-folder):
9132         Bind `elmo-pop3-use-uidl' as nil.
9133         (elmo-pipe-drain): Ditto.
9134         Call `elmo-commit'.
9135
9136         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
9137         (elmo-msgdb-overview-entity-set-size): New defsubst.
9138
9139 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
9140
9141         * elmo-vars.el (elmo-use-killed-list): New variable
9142         (Renamed from `elmo-nntp-use-killed-list').
9143         (elmo-nntp-use-killed-list): Eliminated.
9144
9145         * elmo-msgdb.el (elmo-msgdb-expand-path):
9146         Changed expanding msgdb path for elmo-multi.
9147
9148         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
9149         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
9150         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
9151         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
9152         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
9153         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
9154         (toplevel): Deleted time-stamp line.
9155
9156         * elmo2.el (elmo-clear-killed ): Defined as function
9157         (Abolished defining as a backend function).
9158         All other related modules are changed.
9159
9160 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
9161
9162         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
9163
9164 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
9165
9166         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
9167
9168 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
9169
9170         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
9171
9172 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
9173
9174         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
9175         asynchronous folder check.
9176
9177         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
9178
9179         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
9180         `elmo-nntp-use-killed-list'.
9181         (elmo-nntp-list-folder): Use killed list.
9182         (elmo-nntp-max-of-folder): Ditto.
9183         (elmo-nntp-msgdb-create): Set killed list.
9184
9185         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
9186
9187         * elmo2.el (elmo-clear-killed): New backend function.
9188         All other related modules are changed.
9189
9190 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
9191
9192         * elmo-util.el (elmo-imap4-spec-folder): Use
9193         `elmo-imap4-spec-mailbox'; Mark as obsolete.
9194         All callers changed.
9195
9196 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
9197
9198         * mmelmo-2.el (initialize-instance):
9199         Use `mime-buffer-entity-buffer-internal' instead of
9200         `mime-entity-buffer'.
9201
9202         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
9203         (mime-entity-body): Implemented.
9204         (mime-goto-header-start-point): Deleted.
9205         (mime-goto-body-end-point): Ditto.
9206         (mime-entity-point-min): Ditto.
9207         (mime-entity-point-max): Ditto.
9208         (mime-entity-children): Ditto.
9209         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
9210         instead of `mime-entity-buffer'.
9211         (mime-entity-header-buffer): Ditto.
9212         (mime-entity-body-buffer): Ditto.
9213         (mime-write-entity-content): Ditto.
9214
9215         * pldap.el (ldap-static-if): New macro.
9216         (toplevel): Use it instead of `static-if'.
9217
9218 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
9219
9220         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
9221         included in `attrs' argument.
9222
9223 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
9224
9225         * elmo-util.el (elmo-get-passwd): Use old backquote style.
9226
9227         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
9228         (ldap-ldif-safe-init-char-regexp): Ditto.
9229         (ldap-ldif-safe-string-regexp): Ditto.
9230         (ldap/ldif-safe-string-p): New macro.
9231         (ldap/ldif-insert-field): Ditto.
9232         (ldap-modify): Use it.
9233         (ldap-add): Ditto.
9234         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
9235         (ldap-decode-attribute): Decode only when `attr' is consp.
9236         (ldap-delete): Bind `ret'.
9237         (toplevel): Require 'cl at compile time.
9238         Removed (require 'poe) and (require 'std11).
9239         (pldap-version): Eliminated.
9240         (ldap-search-basic): Removed auth and dn binding.
9241         (ldap-ldif-field-name-regexp): New constant.
9242         (ldap-ldif-field-head-regexp): Ditto.
9243         (ldap-ldif-next-field-head-regexp): Ditto.
9244         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
9245         (ldap/field-end): New function.
9246         (ldap/field-body): Use it.
9247         (ldap/collect-field): Ditto.
9248         (ldap-search-basic): Use `ldap/field-body'.
9249
9250 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
9251
9252         * pldap.el (ldap-default-attribute-encoder): New user option.
9253         (ldap/field-body): Decode base64 string.
9254         (ldap/collect-field): Ditto.
9255         (ldap-encode-attribute): New function.
9256         (ldap-add-entries): Use it.
9257         (ldap-modify-entries): Ditto.
9258         (ldap-search-entries): Enclosed decoding function with
9259         `with-temp-buffer' and set as unibyte.
9260         (ldap-search-basic): Set process buffer as unibyte.
9261
9262         * elmo-util.el (elmo-folder-identical-system-p):
9263         Eliminated name space checking.
9264
9265         * pldap.el: New module.
9266         toplevel: Changed condition to detect built-in ldap feature.
9267         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
9268         (ldap-add): Added error handling.
9269         (ldap-modify): Ditto.
9270         (ldap-delete): Ditto.
9271
9272 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
9273
9274         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
9275         Initialize local variables with `let'.  Inline a temporary
9276         variable for the progress percentage.  Sort `setq' to reduce
9277         function call in the while-loop.
9278
9279         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
9280         into the conditional branch.
9281
9282 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
9283
9284         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
9285         Move a conditional out of the while-loop.
9286
9287 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9288
9289         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
9290         elmo-msgdb-overview-get-entity-by-number.
9291         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
9292         throw.
9293
9294 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
9295
9296         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
9297         the local variable for a packed number self descriptively.
9298
9299 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9300
9301         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
9302         * elmo-localdir.el (elmo-localdir-pack-number): Use
9303         `elmo-msgdb-overview-get-entity' instead of
9304         `elmo-msgdb-overview-get-entity-by-number'.
9305         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
9306         (elmo-msgdb-search-overview-entity): Removed.
9307         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
9308         by message-id or number.
9309         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
9310         instead of `elmo-msgdb-overview-get-entity-by-number'.
9311
9312 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9313
9314         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
9315         non-nil, use hash table for overview.
9316         (elmo-hash-maximum-size): New variable.
9317         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
9318         (elmo-msgdb-make-overview-hashtb): New function.
9319         (elmo-msgdb-clear-overview-hashtb): New function.
9320         (elmo-clear-hash-val): New macro.
9321         All other related modules are changed.
9322
9323 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
9324
9325         * elmo2.el (elmo-move-msgs): If there's other message with
9326         same message-id, don't use cache.
9327
9328 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
9329
9330         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
9331         number is already packed.
9332
9333 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
9334
9335         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
9336
9337 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9338
9339         * elmo-vars.el (elmo-display-progress-threshold): New variable.
9340         All other related modules are changed.
9341
9342 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
9343
9344         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
9345         of refiling failure on Maildir.
9346
9347 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9348
9349         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
9350         decoded mime-charset with cache.
9351         (elmo-msgdb-overview-entity-get-from): Ditto.
9352         (elmo-msgdb-overview-entity-get-subject): Ditto.
9353         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9354
9355 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9356
9357         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9358         (elmo-remove-passwd): Fill password with 0 before erase.
9359         * elmo-vars.el (elmo-passwd-life-time): New variable.
9360
9361 \f
9362 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9363
9364         * elmo-cache.el (elmo-buffer-cache-add):
9365         Set message cache buffer as unibyte.
9366
9367 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9368
9369         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9370         become nil.
9371
9372 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9373
9374         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9375         when display is finished.
9376         (elmo-nntp-msgdb-create): Ditto.
9377         (elmo-nntp-groups-read-response): Ditto.
9378         (elmo-nntp-retrieve-headers): Ditto.
9379         (elmo-nntp-msgdb-create-message): Ditto.
9380         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9381         (elmo-pop3-msgdb-create-message): Ditto.
9382
9383 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9384
9385         * elmo-maildir.el (elmo-maildir-msgdb-create):
9386         Use `elmo-msgdb-sort-by-date'.
9387
9388 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9389
9390         * elmo2.el (elmo-read-msg-no-cache):
9391         Eliminated arguments after `outbuf'.
9392         Don't use cache even if it exists.
9393         (elmo-read-msg): Don't pass arguments after `outbuf' to
9394         `elmo-read-msg-no-cache'.
9395
9396 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9397
9398         * elmo-archive.el (elmo-archive-list-folders):
9399         Use `file-name-directory' if base folder does not exist.
9400
9401 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9402
9403         * elmo-archive.el (elmo-archive-list-folders): Don't use
9404         `file-name-directory'.
9405
9406 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9407
9408         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9409         If `force' is non-nil, try flushing all operation queues.
9410
9411 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9412
9413         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9414         as-binary-process.
9415
9416 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9417
9418         * elmo-util.el (elmo-display-progress): Fixed.
9419
9420 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9421
9422         * elmo-util.el (elmo-display-progress): New function.
9423         All other related modules are changed.