60d4c72e2b1a5462508058d652a1dd2d730d6823
[elisp/wanderlust.git] / elmo / ChangeLog
1 2010-01-04  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2
3         * elmo.el (elmo-folder-confirm-appends): Use `number-to-string'
4         instead of `int-to-string'.
5         * elmo-archive.el (elmo-archive-message-fetch-internal)
6         (elmo-archive-folder-message-make-temp-files)
7         (elmo-archive-folder-append-buffer)
8         (elmo-folder-delete-messages-internal)
9         (elmo-archive-msgdb-create-entity)
10         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
11         * elmo-util.el (elmo-cache-expire-by-age): Ditto.
12         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
13         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
14         * elmo-imap4.el (elmo-imap4-make-number-set-list)
15         (elmo-folder-list-subfolders): Ditto.
16         * elmo-localdir.el (elmo-message-file-name)
17         (elmo-folder-message-make-temp-files)
18         (elmo-localdir-msgdb-create-entity)
19         (elmo-folder-append-messages-*-localdir)
20         (elmo-folder-pack-numbers): Ditto.
21         * elmo-maildir.el (elmo-folder-message-make-temp-files): Ditto.
22         * elmo-map.el (elmo-location-map-key): Ditto.
23         * elmo-nntp.el (elmo-nntp-folder-postfix)
24         (elmo-nntp-folder-list-subfolders)
25         (elmo-nntp-folder-msgdb-create): Ditto.
26
27         * elmo.el (elmo-crosspost-message-alist-save): Don't use
28         `function' for `lambda'.
29         * elmo-archive.el (elmo-archive-folder-list-subfolders)
30         (elmo-folder-append-messages-*-archive)
31         (elmo-folder-delete-messages-internal): Ditto.
32         * elmo-date.el (elmo-replace-in-string): Ditto.
33         * elmo-multi.el (elmo-folder-list-messages, elmo-folder-search)
34         (elmo-folder-list-flagged): Ditto.
35         * elmo-maildir.el (elmo-maildir-cleanup-temporal): Ditto.
36         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
37         * modb-standard.el (modb-standard-cleanup-stale-entities): Ditto.
38
39 2010-01-02  TAKAHASHI Kaoru  <kaoru@kaisei.org>
40
41         * elmo-dop.el (elmo-dop-spool-folder): Suppress warning "defsubst
42         `elmo-dop-spool-folder' was used before it was defined"; Use
43         `defun' instead.
44
45         * pldap.el (ldap/ldif-safe-string-p): macro to function.
46         * elmo-imap4.el (elmo-imap4-detect-search-charset): Ditto.
47
48         * elmo.el (elmo-folder-info-make-hashtb): Use `mapc' instead of
49         `mapcar'; Suppress compile warning.
50         * elmo-imap4.el (elmo-network-initialize-session-buffer)
51         (elmo-imap4-search-internal-primitive): Ditto.
52         * elmo-nntp.el (elmo-nntp-search-primitive): Ditto.
53         * elmo-archive.el (elmo-archive-exec-msgs-subr2): Ditto.
54
55         * elmo-imap4.el (elmo-imap4-parse-address-list)
56         (elmo-imap4-parse-fetch-body-section, elmo-imap4-parse-body)
57         (elmo-imap4-parse-acl, elmo-imap4-parse-body-extension)
58         (elmo-imap4-parse-body-ext, elmo-imap4-parse-body): Use
59         `(string-to-char " ")' instead of `? ', `?\ '.
60
61 2010-01-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
62
63         * pldap.el (ldap-search-entries): Don't use `function' for lambda.
64         (ldap-add-entries, ldap-modify-entries): Use `mapc' instead of `mapcar'.
65         (ldap-delete-entries): Use `mapc' instead of `mapcar'. Don't use
66         `function' for lambda.
67
68         * modb-standard.el (modb-standard-cleanup-stale-entities): Use
69         `string-to-number' instead of `string-to-int'.
70
71         * elmo-util.el (elmo-set-work-buf): Use `with-current-buffer'
72         instead of `save-excursion' (for suppress compile warnings).
73         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
74         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Ditto.
75         (elmo-nntp-post): Ditto.
76
77 2009-08-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
78
79         * utf7.el (utf7-get-u16char-converter): Revert BOM workaround for
80         Mule-UCS (to-utf-16).
81         (utf7-utf-16-coding-system): Change preference when Mule-UCS on
82         Emacs 23.
83
84 2009-07-11  Taiki SUGAWARA  <buzz.taiki@gmail.com>
85
86         * utf7.el (utf7-find-coding-system-without-bom): New Function.
87         (utf7-utf-16-coding-system): use no-BOM coding system.
88         (utf7-get-u16char-converter): remove workaround for BOM.
89
90 2009-05-26  Vitaly Mayatskikh <v.mayatskih@gmail.com>
91
92         * elmo-util.el (elmo-union): New function, make a union of two lists.
93
94         * elmo-mime.el (elmo-mime-entity-display): Fix Emacs crash in
95         mime-view when displaying malformed base64 attach.
96
97         * elmo-imap4.el (elmo-imap4-folder-list-flagged): Use elmo-imap4-list
98         (removed duplicated code)
99
100         * modb-standard.el (modb-standard-cleanup-stale-entities): New
101         function, Remove stale entities from elmo's cache.
102
103 2009-05-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
104
105         * elmo-version.el (elmo-version): Up to 2.15.7.
106
107 2009-03-22  Tetsurou Okazaki  <okazaki@be.to>
108
109         * elsp-bsfilter.el (elmo-spam-bsfilter-update-switch): Change
110         default value to `--auto-update'.
111
112 2008-07-06  TAKAHASHI Kaoru  <kaoru@kaisei.org>
113
114         * elmo-pop3.el (elmo-pop3-read-contents): Fix double `goto-char'.
115         Add `elmo-pop3-read-point' barrier.
116
117 2008-07-06 YAMASHITA Junji <ysiijj@gmail.com>
118
119         * elmo-pop3.el (elmo-pop3-read-contents): improving performance:
120         goto the previous end-point insead of the head-point, and use
121         `search-forward' instead of `re-search-forward'.
122
123 2008-06-30  Tetsurou Okazaki  <okazaki@be.to>
124
125         * elmo-imap4.el (elmo-imap4-parse-status): Use `case' instead of `cond'.
126
127 2008-06-30  Don Bashford  <Don.Bashford@stjude.org>
128
129         * elmo-imap4.el (elmo-imap4-parse-status): Accept IMAP4 tokens in a
130         case-insensitive fashion.
131
132 2008-03-30  Tetsurou Okazaki  <okazaki@be.to>
133
134         * elmo-imap4.el (elmo-imap4-send-command): Combine `process-send-string' calls.
135
136 2008-02-20  TAKAHASHI Kaoru  <kaoru@kaisei.org>
137
138         * elmo-util.el (elmo-add-name-to-file, elmo-field-body): Use
139         `eval-and-compile' for suppress compile warnings.
140
141         * elmo-vars.el (dynamic-link, dynamic-call): Use `defalias-maybe'
142         instead of `defun-maybe'
143
144         * elmo-util.el: Add (eval-when-compile (require 'static)).
145
146 2008-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
147
148         * mmimap.el: Remove (require 'static).
149         * acap.el: Ditto.
150
151         * elmo-flag.el: Move ';;; Code:' comment.
152         * elmo-imap4.el: Ditto.
153         * elmo-net.el: Ditto.
154
155         * elmo-version.el (product-provide): Fix comment.
156
157 2008-02-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
158
159         * slp.el: Add (eval-when-compile (require 'cl)).
160         * elmo-date.el: Ditto.
161         * elmo-pop3.el: Ditto.
162         * elmo-mime.el: Add (eval-when-compile (require 'elmo)).
163
164 2008-02-17  TAKAHASHI Kaoru  <kaoru@kaisei.org>
165
166         * modb.el (elmo-msgdb-match-condition-primitive): Use
167         `string-to-number' instead of `string-to-int'.
168
169         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer)
170         (elmo-msgdb-message-match-condition)
171         (elmo-msgdb-create-message-entity-from-buffer): Use
172         `string-to-number' instead of `string-to-int'.
173
174         * elmo.el (elmo-folder-confirm-appends): Use `string-to-number'
175         instead of `string-to-int'.
176
177         * elmo-util.el (elmo-cache-expire-by-age): Use `string-to-number'
178         instead of `string-to-int'.
179
180         * elmo-pop3.el (elmo-pop3-list-by-list, elmo-folder-status): Use
181         `string-to-number' instead of `string-to-int'.
182
183         * elmo-nntp.el (elmo-nntp-make-msglist)
184         (elmo-folder-list-messages-plugged, elmo-nntp-folder-status)
185         (elmo-nntp-create-msgdb-from-overview-string)
186         (elmo-nntp-parse-xhdr-response, elmo-nntp-msgdb-create-message)
187         (elmo-nntp-search-primitive): Use `string-to-number' instead of
188         `string-to-int'.
189
190         * elmo-net.el (elmo-net-folder-set-parameters): Use
191         `string-to-number' instead of `string-to-int'.
192
193         * elmo-localdir.el (elmo-localdir-list-subr): Use
194         `string-to-number' instead of `string-to-int'.
195
196         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Use
197         `string-to-number' instead of `string-to-int'.
198
199         * elmo-date.el (elmo-date-get-datevec): Use `string-to-number'
200         instead of `string-to-int'.
201
202         * elmo-archive.el (elmo-archive-list-folder-subr): Use
203         `string-to-number' instead of `string-to-int'.
204
205 2008-02-16  TAKAHASHI Kaoru  <kaoru@kaisei.org>
206
207         * elmo-util.el (elmo-get-passwd): Fix typo.
208
209         * elmo-nntp.el (elmo-nntp-get-server-command)
210         (elmo-nntp-set-server-command, elmo-nntp-xover-p)
211         (elmo-nntp-listgroup-p, elmo-nntp-set-listgroup)
212         (elmo-nntp-list-active-p, elmo-nntp-set-list-active)
213         (elmo-nntp-xhdr-p, elmo-nntp-set-xhdr): New backquote style.
214
215         * elmo-imap4.el (elmo-imap4-debug)
216         (elmo-imap4-response-continue-req-p, elmo-imap4-response-ok-p)
217         (elmo-imap4-response-bye-p, elmo-imap4-response-garbage-p)
218         (elmo-imap4-response-value, elmo-imap4-response-error-text)
219         (elmo-imap4-response-bodydetail-text, elmo-imap4-value)
220         (elmo-imap4-nth, elmo-imap4-detect-search-charset)
221         (elmo-imap4-identical-system-p): New backquote style.
222
223 2008-02-15  TAKAHASHI Kaoru  <kaoru@kaisei.org>
224
225         * elmo-dop.el (elmo-make-dop-queue): New backquote style.
226         (elmo-dop-queue-fname, elmo-dop-queue-method): Ditto.
227         (elmo-dop-queue-arguments): Ditto.
228
229         * elmo-date.el (elmo-match-substring): New backquote style.
230         (elmo-match-string, elmo-match-buffer): Ditto.
231         (elmo-date-make-sortable-string): Ditto.
232
233         * elmo-archive.el (elmo-archive-get-method):New backquote style.
234         (elmo-archive-get-suffix, elmo-archive-get-regexp): Ditto.
235
236         * elmo-multi.el (elmo-multi-real-folder-number): New backquote
237         style.
238
239         * elmo-net.el (elmo-network-stream-type-spec-string): New
240         backquote style.
241         (elmo-network-stream-type-symbol): Ditto.
242         (elmo-network-stream-type-feature): Ditto.
243         (elmo-network-stream-type-function): Ditto.
244         (elmo-network-session-buffer): Ditto.
245
246         * elmo-util.el (elmo-file-cache-expand-path): New backquote style.
247         (elmo-file-cache-status, elmo-file-cache-path): Ditto.
248         (elmo-make-file-cache, elmo-string, elmo-get-passwd): Ditto.
249         (elmo-bind-directory, elmo-set-work-buf): Ditto.
250
251         * elmo.el (elmo-folder-send): New backquote style.
252
253 2008-02-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
254
255         * pldap.el (ldap-static-if): New backquote style.
256         (ldap/ldif-safe-string-p): Ditto.
257         (ldap/ldif-insert-field): Ditto.
258
259         * elmo-version.el (elmo-version): Up to 2.15.6.
260
261 2008-01-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
262
263         * elmo-imap4.el (elmo-folder-list-messages-plugged): Don't include
264         messages with \Deleted flag.
265         (elmo-folder-delete-messages-plugged): Ask before sending expunge
266         command if there are messages with \Deleted flag.
267
268 2007-04-24  Yoichi NAKAYAMA  <yoichi@geiin.org>
269
270         * elmo-pop3.el (elmo-pop3-auth-apop): Use more strict regexp.
271         http://seclists.org/bugtraq/2007/Apr/0018.html
272         (Suggested by Tatsuya Kinoshita)
273
274 2007-04-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
275
276         * elmo-imap4.el (elmo-folder-delete): Don't call close for mailbox
277         with \Noselect attribute.
278
279 2007-04-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
280
281         * elmo-imap4.el (elmo-folder-list-subfolders): Fix handling of
282         hierarchical folder structure with UW-imapd.
283
284 2007-02-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
285
286         * elmo-imap4.el (elmo-imap4-clear-login): Don't send LOGIN command
287         when the LOGINDISABLED capability is advertised.
288
289 2007-01-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
290
291         * elmo-msgdb.el (elmo-msgdb-extra-fields): Make it non-destructive.
292
293 2007-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
294
295         * elmo-shimbun.el (elmo-shimbun-update-overview): Add argnument
296         `entity'.
297         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview' only
298         if the message entity is exists.
299
300 2007-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
301
302         * elmo-util.el (elmo-msgdb-insert-file-header): Call
303         `elmo-delete-cr-buffer'.
304
305         * elmo-localdir.el (elmo-message-fetch-internal): Use
306         `insert-file-contents-as-raw-text' instead of
307         `insert-file-contents-as-binary'.
308
309         * elmo-maildir.el (elmo-map-message-fetch): Ditto.
310
311 2006-12-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
312
313         * elmo-imap4.el (elmo-network-initialize-session): Check to
314         retrieve a whole greeting message.
315
316 2006-11-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
317
318         * elmo-flag.el (elmo-folder-commit): Encode `.minfo' at save.
319
320 2006-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
321
322         * elmo-util.el (elmo-safe-plist-get): New alias or macro.
323         (elmo-progress-notify): Use it instead of `plist-get'.
324
325 2006-11-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
326
327         * elmo.el (elmo-generic-folder-append-messages): Remove unused
328         variable `table'.
329
330 2006-11-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
331
332         * elmo-pipe.el (elmo-folder-set-plugged): Define.
333
334 2006-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
335
336         * elsp-bsfilter.el (elmo-spam-bsfilter-use-remote): New user option.
337         (elmo-spam-list-spam-messages): Check it option.
338
339 2006-11-08  Tetsurou Okazaki  <okazaki@be.to>
340
341         * elmo-util.el (elmo-with-progress-display): Return the value
342         of the last form in `body'.
343
344 2006-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
345
346         * elmo-util.el (elmo-progress-start): Accept nil for `total'.  Set
347         `elmo-progress-counter' as t when a query callback returns nil.
348         (elmo-progress-clear): New function.
349         (elmo-progress-done): Split into `elmo-progress-clear'.
350         (elmo-progress-notify): Update a total slot when it is nil.
351         (elmo-with-progress-display): Call `elmo-progress-clear' in
352         unwind-protect and move calling `elmo-progress-done' to outside.
353
354         * elmo-imap4.el (elmo-imap4-find-next-line): Call
355         `elmo-progress-notify' with :total parameter instead of
356         `elmo-progress-counter-set-total'.
357
358 2006-11-07  Tetsurou Okazaki  <okazaki@be.to>
359
360         * elmo-util.el (elmo-cache-expire-by-age): Add docstring.
361         Make it interactive.
362         (elmo-progress-start): Avoid updating `elmo-progress-counter'
363         when a query callback returns nil.  Return a progress counter
364         instead of t whenever a start callback was called.
365
366 2006-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
367
368         * elmo-imap4.el (elmo-imap4-session-capable-p): New macro.
369         (elmo-imap4-send-command): Use it.
370         (elmo-network-initialize-session): Ditto.
371         (elmo-network-setup-session): Ditto.
372         (elmo-folder-msgdb-create-plugged): Ditto.
373
374 2006-11-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
375
376         * elmo-util.el (elmo-progress-done): Fix a miss refer to
377         `elmo-progress-counter'.
378
379 2006-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
380
381         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Abolish.
382         (elsp-bsfilter-list-spam-filter): New function.
383         (elsp-bsfilter-start-list-spam): Ditto.
384         (elsp-bsfilter-read-list-spam): Ditto.
385         (elmo-spam-list-spam-messages): Use async process to display
386         progress message by each message.
387
388 2006-11-03  Yoichi NAKAYAMA  <yoichi@geiin.org>
389
390         * elmo-spam.el (elmo-spam-process-messages-as-mbox): Fix problem
391         of flushing previously inserted message contents.
392
393         * elmo-imap4.el (elmo-folder-search): Fix return value.
394
395 2006-11-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
396
397         * elmo-imap4.el (elmo-imap4-find-next-line): Check whether a label
398         of reporter is enable or not.
399
400 2006-10-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
401
402         * elmo-util.el (elmo-list-bigger-diff): Abolish.
403         (elmo-display-progress): Ditto.
404         (elmo-progress-counter-alist): Ditto.
405         (elmo-progress-set): Ditto.
406         (elmo-progress-clear): Ditto.
407         (elmo-progress-counter-all-value): Rename to
408         `elmo-progress-counter-total'.
409         (elmo-progress-counter-format): Rename to
410         `elmo-progress-counter-action'.
411         (elmo-progress-counter): New internal variable.
412         (elmo-progress-callback-function): Ditto.
413         (elmo-progress-counter-label): New function.
414         (elmo-progress-counter-set-total): Ditto.
415         (elmo-progress-counter-set-action): Ditto.
416         (elmo-progress-call-callback): Ditto.
417         (elmo-progress-start): Ditto.
418         (elmo-progress-done): Ditto.
419         (elmo-progress-notify): Rewrite.
420         (elmo-with-progress-display): Remove first argument
421         `condition'. Add optional argument `var' in `spec'.
422
423         * elmo-vars.el (elmo-display-progress-threshold): Abolish.
424         (elmo-display-retrieval-progress-threshold): Ditto.
425         (elmo-inhibit-display-retrieval-progress): Ditto.
426
427         * Replace all pair of `elmo-progress-set' and
428         `elmo-progress-clear' into `elmo-with-progress-display'.
429
430         * Replace to call `elmo-display-progress' into pair of
431         `elmo-progress-notify' and `elmo-with-progress-display'.
432
433         * elmo-version.el (elmo-version): Up to 2.15.5.
434
435 2006-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
436
437         * elmo-imap4.el (elmo-imap4-arrival-filter): Use `case' instead of
438         `cond'.
439
440 2006-10-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
441
442         * elmo-imap4.el (elmo-imap4-arrival-filter): Call delete-region in
443         cleanup-forms [wl:14027].
444
445 2006-10-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
446
447         * elmo-flag.el (elmo-global-flag-set-internal): Use
448         `elmo-copy-file' by priority when the message is a file.
449
450 2006-10-01  Yoichi NAKAYAMA  <yoichi@geiin.org>
451
452         * elmo.el: Fix typo: disptch -> dispatch.
453
454 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
455
456         * elmo.el (elmo-file-tag): New class.
457         (elmo-append-messages-disptch-table): New constant.
458         (elmo-folder-type-p): New function.
459         (elmo-folder-append-messages): Redefine as function.
460
461         * elmo-null.el (elmo-folder-append-messages): Renamed from
462         `elmo-folder-append-messages'.
463
464         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
465         (elmo-folder-append-messages-*-maildir): Renamed from
466         `elmo-folder-append-messages'.
467
468         * elmo-localdir.el (elmo-localdir-folder): Inherit
469         `elmo-file-tag'.
470         (elmo-folder-append-messages-*-localdir): Renamed from
471         `elmo-folder-append-messages'.
472
473         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
474         from `elmo-folder-append-messages'.
475
476         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
477         `elmo-folder-append-messages'.
478
479         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
480         function.
481         (elmo-folder-append-messages-*-filter): Ditto.
482
483         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
484
485         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
486         (elmo-folder-append-messages-*-pipe): Renamed from
487         `elmo-folder-append-messages'.
488
489         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
490
491         * elmo-file.el (elmo-file-folder): Ditto.
492
493         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
494
495         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
496         from `elmo-folder-append-messages'
497
498 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
499
500         * elmo-map.el (elmo-location-map-setup): Change an argument
501         `locations' to optional.
502         (elmo-location-map-clear): Abolish.
503         (elmo-folder-clear): Follow the API change.
504
505         * elmo-pop3.el (elmo-folder-clear): Ditto.
506
507         * elmo-pop3.el (toplevel): Require elmo-map.
508         (elmo-pop3-folder): Inherit elmo-location-map and abolish
509         location-alist slot (All other related portions are changed).
510         (elmo-pop3-folder-use-uidl): New function.
511         (elmo-folder-msgdb-create): Don't sort message entities.
512         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
513         (elmo-pop3-number-to-size): Convert return value to number.
514         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
515         working buffer.
516
517         * elmo-map.el: Use `location-map' as a variable name for instance
518         instead of `mapper'.
519         (elmo-location-map-setup): Return location alist.
520         (elmo-location-map-update): Ditto.
521
522 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
523
524         * elmo-map.el (elmo-location-map): New class; split location and
525         number mapping from elmo-map-folder (All other related portions
526         are changed).
527
528         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
529         change.
530
531         * elmo-version.el (elmo-version): Up to 2.15.4.
532
533 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
534
535         * elmo-vars.el (elmo-use-hardlink): New user option.
536
537         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
538         `elmo-use-hardlink'.
539
540         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
541         killed-list.
542         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
543         instead of `*-internal'. Use `elmo-with-progress-display'.
544
545 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
546
547         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
548         `elmo-spam-process-messages-as-mbox'.
549
550         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
551
552 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
553
554         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
555         argument BUFFER of `call-process'.
556
557 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
558
559         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
560         args.
561         (elsp-bsfilter-list-spam-files): Ditto.
562
563 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
564
565         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
566         (elmo-spam-bsfilter-max-messages-per-process): New use option.
567         (elmo-spam-bsfilter-debug): Fix a group.
568         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
569         `--homedir'.
570         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
571         (elsp-bsfilter-list-spam-files): New function.
572         (elmo-spam-list-spam-messages): Define.
573         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
574         (elmo-spam-bsfilter-register-messages): New function.
575         (elmo-spam-register-spam-messages): Define.
576         (elmo-spam-register-good-messages): Ditto.
577
578         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
579
580         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
581         `nconc' and `consp'.
582
583 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
584
585         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
586         hash table to test whether a location is exists.
587
588 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
589
590         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
591         even if some error occurred.
592
593         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
594         meaningless unwind-protect.
595
596         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
597         start-number correctly.
598         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
599         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
600
601 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
602
603         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
604         (elmo-folder-initialize): Use it.
605         (elmo-global-flag-replace-referrer): New function.
606
607         * elmo.el (toplevel): Added autoload setting for
608         `elmo-global-flag-replace-referrer'.
609         (elmo-folder-rename): Rewrite the last change use
610         `elmo-global-flag-replace-referrer'.
611
612         * elmo-pipe.el (elmo-folder-rename): Call
613         `elmo-global-flag-replace-referrer'.
614
615 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
616
617         * elmo.el (elmo-folder-rename): Set meta data for global flags
618         follow the rename.
619
620 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
621
622         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
623         as 'not-loaded.
624         (elmo-folder-close): Ditto.
625         (elmo-filter-folder-number-list-loaded-p): New function.
626         (elmo-filter-folder-number-list): Check whether loaded or not.
627         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
628         of `elmo-filter-folder-number-list-internal'.
629         (elmo-folder-delete-messages): Ditto.
630         (elmo-folder-length): Check whether number-list is loaded or not.
631
632 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
633
634         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
635         field `real field' into each element of list.
636         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
637         (elmo-msgdb-message-entity-field): Ditto.
638         (modb-entity-ml-info-real-fields): New function.
639
640         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
641
642         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
643         `elmo-msgdb-extra-fields'.
644
645 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
646
647         * elmo-util.el (elmo-passwd-alist-load): Move point to min
648         position before read.
649
650 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
651
652         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
653         (elmo-global-flags-initialize): Ditto.
654
655 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
656
657         * elmo-archive.el (toplevel): Don't require emu, std11
658         and elmo-localdir.
659
660         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
661         definition.
662
663 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
664
665         * elmo.el (elmo-folder-confirm-appends): Display folder name.
666
667 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
668
669         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
670         literals.
671
672 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
673
674         * elmo-maildir.el (elmo-maildir-list-location): Reduce
675         `elmo-get-last-modification-time' call.
676
677 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
678
679         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
680         expression.
681         (elmo-maildir-set-mark): Ditto.
682         (elmo-maildir-delete-mark): Ditto.
683
684 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
685
686         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
687         optional argument `separators'.
688
689 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
690
691         * elmo.el (cache-changed): Abolish.
692         (status-changed): New signal.
693         (elmo-message-killed-p): New generic function and define for
694         elmo-folder.
695         (elmo-folder-recover-messages): Ditto.
696         (elmo-message-set-cached): Emit signal `status-changed' instead of
697         `cache-changed'.
698         (elmo-message-status): New macro.
699         (elmo-message-status-folder): Ditto.
700         (elmo-message-status-number): Ditto.
701         (elmo-message-status-set-flags): Ditto.
702         (elmo-message-status-set-killed): Ditto.
703         (elmo-message-status-flags): New function.
704         (elmo-message-status-cached-p): Ditto.
705         (elmo-message-status-killed-p): Ditto.
706
707         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
708         `status-changed' instead of `cache-changed'.
709         (elmo-folder-recover-messages): Define.
710         (elmo-message-killed-p): Ditto.
711
712         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
713         `status-changed' instead of `cache-changed'.
714
715         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
716         (elmo-message-killed-p): Define.
717         (elmo-folder-recover-messages): Ditto.
718
719         * elmo-version.el (elmo-version): Up to 2.15.3.
720
721 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
722
723         * elmo-signal.el (elmo-signal-bindings): Use cons to append
724         element into list.
725         (elmo-define-signal-handler): Add docstring.
726         (elmo-define-signal-filter): Ditto.
727
728         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
729
730 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
731
732         * elmo-util.el (elmo-flatten): Don't use recursive call.
733
734         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
735         assignment.
736         (elmo-folder-message-make-temp-files): Use `number-to-string'
737         instead of `int-to-string'.
738
739 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
740
741         * elmo-search.el (elmo-folder-delete-messages): Define.
742
743 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
744
745         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
746         customization type.
747         (elmo-mailing-list-count-spec-list): Ditto.
748
749         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
750         for `list-id'.
751
752 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
753
754         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
755         handling.
756
757 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
758
759         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
760         (elmo-mailing-list-count-spec-list): Ditto.
761
762         * elmo-util.el (elmo-map-until-success): New function.
763         (elmo-string-match-substring): Ditto.
764         (elmo-find-list-match-value): Ditto.
765
766         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
767         Removed.
768         (modb-entity-extract-ml-info-from-subject): Ditto.
769         (modb-entity-extract-ml-info-from-return-path): Ditto.
770         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
771         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
772         (modb-entity-extract-ml-info-from-mailman): Ditto.
773         (modb-entity-extract-mailing-list-info-functions): Ditto.
774         (modb-entity-extract-mailing-list-info): Rewrite with
775         `elmo-find-list-match-value'.
776
777 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
778
779         * elmo-net.el (elmo-network-session-retry-count): New user option.
780         (elmo-network-session-buffer-name): New internal function.
781         (elmo-network-session-buffer-create): Ditto.
782         (elmo-network-open-session): Retry open network session
783         `elmo-network-session-retry-count' times.
784
785 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
786
787         * elmo-util.el (elmo-list-filter): Rewritten.
788
789 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
790
791         * elmo-util.el (elmo-string-member): Allow symbol element in list.
792
793 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
794
795         * elmo-search.el (elmo-make-search-engine): Use prefix
796         `elmo-search-' for require symbol instead of `else-'.
797         (elmo-search-engine-extprog): New class.
798         (elmo-search-engine-do-search): Remove nil from argument
799         list. Added argument pattern to evaluate element as function.
800         (elmo-search-engine-local-file): Derived from
801         `elmo-search-engine-extprog'.
802         (elmo-search-engine-create-message-entity): Check existance of file.
803         (elmo-search-engine-fetch-message): Ditto.
804         (elmo-search-namazu-index): Follow the API change.
805         (elmo-search-grep-target): Ditto.
806
807 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
808
809         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
810         characters of working buffer.
811
812         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
813         Does not bind `default-mime-charset'.
814         (elmo-msgdb-create-message-entity-from-buffer): Removed
815         unnecessary local bind.
816
817         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
818         function.
819         (modb-entity-extract-mailing-list-info-functions): Added it.
820
821 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
822
823         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
824         when number and message-id are non-nil.
825
826         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
827
828         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
829         conditional steatment.
830         (elmo-pop3-auth-apop): Likewise.
831         (elmo-network-authenticate-session): Likewise.
832
833 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
834
835         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
836         symbol `fill-column'.
837         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
838         decode field value.
839
840         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
841         (elmo-decoded-field-body): Ditto.
842
843 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
844
845         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
846         `tokens' to `params'.
847
848 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
849
850         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
851         working buffer.
852
853 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
854
855         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
856         decide index.
857
858 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
859
860         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
861         Set default value as nil.
862         (toplevel): Register search engines by
863         `elmo-search-register-engine' if there are not defined.
864
865         * elmo.el (autoload): Added autoload setting for
866         `elmo-search-register-engine'.
867
868 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
869
870         * elmo.el (toplevel): `[' is redefined as the prefix of the search
871         folder instead of nmz folder.
872         (elmo-nmz-default-index-path): Added obsolete variable setting.
873         (elmo-nmz-index-alias-alist): Ditto.
874         (elmo-nmz-use-drive-letter): Ditto.
875
876         * elmo-search.el (elmo-search-register-engine): New function.
877
878         * elmo-nmz.el: Removed.
879
880         * elmo-version.el (elmo-version): Up to 2.15.2.
881
882 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
883
884         * elmo-search.el: New file.
885
886 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
887
888         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
889         condition `larger' and `smaller'.
890
891 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
892
893         * elmo-util.el (elmo-safe-filename): Rewrite to replace
894         `"' (double quote) into "_Q_".
895
896 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
897
898         * elmo-net.el (elmo-net-quote-chars): Abolish.
899         (elmo-net-format-quoted): Ditto.
900
901 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
902
903         * elmo.el (elmo-get-folder-function): New variable.
904         (elmo-get-folder): New function.
905         (elmo-folder-rename): Call `elmo-make-folder' with specified
906         mime-charset.
907
908         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
909         `elmo-make-folder'.
910         (elmo-split-subr): Ditto.
911
912         * elmo-multi.el (elmo-folder-initialize): Ditto.
913
914         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
915
916         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
917         (elmo-flag-get-folder): Ditto.
918
919         * elmo-filter.el (elmo-folder-initialize): Ditto.
920
921         * elmo-access.el (elmo-folder-initialize): Ditto.
922         (elmo-access-folder-update-children): Ditto.
923
924         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
925         (elmo-dop-queue-flush): Ditto.
926         (elmo-folder-append-buffer-dop-delayed): Ditto.
927         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
928         mime-charset.
929
930         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
931         instead of `elmo-make-folder'.
932         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
933         destination folder instead of send `elmo-folder-rename-internal'.
934
935         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
936         slot of subfolder instead of create it.
937
938 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
939
940         * elmo-util.el (elmo-collect-separators): New function.
941         (elmo-collect-separators-internal): Ditto.
942         (elmo-collect-trail-separators): Ditto.
943         (elmo-parse-separated-tokens): Ditto.
944         (elmo-parse-separated-tokens-internal): Ditto.
945         (elmo-quote-syntactical-element): Ditto.
946
947         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
948         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
949
950         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
951         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
952         (elmo-nntp-folder-list-subfolders): Quote a user name.
953
954         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
955         (elmo-net-parse-network): Abolish.
956         (elmo-net-folder-set-parameters): New function.
957         (elmo-folder-initialize): Follow the above change.
958
959         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
960         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
961         (elmo-folder-list-subfolders): Use
962         `elmo-quote-syntactical-element' instead of
963         `elmo-net-format-quoted' to quote mailbox and user name.
964
965 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
966
967         * elmo-util.el (elmo-token-valid-p): New function.
968         (elmo-parse-token): Add optional argument `requirement'.
969         (elmo-parse-prefixed-element): Likewise.
970
971         * elmo-net.el (elmo-net-quote-chars): Renamed from
972         `elmo-net-quote-chars-regexp'.
973         (elmo-net-format-quoted): Add optional argument `extra-chars'.
974
975         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
976         by info document. Check token `uidl' is started an alphabet.
977
978         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
979         by info document. Check token `user' is started an alphabet.
980
981         * elmo-imap4.el (elmo-folder-initialize): Ditto.
982         (elmo-folder-list-subfolders): Quote user.
983
984 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
985
986         * elmo-util.el (elmo-quoted-specials-list): New constant.
987         (elmo-quoted-token): New function.
988
989         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
990         (elmo-net-format-quoted): New function.
991         (elmo-net-parse-network): Ditto.
992         (elmo-folder-initialize): Use it.
993
994         * elmo-nntp.el (elmo-folder-initialize): Use
995         `elmo-net-parse-network' to parse network specification instead of
996         `elmo-folder-initialize#elmo-net'.
997
998         * elmo-pop3.el (elmo-folder-initialize): Ditto.
999
1000         * elmo-imap4.el (elmo-folder-initialize): Ditto.
1001         (elmo-folder-list-subfolders): Quote folder name by
1002         `elmo-net-format-quoted'.
1003
1004 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1005
1006         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
1007         (elmo-folder-search): Use it.
1008
1009 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1010
1011         * modb-standard.el (modb-standard-loaded-message-id): Use
1012         `elmo-msgdb-message-entity-field'.
1013
1014 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1015
1016         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
1017         without filename.
1018
1019 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
1020
1021         * elmo-util.el (elmo-set-auto-coding): New function.
1022         (elmo-object-load): Use it.
1023
1024 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1025
1026         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
1027         (elmo-time<): Define as alias of `elmo-time-less-p'.
1028         (elmo-time-to-datevec): New function.
1029
1030         * elmo-date.el (elmo-time-to-days): New function.
1031
1032 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1033
1034         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
1035         is not cons cell.
1036
1037 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1038
1039         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
1040         parenthesis.
1041
1042         * elmo-util.el (elmo-map-recursive): New function.
1043
1044         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
1045         (modb-entity-encode-string-recursive): Ditto.
1046
1047 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
1048
1049         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
1050         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
1051         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
1052         compare sequence number when last modified time is nil.
1053
1054 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
1055
1056         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
1057
1058         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
1059
1060 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
1061
1062         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
1063         modification time of the file.
1064
1065 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1066
1067         * elmo-util.el (elmo-condition-optimize): Discriminated against
1068         preserved fields, extra fields and the other weight.
1069
1070 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1071
1072         * modb-entity.el (initialize-instance): Define.
1073         (modb-entity-handler-mime-charset): New internal function.
1074         (modb-standard-entity-set-field): Use it.
1075         (elmo-msgdb-message-entity-field): Ditto.
1076         (elmo-msgdb-message-entity-field): Ditto.
1077
1078         * modb.el (elmo-msgdb-match-condition): Rewrite with
1079         `elmo-condition-match'.
1080         (elmo-msgdb-match-condition-primitive): New function.
1081
1082         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
1083         arguments `flags' and `numbers'.
1084         (elmo-msgdb-match-condition-primitive): Abolished (merged to
1085         `elmo-msgdb-message-match-condition').
1086         (modb-buffer-entity-handler): New class.
1087
1088         * elmo.el (elmo-folder-search): Optimize condition to use
1089         `elmo-condition-optimize'.
1090         (elmo-message-buffer-match-condition): New function.
1091         (elmo-message-match-condition): Use
1092         `elmo-message-buffer-match-condition' instead of
1093         `elmo-buffer-field-condition-match'.
1094
1095         * elmo-util.el (elmo-condition-match): New function.
1096         (elmo-condition-optimize): Ditto.
1097         (elmo-buffer-field-primitive-condition-match): Abolish.
1098         (elmo-buffer-field-condition-match): Ditto.
1099
1100         * elmo-archive.el (elmo-archive-field-condition-match): Use
1101         `elmo-message-buffer-match-condition' instead of
1102         `elmo-buffer-field-condition-match'.
1103
1104 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1105
1106         * elmo-flag.el (elmo-global-flags-initialize): Check the
1107         existence of the flag directory.
1108
1109 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1110
1111         * elmo-access.el (elmo-folder-initialize): Call
1112         `elmo-multi-connect-signals'.
1113
1114         * elmo-pipe.el (elmo-folder-close): Define.
1115
1116         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
1117         children folders.
1118
1119         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
1120         with target folder.
1121
1122         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
1123         `number'.
1124
1125         * elmo-multi.el (elmo-message-entity): Don't use return value of
1126         `elmo-message-entity-set-number'.
1127
1128 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1129
1130         * modb.el (modb-generic): Added slot `mime-charset'.
1131
1132         * modb-standard.el (modb-standard): Added slot `overview-handler'.
1133         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
1134         and `modb-entity-handler-dump-parameters'.
1135         (modb-standard-default-entity-handler): Abolish.
1136         (elmo-msgdb-message-entity-handler): Save created handler by
1137         instance slot.
1138
1139         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
1140         (modb-entity-handler-list-parameters): New method.
1141         (modb-entity-handler-equal-p): New function.
1142         (modb-entity-handler-dump-parameters): Ditto.
1143         (modb-entity-parse-address-string): Encode return value.
1144         (modb-entity-make-address-string): Decode argument value.
1145         (modb-entity-decode-string-recursive): New function.
1146         (modb-entity-encode-string-recursive): Ditto.
1147         (modb-standard-entity-normalizer): Set to encode field value.
1148         (modb-standard-entity-specializer): Follow the above change.
1149         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
1150         mime-charset of handler.
1151         (elmo-msgdb-message-entity-field): Ditto.
1152         (elmo-msgdb-copy-message-entity): Fixed reference to internal
1153         structure.
1154         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
1155
1156         * elmo.el (elmo-folder): Added slot `mime-charset'.
1157         (elmo-make-folder): Added argument `mime-charset'.
1158         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
1159         `mime-charest'.
1160
1161         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
1162         (elmo-make-msgdb): Likewise.
1163
1164         * elmo-internal.el (elmo-internal-folder-initialize): Call
1165         `luna-make-entity' with :mime-charset parameter.
1166
1167 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
1168
1169         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
1170         encoded words in `from' and `subject' field.
1171
1172 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1173
1174         * modb.el (elmo-msgdb-message-field): Add argument `type'.
1175         (elmo-msgdb-match-condition): Get handler from entity instead of
1176         msgdb.
1177
1178         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
1179         (modb-standard-load-entity): Treat new file format.
1180         (modb-standard-save-entity-1): Save as new file format.
1181         (modb-standard-save-entity): Split messages into section here.
1182         (elmo-msgdb-message-field): Follow the API change.
1183         (modb-standard-default-entity-handler): New internal variable.
1184         (elmo-msgdb-message-entity-handler): Define.
1185
1186         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1187         to `elmo-vars.el'.
1188         (modb-entity-field-extractor-alist): New user option.
1189         (elmo-msgdb-message-entity-field): Removed argument `decode' and
1190         added argument `type'.
1191         (elmo-msgdb-copy-message-entity): Add optional argument
1192         `make-handler'.
1193         (modb-set-field-converter): New function.
1194         (modb-convert-field-value): Ditto.
1195         (modb-entity-string-decoder): Ditto.
1196         (modb-entity-string-encoder): Ditto.
1197         (modb-entity-parse-date-string): Ditto.
1198         (modb-entity-make-date-string): Ditto.
1199         (modb-entity-mime-decoder): Ditto.
1200         (modb-entity-mime-encoder): Ditto.
1201         (modb-entity-address-list-decoder): Ditto.
1202         (modb-entity-address-list-encoder): Ditto.
1203         (modb-entity-parse-address-string): Ditto.
1204         (modb-entity-make-address-string): Ditto.
1205         (modb-entity-create-field-indices): Ditto.
1206         (modb-legacy-entity-field-slots): New constant.
1207         (modb-legacy-entity-field-indices): Ditto.
1208         (modb-legacy-entity-normalizer): New variable.
1209         (modb-legacy-entity-specializer): Ditto.
1210         (modb-legacy-entity-field-index): New macro.
1211         (modb-legacy-entity-set-field): New function.
1212         (modb-legacy-make-message-entity): Rewrite.
1213         (elmo-msgdb-create-message-entity-from-buffer): Use
1214         `elmo-msgdb-get-references-from-buffer'. Use
1215         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
1216         Use `modb-legacy-entity-set-field' instead of
1217         `elmo-msgdb-message-entity-set-field'.
1218         (elmo-msgdb-message-entity-field): Rewrite.
1219         (elmo-msgdb-message-entity-set-field): Ditto.
1220         (elmo-msgdb-copy-message-entity): Make new entity by
1221         `make-handler' if it specified.
1222         (elmo-msgdb-message-match-condition): Define a method of
1223         `modb-entity-handler' and follow the API change.
1224         (modb-standard-entity-handler): New class.
1225         (modb-entity-extract-ml-info-from-x-sequence): New function.
1226         (modb-entity-extract-ml-info-from-subject): Ditto.
1227         (modb-entity-extract-ml-info-from-return-path): Ditto.
1228         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
1229         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
1230         (modb-entity-extract-mailing-list-info): Ditto.
1231         (modb-entity-extract-mailing-list-info-functions): New variable.
1232
1233         * elmo.el (elmo-message-field): Add optional argument `type'.
1234
1235         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1236         from `modb-entity.el'.
1237
1238         * elmo-util.el (elmo-object-load): Decode by coding-system from
1239         `set-auto-coding-function'.
1240         (elmo-object-save): Use `detect-mime-charset-region' and add
1241         coding cookie if encode.
1242         (elmo-msgdb-get-references-from-buffer): New function.
1243         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
1244
1245         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
1246
1247         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
1248         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
1249         instead of `shimbun-make-header' and follow the API change.
1250         (elmo-shimbun-update-overview): Follow the API change.
1251         (elmo-map-folder-list-message-locations): Ditto.
1252
1253         * elmo-pipe.el (elmo-message-field): Ditto.
1254
1255         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
1256         Ditto.
1257
1258         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1259
1260         * elmo-multi.el (elmo-message-field): Ditto.
1261
1262         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
1263         (elmo-msgdb-sort-by-date): Ditto.
1264         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
1265         `elmo-message-entity-field'.
1266         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
1267         change.
1268         (elmo-msgdb-overview-entity-get-from): Ditto.
1269         (elmo-msgdb-overview-entity-get-subject): Ditto.
1270         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1271         (elmo-msgdb-overview-entity-get-date): Ditto.
1272         (elmo-msgdb-overview-entity-get-to): Ditto.
1273         (elmo-msgdb-overview-entity-get-cc): Ditto.
1274
1275         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1276         (elmo-mime-collect-message/partial-pieces): Ditto.
1277
1278         * elmo-filter.el (elmo-message-field): Ditto.
1279
1280         * elmo-date.el (elmo-datevec-to-time): New function.
1281         (elmo-time-parse-date-string): Ditto.
1282         (elmo-time-make-date-string): Ditto.
1283         (elmo-time<): Ditto.
1284
1285         * elmo-version.el (elmo-version): Up to 2.15.1.
1286
1287 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
1288
1289         * elmo-flag.el (elmo-global-flags-initialize): Don't include
1290         member of elmo-local-flags.
1291
1292 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
1293
1294         * elmo-version.el (elmo-version): Up to 2.15.0.
1295
1296 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1297
1298         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
1299         `ignore-msgdb' is non-nil.
1300
1301 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1302
1303         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
1304         (elmo-condition-in-msgdb-p): Ditto.
1305         (elmo-file-field-primitive-condition-match): Ditto.
1306         (elmo-file-field-condition-match): Ditto.
1307
1308         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
1309
1310 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1311
1312         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
1313         subdirectories here.
1314         (elmo-global-flags-initialize): New function.
1315
1316         * elmo.el (toplevel): Added autoload setting for
1317         `elmo-global-flags-initialize'.
1318
1319 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
1320
1321         * elmo.el (message-number-changed): Define new signal.
1322         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
1323         message-number-changed signal.
1324         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1325         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1326         Respect `elmo-pack-number-check-strict'.
1327
1328 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1329
1330         * elmo-signal.el (elmo-connect-signal): Document.
1331         (elmo-emit-signal): Ditto.
1332         (elmo-emit-signal): It should pass source argument to filter and
1333         handler, not slot-source.
1334
1335 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1336
1337         * modb.el (elmo-msgdb-update-entity): New API and define generic
1338         implement.
1339
1340         * modb-standard.el (elmo-msgdb-update-entity): Define.
1341
1342         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
1343         API and define generic implement.
1344
1345         * elmo.el (update-overview): New singnal.
1346
1347         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
1348         `elmo-msgdb-update-entity' and emit signal `update-overview'.
1349         (elmo-message-entity-parent): Define.
1350
1351         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
1352         `update-overview'.
1353
1354         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
1355
1356         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
1357
1358 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
1359
1360         * elmo.el (elmo-folder-synchronize): Sort the return value of
1361         `elmo-list-diff'.
1362
1363         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
1364         list.
1365
1366 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1367
1368         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
1369         `default-enable-multibyte-characters'.
1370         (elmo-object-load): Use `with-temp-buffer' instead of
1371         `elmo-set-work-buf'.
1372         (elmo-object-save): Ditto.
1373         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
1374         `elmo-set-work-buf'.
1375         (elmo-decoded-field-body): Ditto.
1376
1377         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
1378
1379         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
1380         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
1381
1382         * elmo-version.el (elmo-version): Up to 2.13.3.
1383
1384 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
1385
1386         * elmo-util.el (elmo-list-diff): Fix the last change.
1387         Reverse order of result lists.
1388
1389 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
1390
1391         * modb-standard.el (elmo-msgdb-set-flag): Use
1392         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
1393         (elmo-msgdb-unset-flag): Ditto.
1394
1395         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
1396         `elmo-list-diff'.
1397
1398         * elmo-util.el (elmo-list-diff): Rewrite.
1399         (elmo-list-diff-nonsortable): New function.
1400
1401 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
1402
1403         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
1404         `elmo-multibypte-buffer-name'.  All referers are updated.
1405
1406 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1407
1408         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
1409         (elmo-mime-entity-fragment-p): New function.
1410         (mime-elmo-buffer-entity): Added slot `reassembled'.
1411         (elmo-message-mime-entity): Added 4th argument `reassemble'.
1412         (elmo-message-mime-entity-internal): New function (renamed from
1413         `elmo-message-mime-entity').
1414         (elmo-mime-inherit-field-list-from-enclosed): New constant.
1415         (elmo-mime-make-reassembled-mime-entity): New function.
1416         (elmo-message-reassembled-mime-entity): Ditto.
1417         (elmo-mime-collect-message/partial-pieces): Ditto.
1418
1419 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1420
1421         * elmo.el (elmo-message-fetch-string): Disable multibyte.
1422
1423         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
1424         (elmo-with-enable-multibyte): New macro.
1425
1426         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
1427
1428 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1429
1430         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
1431         argument `number'.
1432         (elmo-filter-connect-signals): Follow the above change.
1433
1434 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
1435
1436         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
1437
1438         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
1439         that only the first flag is used.
1440
1441 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1442
1443         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
1444         if available.
1445
1446 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1447
1448         * elmo-signal.el: New file.
1449
1450         * elmo.el (toplevel): Require elmo-signal.
1451         (flag-changing, flag-changed, cache-changed): New signal.
1452         (elmo-folder): Remove slog `handlers'.
1453         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1454         `elmo-folder-notify-event'.
1455         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1456         (elmo-folder-unset-flag): Ditto.
1457         (elmo-event-handler): Abolish.
1458         (elmo-event-handler-flag-changed): Ditto.
1459         (elmo-event-handler-cache-changed): Ditto.
1460         (elmo-folder-add-handler): Ditto.
1461         (elmo-folder-remove-handler): Ditto.
1462         (elmo-folder-notify-event): Ditto.
1463
1464         * elmo-pipe.el (toplevel): Require elmo-signal.
1465         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1466         (elmo-pipe-connect-signals): New function.
1467         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1468         (elmo-folder-set-flag): Ditto.
1469         (elmo-folder-unset-flag): Ditto.
1470         (elmo-message-set-cached): Ditto.
1471
1472         * elmo-multi.el (toplevel): Require elmo-signal.
1473         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1474         (elmo-multi-connect-signals): New function.
1475         (elmo-multi-map-numbers): Ditto.
1476         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1477         (elmo-message-fetch): Ditto.
1478         (elmo-folder-set-flag): Ditto.
1479         (elmo-folder-unset-flag): Ditto.
1480
1481         * elmo-filter.el (toplevel): Require elmo-signal.
1482         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1483         (elmo-filter-connect-signals): New function.
1484         (elmo-filter-add-flag-count): Ditto.
1485         (elmo-message-fetch): Does not call
1486         `elmo-filter-folder-countup-message-flags' and
1487         `elmo-folder-notify-event'.
1488         (elmo-message-set-cached): Ditto.
1489         (elmo-folder-set-flag): Ditto.
1490         (elmo-folder-unset-flag): Ditto.
1491
1492         * elmo-version.el (elmo-version): Up to 2.13.2.
1493
1494 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1495
1496         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1497         `flags'.
1498
1499 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1500
1501         * elmo-filter.el (elmo-message-set-cached): Call
1502         `elmo-folder-notify-event' with event `cache-changed'.
1503
1504         * elmo-multi.el (elmo-message-set-cached): Ditto.
1505
1506         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1507
1508 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1509
1510         * elmo.el (elmo-folder-encache): Abolish.
1511
1512 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1513
1514         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1515         (elmo-folder-next-message-number-dop): Return appropriate negative
1516         integer.
1517
1518 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1519
1520         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1521         clearing pending operations.
1522         (elmo-folder-next-message-number-dop): Return appropriate negative
1523         integer.
1524
1525 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1526
1527         * elmo.el (toplevel): Added autoload setting for `md5'.
1528         (elmo-msgdb-path-encode-threshold): New user option.
1529         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1530         longer than `elmo-msgdb-path-encode-threshold'.
1531
1532         * elmo-flag.el (elmo-global-mark-migrate): Use
1533         `elmo-folder-expand-msgdb-path' instead of
1534         `elmo-folder-msgdb-path'.
1535
1536 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1537
1538         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1539         element of the difference is nil.
1540
1541 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1542
1543         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1544         to the check logic of file systems which are weak in colon character.
1545
1546 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1547
1548         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1549
1550 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1551
1552         * elmo-maildir.el (elmo-maildir-move-file): New function.
1553         (elmo-folder-append-buffer): Use it.
1554         (elmo-folder-append-messages): Ditto.
1555         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1556
1557         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1558         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1559
1560         * elmo-maildir.el (elmo-maildir-separator): New user option.
1561         (elmo-maildir-adjust-separator): New macro.
1562         (elmo-maildir-list-location): Use it.
1563         (elmo-maildir-update-current): Ditto.
1564         (elmo-maildir-set-mark): Ditto.
1565         (elmo-maildir-delete-mark): Ditto.
1566         (These changes are based on Hiroya Murata's patch [wl: 13437])
1567
1568 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1569
1570         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1571
1572 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1573
1574         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1575         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1576         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1577
1578 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1579
1580         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1581         Use `with-temp-buffer'.
1582
1583 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1584
1585         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1586
1587         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1588         `wl-read-search-condition').
1589         (elmo-read-search-condition-internal): Likewise.
1590
1591         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1592         (elmo-flag-valid-p): New function.
1593         (elmo-folder-initialize): Check flag name is valid.
1594
1595 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1596
1597         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1598         delimiter to obtain root mailbox itself.
1599
1600 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1601
1602         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1603         type mismatch.
1604
1605 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1606
1607         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1608         as t.
1609
1610 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1611
1612         * elmo-shimbun.el (toplevel): Require cl at compile.
1613
1614         * elmo-nntp.el (toplevel): Ditto.
1615
1616         * elmo-nmz.el (toplevel): Ditto.
1617
1618         * elmo-multi.el (toplevel): Ditto.
1619
1620         * elmo-file.el (toplevel): Ditto.
1621
1622         * elmo-dop.el (toplevel): Ditto.
1623
1624         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1625
1626 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1627
1628         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1629         as nil.
1630
1631         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1632         size of elmo-message-fetch-internal is 0 byte.
1633
1634 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1635
1636         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1637
1638 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1639
1640         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1641         always plugged.
1642
1643 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1644
1645         * elmo-maildir.el (elmo-map-message-fetch): Call
1646         `elmo-map-folder-set-flag'.
1647
1648         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1649         (elmo-message-fetch): Merge from
1650         `elmo-message-fetch-with-cache-process'.
1651
1652         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1653         (elmo-message-fetch): Define.
1654
1655         * elmo-nntp.el (elmo-message-fetch): Renamed from
1656         `elmo-message-fetch-with-cache-process'.
1657
1658         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1659         (elmo-message-fetch): Define.
1660
1661         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1662         search-key.
1663
1664         * elmo-shimbun.el (shimbun-mua-search-id): Use
1665         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1666         (elmo-shimbun-folder-shimbun-header): Ditto.
1667         (elmo-shimbun-get-headers): Ditto.
1668         (elmo-shimbun-update-overview): Ditto.
1669
1670         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1671
1672         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1673         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1674
1675 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1676
1677         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1678         message is cached.
1679         (elmo-message-fetch-string): Fixed argument.
1680
1681 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1682
1683         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1684         exchange order of arguments `section' and `unread'.
1685         (elmo-message-encache): Follow the API change.
1686         (elmo-message-match-condition): Ditto.
1687         (elmo-generic-folder-append-messages): Ditto.
1688         (elmo-message-fetch-string): New function.
1689
1690         * elmo-split.el (elmo-split-subr): Ditto.
1691
1692         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1693
1694         * elmo-pipe.el (elmo-message-fetch): Ditto.
1695
1696         * elmo-multi.el (elmo-message-fetch): Ditto.
1697
1698         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1699
1700         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1701
1702         * elmo-filter.el (elmo-message-fetch): Ditto.
1703
1704         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1705
1706         * elmo-imap4.el (mime-imap-location-section-body): Use
1707         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1708         follow the API change.
1709
1710 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1711
1712         * elmo-access.el: New file.
1713
1714         * elmo-null.el: Ditto.
1715
1716         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1717
1718 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1719
1720         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1721         (elmo-network-session): New attribute `last-accessed'.
1722         (elmo-network-get-session): Discard network cache if elapsed time
1723         since last-accessed is larger than elmo-network-session-idle-timeout.
1724
1725 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1726
1727         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1728         and added `number', `require-entireness'.
1729         (elmo-find-fetch-strategy): Rewrite.
1730         (elmo-message-fetch): Unset `unread' flag when argument unread is
1731         non-nil.
1732
1733         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1734
1735         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1736         (elmo-message-fetch): Notify event `flag-changed'.
1737
1738         * elmo-pipe.el: Likewise.
1739
1740         * elmo-mime.el (elmo-mime-entity): New class.
1741         (elmo-mime-entity-display-p): New generic function.
1742         (elmo-mime-entity-display): Ditto.
1743         (elmo-mime-entity-display-as-is): Ditto.
1744         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1745         elmo-mime-entity.
1746         (elmo-make-mime-message-location): Removed.
1747         (elmo-mime-message-display): Ditto.
1748         (elmo-mime-display-as-is): Ditto.
1749         (elmo-message-mime-entity): New function.
1750
1751         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1752
1753         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1754         change.
1755         (elmo-message-fetch): Re-count flagged message number and notify
1756         event `flag-changed'.
1757
1758         * elmo-version.el (elmo-version): Up to 2.13.1.
1759
1760 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1761
1762         * elmo-filter.el (elmo-message-field): Define.
1763         (elmo-message-set-field): Ditto.
1764
1765 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1766
1767         * elmo.el (elmo-message-set-cached): Call
1768         `elmo-folder-notify-event' with cache-changed.
1769         (elmo-event-handler-cache-changed): New generic function.
1770
1771 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1772
1773         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1774         instead of elmo-add-name-to-file.
1775         (elmo-folder-append-messages): Ditto.
1776
1777 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1778
1779         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1780
1781 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1782
1783         * elmo-version.el (elmo-version): Up to 2.13.0.
1784
1785         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1786         `auto'.
1787
1788         * modb-standard.el (modb-standard-economize-entity-size): Changed
1789         default value to `t'.
1790
1791         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1792         `standard'.
1793
1794         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1795         after parsing greeting string.
1796
1797 2004-11-23  Daishi Kato <daishi@axlight.com>
1798
1799         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1800         New user option.
1801         (elmo-spam-spamoracle-call): Use it.
1802
1803 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1804
1805         * elmo.el (elmo-message-accessible-p): Message in dop spool
1806         is accessible.
1807
1808 2004-11-23  Daishi Kato <daishi@axlight.com>
1809
1810         * elsp-spamoracle.el: New file.
1811
1812 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1813
1814         * elmo.el (elmo-message-flags-for-append): New function.
1815         (elmo-generic-folder-append-messages): Use it.
1816
1817         * elmo-split.el (elmo-split-subr): Ditto.
1818
1819         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1820         `flags' and use elmo-folder-append-buffer instead of
1821         write-region-as-binary.
1822         (elmo-dop-filter-pending-messages): New function.
1823         (elmo-folder-append-buffer-dop): Call
1824         elmo-dop-spool-folder-append-buffer with `flag'.
1825         (elmo-folder-set-flag-dop): Filter messages by
1826         elmo-dop-filter-pending-messages.
1827         (elmo-folder-unset-flag-dop): Ditto.
1828         (elmo-folder-append-buffer-dop-delayed): Use
1829         elmo-message-flags-for-append to get flags of the message and
1830         simplify.
1831
1832 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1833
1834         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1835
1836 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1837
1838         * elmo.el (elmo-folder): Added handlers slot.
1839         (elmo-event-handler): New class.
1840         (elmo-event-handler-flag-changed): New API.
1841         (elmo-folder-add-handler): New function.
1842         (elmo-folder-remove-handler): Ditto.
1843         (elmo-folder-notify-event): Ditto.
1844         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1845         `flag-changed'.
1846         (elmo-folder-unset-flag): Ditto.
1847
1848         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1849         (elmo-folder-unset-flag): Ditto.
1850
1851         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1852         (elmo-folder-unset-flag): Ditto.
1853
1854         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1855         (elmo-folder-unset-flag): Ditto.
1856
1857         * elmo-version.el (elmo-version): Up to 2.11.33.
1858
1859 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1860
1861         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1862
1863 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1864
1865         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1866
1867         * elmo-flag.el (elmo-folder-unset-flag): Define.
1868         (elmo-global-flag-detach): Do process when the flag is not target
1869         flag.
1870
1871 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1872
1873         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1874         variable.
1875         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1876
1877 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1878
1879         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1880         function.
1881         (elmo-folder-delete-messages): Detach messages before delete
1882         messages from target folder.
1883         (elmo-folder-detach-messages): Set updated number-list to slot.
1884
1885 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1886
1887         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1888
1889 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1890
1891         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1892
1893 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1894
1895         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1896         internal use only).
1897         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1898         not modified.
1899         (elmo-folder-delete-messages): Define.
1900         (elmo-folder-move-messages): Don't call
1901         `elmo-folder-detach-messages'.
1902         (elmo-folder-synchronize): Rewrite.
1903         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1904
1905         * elmo-util.el (elmo-last): New function.
1906         (elmo-set-list): Ditto.
1907         (elmo-number-set-delete-list): Ditto.
1908         (elmo-number-set-delete): Ditto.
1909
1910         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1911
1912         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1913         `elmo-folder-delete-messages' and don't delete location map.
1914         (elmo-folder-detach-messages): Define.
1915
1916         * elmo-imap4.el (elmo-folder-delete): Use
1917         `elmo-folder-delete-messages-internal' instead of
1918         `elmo-folder-delete-messages'.
1919
1920         * elmo-filter.el (elmo-folder-delete-messages): Call
1921         `elmo-folder-detach-messages'.
1922         (elmo-folder-detach-messages): Don't call
1923         `elmo-folder-detach-messages' for target folder.
1924
1925         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1926         message deletion is succeeded.
1927
1928         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1929
1930         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1931         from `elmo-folder-delete-messages'.
1932
1933         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1934
1935         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1936
1937         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1938
1939         * elmo-version.el (elmo-version): Up to 2.11.32.
1940
1941 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1942
1943         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1944         (elmo-global-flag-list): Added obsolete variable setting.
1945
1946         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1947
1948         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1949         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1950         `elmo-mime-display-header-analysis' is nil.
1951
1952         * elmo-flag.el (elmo-global-flags): Renamed from
1953         `elmo-global-flag-list' (All other related portions are changed).
1954         (elmo-local-flags): New variable.
1955         (elmo-local-flag-p): New function.
1956         (elmo-global-flag-set-internal): Cause an error when flag is not
1957         global.
1958
1959 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1960
1961         * elmo-util.el (elmo-concat-path): Treat empty path.
1962
1963 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1964
1965         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1966         field-or-fields).
1967         (elmo-split-address-match): Ditto.
1968         (elmo-split-equal): Ditto.
1969         (elmo-split-match): Ditto.
1970
1971 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1972
1973         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1974         (elmo-generic-folder-append-messages): If src message exists but
1975         has no flag, pass (read) for the FLAG argument of
1976         `elmo-folder-append-buffer'. Otherwise, pass nil.
1977
1978         * elmo-split.el (elmo-split-subr): Likewise.
1979
1980         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1981
1982         * elmo-multi.el (elmo-message-flags): Ditto.
1983
1984         * elmo-filter.el (elmo-message-flags): Ditto.
1985
1986         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1987         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1988         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1989         
1990 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1991
1992         * elmo-split.el (elmo-split-rule): Update comment.
1993         (elmo-split-address-equal): Allow 2nd argument to be a list.
1994         (elmo-split-address-match): Ditto.
1995         (elmo-split-equal): Ditto.
1996         (elmo-split-match): Ditto.
1997
1998 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1999
2000         * elmo.el (elmo-folder-append-buffer): Fix docstring.
2001         (elmo-folder-append-msgdb): Don't treat `read'.
2002         (elmo-message-flags): Don't return `read'.
2003
2004         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
2005         (elmo-folder-unset-read-delayed): Ditto.
2006
2007         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
2008
2009 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
2010
2011         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
2012         deletion.
2013
2014 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2015
2016         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
2017         header.
2018
2019 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
2020
2021         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
2022         here.
2023         (elmo-msgdb-save): Bind inhibit-quit.
2024         (modb-standard-message-entity): Ditto.
2025
2026 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
2027
2028         * elmo-database.el: No need to require elmo-msgdb.
2029
2030 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2031
2032         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
2033         instead of `elmo-list-subdirectories'.
2034
2035 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
2036
2037         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
2038         group entry.
2039         (elmo-folder-exists-p): "[" is empty.
2040         (elmo-folder-list-subfolders): Define.
2041         (elmo-folder-have-subfolder-p): Ditto.
2042
2043 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
2044
2045         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
2046
2047 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
2048
2049         * elmo-filter.el (elmo-folder-local-p): Define.
2050
2051 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2052
2053         * modb-standard.el (modb-standard-loaded-message-id): Return nil
2054         when entity is garbaged.
2055         (modb-standard-save-entity-1): Don't modify the original entity.
2056
2057 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
2058
2059         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
2060
2061 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2062
2063         * elmo.el (elmo-strict-folder-diff): Use
2064         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
2065
2066 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
2067
2068         * modb.el (elmo-msgdb-flag-available-p): New generic function.
2069         (elmo-msgdb-message-number): Ditto.
2070         (elmo-msgdb-message-field): Ditto.
2071
2072         * modb-standard.el (modb-standard-economize-entity-size): New user
2073         option.
2074         (modb-standard-loaded-message-id): New inline function.
2075         (modb-standard-load-entity): Use it.
2076         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
2077         throw message-id string away.
2078         (elmo-msgdb-flag-available-p): Define.
2079         (elmo-msgdb-message-number): Ditto.
2080         (elmo-msgdb-message-field): Ditto.
2081
2082         * modb-legacy.el (modb-legacy-flag-list): Fix typo
2083         (suppoted -> supported).
2084         (modb-legacy-supported-flag-p): Ditto.
2085         (elmo-msgdb-set-flag): Ditto.
2086         (elmo-msgdb-unset-flag): Ditto.
2087         (elmo-msgdb-flag-available-p): Define.
2088
2089         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
2090         is `t', treat it as legacy entity.
2091         
2092         * elmo.el (elmo-message-flag-available-p): New generic function.
2093         (elmo-message-number): Ditto.
2094         (elmo-message-field): Use `elmo-msgdb-message-field'.
2095
2096         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
2097
2098         * elmo-pipe.el (elmo-message-flag-available-p): Define.
2099         (elmo-message-number): Ditto.
2100
2101         * elmo-multi.el (elmo-message-number): Define.
2102         (elmo-message-flag-available-p): Ditto.
2103
2104         * elmo-filter.el (elmo-message-flag-available-p): Define.
2105         (elmo-message-number): Ditto.
2106
2107         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
2108         (elmo-folder-initialize): Load `max-number'.
2109         (elmo-folder-commit): Save it.
2110         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
2111         (elmo-global-flag-set-internal): Set up max-number slot.
2112
2113 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
2114
2115         * elmo-version.el (elmo-version): Up to 2.11.31.
2116
2117 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
2118
2119         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
2120         unibyte string of the current buffer for the argument of `md5'
2121         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
2122
2123 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2124
2125         * modb-legacy.el (modb-legacy-flag-list): New constant.
2126         (modb-legacy-suppoted-flag-p): New internal function.
2127         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
2128         (elmo-msgdb-unset-flag): Ditto.
2129
2130 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
2131
2132         * elmo.el (elmo-make-folder): Remove text properties for prefix.
2133
2134         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
2135         from msgdb.
2136
2137 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2138
2139         * elmo-multi.el (elmo-folder-count-flags): Changed return value
2140         (follow the API change).
2141
2142         * elmo-filter.el (elmo-folder-count-flags): Ditto.
2143
2144 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
2145
2146         * modb-standard.el (modb-standard-digest-flags): Abolish.
2147         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
2148
2149         * elmo-vars.el (elmo-digest-flags): New variable.
2150         (elmo-preserved-flags): Moved from elmo-flag.el.
2151
2152         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
2153         (elmo-imap4-flag-to-imap-criteria): Ditto.
2154         (elmo-imap4-folder-list-flagged): Use it.
2155
2156         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
2157
2158         * elmo.el (elmo-folder-count-flags): Changed return value.
2159
2160         * elmo-flag.el (elmo-preserved-flags): New variable.
2161         (elmo-get-global-flags): Use it.
2162
2163         * modb-standard.el (modb-standard-digest-flags): New variable.
2164         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
2165         Changed behavior of `any'.
2166
2167         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
2168         which are defined the Internet draft
2169         (draft-melnikov-imap-keywords-03.txt).
2170         (elmo-imap4-flags-to-imap): New function.
2171         (elmo-folder-append-buffer): Use it.
2172
2173         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
2174         in the docstring.
2175
2176         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
2177         avoid the bug of Emacs 21.3.
2178
2179 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
2180
2181         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
2182         function find-coding-system does not exist.
2183
2184 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2185
2186         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
2187         parsing.
2188
2189 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2190
2191         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
2192         response codes.
2193
2194 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2195
2196         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
2197         (elmo-network-close-session): Follow the changes in
2198         `elmo-pop3-read-response'.
2199         (elmo-pop3-auth-user): Ditto.
2200         (elmo-pop3-auth-apop): Ditto.
2201         (elmo-network-initialize-session): Ditto.
2202         (elmo-network-authenticate-session): Ditto.
2203         (elmo-network-setup-session): Ditto.
2204         (elmo-folder-status): Ditto.
2205         (elmo-message-fetch-plugged): Ditto.
2206         (elmo-pop3-delete-msg): Ditto.
2207
2208 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
2209
2210         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
2211         on failure.
2212
2213 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2214
2215         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
2216         style.
2217         (elmo-bind-directory): Ditto.
2218
2219 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2220
2221         * elmo.el (elmo-folder-append-messages): Note on return value.
2222         * elmo-archive.el (elmo-folder-append-messages): Don't return
2223         message numbers which could not be appended.
2224
2225 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2226
2227         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
2228
2229 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2230
2231         * elmo-version.el (elmo-version): Up to 2.11.30.
2232
2233 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2234
2235         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
2236         `mask'.
2237
2238         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
2239
2240         * elmo-multi.el (elmo-folder-synchronize): Likewise.
2241         (elmo-multi-split-numbers): Add elmo-folder object into each
2242         element of return value at first.
2243         (elmo-folder-delete-messages): Follow the above change.
2244         (elmo-folder-detach-messages): Ditto.
2245
2246         * elmo-filter.el (elmo-folder-synchronize): Minimize message
2247         number which is synchronized in target folder.
2248
2249 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2250
2251         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
2252         Change default value to symbol `all'.
2253         (elmo-map-message-fetch): Change condition to update overview
2254         follow the above.
2255
2256 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2257
2258         * elmo-shimbun.el (elmo-map-message-fetch): Change default
2259         behavior to update overview.
2260         (elmo-shimbun-update-overview-folder-list): Note it.
2261
2262 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2263
2264         * modb-standard.el (modb-standard-message-entity): Avoid infinite
2265         recursive call.
2266
2267 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2268
2269         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
2270         buffer-disable-undo, it is unnecessary.
2271         (elmo-spam-register-good-messages): Ditto.
2272
2273         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2274         Ditto.
2275
2276         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
2277
2278 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2279
2280         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
2281         (elmo-set-work-buf): Use set-buffer-multibyte instead of
2282         elmo-set-buffer-multibyte.
2283         (elmo-object-load): Ditto.
2284         (elmo-save-buffer): Ditto.
2285         (elmo-delete-char): Ditto.
2286         (elmo-file-field-primitive-condition-match): Ditto.
2287         (elmo-mime-string): Ditto.
2288
2289         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
2290         (elmo-archive-field-condition-match): Ditto.
2291
2292         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
2293
2294         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
2295
2296         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
2297         (elmo-nntp-msgdb-create-message): Ditto.
2298
2299         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2300
2301         * elmo.el (elmo-message-match-condition): Ditto.
2302         (elmo-message-match-condition): Ditto.
2303
2304         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2305         Ditto.
2306
2307         * elmo-version.el (elmo-version): Up to 2.11.29.
2308
2309         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
2310         (elsp-header): New backend.
2311
2312         * elmo-util.el (elmo-decoded-field-body): New function.
2313
2314 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2315
2316         * elmo-version.el (elmo-version): Up to 2.11.28.
2317
2318 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2319
2320         * elmo-filter.el: Rewrite.
2321
2322         * elmo-version.el (elmo-version): Up to 2.11.27.
2323
2324 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
2325
2326         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
2327         msgdb path for the localdir folder with absolute path.
2328
2329         * utf7.el: Synch up with latest gnus/utf7.el;
2330         Modified for latest Emacs.
2331
2332 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2333
2334         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
2335         shimbun backend couldn't open.
2336
2337 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
2338
2339         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
2340         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
2341         when a destination folder is a filter folder.
2342
2343 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2344
2345         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
2346         (elmo-generic-folder-append-messages): Call elmo-message-flags
2347         with argument `msgid'.
2348
2349         * elmo-split.el (elmo-split-subr): Ditto.
2350
2351         * elmo-pipe.el (elmo-message-flags): Follow the API change.
2352
2353         * elmo-multi.el (elmo-message-flags): Ditto.
2354
2355 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2356
2357         * elmo.el (elmo-folder): Add new slot `flag-table'.
2358         (elmo-folder-flag-table): New API.
2359         (elmo-folder-close-flag-table): Ditto.
2360         (elmo-folder-preserve-flags): New function.
2361         (elmo-generic-folder-append-messages): Use
2362         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
2363         Flag of a non-registered message, it sets to nil.
2364         Does not set flag to flag-table.
2365
2366         * elmo-maildir.el (elmo-folder-append-buffer): Use
2367         `elmo-folder-preserve-flags'.
2368         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2369         `elmo-folder-close-flag-table'.
2370
2371         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
2372         (elmo-archive-folder-append-buffer): Use
2373         `elmo-folder-preserve-flags'.
2374
2375         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
2376
2377         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
2378
2379         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2380         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2381         `elmo-folder-close-flag-table'.
2382
2383         * elmo-version.el (elmo-version): Up to 2.11.26.
2384
2385 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2386
2387         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
2388
2389         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
2390         md5's 4th and 5th argument (non-existent in flim one).
2391
2392 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2393
2394         * elmo-split.el (elmo-split-subr): Flag of a non-registered
2395         message, It sets to nil.
2396
2397 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2398
2399         * elmo.el (elmo-folder-list-messages): Merge lists only if both
2400         list is non-nil.
2401
2402 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
2403
2404         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
2405
2406         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
2407
2408         * elmo-util.el (elmo-uniq-sorted-list): New function.
2409         (elmo-make-number-list): Ditto.
2410         (elmo-number-set-to-number-list): Use elmo-make-number-list
2411         and don't use nreverse.
2412
2413 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2414
2415         * elmo-version.el (elmo-version): Up to 2.11.25.
2416
2417 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2418
2419         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
2420         field not exists in message, Use md5 message digest of header.
2421
2422 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2423
2424         * elmo.el (elmo-folder-append-buffer): Add note on return value.
2425         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
2426         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2427         * elmo-split.el (elmo-split-subr): Check return value of
2428         elmo-folder-append-buffer.
2429
2430         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
2431         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2432
2433         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
2434         message-id.
2435
2436 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
2437
2438         * elmo-split.el (elmo-split-subr): Append message with flag.
2439
2440         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
2441         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
2442         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2443
2444 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
2445
2446         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
2447         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
2448         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2449
2450 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
2451
2452         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2453         with a function call of `process-buffer'.  All callers are updated.
2454         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2455         Remove redundant `set-buffer' in a while loop.
2456
2457 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2458
2459         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2460         calls.
2461
2462 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2463
2464         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2465         elsp-spamfilter-register-buffer-internal with current buffer.
2466         (elmo-spam-register-spam-buffer): Ditto.
2467         (elmo-spam-register-good-buffer): Ditto.
2468
2469 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2470
2471         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2472         if it is not contained in the response(A workaround for courier-imap).
2473
2474 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2475
2476         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2477         parenthesis.
2478
2479 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2480
2481         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2482         range.
2483
2484 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2485
2486         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2487         of nconc.
2488
2489         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2490         argument handler.
2491         (elmo-msgdb-message-match-condition): Follow the change above.
2492
2493 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2494
2495         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2496         folder name.
2497
2498 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2499
2500         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2501
2502 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2503
2504         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2505
2506 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2507
2508         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2509         not found.
2510
2511 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2512
2513         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2514         value.
2515         (elmo-file-command-argument): Undo last change for cygwin.
2516         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2517         Don't return nil.
2518         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2519
2520 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2521
2522         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2523         value returned from elmo-file-find is nil.
2524
2525 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2526
2527         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2528         to elmo-vars.el.
2529
2530         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2531         instead of insert-file-contents-as-binary.
2532         (elmo-message-set-field): New generic function.
2533
2534         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2535         behavior change on `split-string'.
2536
2537         * elmo-file.el (elmo-file-find): New function.
2538         (elmo-file-command): New user option.
2539         (elmo-file-command-argument): Ditto.
2540         (elmo-file-fetch-max-size): Ditto.
2541         (elmo-file-detect-format): New function.
2542         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2543         Use elmo-file-detect-format.
2544         (elmo-map-folder-list-message-locations): Don't treat directories.
2545
2546 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2547
2548         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2549         (elmo-passwd-alist-clear): Shred password before clear.
2550         (elmo-remove-passwd): Remove all mached pair.
2551
2552 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2553
2554         * elmo.el (elmo-folder-synchronize): Fix description of the return
2555         value.
2556
2557 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2558
2559         * elmo.el (elmo-message-fetch-bodystructure): New method.
2560         (elmo-message-fetch-bodystructure): Define default.
2561
2562         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2563         elmo-message-fetch-bodystructure.
2564         (elmo-message-fetch-bodystructure): Define.
2565
2566         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2567
2568 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2569
2570         * elmo-filter.el (elmo-message-folder): Define.
2571
2572 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2573
2574         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2575         elmo-delete-cr-buffer.
2576
2577         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2578
2579         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2580
2581         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2582
2583         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2584         type seems to be a text.
2585
2586 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2587
2588         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2589         (elmo-spam-register-good-buffer): Ditto.
2590         (elmo-spam-spamassassin-register-messages): Ditto.
2591
2592         * elmo-util.el (elmo-string-member-ignore-case): Define with
2593         static-cond.
2594
2595 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2596
2597         * elmo.el (elmo-folder-type): Undo last change.
2598
2599         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2600
2601         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2602         warnings.
2603
2604         * elmo-file.el: New file.
2605         
2606         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2607
2608         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2609         variable.
2610         (elmo-spam-spamassassin-register-messages): New inline function.
2611         (elmo-spam-register-spam-messages): Define.
2612         (elmo-spam-register-good-messages): Ditto.
2613
2614         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2615         Fixed typo.
2616
2617         * elmo.el (toplevel): Added autoload setting for
2618         `elmo-get-global-flags'.
2619         (elmo-message-has-global-flag-p): New function.
2620         (elmo-message-set-global-flags): Ditto.
2621         (elmo-folder-type): Improvement for name: format.
2622
2623         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2624         availability of keyword flags.
2625         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2626         (elmo-folder-list-flagged-plugged): Renamed from
2627         elmo-folder-list-flagged-unplugged.
2628         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2629         accept any flag as keyword flag.
2630         (elmo-folder-set-flag-plugged): Accept keyword flags.
2631         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2632
2633         * elmo-flag.el (elmo-get-global-flags): New function.
2634
2635         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2636         folders.
2637
2638         * elmo-version.el (elmo-version): Up to 2.11.24.
2639
2640 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2641
2642         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2643         elmo-multiple-field-body instead of std11-field-body to check all
2644         headers.
2645
2646 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2647
2648         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2649         or "size".
2650
2651 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2652
2653         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2654         unintern is unbound.
2655
2656 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2657
2658         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2659         Protect from infinite loop.
2660
2661 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2662
2663         * elsp-bogofilter.el
2664         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2665         (elmo-spam-bogofilter-register-messages): New internal function.
2666         (elmo-spam-register-spam-messages): Define.
2667         (elmo-spam-register-good-messages): Ditto.
2668
2669 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2670
2671         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2672         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2673         (elmo-spam-bogofilter-call): Fixed the last change.
2674         (elmo-spam-bogofilter-arguments): Ditto.
2675
2676         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2677         Follow the options change of latest bogofilter.
2678
2679         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2680         (elmo-spam-bogofilter-good-switch): Ditto.
2681         (elmo-spam-bogofilter-arguments-alist): New user option.
2682         (elmo-spam-bogofilter-debug): Ditto.
2683         (elmo-spam-bogofilter-call): Renamed from
2684         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2685         is non-nil, insert output in buffer for debug.
2686         (elmo-spam-bogofilter-arguments): New macro.
2687         (elmo-spam-buffer-spam-p): Use it.
2688         (elsp-bogofilter-register-buffer): Ditto.
2689
2690 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2691
2692         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2693         regexp.
2694
2695 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2696
2697         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2698         value as "ruby".
2699         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2700         (elmo-spam-bsfilter-program): Set default value as full path for
2701         `bsfilter'.
2702         (elmo-spam-bsfilter-debug): New user option.
2703         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2704         non-nil, insert output in buffer for debug. Fix treating of
2705         argument.
2706
2707 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2708
2709         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2710         `elmo-maildir-flag-specs' element instead of one.
2711         (elmo-map-folder-unset-flag): Ditto.
2712         (Reported by Ken Makimura <macky@astem.or.jp>)
2713
2714         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2715         (elmo-folder-unset-flag-plugged): Ditto.
2716
2717 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2718
2719         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2720         to `reads' slot only if `in-msgdb' is nil.
2721
2722 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2723
2724         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2725         and complement argument list.
2726
2727 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2728
2729         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2730         instead of elmo-folder-list-flagged.
2731
2732 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2733
2734         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2735
2736         * elsp-bsfilter.el: New file.
2737
2738         * elmo-pipe.el (elmo-folder-list-unreads,
2739         elmo-folder-list-answereds,
2740         elmo-folder-list-importants,
2741         elmo-folder-flag-as-important,
2742         elmo-folder-unflag-important,
2743         elmo-folder-flag-as-read,
2744         elmo-folder-unflag-read,
2745         elmo-folder-flag-as-answered,
2746         elmo-folder-unflag-answered): Remove.
2747         (elmo-folder-set-flag): Define.
2748         (elmo-folder-unset-flag): Ditto.
2749
2750         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2751         (elmo-folder-set-flag): Define.
2752         (elmo-folder-unset-flag): Ditto.
2753         (elmo-folder-list-unreads): Remove.
2754         (elmo-folder-list-flagged): Define.
2755
2756         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2757         (elmo-folder-list-unreads,
2758         elmo-folder-list-importants,
2759         elmo-folder-list-answereds,
2760         elmo-folder-list-unreads-plugged,
2761         elmo-folder-list-importants-plugged,
2762         elmo-folder-list-answereds-plugged): Remove.
2763         (elmo-folder-list-flagged-plugged): New method.
2764         (elmo-folder-unflag-important,
2765         elmo-folder-flag-as-important,
2766         elmo-folder-unflag-read,
2767         elmo-folder-flag-as-read,
2768         elmo-folder-unflag-answered,
2769         elmo-folder-flag-as-answered,
2770         elmo-folder-flag-as-read-unplugged,
2771         elmo-folder-unflag-read-unplugged,
2772         elmo-folder-flag-as-important-unplugged,
2773         elmo-folder-unflag-important-unplugged,
2774         elmo-folder-flag-as-answered-unplugged,
2775         elmo-folder-unflag-answered-unplugged): Remove.
2776         (elmo-folder-set-flag): Define.
2777         (elmo-folder-unset-flag): Ditto.
2778         (elmo-folder-set-flag-unplugged): Ditto.
2779         (elmo-folder-unset-flag-unplugged): Ditto.
2780
2781         * elmo-multi.el (elmo-folder-list-unreads,
2782         elmo-folder-list-answereds,
2783         elmo-folder-list-importants,
2784         elmo-folder-flag-as-important,
2785         elmo-folder-unflag-important,
2786         elmo-folder-flag-as-read,
2787         elmo-folder-unflag-read,
2788         elmo-folder-flag-as-answered,
2789         elmo-folder-unflag-answered): Remove.
2790         (elmo-folder-set-flag): Define.
2791         (elmo-folder-unset-flag): Ditto.
2792
2793         * elmo-map.el (elmo-map-folder-unflag-important,
2794         elmo-map-folder-flag-as-important,
2795         elmo-map-folder-unflag-read,
2796         elmo-map-folder-flag-as-read,
2797         elmo-map-folder-unflag-answered,
2798         elmo-map-folder-flag-as-answered): Remove.
2799         (elmo-map-folder-set-flag): New method.
2800         (elmo-map-folder-unset-flag): Ditto.
2801         (elmo-map-folder-list-unreads,
2802         elmo-map-folder-list-importants,
2803         elmo-map-folder-list-answereds): Remove.
2804         (elmo-folder-list-flagged-internal): Define.
2805         (elmo-map-folder-list-flagged): New method.
2806
2807         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2808         (elmo-map-folder-list-unreads,
2809         elmo-map-folder-list-importants,
2810         elmo-map-folder-list-flagged): Remove.
2811         (elmo-map-folder-list-flagged): Define.
2812         (elmo-map-folder-flag-as-important,
2813         elmo-map-folder-unflag-important,
2814         elmo-map-folder-flag-as-read,
2815         elmo-map-folder-unflag-read,
2816         elmo-map-folder-flag-as-answered,
2817         elmo-map-folder-unflag-answered): Remove.
2818         (elmo-maildir-set-mark-messages): New internal function.
2819         (elmo-map-folder-set-flag): Define.
2820         (elmo-map-folder-unset-flag): Ditto.
2821
2822         * elmo.el (toplevel): Added autoload setting for
2823         `elmo-folder-list-global-flag-messages'.
2824         (elmo-folder-list-unreads,
2825         elmo-folder-list-importants,
2826         elmo-folder-list-answereds): Remove.
2827         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2828         Return a list whitch merged with messages have global flag.
2829         (elmo-folder-list-flagged-internal): New method.
2830         (elmo-folder-unflag-important,
2831         elmo-folder-flag-as-important,
2832         elmo-folder-unflag-read,
2833         elmo-folder-flag-as-read,
2834         elmo-folder-unflag-answered,
2835         elmo-folder-flag-as-answered): Remove.
2836         (elmo-folder-set-flag): New method.
2837         (elmo-folder-unset-flag): Ditto.
2838         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2839         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2840
2841         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2842         (elmo-folder-list-unreads-plugged,
2843         elmo-folder-list-importants-plugged,
2844         elmo-folder-list-answereds-plugged,
2845         elmo-folder-list-flagged-unplugged,
2846         elmo-folder-unflag-important-plugged,
2847         elmo-folder-flag-as-important-plugged,
2848         elmo-folder-unflag-read-plugged,
2849         elmo-folder-flag-as-read-plugged,
2850         elmo-folder-unflag-answered-plugged,
2851         elmo-folder-flag-as-answered-plugged): Remove.
2852         (elmo-folder-set-flag-plugged,
2853         elmo-folder-unset-flag-plugged): Define.
2854
2855         * elmo-flag.el (elmo-folder-initialize): Register to
2856         `elmo-global-flag-list' if flag is not global.
2857         (elmo-folder-append-messages): Set flag to source messages.
2858
2859         * elmo-filter.el (elmo-filter-folder-list-unreads,
2860         elmo-folder-list-unreads,
2861         elmo-filter-folder-list-importants,
2862         elmo-folder-list-importants,
2863         elmo-folder-flag-as-read,
2864         elmo-folder-unflag-read,
2865         elmo-folder-flag-as-important,
2866         elmo-folder-unflag-important,
2867         elmo-folder-flag-as-answered,
2868         elmo-folder-unflag-answered): Remove.
2869         (elmo-folder-set-flag): Define.
2870         (elmo-folder-unset-flag): Ditto.
2871
2872         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2873         elmo-folder-unflag-read-dop,
2874         elmo-folder-flag-as-important-dop,
2875         elmo-folder-unflag-important-dop,
2876         elmo-folder-flag-as-answered-dop,
2877         elmo-folder-unflag-answered-dop): Remove.
2878         (elmo-folder-set-flag-dop,
2879         elmo-folder-unset-flag-dop,
2880         elmo-folder-set-important-delayed,
2881         elmo-folder-unset-important-delayed,
2882         elmo-folder-set-read-delayed,
2883         elmo-folder-unset-read-delayed,
2884         elmo-folder-set-answered-delayed,
2885         elmo-folder-unset-answered-delayed): New function.
2886         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2887         (elmo-dop-queue-method-name-alist): Ditto.
2888
2889         * elmo-version.el (elmo-version): Up to 2.11.23.
2890
2891 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2892
2893         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2894
2895         * elsp-sa.el: New file.
2896
2897 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2898
2899         * modb-standard.el (modb-standard-message-entity): New function.
2900         (elmo-msgdb-message-entity): Use it.
2901
2902 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2903
2904         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2905         behavior when one-level is nil.
2906
2907         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2908
2909         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2910
2911 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2912
2913         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2914         get max number.
2915         (elmo-generic-folder-diff): Ditto.
2916
2917         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2918         (elmo-folder-update-number): Ditto.
2919
2920         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2921         (elmo-folder-next-message-number-dop): Ditto.
2922
2923 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2924
2925         * elmo-filter.el (elmo-folder-msgdb-create): Use
2926         `elmo-message-entity' and `elmo-message-flags' instead of
2927         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2928
2929 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2930
2931         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2932         `if-exists'.
2933
2934 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2935
2936         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2937
2938         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2939
2940         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2941
2942 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2943
2944         * elmo-version.el (elmo-version): Up to 2.11.22.
2945
2946 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2947
2948         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2949
2950 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2951
2952         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2953         if the message dose not exist.
2954
2955 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2956
2957         * elmo-version.el (elmo-version): Up to 2.11.21.
2958
2959 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2960
2961         * modb-standard.el (toplevel): Don't require mime.
2962
2963 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2964
2965         * elsp-bogofilter.el (toplevel): Don't require path-util.
2966         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2967         (elmo-spam-bogofilter-header): Abolish.
2968         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2969         (elmo-spam-bogofilter-args): New user option.
2970         (elsp-bogofilter-call-bogofilter): New internal function.
2971         (elmo-spam-buffer-spam-p): Use it.
2972         (elsp-bogofilter-register-buffer): Renamed from
2973         `elmo-spam-bogofilter-register-buffer';
2974         Use `elsp-bogofilter-call-bogofilter'.
2975         (elmo-spam-register-spam-buffer): Follow the change above.
2976         (elmo-spam-register-good-buffer): Ditto.
2977
2978 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2979
2980         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2981         message-id is nil do nothing.
2982
2983 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2984
2985         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2986         Revival.
2987         (elmo-imap4-session): Removed use-flag slot.
2988         (elmo-imap4-session-select-mailbox): Undo last change.
2989         (elmo-folder-use-flag-p): Use
2990         elmo-imap4-disuse-server-flag-mailbox-regexp.
2991
2992 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2993
2994         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2995         (elmo-imap4-session-select-mailbox): Set it up.
2996         (elmo-folder-use-flag-p): Return value of use-flag slot.
2997
2998 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2999
3000         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
3001         message-id is nil.
3002         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
3003
3004         * modb-entity.el (elmo-message-entity-handler): Likewise.
3005
3006 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
3007
3008         * elmo.el (toplevel): Remove setting of autoloding for
3009         elmo-global-flag-initialize.
3010         (elmo-init): Don't call elmo-global-flag-initialize.
3011         (toplevel): Added autoload setting for elmo-global-mark-migrate.
3012
3013         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
3014         (elmo-global-mark-migrate): Don't call it.
3015         (elmo-global-mark-upgrade): Ditto.
3016
3017 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
3018
3019         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
3020         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
3021
3022         * elmo-vars.el (elmo-init-hook): New user option.
3023
3024         * elmo.el (elmo-init): Run the elmo-init-hook.
3025
3026         * elmo-flag.el (elmo-global-mark-migrate): New function.
3027
3028 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3029
3030         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
3031         Undo last change (move to elmo-msgdb-unset-flag).
3032         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
3033         flag is unset.
3034
3035 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
3036
3037         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
3038         read flag is set.
3039         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
3040         (elmo-msgdb-unset-flag): Ditto.
3041
3042 2003-11-05  Andreas Fuchs <asf@boinkor.net>
3043
3044         * elmo-split.el (elmo-split): Return split message count.
3045
3046 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3047
3048         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
3049         is nil.
3050
3051 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3052
3053         * elmo.el (elmo-folder-unflag-important): Call
3054         `elmo-global-flag-detach' with 4th argument delete-if-none that is
3055         a symbol `always'.
3056
3057         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
3058         before unset flag.
3059         (elmo-global-flag-detach): Delete the message from flag folder, if
3060         `delete-if-none' is a symbol `always'.
3061
3062 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3063
3064         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
3065         `elmo-spam-spamfilter-decode-buffer'.
3066         (elsp-spamfilter-register-buffer-internal): New internal function.
3067         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
3068         (elmo-spam-register-spam-buffer): Ditto.
3069         (elmo-spam-register-good-buffer): Ditto.
3070
3071         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
3072         change.
3073         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
3074         (elmo-spam-register-spam-buffer): Follow the API change.
3075         (elmo-spam-register-good-buffer): Ditto.
3076
3077         * elmo-split.el (toplevel): Require elmo-spam when copmile.
3078         (elmo-split-spam-p): Added argument plist; Call
3079         `elmo-spam-buffer-spam-p' with new argument register.
3080
3081         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
3082         `register'.
3083         (elmo-spam-message-spam-p): Ditto.
3084         (elmo-spam-register-spam-buffer): Added optional argument
3085         `restore'.
3086         (elmo-spam-register-good-buffer): Ditto.
3087         (elmo-spam-register-spam-messages): Ditto.
3088         (elmo-spam-register-good-messages): Ditto.
3089
3090 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3091
3092         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
3093         register into good corpus.
3094         (elmo-spam-register-good-buffer): Fixed to register into bad
3095         corpus.
3096
3097 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3098
3099         * elmo-version.el (elmo-version): Up to 2.11.20.
3100
3101         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
3102         change.
3103
3104         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
3105         flag without depending on \Recent flag.
3106
3107 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3108
3109         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
3110         (elmo-spam-modified-p): Defined.
3111         (elmo-spam-save-status): Set `modified' slot to nil.
3112         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
3113         (elmo-spam-register-good-buffer): Ditto.
3114
3115         * elmo-spam.el (elmo-spam-modified-p): New API.
3116
3117 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3118
3119         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
3120         duplicate definition.
3121
3122         * elmo-util.el (elmo-unfold-field-body): New function.
3123         (elmo-msgdb-get-message-id-from-buffer): Use it.
3124
3125         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3126         Fixed the last change; Use elmo-unfold-field-body.
3127
3128 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3129
3130         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3131         Unfold date value.
3132
3133 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3134
3135         * elmo-spam.el (elmo-spam-save-status): New API.
3136
3137         * elsp-spamfilter.el: New file.
3138
3139 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3140
3141         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
3142
3143 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3144
3145         * elmo-split.el (elmo-split-spam-p): New function.
3146
3147         * elmo-spam.el: New file.
3148
3149         * elsp-bogofilter.el: Ditto.
3150
3151 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
3152
3153         * elmo.el (elmo-folder-next-message-number): New API.
3154         (elmo-folder-next-message-number): Define.
3155         (elmo-message-field): Don't check folder length.
3156
3157         * elmo-net.el (elmo-folder-next-message-number): Define.
3158         (elmo-folder-next-message-number-unplugged): Define.
3159
3160         * elmo-map.el (elmo-folder-next-message-number): Define.
3161         (elmo-folder-delete-messages): Clear hash value.
3162
3163         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
3164
3165         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
3166         (elmo-folder-delete-messages-dop-delayed): Always return t.
3167
3168         * elmo-version.el (elmo-version): Up to 2.11.19.
3169
3170 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3171
3172         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
3173         change.
3174
3175         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
3176         identical cons cell into the mark-alist and the hash table.
3177
3178 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
3179
3180         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
3181         elmo-folder-list-messages with argument `visible-only' as t.
3182
3183         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
3184         (elmo-folder-msgdb-create): Check the target folder.
3185
3186 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
3187
3188         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
3189         `permanentflag' instead of `flags'.
3190         (elmo-folder-open): Ditto.
3191         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
3192         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
3193         (elmo-folder-use-flag-p): Always return t.
3194         (elmo-imap4-session-select-mailbox): Use value of `flags' if
3195         `permanentflags' does not exist.
3196         (elmo-folder-open): Ditto.
3197
3198 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
3199
3200         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
3201         is nil.
3202         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
3203
3204         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
3205         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
3206         response.
3207         (elmo-folder-open): Ditto.
3208         (elmo-imap4-set-flag): Send store flag command only when the `flags'
3209         slot of the session includes the flag.
3210         (elmo-imap4-session-flag-available-p): New function.
3211         (elmo-imap4-folder-list-flagged): Ditto.
3212         (elmo-folder-list-unreads-plugged): Use it.
3213         (elmo-folder-list-importants-plugged): Ditto.
3214         (elmo-folder-list-answereds-plugged): Ditto.
3215         (elmo-imap4-search-internal-primitive): Ditto.
3216         (elmo-imap4-folder-list-any-plugged,
3217         elmo-imap4-folder-list-digest-plugged): Abolish.
3218
3219         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
3220         if numbers is nil.
3221
3222 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3223
3224         * elmo-util.el (toplevel): Require emu for char-list-to-string.
3225
3226 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
3227
3228         * elmo-util.el (elmo-get-hash-val): Simplify.
3229         (elmo-set-hash-val): Rewrite.
3230
3231 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3232
3233         * elmo.el (elmo-folder-list-messages): Append killed messages into
3234         result if `visible-only' is nil and `in-msgdb' is non-nil.
3235
3236         * elmo-util.el (elmo-uniq-list): Added optional argument
3237         `delete-function'.
3238
3239         * modb.el (elmo-msgdb-flag-count): New API.
3240
3241         * modb-standard.el (modb-standard): Added slot flag-count.
3242         (modb-standard-countup-flags): New function.
3243         (modb-standard-load-flag): Call it.
3244         (elmo-msgdb-append): Ditto.
3245         (elmo-msgdb-clear): Clear slot flag-count.
3246         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
3247         (elmo-msgdb-unset-flag): Treat `all' flag and call
3248         modb-standard-countup-flags.
3249         (elmo-msgdb-flag-count): Define.
3250         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
3251         (elmo-msgdb-delete-messages): Ditto.
3252
3253         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
3254         (elmo-msgdb-flag-count): Define.
3255
3256         * elmo.el (elmo-folder-list-messages): Undo last change.
3257         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
3258         (elmo-folder-kill-messages): Unset all flags to numbers.
3259
3260         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
3261         elmo-folder-kill-messages.
3262
3263         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
3264         (elmo-nntp-folder-delete-messages): Abolish.
3265
3266         * elmo-version.el (elmo-version): Up to 2.11.18.
3267
3268 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3269
3270         * elmo.el (elmo-folder-kill-messages-before): Abolish.
3271         (elmo-folder-kill-messages-range): New function.
3272         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
3273         instead of elmo-folder-kill-messages-before.
3274
3275 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
3276
3277         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
3278         elmo-imap4-current-msgdb to decide entity handler.
3279
3280 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3281
3282         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
3283
3284         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
3285         inline function.
3286         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
3287         (elmo-msgdb-overview-entity-set-number,
3288         elmo-msgdb-overview-entity-get-references,
3289         elmo-msgdb-overview-entity-set-references,
3290         elmo-msgdb-overview-entity-get-from-no-decode,
3291         elmo-msgdb-overview-entity-get-from,
3292         elmo-msgdb-overview-entity-set-from,
3293         elmo-msgdb-overview-entity-get-subject,
3294         elmo-msgdb-overview-entity-get-subject-no-decode,
3295         elmo-msgdb-overview-entity-set-subject,
3296         elmo-msgdb-overview-entity-get-date,
3297         elmo-msgdb-overview-entity-set-date,
3298         elmo-msgdb-overview-entity-get-to,
3299         elmo-msgdb-overview-entity-get-cc,
3300         elmo-msgdb-overview-entity-get-size,
3301         elmo-msgdb-overview-entity-set-size,
3302         elmo-msgdb-overview-entity-get-extra,
3303         elmo-msgdb-overview-entity-set-extra,
3304         elmo-msgdb-overview-entity-get-extra-field,
3305         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
3306         (elmo-msgdb-make-index): Use
3307         `elmo-msgdb-overview-entity-get-number-internal'.
3308         (elmo-msgdb-clear-index): Ditto.
3309         (elmo-msgdb-append-entity): Ditto;
3310         Use `elmo-msgdb-overview-entity-get-id-internal'.
3311
3312         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
3313         elmo-msgdb-overview-entity-set-number,
3314         elmo-msgdb-overview-entity-get-references,
3315         elmo-msgdb-overview-entity-set-references,
3316         elmo-msgdb-overview-entity-get-from-no-decode,
3317         elmo-msgdb-overview-entity-get-from,
3318         elmo-msgdb-overview-entity-set-from,
3319         elmo-msgdb-overview-entity-get-subject,
3320         elmo-msgdb-overview-entity-get-subject-no-decode,
3321         elmo-msgdb-overview-entity-set-subject,
3322         elmo-msgdb-overview-entity-get-date,
3323         elmo-msgdb-overview-entity-set-date,
3324         elmo-msgdb-overview-entity-get-to,
3325         elmo-msgdb-overview-entity-get-cc,
3326         elmo-msgdb-overview-entity-get-size,
3327         elmo-msgdb-overview-entity-set-size,
3328         elmo-msgdb-overview-entity-get-extra,
3329         elmo-msgdb-overview-entity-set-extra,
3330         elmo-msgdb-overview-entity-get-extra-field,
3331         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
3332         and rewrote for backward compatibility.
3333
3334 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3335
3336         * elmo.el (elmo-message-entity-number,
3337         elmo-message-entity-set-number,
3338         elmo-message-entity-field,
3339         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
3340
3341         * elmo-msgdb.el (elmo-message-entity-number,
3342         elmo-message-entity-set-number,
3343         elmo-message-entity-field,
3344         elmo-message-entity-set-field): Moved from elmo.el.
3345
3346 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3347
3348         * elmo.el (toplevel): Changed definition orders.
3349
3350 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3351
3352         * modb.el (elmo-msgdb-search): New API .
3353         (elmo-msgdb-match-condition): Ditto.
3354
3355         * modb-standard.el (elmo-msgdb-search): Define.
3356
3357         * modb-legacy.el (elmo-msgdb-search): Ditto.
3358
3359         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
3360         from elmo-msgdb-match-condition-internal.
3361
3362         * elmo.el (elmo-folder-search-fast): Abolish.
3363         (elmo-folder-search): Use elmo-msgdb-search and
3364         elmo-with-progress-display.
3365
3366         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
3367         as msgdb API.
3368
3369         * elmo.el (elmo-folder): Remove slot message-modified and
3370         flag-modified.
3371         (elmo-folder-set-message-modified): Abolish.
3372         (elmo-generic-folder-commit): Follow the change above.
3373         (elmo-folder-synchronize): Ditto.
3374
3375         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
3376
3377         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3378
3379         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
3380
3381 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3382
3383         * modb-standard.el (modb-standard-make-message-entity,
3384         elmo-msgdb-make-message-entity,
3385         elmo-msgdb-create-message-entity-from-buffer,
3386         elmo-msgdb-message-entity-number,
3387         elmo-msgdb-message-entity-set-number,
3388         elmo-msgdb-message-entity-field,
3389         elmo-msgdb-message-entity-set-field,
3390         elmo-msgdb-copy-message-entity,
3391         elmo-msgdb-match-condition-internal): Remove.
3392
3393         * modb-entity.el: New file (again).
3394
3395         * modb.el (toplevel): Require modb-entity.
3396         (elmo-msgdb-message-entity-handler): New method.
3397
3398         * modb-standard.el (modb-standard-entity-id): Use
3399         elmo-message-entity-handler.
3400         (modb-standard-load-entity): Ditto.
3401         (elmo-msgdb-append-entity): Ditto.
3402         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3403
3404         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
3405         elmo-msgdb-decoded-cache-hashtb,
3406         (modb-legacy-make-message-entity,
3407         elmo-msgdb-make-message-entity,
3408         elmo-msgdb-create-message-entity-from-buffer,
3409         elmo-msgdb-message-entity-number,
3410         elmo-msgdb-message-entity-set-number,
3411         elmo-msgdb-message-entity-field,
3412         elmo-msgdb-message-entity-set-field,
3413         elmo-msgdb-copy-message-entity,
3414         elmo-msgdb-match-condition-internal,
3415         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
3416
3417         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
3418         (elmo-message-entity-set-number): Ditto.
3419         (elmo-message-entity-field): Ditto.
3420         (elmo-message-entity-set-field): Ditto.
3421
3422         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
3423
3424         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3425
3426         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3427
3428         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3429         (elmo-nntp-msgdb-create-message): Ditto.
3430
3431         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
3432         (elmo-folder-msgdb-create): Add unread flag.
3433
3434         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3435
3436         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
3437
3438         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
3439
3440         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3441
3442         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
3443         elmo-msgdb-messge-entity-handler.
3444         * elmo-version.el (elmo-version): Up to 2.11.17.
3445
3446 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3447
3448         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
3449         change.
3450
3451 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3452
3453         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3454
3455         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3456         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3457         (elmo-msgdb-flag-table): Ditto.
3458         (elmo-msgdb-sort-by-date): Ditto.
3459
3460         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3461
3462         * modb-standard.el (toplevel): Require mime.
3463         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3464         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3465         elmo-msgdb-message-entity-number.
3466         (elmo-msgdb-append-entity): Ditto.
3467         (elmo-msgdb-create-message-entity-from-file): Remove.
3468         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3469         corresponds to the entity.
3470         (elmo-msgdb-message-entity-number): Do nothing currently.
3471         (elmo-msgdb-message-entity-field): Ditto.
3472         (elmo-msgdb-message-entity-set-field): Ditto.
3473         (elmo-msgdb-copy-message-entity): Ditto.
3474         (elmo-msgdb-match-condition-internal): Ditto.
3475
3476         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3477         elmo-util.el.
3478         (elmo-msgdb-create-message-entity-from-file): Remove.
3479
3480         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3481         modb-legacy.el.
3482         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3483
3484         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3485
3486 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3487
3488         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3489         (elmo-msgdb-message-entity-field): Ditto.
3490         (elmo-msgdb-message-entity-number): Ditto.
3491
3492 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3493
3494         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3495         Fixed how to set extra field into entity.
3496         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3497         symbol.
3498
3499         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3500         Fixed how to set extra field into entity.
3501         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3502         symbol.
3503
3504 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3505
3506         * modb.el (elmo-message-entity-db): New function.
3507         (elmo-msgdb-make-message-entity): New API.
3508         (elmo-msgdb-message-entity-number): Ditto.
3509         (elmo-msgdb-message-entity-set-number): Ditto.
3510         (elmo-msgdb-message-entity-field): Ditto.
3511         (elmo-msgdb-message-entity-set-field): Ditto.
3512         (elmo-msgdb-copy-message-entity): Ditto.
3513         (elmo-msgdb-create-message-entity-from-file): Ditto.
3514         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3515         (elmo-msgdb-match-condition-internal): Ditto.
3516
3517         * modb-standard.el (modb-legacy): Require modb-legacy.
3518         (modb-standard-make-message-entity): New inline function.
3519         (elmo-msgdb-make-message-entity): Define.
3520         (elmo-msgdb-create-message-entity-from-file): Ditto.
3521         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3522         (elmo-msgdb-message-entity-field): Ditto.
3523         (elmo-msgdb-message-entity-set-field): Ditto.
3524         (elmo-msgdb-copy-message-entity): Ditto.
3525         (elmo-msgdb-match-condition-internal): Ditto.
3526
3527         * modb-legacy.el: Don't require modb-entity.
3528         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3529         (elmo-msgdb-match-condition-primitive): Ditto.
3530         (elmo-msgdb-get-decoded-cache): Ditto.
3531         (elmo-msgdb-overview-entity-get-id): Ditto.
3532         (elmo-msgdb-overview-entity-get-number): Ditto.
3533         (elmo-msgdb-overview-entity-set-number): Ditto.
3534         (elmo-msgdb-overview-entity-get-references): Ditto.
3535         (elmo-msgdb-overview-entity-set-references): Ditto.
3536         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3537         (elmo-msgdb-overview-entity-get-from): Ditto.
3538         (elmo-msgdb-overview-entity-set-from): Ditto.
3539         (elmo-msgdb-overview-entity-get-subject): Ditto.
3540         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3541         (elmo-msgdb-overview-entity-set-subject): Ditto.
3542         (elmo-msgdb-overview-entity-get-date): Ditto.
3543         (elmo-msgdb-overview-entity-set-date): Ditto.
3544         (elmo-msgdb-overview-entity-get-to): Ditto.
3545         (elmo-msgdb-overview-entity-get-cc): Ditto.
3546         (elmo-msgdb-overview-entity-get-size): Ditto.
3547         (elmo-msgdb-overview-entity-set-size): Ditto.
3548         (elmo-msgdb-overview-entity-get-extra): Ditto.
3549         (elmo-msgdb-overview-entity-set-extra): Ditto.
3550         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3551         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3552         (elmo-msgdb-number-load): Ditto.
3553         (elmo-msgdb-overview-load): Ditto.
3554         (elmo-msgdb-mark-load): Ditto.
3555         (elmo-msgdb-number-save): Ditto.
3556         (elmo-msgdb-mark-save): Ditto.
3557         (elmo-msgdb-overview-save): Ditto.
3558         (modb-legacy-make-message-entity): New inline function.
3559         (elmo-msgdb-insert-file-header): Ditto.
3560         (elmo-msgdb-make-message-entity): Define.
3561         (elmo-msgdb-create-message-entity-from-file): Ditto.
3562         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3563         (elmo-msgdb-message-entity-number): Ditto.
3564         (elmo-msgdb-message-entity-set-number): Ditto.
3565         (elmo-msgdb-message-entity-field): Ditto.
3566         (elmo-msgdb-message-entity-set-field): Ditto.
3567         (elmo-msgdb-copy-message-entity): Ditto.
3568         (elmo-msgdb-match-condition-internal): Ditto.
3569
3570         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3571         (elmo-message-copy-entity): Rewrite.
3572         (elmo-message-entity-number): Ditto.
3573         (elmo-message-entity-set-number): Ditto.
3574         (elmo-message-entity-field): Use elmo-message-entity-db.
3575         (elmo-message-entity-set-field): Ditto.
3576         (elmo-message-field): Rewrite.
3577
3578         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3579         elmo-msgdb.el
3580         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3581
3582         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3583         elmo-message-entity-field.
3584         (elmo-shimbun-folder-shimbun-header): Ditto.
3585         (elmo-shimbun-entity-to-header): Ditto.
3586         (elmo-folder-msgdb-create): Ditto.
3587         (elmo-shimbun-msgdb-create-entity): Ditto;
3588         Use elmo-msgdb-create-message-entity-from-buffer.
3589         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3590         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3591
3592         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3593         elmo-msgdb-create-message-entity-from-file and 
3594         elmo-message-entity-field.
3595
3596         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3597         elmo-message-entity-number.
3598         (elmo-pop3-msgdb-create-message): Use
3599         elmo-msgdb-create-message-entity-from-buffer,
3600         elmo-message-entity-set-field, elmo-message-entity-number and
3601         elmo-message-entity-set-number.
3602
3603         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3604         the API change in elmo-msgdb-make-message-entity.
3605         (elmo-nntp-msgdb-create-message): Use
3606         elmo-msgdb-create-message-entity-from-buffer.
3607
3608         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3609         elmo-message-entity-field and
3610         elmo-msgdb-create-message-entity-from-file.
3611
3612         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3613         (elmo-msgdb-get-field): Abolish.
3614         (elmo-msgdb-get-number): Rewrite.
3615         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3616         (elmo-msgdb-flag-table): Ditto.
3617         (elmo-msgdb-get-last-message-id,
3618         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3619         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3620         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3621         (elmo-msgdb-create-overview-from-buffer,
3622         elmo-msgdb-overview-get-parent-entity): Abolish.
3623
3624         * elmo-mime.el (elmo-mime-display-as-is): Use
3625         elmo-message-entity-field.
3626
3627         * elmo-map.el (elmo-folder-pack-numbers): Use
3628         elmo-message-entity-set-number.
3629
3630         * elmo-maildir.el (elmo-folder-msgdb-create): 
3631         elmo-msgdb-create-message-entity-from-file instead of
3632         elmo-msgdb-create-overview-entity-from-file.
3633
3634         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3635         msgdb.
3636         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3637         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3638
3639         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3640         elmo-messge-entity-field and elmo-message-entity-number.
3641         (elmo-imap4-fetch-callback-1): Call
3642         elmo-msgdb-create-message-entity-from-buffer instead of
3643         elmo-msgdb-create-overview-from-buffer. 
3644         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3645         (elmo-find-fetch-strategy): Likewise.
3646
3647         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3648         elmo-localdir-msgdb-create-entity with argument msgdb.
3649
3650         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3651         and elmo-message-entity-set-number.
3652
3653         * elmo-cache.el (elmo-folder-msgdb-create): Use
3654         elmo-message-entity-field.
3655         (elmo-folder-msgdb-create): Call
3656         elmo-msgdb-create-message-entity-from-file instead of
3657         elmo-msgdb-create-overview-entity-from-file.
3658
3659         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3660         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3661         instead of elmo-msgdb-create-overview-from-buffer.
3662         (elmo-archive-msgdb-create-entity): Ditto.
3663         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3664         elmo-message-entity-field.
3665         (elmo-archive-parse-mmdf): Ditto.
3666
3667         * modb-entity.el: Removed.
3668
3669         * elmo-version.el (elmo-version): Up to 2.11.16.
3670
3671 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3672
3673         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3674         `is-local'.
3675         (elmo-folder-flag-as-answered): Ditto.
3676
3677 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3678
3679         * modb-standard.el: New file.
3680
3681         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3682         elmo-msgdb-convert-type is `sync'.
3683
3684         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3685         (elmo-msgdb-convert-type): New user option.
3686
3687         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3688         (elmo-load-msgdb): Auto detect saved type.
3689
3690         * elmo-version.el (elmo-version): Up to 2.11.15.
3691
3692 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3693
3694         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3695
3696         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3697         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3698         with argument `delete-if-none' when dst-folder is 'null.
3699
3700         * elmo-flag.el (elmo-folder-append-messages): Defined.
3701         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3702
3703 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3704
3705         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3706
3707 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3708
3709         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3710         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3711         (elmo-folder-commit): Ditto.
3712
3713 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3714
3715         * elmo-flag.el: New file.
3716
3717         * elmo-mark.el: Removed.
3718
3719         * modb-legacy.el (modb-legacy-new-mark,
3720         modb-legacy-unread-uncached-mark,
3721         modb-legacy-unread-cached-mark,
3722         modb-legacy-read-uncached-mark,
3723         modb-legacy-answered-cached-mark,
3724         modb-legacy-answered-uncached-mark,
3725         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3726         All other related portions are changed.
3727
3728         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3729         (elmo-folder-list-messages-with-global-mark): Abolish.
3730         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3731         (elmo-folder-flag-as-important): Ditto.
3732         (elmo-folder-unflag-read): Ditto.
3733         (elmo-folder-flag-as-read): Ditto.
3734         (elmo-folder-unflag-answered): Ditto.
3735         (elmo-folder-flag-as-answered): Ditto.
3736         (elmo-message-encache): Return the cache path.
3737         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3738         (elmo-message-set-flag): Transitional implementation.
3739         (elmo-message-unset-flag): Ditto.
3740         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3741         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3742         (elmo-init): Call elmo-global-flag-initialize.
3743         (toplevel): Added autoload settings for elmo-flag.
3744
3745         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3746
3747         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3748         (elmo-file-cache-delete): Don't treat global-mark.
3749
3750         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3751
3752         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3753
3754         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3755         `elmo-global-flags-set'.
3756
3757         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3758         `flag'.
3759         (elmo-folder-unflag-read): Ditto.
3760         (elmo-folder-unflag-important): Ditto.
3761         (elmo-folder-flag-as-important): Ditto.
3762         (elmo-folder-unflag-answered): Ditto.
3763         (elmo-folder-flag-as-answered): Ditto.
3764
3765         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3766         `elmo-global-flags-set'.
3767         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3768
3769         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3770
3771         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3772         `flag'.
3773         (elmo-folder-flag-as-important): Ditto.
3774         (elmo-folder-unflag-important): Ditto.
3775         (elmo-folder-flag-as-important): Ditto.
3776         (elmo-folder-unflag-read): Ditto.
3777         (elmo-folder-flag-as-read): Ditto.
3778         (elmo-folder-unflag-answered): Ditto.
3779         (elmo-folder-flag-as-answered): Ditto.
3780
3781         * elmo-multi.el (elmo-folder-list-importants): Don't call
3782         elmo-folder-list-messages-with-global-mark.
3783         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3784         (elmo-folder-unflag-important): Ditto.
3785         (elmo-folder-flag-as-read): Ditto.
3786         (elmo-folder-unflag-read): Ditto.
3787         (elmo-folder-flag-as-answered): Ditto.
3788         (elmo-folder-unflag-answered): Ditto.
3789
3790         * elmo-msgdb.el (elmo-msgdb-new-mark,
3791         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3792         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3793         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3794         (Moved to modb-legacy.el).
3795         (elmo-flag-table-get): Treat important flag too.
3796
3797         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3798         `mark' to `flag'.
3799         (elmo-map-folder-flag-as-important): Ditto.
3800         (elmo-map-folder-unflag-read): Ditto.
3801         (elmo-map-folder-flag-as-read): Ditto.
3802         (elmo-map-folder-unflag-answered): Ditto.
3803         (elmo-map-folder-flag-as-answered): Ditto.
3804         (elmo-folder-unflag-important): Ditto.
3805         (elmo-folder-flag-as-important): Ditto.
3806         (elmo-folder-unflag-read): Ditto.
3807         (elmo-folder-flag-as-read): Ditto.
3808         (elmo-folder-unflag-answered): Ditto.
3809         (elmo-folder-flag-as-answered): Ditto.
3810
3811         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3812         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3813         `flag'.
3814         (elmo-map-folder-unflag-important): Ditto.
3815         (elmo-map-folder-flag-as-read): Ditto.
3816         (elmo-map-folder-unflag-read): Ditto.
3817         (elmo-map-folder-flag-as-answered): Ditto.
3818         (elmo-map-folder-unflag-answered): Ditto.
3819
3820         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3821         `elmo-global-flags-set'.
3822         (elmo-global-flags-set): Added autoload setting.
3823
3824         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3825         `flag'.
3826
3827         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3828         `elmo-msgdb-global-mark-set'.
3829         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3830         Call `elmo-global-flags-set'.
3831         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3832         `flag'.
3833         (elmo-folder-flag-as-important-plugged): Ditto.
3834         (elmo-folder-unflag-read-plugged): Ditto.
3835         (elmo-folder-flag-as-read-plugged): Ditto.
3836         (elmo-folder-unflag-answered-plugged): Ditto.
3837         (elmo-folder-flag-as-answered-plugged): Ditto.
3838         (elmo-global-flags-set): Added autoload setting.
3839
3840         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3841         `flag'.
3842         (elmo-folder-unflag-read): Ditto.
3843         (elmo-folder-flag-as-important): Ditto.
3844         (elmo-folder-unflag-important): Ditto.
3845         (elmo-folder-flag-as-answered): Ditto.
3846         (elmo-folder-unflag-answered): Ditto.
3847
3848         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3849         change of `mark'->`flag'.
3850         (elmo-dop-queue-method-name-alist): Ditto.
3851         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3852         (elmo-folder-unflag-read-dop): Ditto.
3853         (elmo-folder-flag-as-important-dop): Ditto.
3854         (elmo-folder-unflag-important-dop): Ditto.
3855         (elmo-folder-flag-as-answered-dop): Ditto.
3856         (elmo-folder-unflag-answered-dop): Ditto.
3857
3858         * elmo-cache.el (elmo-folder-msgdb-create): Call
3859         `elmo-global-flags-set'.
3860
3861         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3862         Call `elmo-global-flags-set'.
3863         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3864         elmo-archive-parse-mmdf with argument `folder'.
3865         (elmo-archive-parse-mmdf): Added argument `folder';
3866         Call `elmo-global-flags-set'.
3867
3868         * elmo-version.el (elmo-version): Up to 2.11.14.
3869
3870 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3871
3872         * modb.el (elmo-msgdb-length): Define.
3873
3874         * elmo.el (elmo-make-folder): Fixed.
3875         (elmo-generic-folder-append-messages): Follow the API change.
3876
3877         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3878         API change.
3879
3880 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3881
3882         * modb.el: New file.
3883
3884         * modb-entity.el: Ditto.
3885
3886         * modb-legacy.el: Ditto.
3887
3888         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3889         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3890         of `elmo-msgdb-overview-get-entity'.
3891         (elmo-msgdb-get-field): Ditto.
3892         (elmo-msgdb-merge): Moved to `elmo.el'.
3893         (elmo-msgdb-length): Removed; redefine as modb method.
3894         (elmo-msgdb-change-mark): Abolish.
3895         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3896         (elmo-msgdb-match-condition): Don't use mark.
3897         (elmo-msgdb-overview-get-entity): Abolish.
3898         Split modb part into `modb*.el'.
3899
3900         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3901
3902         * elmo-shimbun.el (shimbun-mua-search-id): Use
3903         `elmo-msgdb-message-entity' instead of
3904         `elmo-msgdb-overview-get-entity'.
3905         (elmo-shimbun-folder-shimbun-header): Ditto.
3906         (elmo-shimbun-get-headers): Ditto.
3907         (elmo-shimbun-update-overview): Ditto.
3908
3909         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3910
3911         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3912
3913         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3914         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3915
3916         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3917         `elmo-msgdb-mark-to-flags'.
3918
3919         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3920         `elmo-msgdb-set-path'.
3921
3922         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3923  
3924         * elmo-version.el (elmo-version): Up to 2.11.13.
3925
3926         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3927
3928         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3929         of mark.
3930
3931 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3932
3933         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3934         mismatch.
3935
3936 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3937
3938         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3939         instead of `elmo-msgdb-get-cached'.
3940         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3941
3942         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3943         (elmo-msgdb-set-cached): Ditto.
3944         (elmo-msgdb-set-flag): Rewrite.
3945         (elmo-msgdb-unset-flag): Ditto.
3946
3947         * elmo-msgdb.el: Rewrite with luna.
3948
3949         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3950         (elmo-folder-msgdb): Follow the change above.
3951         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3952         (elmo-folder-unmark-important): Follow the API change.
3953         (elmo-folder-mark-as-important): Ditto.
3954         (elmo-folder-unmark-read): Ditto.
3955         (elmo-folder-mark-as-read): Ditto.
3956         (elmo-folder-unmark-answered): Ditto.
3957         (elmo-folder-mark-as-answered): Ditto.
3958         (elmo-folder-clear): Likewise.
3959
3960         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3961         instead of `elmo-msgdb-load' (renamed).
3962
3963         * elmo-version.el (elmo-version): Up to 2.11.12.
3964
3965 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3966
3967         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3968         change.
3969         (elmo-message-mark): Abolish.
3970         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3971         instead of `elmo-msgdb-change-mark'.
3972
3973         * elmo-pipe.el (elmo-message-mark): Abolish.
3974
3975         * elmo-multi.el (elmo-message-mark): Ditto.
3976
3977         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3978         (elmo-msgdb-unread-uncached-mark): Ditto.
3979         (elmo-msgdb-unread-cached-mark): Ditto.
3980         (elmo-msgdb-read-uncached-mark): Ditto.
3981         (elmo-msgdb-answered-cached-mark): Ditto.
3982         (elmo-msgdb-answered-uncached-mark): Ditto.
3983         (elmo-msgdb-important-mark): Ditto.
3984         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3985         `use-cache'.
3986         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3987         `flags'.
3988         (elmo-flag-table-load): Changed flag to list of flag.
3989         (elmo-flag-table-set): If flags is nil, set read flag.
3990         (elmo-flag-table-get): Return derived flags from global mark,
3991         cache status and saved flags.
3992         (elmo-msgdb-flag-table): Follow the change above.
3993         (elmo-msgdb-out-of-date-messages): New function.
3994
3995         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3996
3997         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3998
3999         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
4000
4001         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4002         (elmo-nntp-msgdb-create-message): Ditto.
4003
4004         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
4005
4006         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
4007         independent.
4008         (elmo-folder-msgdb-create): Follow the API change.
4009
4010         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
4011         (elmo-folder-append-messages): Ditto.
4012
4013         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
4014         (elmo-folder-append-buffer): Ditto.
4015
4016         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
4017
4018         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4019
4020         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4021         (elmo-archive-parse-mmdf): Ditto.
4022
4023         * elmo-version.el (elmo-version): Up to 2.11.11.
4024
4025 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4026
4027         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
4028         `elmo-msgdb-mark'.
4029
4030         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
4031
4032         * elmo-pipe.el (elmo-message-flags): Defined.
4033
4034         * elmo-multi.el (elmo-message-flags): Ditto.
4035
4036 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4037
4038         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
4039         `elmo-msgdb-delete-msgs'.
4040
4041         * elmo.el (elmo-folder-count-flags): Don't use
4042         `elmo-msgdb-get-mark-alist'.
4043         (elmo-folder-detach-messages): Follow the API change.
4044
4045         * elmo.el (elmo-folder-list-messages): Append killed messages into
4046         result if `visible-only' is nil.
4047
4048         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
4049         canceled messages.
4050         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
4051         (elmo-folder-update-number): Likewise.
4052
4053         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
4054         (elmo-pop3-sort-msgdb-by-original-number): Use
4055         `elmo-msgdb-sort-entities'.
4056
4057         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
4058         (elmo-msgdb-sort-by-date): Use it.
4059         (elmo-msgdb-overview-sort-by-date): Abolish.
4060
4061         * elmo-dop.el (elmo-folder-status-dop): Fixed.
4062
4063         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
4064         (elmo-msgdb-flags): New function.
4065         (elmo-msgdb-merge): Use elmo-msgdb-append.
4066
4067         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
4068         change.
4069
4070         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
4071
4072         * elmo-dop.el (elmo-folder-status-dop): Use
4073         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
4074
4075 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4076
4077         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
4078
4079         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
4080
4081         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
4082
4083         * elmo-util.el (elmo-with-progress-display): New macro.
4084
4085         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
4086
4087 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4088
4089         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
4090         `elmo-folder-list-message-entities' instead of
4091         `elmo-msgdb-get-overview'.
4092         (elmo-map-folder-list-message-locations): Ditto.
4093
4094         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
4095         methods instead of treat directly).
4096         (elmo-msgdb-clear): Ditto.
4097         (elmo-msgdb-delete-msgs): Ditto.
4098         (elmo-msgdb-sort-by-date): Ditto.
4099
4100         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
4101         local variables.
4102         (elmo-nntp-folder-msgdb-create): Follow the API change.
4103
4104         * elmo-version.el (elmo-version): Up to 2.11.10.
4105
4106 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4107
4108         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
4109         (elmo-msgdb-flags-to-mark): Ditto.
4110         (elmo-msgdb-append-entity): Ditto.
4111
4112         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
4113         Use `elmo-msgdb-append-entity' instead of construct msgdb.
4114         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4115         (elmo-archive-parse-mmdf): Ditto.
4116
4117         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4118
4119         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
4120
4121         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
4122
4123         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4124
4125         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
4126
4127         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4128
4129         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4130
4131         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4132
4133         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
4134         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
4135         to empty msgdb.
4136
4137         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
4138         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
4139         instead of directly construction.
4140         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
4141         instead of construct msgdb.
4142
4143         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
4144         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
4145         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
4146         instead of construct msgdb.
4147
4148 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4149
4150         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
4151         when field is from or subject.
4152
4153 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
4154
4155         * elmo-multi.el (elmo-message-entity-parent): Define.
4156         (elmo-folder-search): Rewrite.
4157
4158 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4159
4160         * elmo-multi.el (elmo-message-cached-p): Define.
4161
4162         * elmo.el (elmo-message-cached-p): New method.
4163         (elmo-message-accessible-p): Use it instead of msgdb API directly.
4164         (elmo-message-flags): New method.
4165         (elmo-message-flagged-p): New function.
4166
4167         * elmo-version.el (elmo-version): Up to 2.11.9.
4168
4169 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4170
4171         * elmo-version.el (elmo-version): Up to 2.11.8.
4172
4173         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
4174
4175         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
4176
4177 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
4178
4179         * elmo.el (elmo-folder-detach-messages): Undo last change.
4180
4181 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
4182
4183         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
4184
4185         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
4186         only when src folder type is pop3.
4187
4188 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
4189
4190         * elmo-msgdb.el (elmo-msgdb-make-index): Use
4191         elmo-msgdb-overview-entity-get-number instead of
4192         elmo-message-entity-number.
4193
4194 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4195
4196         * elmo-version.el (elmo-version): Up to 2.11.7.
4197
4198 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
4199
4200         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
4201         function.
4202
4203         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
4204         (elmo-msgdb-merge): New function.
4205         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
4206         (elmo-msgdb-make-index): Rewrite.
4207
4208         * elmo-version.el (elmo-version): Up to 2.11.6.
4209
4210         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
4211         use it as a the path for loading message entities.
4212
4213         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
4214
4215 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
4216
4217         * elmo-filter.el (elmo-folder-set-message-modified): Set 
4218         message-modified slot of itself if it does not require target msgdb.
4219
4220         * elmo-mime.el (elmo-mime-message-display): Display message entirely
4221         if folder length is zero.
4222         (elmo-mime-display-as-is): Ditto.
4223
4224         * elmo-filter.el (elmo-folder-set-message-modified): Define.
4225
4226         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
4227
4228 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4229
4230         * elmo.el (elmo-folder-set-message-modified): New method.
4231         (elmo-generic-folder-commit): Use it.
4232         (elmo-folder-synchronize): Ditto.
4233
4234         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
4235         (elmo-folder-commit): Remove duplicate definition.
4236
4237 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4238
4239         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
4240
4241 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4242
4243         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
4244         (elmo-strict-folder-diff): Ditto.
4245         (elmo-folder-set-info-max-by-numdb): Simplify.
4246
4247         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
4248         elmo-msgdb-list-messages.
4249
4250         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
4251         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
4252
4253 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4254
4255         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
4256         visible-only is non-nil.
4257         (elmo-folder-confirm-appends): Changed message.
4258         (elmo-folder-synchronize): Added argument disable-killed.
4259
4260         * elmo-multi.el (elmo-folder-synchronize): Added argument
4261         disable-killed.
4262
4263         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
4264
4265         * elmo-version.el (elmo-version): Up to 2.11.5.
4266
4267         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
4268         elmo-list-filter.
4269
4270         * elmo-util.el (elmo-list-filter): Simplify.
4271
4272         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
4273         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
4274         (elmo-generic-folder-diff): Abolish argument.
4275         (elmo-msgdb-load): Don't use number-alist.
4276
4277         * elmo-filter.el (elmo-folder-diff): Abolish argument.
4278
4279         * elmo-pipe.el (elmo-folder-diff): Ditto.
4280
4281         * elmo-nmz.el (elmo-folder-diff): Ditto.
4282
4283         * elmo-net.el (elmo-folder-diff): Ditto.
4284
4285         * elmo-maildir.el (elmo-folder-diff): Ditto.
4286
4287         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
4288
4289         * elmo-multi.el (elmo-folder-diff): Ditto
4290         (elmo-multi-folder-diff): Rewrite.
4291
4292 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4293
4294         * elmo-pipe.el (elmo-folder-msgdb): Define.
4295
4296 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
4297
4298         * elmo.el (elmo-message-set-cached): Define as a method.
4299
4300         * elmo-pipe.el (elmo-message-set-cached): Define.
4301         (elmo-find-fetch-strategy): Ditto.
4302
4303         * elmo-multi.el (elmo-message-set-cached): Define.
4304         (elmo-find-fetch-strategy): Rewrite.
4305
4306         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
4307
4308         * elmo-pipe.el (elmo-message-folder): Fixed definition.
4309
4310 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4311
4312         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
4313         instead of number-alist.
4314
4315         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
4316         mark nor message-id when msgdb of source folder is not loaded.
4317
4318         * elmo.el (elmo-generic-folder-append-messages): Ditto.
4319
4320         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4321
4322 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
4323
4324         * elmo.el (elmo-folder-length): Don't require msgdb.
4325
4326 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
4327
4328         * elmo.el (elmo-message-mark): Cause an error when empty folder.
4329         (elmo-message-field): Ditto.
4330
4331         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
4332         (elmo-map-folder-list-message-locations): Setup `answered-locations'
4333         slot.
4334         (elmo-map-folder-list-answereds): Define.
4335         (elmo-maildir-list-location): Treat 'R' info.
4336         (elmo-folder-msgdb-create): Treat flag-table.
4337         (elmo-folder-append-messages): Save flag-table.
4338
4339 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
4340
4341         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
4342         Use SELECT when elmo-imap4-use-select-to-update-status is t.
4343
4344 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4345
4346         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
4347
4348         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
4349         'read when mark is null.
4350
4351 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
4352
4353         * elmo-version.el (elmo-version): Up to 2.11.4.
4354
4355 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4356
4357         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
4358         (elmo-folder-mark-as-answered): Ditto.
4359
4360 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
4361
4362         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
4363         (elmo-pop3-get-session): Make msgdb directory after session.
4364         (elmo-folder-exists-p): Check exactly at the first time even when the
4365         elmo-pop3-exists-exactly is nil.
4366
4367         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
4368         (elmo-folder-list-messages): Define instead of
4369         elmo-folder-list-messages-internal.
4370         (elmo-folder-check): Check destination folder.
4371         (elmo-folder-synchronize): Drain the pipe.
4372
4373         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
4374         when msgdb is not loaded.
4375
4376         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
4377
4378         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
4379         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
4380         messages.
4381
4382         * elmo.el (elmo-folder-kill-messages-before): New function.
4383         (elmo-folder-kill-messages): Ditto.
4384         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
4385
4386         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
4387         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
4388         killed not by synchronize (e.g. scoring).
4389
4390 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4391
4392         * elmo.el (elmo-folder-search-fast): Return t if condition is not
4393         treated.
4394         (elmo-folder-search): Follow the change above.
4395
4396         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
4397         into the candidates of search field.
4398
4399 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
4400
4401         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
4402         (elmo-msgdb-unset-flag): Ditto.
4403
4404         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
4405
4406 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
4407
4408         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
4409         (elmo-folder-commit): Define.
4410         (elmo-folder-synchronize): Ditto.
4411         (elmo-folder-list-flagged): Ditto.
4412         (elmo-folder-commit): Ditto.
4413         (elmo-folder-length): Ditto.
4414         (elmo-folder-count-flags): Ditto.
4415         (elmo-message-mark): Ditto.
4416         (elmo-message-field): Ditto.
4417         (elmo-message-entity): Ditto.
4418         (elmo-message-folder): Ditto.
4419
4420 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
4421
4422         * elmo.el (elmo-message-field): Define as a method.
4423
4424         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
4425         (elmo-message-field): Define.
4426
4427         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
4428         (elmo-folder-list-importants): Ditto.
4429         (elmo-folder-list-answereds): Ditto.
4430
4431         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
4432         qualifier.
4433         (elmo-folder-mark-as-read): Ditto.
4434         (elmo-folder-unmark-read): Ditto.
4435         (elmo-folder-mark-as-answered): Ditto.
4436         (elmo-folder-unmark-answered): Ditto.
4437         (elmo-folder-list-flagged): Define.
4438         (elmo-folder-commit): Ditto.
4439         (elmo-folder-length): Ditto.
4440         (elmo-folder-count-flags): Ditto.
4441
4442 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4443
4444         * elmo.el (elmo-folder-detach-messages): New method.
4445         (elmo-folder-move-messages): Use it.
4446         (elmo-folder-synchronize): Ditto.
4447
4448         * elmo-multi.el (elmo-folder-detach-messages): Define.
4449
4450         * elmo.el (elmo-message-copy-entity): New function.
4451         (elmo-message-entity-set-number): Ditto.
4452         (elmo-message-mark): Define as method.
4453
4454         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4455         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4456         (elmo-message-entity): Fixed last change.
4457         (elmo-message-mark): Define.
4458         (elmo-folder-msgdb-create): Abolish.
4459         (elmo-multi-folder-append-msgdb): Ditto.
4460         (elmo-multi-folder-diff): Fixed.
4461         (elmo-multi-split-number-alist): Removed.
4462         (elmo-multi-split-mark-alist): Removed.
4463         (elmo-folder-list-messages): Define.
4464         (elmo-folder-list-messages-internal): Removed.
4465
4466         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4467         local file messages.
4468         (elmo-folder-msgdb-create): Fixed read mark.
4469
4470 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4471
4472         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4473         if mark is nil.
4474
4475 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4476
4477         * elmo.el (elmo-folder-list-message-entities): Define as inline
4478         function.
4479         (elmo-folder-messages): Abolish.
4480
4481         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4482         folder.
4483         (elmo-folder-synchronize): Define.
4484         (elmo-message-entity): Define.
4485
4486 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4487
4488         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4489         elmo-imap4-session-select-mailbox.
4490
4491         * elmo.el (elmo-folder-move-messages): Don't display any message.
4492
4493         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4494         parsing.
4495         (elmo-imap4-session-check): Don't wait CHECK response.
4496         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4497
4498 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4499
4500         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4501
4502 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4503
4504         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4505         API.
4506         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4507
4508
4509         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4510         (elmo-folder-list-message-entities): Added argument in-msgdb and
4511         numbers.
4512         (elmo-folder-synchronize): Define as a method.
4513
4514         * elmo-nntp.el (elmo-folder-initialize): Don't use
4515         elmo-nntp-default-user if zero-length username is specified
4516         explicitly.
4517
4518 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4519
4520         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4521         server name in case with username.
4522         (XXX: this is ad-hoc fix against username includes "@", it
4523         should be solved fundamentally)
4524
4525 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4526
4527         * elmo-nntp.el (elmo-nntp-debug): New function.
4528         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4529         (elmo-network-authenticate-session): Hide auth-info from the log.
4530
4531         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4532         user name if it is equal to elmo-nntp-default-user.
4533
4534 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4535
4536         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4537         instead of shimbun-server-internal;
4538         Use shimbun-current-group instead of shimbun-current-group-internal.
4539         (elmo-folder-plugged-p): Use shimbun-server instead of
4540         shimbun-server-internal.
4541         (elmo-folder-set-plugged): Ditto.
4542         (elmo-net-port-info): Ditto.
4543         (elmo-folder-check): Ditto.
4544         (elmo-folder-expand-msgdb-path): Ditto.
4545         (elmo-folder-list-subfolders): Ditto.
4546
4547 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4548
4549         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4550         Convert field-name to lower case.
4551         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4552
4553 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4554
4555         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4556         `message' and `error' take format string.
4557
4558 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4559
4560         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4561
4562 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4563
4564         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4565         recursive call (can't byte compile on emacs 20.7).
4566
4567 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4568
4569         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4570         (elmo-folder-list-message-entities): New API.
4571         (elmo-message-entity): Ditto.
4572         (elmo-message-entity-parent): Ditto.
4573         (elmo-folder-do-each-message-entity): Ditto.
4574         (elmo-message-entity-number): Ditto.
4575         (elmo-message-entity-field): Ditto.
4576         (elmo-message-entity-set-field): Ditto.
4577         (elmo-folder-count-flags): Ditto.
4578         (elmo-folder-length): Ditto.
4579
4580         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4581         not.
4582
4583         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4584         (elmo-msgdb-count-marks): Abolish.
4585         (elmo-msgdb-make-entity): Ditto.
4586         (elmo-msgdb-do-each-entity): Ditto.
4587         (elmo-msgdb-message-entity): New inline function.
4588         (elmo-msgdb-message-entity-field): Ditto.
4589         (elmo-msgdb-message-entity-set-field): Ditto.
4590         (elmo-msgdb-make-message-entity): New function.
4591
4592 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4593
4594         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4595         to flag. (All other related portions are changed.)
4596         (elmo-folder-msgdb-create): Likewise.
4597         (elmo-generic-folder-append-messages): Use flag-table instead of
4598         seen-list.
4599         (elmo-folder-move-messages): Removed redundant process.
4600         (elmo-folder-synchronize): Likewise.
4601
4602         * elmo-msgdb.el (elmo-flag-table-get): New function.
4603         (elmo-flag-table-save): Fixed.
4604         (elmo-msgdb-length): New inline function.
4605         (elmo-msgdb-flag-table): New function.
4606         (elmo-msgdb-mark): Add optional argument new.
4607         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4608         (elmo-msgdb-seen-list): Ditto.
4609         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4610
4611
4612 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4613
4614         * elmo.el (elmo-message-set-mark): Abolish.
4615         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4616         (All related portions are changed.)
4617
4618         * elmo-msgdb.el (toplevel): Added comment.
4619         (elmo-load-msgdb): Added 4th element `path'.
4620         (elmo-msgdb-append): Follow the change above.
4621         (elmo-msgdb-clear): Ditto.
4622         (elmo-msgdb-delete-msgs): Ditto.
4623         (elmo-msgdb-get-path): New inline function.
4624         (elmo-msgdb-set-path): Ditto.
4625         (elmo-flag-table-filename): New variable.
4626         (elmo-flag-table-load): New function.
4627         (elmo-flag-table-set): Ditto.
4628         (elmo-flag-table-save): Ditto.
4629         (elmo-msgdb-get-field-value): Abolish.
4630         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4631
4632 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4633
4634         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4635         the folder has been deleted successfully.
4636         * elmo-imap4.el (elmo-folder-delete): Ditto.
4637         * elmo-archive.el (elmo-folder-delete): Ditto.
4638         * elmo-localdir.el (elmo-folder-delete): Ditto.
4639         * elmo-maildir.el (elmo-folder-delete): Ditto.
4640
4641 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4642
4643         * elmo-util.el (elmo-string-member-ignore-case): New function.
4644         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4645         (elmo-imap4-fetch-callback-1-subr): Likewise.
4646
4647 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4648
4649         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4650         the case of the name attribute "\Noselect".
4651
4652 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4653
4654         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4655
4656         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4657         flist, is not always a member of onum-alist.
4658
4659 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4660
4661         * elmo-version.el (elmo-version): Up to 2.11.3.
4662
4663 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4664
4665         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4666         copied from localdir's one.
4667
4668         * elmo-pipe.el (elmo-folder-rename): New method, rename
4669         destination folder with leaving source folder as it is.
4670
4671 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4672
4673         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4674         replace-regexp.
4675
4676 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4677
4678         * elmo-version.el (elmo-version): Up to 2.11.2.
4679
4680 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4681
4682         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4683         shimbun-open in case of "@".
4684         (elmo-folder-open-internal): Cope with shimbun = nil case.
4685         (elmo-folder-plugged-p): Ditto.
4686         (elmo-folder-list-subfolders): Make list for "@/" group.
4687
4688 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4689
4690         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4691         mailbox (e.g. for %~/something).
4692
4693 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4694
4695         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4696         Replace nested conditional with guard clauses.
4697
4698 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4699
4700         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4701         error [wl:11327].
4702
4703         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4704         print-depth.
4705
4706 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4707
4708         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4709         Replace nested conditional with guard clauses.
4710
4711 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4712
4713         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4714         (elmo-passwd-alist-save): Ditto.
4715         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4716
4717 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4718
4719         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4720         dir-name only if it is absolute path.
4721         (TODO: distinguish +/something and +something)
4722
4723 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4724
4725         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4726         path for "+~/something".
4727
4728 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4729
4730         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4731         as non-directory, cause error before rename-file.
4732         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4733         apropriately, mimic localdir's one.
4734         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4735
4736 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4737
4738         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4739
4740 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4741
4742         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4743
4744         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4745         
4746         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4747         is included in the global-mark or not.
4748
4749 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4750
4751         * utf7.el (toplevel): Avoid error when the function
4752         find-coding-system does not exist.
4753
4754 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4755
4756         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4757         cache even if the folder is plugged.
4758         (elmo-nntp-search-primitive): Do nothing when body search is
4759         invoked (although it is not used by the change above).
4760         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4761
4762 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4763
4764         * elmo-version.el (elmo-version): Up to 2.11.1.
4765
4766 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4767
4768         * elmo-archive.el: Specify charset.
4769
4770 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4771
4772         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4773         process buffer lives or not.
4774
4775         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4776         while flushing queues (It causes infinite loop).
4777
4778 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4779
4780         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4781
4782 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4783
4784         * utf7.el (toplevel): Check the ucs features dynamically.
4785         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4786
4787         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4788         folder is creatabe or not if it already exists.
4789
4790 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4791
4792         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4793
4794         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4795
4796         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4797         (elmo-imap4-read-response): Take care of garbage response.
4798
4799 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4800
4801         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4802         just return nil instead of error.
4803
4804 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4805
4806         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4807         search-key is "body".
4808
4809 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4810
4811         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4812         of elmo-string-matched-assoc to use match-data.
4813         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4814
4815 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4816
4817         * elmo-split.el (elmo-split->): New function.
4818         (elmo-split-<): Ditto.
4819
4820 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4821
4822         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4823         workaround for invalid message-id.
4824
4825 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4826
4827         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4828         return normal pop3 session or pop3 biff session.
4829
4830 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4831
4832         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4833         info part to the cur files when the new files already have it.
4834         (Adviced by Jared Rhine <jared@wordzoo.com>)
4835
4836 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4837
4838         * elmo-split.el (elmo-split-default-action): New variable.
4839         (elmo-split-subr): Use it if all other conditions are passed.
4840         Extend `fname' and rename it as `action'. (implemented
4841         Teranishi-san's idea in [wl:10800])
4842
4843 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4844
4845         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4846         * elmo-util.el: Ditto.
4847
4848 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4849
4850         * elmo.el (elmo-message-accessible-p): Renamed from
4851         elmo-message-cached-p and rewritten.
4852
4853 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4854
4855         * elmo.el (elmo-folder-list-flagged): New generic function.
4856         (elmo-folder-list-importants): New implementation.
4857         (elmo-folder-list-answereds): Ditto.
4858         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4859         Added 'digest'.
4860         (elmo-message-cached-p): New function.
4861         (elmo-message-set-flag): Ditto (no content).
4862         (elmo-message-unset-flag): Ditto.
4863         (elmo-folder-list-messages-mark-match): Abolish.
4864
4865         * elmo-util.el (elmo-regexp-opt): New function.
4866
4867         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4868         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4869         Added 'digest'.
4870         (elmo-msgdb-list-flagged): New function.
4871
4872         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4873         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4874         Added 'digest'.
4875
4876         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4877
4878 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4879
4880         * elmo-version.el (elmo-version): Up to 2.11.0.
4881
4882 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4883
4884         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4885         `elmo-file-cache-exists-p'; use proper mark that depends on
4886         `use-cache'.
4887         (elmo-msgdb-unset-flag): Ditto.
4888         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4889
4890         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4891         with 4th argument `use-cache'.
4892
4893 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4894
4895         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4896         (elmo-folder-mark-as-important): Ditto.
4897         (elmo-folder-unmark-read): Ditto.
4898         (elmo-folder-mark-as-read): Ditto.
4899         (elmo-folder-unmark-answered): Ditto.
4900         (elmo-folder-mark-as-answered): Ditto.
4901
4902         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4903         message status.
4904         (elmo-msgdb-mark): Likewise.
4905         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4906         (elmo-msgdb-unset-flag): Likewise.
4907
4908         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4909
4910 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4911
4912         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4913         `last:' filter.
4914
4915 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4916
4917         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4918         set spool-length to 0.
4919
4920 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4921
4922         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4923         (elmo-dop-queue-flush): Fixed last change.
4924
4925 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4926
4927         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4928         if require-msgdb slot is nil.
4929         (elmo-folder-list-importants): Likewise.
4930
4931 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4932
4933         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4934         mark is changed.
4935
4936         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4937         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4938         is changed.
4939
4940 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4941
4942         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4943
4944 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4945
4946         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4947
4948         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4949
4950 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4951
4952         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4953         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4954
4955 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4956
4957         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4958         the problem reported by Sean Rima [wl-en:180].
4959
4960 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4961
4962         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4963
4964         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4965
4966         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4967
4968         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4969
4970         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4971
4972         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4973
4974         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4975
4976 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4977
4978         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4979         status number.
4980
4981 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4982
4983         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4984         (elmo-folder-mark-as-read): Follow the API change.
4985         (elmo-message-set-cached): New function.
4986
4987         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4988
4989         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4990
4991         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4992         (elmo-folder-mark-as-important): Ditto.
4993         (elmo-folder-unmark-read): Ditto.
4994         (elmo-folder-mark-as-read): Ditto.
4995         (elmo-folder-unmark-answered): Ditto.
4996         (elmo-folder-mark-as-answered): Ditto.
4997
4998         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4999         (elmo-folder-unmark-important): Ditto.
5000         (elmo-folder-mark-as-read): Ditto.
5001         (elmo-folder-unmark-read): Ditto.
5002         (elmo-folder-mark-as-answered): Ditto.
5003         (elmo-folder-unmark-answered): Ditto.
5004
5005         * elmo-mark.el (toplevel): Removed some mark method definitions.
5006
5007         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
5008         (elmo-map-folder-mark-as-answered): Ditto.
5009         (elmo-folder-unmark-important): Add :before qualifier.
5010         (elmo-folder-mark-as-important): Ditto.
5011         (elmo-folder-unmark-read): Ditto.
5012         (elmo-folder-mark-as-read): Ditto.
5013         (elmo-folder-unmark-answered): Define.
5014         (elmo-folder-mark-as-answered): Ditto.
5015
5016         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
5017         (elmo-map-folder-unmark-answered): Ditto.
5018
5019         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
5020
5021         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
5022         (elmo-folder-mark-as-important): Ditto.
5023         (elmo-folder-unmark-read): Ditto.
5024         (elmo-folder-mark-as-read): Ditto.
5025         (elmo-folder-unmark-answered): Ditto.
5026         (elmo-folder-mark-as-answered): Ditto.
5027
5028         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
5029         `mark'; evaluate mark condition.
5030         (elmo-msgdb-match-condition-internal): New function.
5031         (elmo-msgdb-match-condition): Call it; changed argument.
5032
5033         * elmo.el (elmo-folder-search): Follow the API change on
5034         `elmo-msgdb-match-condition'.
5035
5036 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5037
5038         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
5039         original mark is non-nil.
5040
5041 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
5042
5043         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
5044         (elmo-map-folder-list-answereds): New method.
5045         (elmo-folder-list-unreads): Add :around qualifier.
5046         (elmo-folder-list-importants): Ditto.
5047         (elmo-folder-list-answereds): Ditto.
5048
5049 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
5050
5051         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
5052
5053         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
5054         method if msgdb is not required.
5055         (elmo-filter-folder-list-importants): Don't treat global-mark.
5056
5057         * elmo.el (elmo-folder-list-importants): Ditto.
5058
5059         * elmo-net.el (elmo-folder-list-importants): Ditto.
5060
5061         * elmo-map.el (elmo-folder-list-importants): Ditto.
5062
5063         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
5064
5065         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
5066         (elmo-imap4-folder-list-any-plugged): New function.
5067         (elmo-imap4-search-internal-primitive): Use it.
5068
5069         * elmo-filter.el (elmo-folder-check): Synchronize original folder
5070         only when require-msgdb slot is non-nil.
5071         (elmo-folder-close): Clear target folder's msgdb.
5072
5073 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5074
5075         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
5076         (elmo-pop3-msgdb-create-by-header): Ditto.
5077         (elmo-pop3-msgdb-create-message): Ditto.
5078
5079         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
5080
5081         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
5082
5083         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
5084
5085         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
5086         (elmo-folder-msgdb-create): Ditto.
5087         (elmo-nntp-folder-msgdb-create): Ditto.
5088         (elmo-nntp-msgdb-create-by-header): Ditto.
5089         (elmo-nntp-msgdb-create-message): Ditto.
5090         (elmo-folder-list-unreads): Define.
5091
5092         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
5093         (elmo-folder-append-messages): Ditto.
5094         (elmo-folder-list-unreads): Define.
5095         (elmo-folder-list-importants): Ditto.
5096         (elmo-folder-list-answereds): Ditto.
5097
5098         * elmo-net.el (elmo-folder-list-unreads): Define.
5099         (elmo-folder-list-importants): Ditto.
5100         (elmo-folder-list-answereds): Ditto.
5101         (elmo-folder-list-answereds-plugged): Ditto.
5102         (elmo-folder-msgdb-create): Follow the API change.
5103         (elmo-folder-msgdb-create-unplugged): Ditto.
5104         (elmo-folder-unmark-answered): Define.
5105         (elmo-folder-mark-as-answered-unplugged): Ditto.
5106         (elmo-folder-unmark-answered-unplugged): Ditto.
5107
5108         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
5109         (elmo-msgdb-unread-uncached-mark): Ditto.
5110         (elmo-msgdb-unread-cached-mark): Ditto.
5111         (elmo-msgdb-read-uncached-mark): Ditto.
5112         (elmo-msgdb-answered-cached-mark): Ditto.
5113         (elmo-msgdb-answered-uncached-mark): Ditto.
5114         (elmo-msgdb-important-mark): Ditto.
5115         (elmo-msgdb-set-mark): Rewrite.
5116         (elmo-msgdb-count-marks): Rewrite.
5117         (elmo-msgdb-mark-alist-set): Abolish.
5118         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
5119         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
5120
5121         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
5122         (elmo-folder-close): Define.
5123         (elmo-folder-msgdb-create): Follow the API change.
5124         (elmo-folder-list-unreads): Rewrite.
5125         (elmo-folder-mark-as-important): Ditto.
5126         (elmo-folder-unmark-important): Ditto.
5127         (elmo-folder-mark-as-read): Ditto.
5128         (elmo-folder-unmark-read): Ditto.
5129         (elmo-folder-mark-as-answered): Define.
5130         (elmo-folder-unmark-answered): Ditto.
5131
5132         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
5133         (elmo-folder-append-messages): Ditto.
5134
5135         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
5136
5137         * elmo-map.el (elmo-folder-list-unreads): Ditto.
5138         (elmo-folder-list-importants): Ditto.
5139
5140         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
5141         (elmo-folder-append-messages): Ditto.
5142
5143         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
5144         change.
5145         (elmo-folder-msgdb-create-plugged): Ditto.
5146         (elmo-folder-append-messages): Ditto.
5147         (elmo-folder-list-answereds-plugged): Define.
5148         (elmo-imap4-search-internal-primitive): Add `mark' processing.
5149         (elmo-folder-unmark-answered-plugged): Define.
5150         (elmo-folder-mark-as-answered-plugged): Ditto.
5151         (elmo-folder-search-requires-msgdb-p): Ditto.
5152
5153         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
5154         (elmo-folder-initialize): Set it.
5155         (elmo-folder-msgdb): Define.
5156         (elmo-folder-check): Call elmo-folder-synchronize.
5157         (elmo-folder-close): Define.
5158         (elmo-folder-commit): Ditto.
5159         (elmo-folder-msgdb-create): Rewrite.
5160         (elmo-folder-list-unreads): Ditto.
5161         (elmo-folder-list-importants): Ditto.
5162         (elmo-folder-mark-as-read): Ditto.
5163         (elmo-folder-unmark-read): Ditto.
5164         (elmo-folder-mark-as-important): Ditto.
5165         (elmo-folder-unmark-important): Ditto.
5166         (elmo-folder-mark-as-answered): Define.
5167         (elmo-folder-unmark-answered): Ditto.
5168
5169         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
5170         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
5171         (elmo-dop-queue-method-name-alist): Likewise.
5172         (elmo-folder-mark-as-answered-dop): New inline function.
5173         (elmo-folder-unmark-answered-dop): Ditto.
5174         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
5175
5176         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
5177         (elmo-folder-msgdb-create): Ditto.
5178         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
5179         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
5180         (elmo-archive-parse-mmdf): Ditto.
5181
5182         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
5183         (elmo-folder-list-unreads-internal): Ditto.
5184
5185         * elmo.el (elmo-folder-msgdb): Define as generic function.
5186         (elmo-folder-list-messages): Added argument `in-msgdb'.
5187         (elmo-folder-list-unreads): Define as generic function.
5188         (elmo-folder-list-importants): Ditto.
5189         (elmo-folder-list-answereds): Ditto.
5190         (elmo-folder-list-messages-with-global-mark): New function.
5191         (elmo-folder-msgdb-create): Removed mark arguments.
5192         (elmo-folder-unmark-answered): New generic function.
5193         (elmo-folder-mark-as-answered): Ditto.
5194         (elmo-folder-append-messages): Removed argunment `unread-marks'
5195         (elmo-folder-list-unreads-internal): Abolish.
5196         (elmo-folder-list-importants-internal): Ditto.
5197         (elmo-folder-search-requires-msgdb-p): New generic function.
5198         (elmo-folder-search-requires-msgdb-p-internal): New function.
5199         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
5200         elmo-msgdb-load.
5201         (elmo-folder-search-fast): Added key 'mark'.
5202         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
5203         instead of unread-marks argument.
5204         (elmo-folder-move-messages): Removed argunment `unread-marks'
5205         (elmo-folder-unmark-important): Define.
5206         (elmo-folder-mark-as-important): Ditto.
5207         (elmo-folder-unmark-read): Ditto.
5208         (elmo-folder-mark-as-read): Ditto.
5209         (elmo-folder-unmark-answered): Ditto.
5210         (elmo-folder-mark-as-answered): Ditto.
5211         (elmo-folder-replace-marks): Abolish.
5212         (elmo-generic-folder-append-msgdb): Append msgdb before checking
5213         duplicates.
5214         (elmo-folder-synchronize): Removed mark arguments;
5215         return crosspost only number.
5216
5217 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5218
5219         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
5220         Remove redundunt connectivity check.
5221
5222 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5223
5224         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
5225         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
5226
5227 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
5228
5229         * pldap.el (ldap-decode-string): Return string as-is if
5230         `ldap-coding-system' is nil.
5231         (ldap-encode-string): Ditto.
5232         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
5233         (ldap-default-host): Fixed docstring.
5234
5235 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
5236
5237         * elmo-util.el (elmo-warning): Define as a macro which uses
5238         `display-warning' if it is defined as a function.
5239
5240         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
5241         (elmo-split-equal): Use it.
5242         (elmo-split-match): Ditto.
5243         (elmo-split-message-entity): New buffer-local variable.
5244         (elmo-split-subr): Set it.
5245
5246         * elmo-version.el (elmo-version): Up to 2.9.15.
5247
5248 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
5249
5250         * elmo-imap4.el (elmo-network-initialize-session):
5251         Check capability after starttls.
5252
5253 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
5254
5255         * elmo-util.el (elmo-list-delete): Added optional argument
5256         DELETE-FUNCTION.
5257
5258         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
5259
5260         * elmo-util.el (elmo-warning): Ignore errors while recenter.
5261
5262         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
5263
5264         * elmo-imap4.el (elmo-folder-initialize): Don't use
5265         elmo-imap4-default-mailbox.
5266
5267 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5268
5269         * elmo-split.el (toplevel): Use `product-provide'.
5270         (elmo-split): Checkdoc.
5271
5272 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
5273
5274         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
5275         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
5276         the function `elmo-imap4-debug-1'.
5277
5278 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5279
5280         * elmo-split.el (elmo-split): Moved to run hooks and to show
5281         message from elmo-split-subr.
5282         (elmo-split-subr): Follow the change above.
5283
5284         * elmo-split.el (elmo-split-subr): New function (renamed from
5285         elmo-split-subr).
5286         (elmo-split): Changed to call elmo-split-subr by element of
5287         elmo-split-folder.
5288         (elmo-split-folder): Changed customization type to choice.
5289
5290 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5291
5292         * elmo-split.el (elmo-split-and): Fixed condition.
5293
5294 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5295
5296         * elmo-split.el: New file.
5297         (elmo-split): Fixed logic.
5298         Display "Test:" instead of "Folder:" when reharsal.
5299
5300         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
5301         explicitly.
5302
5303         * elmo-version.el (elmo-version): Up to 2.9.14.
5304
5305         * elmo-util.el (elmo-expand-newtext): New function (renamed from
5306         wl-expand-newtext).
5307
5308 2002-06-10  Kenichi Sato <ksato@sonycom.com>
5309
5310         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
5311         message with no message-id field.
5312
5313 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
5314
5315         * elmo-version.el (elmo-version): Up to 2.9.13.
5316
5317         * elmo-dop.el (elmo-folder-status-dop): Fix.
5318
5319 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
5320
5321         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
5322
5323         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
5324         changing default value of default-mime-charset.
5325         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
5326
5327         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
5328
5329         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
5330         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
5331         instead of elmo-dop-queue-method-name-alist to check merging queue.
5332         (elmo-folder-delete-messages-dop): Delete from queue if negative
5333         message number.
5334         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
5335         file is already removed.
5336
5337 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
5338
5339         * elmo-vars.el: Bind colon keywords for old Emacsen.
5340
5341 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5342
5343         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
5344         against non-exsisting charset.
5345
5346 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
5347
5348         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
5349         Use eword-decode-and-unfold-unstructured-field-body.
5350
5351         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
5352         (elmo-msgdb-create-overview-from-buffer): Use document charset if
5353         exists to decode raw subject string.
5354         (toplevel): Require 'mime.
5355
5356         * elmo-version.el (elmo-version): Up to 2.9.12.
5357
5358 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
5359
5360         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
5361         (elmo-msgdb-set-mark): Ditto.
5362
5363         * elmo-version.el (elmo-version): Up to 2.9.11.
5364
5365 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
5366
5367         * elmo-util.el (elmo-delete-match-files): New function.
5368
5369         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
5370         instead of elmo-delete-directory.
5371
5372         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
5373         elmo-hash-minimun-size as 63.
5374
5375         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
5376         elmo-diff-unread is nil.
5377
5378         * elmo-imap4.el (elmo-folder-open): Fix.
5379
5380         * elmo.el (elmo-message-mark): Rewrite.
5381         (elmo-message-field): Ditto.
5382         (elmo-message-set-mark): Ditto.
5383         (elmo-folder-replace-marks): New function.
5384         (elmo-generic-folder-append-msgdb): Removed third argument for
5385         elmo-msgdb-append.
5386         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
5387         (elmo-msgdb-load): New implementation.
5388
5389         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
5390
5391         * elmo-util.el (elmo-list-insert): New implementation.
5392
5393         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
5394         argument for elmo-msgdb-append.
5395         
5396
5397         * elmo-msgdb.el (elmo-load-msgdb): New function.
5398         (elmo-make-msgdb): Ditto.
5399         (elmo-msgdb-get-index): New inline function.
5400         (elmo-msgdb-set-index): Ditto.
5401         (elmo-msgdb-get-entity-hashtb): Ditto.
5402         (elmo-msgdb-get-mark-hashtb): Ditto.
5403         (elmo-msgdb-get-mark): Ditto.
5404         (elmo-msgdb-set-mark): Ditto.
5405         (elmo-msgdb-count-marks): Ditto.
5406         (elmo-msgdb-get-number): Ditto.
5407         (elmo-msgdb-get-field): Ditto.
5408         (elmo-msgdb-seen-list): Ditto.
5409         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
5410         (elmo-msgdb-delete-msgs): Follow the changes above.
5411         (elmo-msgdb-overview-get-entity): Ditto.
5412         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
5413         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
5414         and rewritten.
5415         (elmo-msgdb-make-index): Likewise.
5416         (elmo-msgdb-append): Removed third argument.
5417         (elmo-msgdb-clear): Clear index as nil.
5418         (elmo-folder-set-info-hashtb): Removed.
5419         (elmo-folder-set-info-max-by-numdb): Ditto.
5420         (elmo-folder-info-make-hashtb): Ditto.
5421
5422         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
5423
5424         * elmo-map.el (elmo-folder-pack-number): Ditto.
5425
5426 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
5427
5428         * elmo-version.el (elmo-version): Up to 2.9.10.
5429
5430         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
5431
5432         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
5433
5434 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
5435
5436         * elmo-utils.el (elmo-make-directory): Add option.
5437         Default file mode is 700.
5438
5439 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5440
5441         * elmo-shimbun.el (elmo-folder-local-p): Defined.
5442
5443 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
5444
5445         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
5446         mime-charset.
5447
5448         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
5449         and "smaller".
5450
5451 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5452
5453         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5454         (elmo-shimbun-folder-entity-hash): New function.
5455         (elmo-shimbun-folder-shimbun-header): Ditto.
5456         (elmo-shimbun-entity-to-header): Ditto.
5457         (elmo-shimbun-msgdb-to-headers): Removed.
5458         (elmo-shimbun-folder-setup): Ditto.
5459         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5460         for hash key.
5461         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5462         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5463         Removed useless local bind.
5464         (elmo-folder-open-internal): Don't call
5465         `elmo-shimbun-folder-setup'.
5466         (elmo-folder-close-internal): Clear entity-hash slot.
5467         (elmo-folder-clear): Ditto.
5468         (elmo-shimbun-msgdb-create-entity): Use
5469         `elmo-shimbun-folder-shimbun-header'.
5470         (elmo-map-message-fetch): Ditto.
5471         (elmo-shimbun-update-overview): Use overview entity instead of
5472         shimbun header to lookup id by references.
5473         (elmo-map-folder-list-message-locations): Use not only headers but
5474         also overviews to list locations.
5475
5476 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5477
5478         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5479         msgdb path.
5480
5481         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5482
5483 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5484
5485         * elmo-util.el (elmo-read-search-condition-internal): Give default
5486         value for date.
5487
5488 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5489
5490         * elmo-util.el (elmo-condition-parse-search-value): Accept
5491         YYYY-MM-DD format to search.
5492         * elmo-date.el (elmo-date-get-datevec): Likewise.
5493
5494 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5495
5496         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5497         debugging code.
5498
5499 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5500
5501         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5502         from t.
5503
5504         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5505
5506         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5507         case from `elmo-folder-exists-p'.
5508         (elmo-folder-exists-p): Removed.
5509         (elmo-folder-creatable-p) Ditto.
5510
5511         * elmo-net.el (elmo-folder-create): Defined.
5512         (elmo-folder-create-unplugged): New function.
5513         (elmo-folder-exists-p): Changed default value to nil from t.
5514
5515         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5516         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5517
5518         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5519         `elmo-create-folder-dop' and append queue
5520         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5521         (elmo-folder-create-dop-delayed): New function.
5522
5523         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5524
5525         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5526
5527         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5528         (elmo-folder-writable-p) : Ditto.
5529
5530         * elmo-version.el (elmo-version): Up to 2.9.9.
5531
5532 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5533
5534         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5535         `elmo-message-use-cache-p' returns nil.
5536         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5537         (ignore cache file and refer the substance in local folders)
5538
5539 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5540
5541         * elmo-version.el (elmo-version): Up to 2.9.8.
5542
5543 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5544
5545         * elmo-version.el (elmo-version): Up to 2.9.7.
5546
5547         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5548
5549 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5550
5551         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5552
5553 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5554
5555         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5556         from --early.
5557         (elmo-map-folder-list-message-locations): Reverse location list.
5558
5559 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5560
5561         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5562
5563 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5564
5565         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5566         as a key.
5567         (elmo-nntp-folder-list-subfolders): Follow the change above.
5568
5569 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5570
5571         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5572         name if authentication type is specified.
5573
5574 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5575
5576         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5577         variable.
5578         (elmo-default-nntp-stream-type): Ditto.
5579         (elmo-default-pop3-stream-type): Ditto.
5580
5581 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5582
5583         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5584
5585 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5586
5587         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5588         elmo-vars.el.
5589         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5590
5591         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5592         (elmo-maildir-folder-path): Ditto.
5593         (elmo-maildir-list): Ditto (abolished).
5594
5595 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5596
5597         * elmo-version.el (elmo-version): Up to 2.9.6.
5598
5599 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5600
5601         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5602         (elmo-maildir-folder-path): Ditto.
5603         (elmo-msgdb-directory): Ditto.
5604         (elmo-passwd-life-time): Ditto.
5605         (elmo-msgdb-extra-fields): Ditto.
5606         (elmo-enable-disconnected-operation): Ditto.
5607
5608 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5609
5610         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5611         other choices.
5612         (elmo-pop3-default-authenticate-type): Ditto.
5613
5614 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5615
5616         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5617         choices for custom.
5618         (elmo-pop3-default-authenticate-type): Ditto.
5619
5620 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5621
5622         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5623         mailbox to new-folder.
5624
5625 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5626
5627         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5628         less than new, set new as unread.
5629
5630         * elmo-util.el (elmo-string): Don't put text-property if nil.
5631
5632 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5633
5634         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5635         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5636
5637 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5638
5639         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5640         is nil on `completing-read'.
5641
5642 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5643
5644         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5645         for namespace part.
5646         (elmo-imap4-parse-namespace-subr): Ditto.
5647         (elmo-folder-list-subfolders): Append a delimiter when the specified
5648         folder path is a root with namespace and does not end with delimiter.
5649
5650 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5651
5652         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5653         was used.
5654
5655 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5656
5657         * elmo-util.el (elmo-save-buffer): The first argument of message
5658         is a format control string.
5659
5660 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5661
5662         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5663         `elmo-folder-diff').
5664         (elmo-diff-unread): Likewise.
5665
5666 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5667
5668         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5669         is t on `completing-read'.
5670
5671 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5672
5673         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5674         method of target folder with self mark-alist if MARK-ALIST is nil.
5675
5676 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5677
5678         * elmo-version.el (elmo-version): Up to 2.9.5.
5679
5680 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5681
5682         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5683         (elmo-dop-merge-funcs): Remove.
5684
5685 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5686
5687         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5688         Return t if PATH is directory, too.
5689         Use `dolist' instead of while loop.
5690
5691 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5692
5693         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5694         is deleted.
5695
5696 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5697
5698         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5699         return value to t.
5700         (elmo-folder-list-messages-unplugged): Return t if
5701         elmo-enable-disconnected-operation is nil.
5702
5703         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5704         `elmo-folder-list-messages-internal'.
5705
5706 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5707
5708         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5709         Change to looking-at `[23][0-9]+'.
5710         (elmo-network-initialize-session): Use 'error-msg'
5711         * elmo-net.el (elmo-network-open-session): Set unplugged
5712         if elmo-network-initialize-session returns 'elmo-open-err.
5713
5714 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5715
5716         * elmo-version.el (elmo-version): Up to 2.9.4.
5717
5718 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5719
5720         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5721         `elmo-folder-list-messages-internal'.
5722
5723 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5724
5725         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5726         (elmo-message-match-condition): New method.
5727         (elmo-folder-search-fast): New inline function.
5728         (elmo-msgdb-search): Removed.
5729
5730         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5731         target folder if it is unplugged.
5732         (elmo-folder-list-messages-internal): Return t if target folder is
5733         unplugged and itself is persistent; In this case, use list be
5734         searched already.
5735
5736         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5737         (elmo-msgdb-search-internal-primitive): Ditto.
5738         (elmo-msgdb-match-condition): New function.
5739         (elmo-msgdb-match-condition-primitive): Ditto.
5740
5741         * elmo-util.el (elmo-filter-condition-p): New macro.
5742
5743         * elmo-cache.el (elmo-folder-search): Removed.
5744
5745         * elmo-localdir.el (elmo-folder-search): Ditto.
5746
5747         * elmo-maildir.el (elmo-folder-search): Ditto.
5748
5749         * elmo-mark.el (elmo-folder-search): Ditto.
5750
5751         * elmo-nmz.el (elmo-folder-search): Ditto.
5752
5753         * elmo-sendlog.el (elmo-folder-search): Ditto.
5754
5755         * elmo-shimbun.el (elmo-folder-search): Ditto.
5756
5757         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5758         if folder is unplugged.
5759
5760         * elmo-nntp.el (elmo-folder-search): Likewise.
5761         (elmo-nntp-search-internal): New function.
5762
5763         * elmo-version.el (elmo-version): Up to 2.9.3.
5764
5765 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5766
5767         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5768
5769 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5770
5771         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5772
5773 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5774
5775         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5776
5777 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5778
5779         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5780         (elmo-map-folder-list-message-locations): Do drive letter conversion
5781         on Windows environment.
5782         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5783         (elmo-map-message-fetch): Ditto.
5784
5785 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5786
5787         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5788         (elmo-network-initialize-session): Ditto.
5789
5790 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5791
5792         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5793
5794         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5795
5796         * elmo-util.el (elmo-progress-clear): Ditto.
5797
5798         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5799         `DD-Mon-YYYY' type date.
5800
5801 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5802
5803         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5804         `elmo-date-make-sortable-string' instead of
5805         `timezone-make-date-sortable'.
5806
5807         * elmo-date.el (elmo-date-make-sortable-string): Use
5808         `timezone-make-time-string'.
5809
5810 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5811
5812         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5813
5814         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5815         `since'; Fix timezone.
5816
5817         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5818
5819         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5820
5821 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5822
5823         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5824
5825 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5826
5827         * elmo.el (elmo-generic-folder-append-messages): Make
5828         fetch-strategy with `use-cache' as 'maybe. Check return value of
5829         `elmo-message-fetch'.
5830         (elmo-message-fetch): Return return value of
5831         `elmo-message-fetch-with-cache-process'.
5832         (elmo-message-fetch-with-cache-process): Return non-nil if
5833         fetching was succeed. Load cache when fetching was failed and
5834         fetch-strategy-use-cache is 'maybe.
5835
5836         * elmo-util.el (elmo-file-cache-load): New function.
5837
5838         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5839         defun.
5840
5841         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5842         non-nil if fetching was succeed.
5843
5844         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5845
5846         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5847
5848         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5849         (elmo-message-fetch-with-cache-process): Likwise.
5850
5851         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5852
5853         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5854
5855         * elmo-version.el (elmo-version): Up to 2.9.2.
5856
5857 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5858
5859         * elmo.el (elmo-folder-delete): Delete msgdb path.
5860
5861         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5862
5863         * elmo-maildir.el (elmo-folder-delete): Ditto.
5864
5865         * elmo-localdir.el (elmo-folder-delete): Ditto.
5866
5867         * elmo-imap4.el (elmo-folder-delete): Ditto.
5868
5869 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5870
5871         * elmo.el (luna-define-class): Added `biff' slot.
5872
5873         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5874         (elmo-pop3-debug-inhibit-logging): Abolished.
5875         (elmo-network-close-session): Eliminated needless let.
5876         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5877         (elmo-pop3-send-command): Added `no-log' argument.
5878         (elmo-pop3-process-filter): Use `with-current-buffer'.
5879         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5880         if login failure.
5881         (elmo-pop3-auth-apop): Likewise.
5882         (elmo-network-authenticate-session): Likewise.
5883
5884         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5885         if biff folder.
5886
5887         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5888         string to determine protocol.
5889         (elmo-network-session-name-prefix): Abolished.
5890         (elmo-network-session-cache-key): Follow the change above.
5891         (elmo-network-open-session): Ditto.
5892
5893         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5894         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5895
5896         * elmo-version.el (elmo-version): Up to 2.9.1.
5897
5898         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5899         unmatch condition checking.
5900
5901         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5902         condition.
5903
5904 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5905
5906         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5907
5908 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5909
5910         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5911         test for while loop to execute at least one SEARCH command.
5912
5913 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5914
5915         * elmo-version.el (elmo-version): Up to 2.9.0.
5916
5917 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5918
5919         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5920         (elmo-archive-folder-path): Define.
5921         (elmo-folder-initialize): Setup `dir-name' slot.
5922         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5923         Use `dir-name' as prefix of each subfolders.
5924         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5925
5926 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5927
5928         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5929         (elmo-pipe-folder-list-target-messages): New internal function.
5930         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5931         `killed-list'.
5932         (elmo-pipe-folder-copied-list-load): New function.
5933         (elmo-pipe-folder-copied-list-save): Ditto.
5934         (elmo-folder-open-internal): Follow the change above.
5935         (elmo-folder-status): Fixed for copy.
5936
5937 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5938
5939         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5940
5941 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5942
5943         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5944         elmo-copy-file instead of elmo-add-name-to-file.
5945
5946         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5947
5948         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5949         "file://..." index.
5950
5951         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5952         of accept-process-output as 1.
5953         (elmo-pop3-read-contents): Ditto.
5954         (elmo-pop3-read-body): Ditto.
5955
5956 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5957
5958         * elmo-version.el (product-version-as-string): Remove define.
5959
5960 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5961
5962         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5963         (elmo-imap4-copy-messages): Chop number set using
5964         `elmo-imap4-number-set-chop-length'.
5965         (elmo-imap4-set-flag): Ditto.
5966         (elmo-imap4-search-internal-primitive): Ditto.
5967
5968 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5969
5970         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5971         `elmo-folder-make-temp-dir'
5972
5973         * elmo-vars.el (elmo-cache-directory): New variable.
5974         (elmo-cache-dir): Abolished.
5975         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5976
5977         * elmo-version.el (elmo-version): Up to 2.7.7.
5978
5979 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5980
5981         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5982         defcustom; Set default value as t.
5983
5984 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5985
5986         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5987         (ldap-search-program-arguments): Changed default value.
5988         (ldap-search-basic): Accept exit status 4.
5989         (ldap/field-body): Parse options.
5990         (ldap/collect-field): Ditto.
5991         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5992
5993         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5994         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5995         (elmo-imap4-accept-ok): Ditto.
5996         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5997         'notify-bye, only BYE error is reported.
5998         (elmo-folder-exists-p-plugged): Set no-error argument of
5999         `elmo-imap4-session-select-mailbox' as 'notify-bye.
6000
6001         * elmo.el (elmo-imap4-bye-error): Changed message.
6002
6003         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
6004         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
6005         queues (It causes infinite loop).
6006
6007 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6008
6009         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
6010         (RECENT UNSEEN MESSAGES) extension.
6011
6012 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
6013
6014         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
6015         Check number of overview fields.
6016
6017 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
6018
6019         * elmo.el (elmo-folder-confirm-appends): Changed message.
6020         (elmo-folder-confirm-appends): Ditto.
6021
6022         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
6023         `with-temp-buffer'.
6024         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
6025
6026 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
6027
6028         * elmo.el (elmo-folder-confirm-appends): Check whether the value
6029         of elmo-folder-update-threshold is nil, which can be set by
6030         wl-summary-update-confirm-threshold.
6031
6032 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
6033
6034         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
6035         (elmo-nmz-index-alias-alist): Ditto.
6036         (elmo-map-folder-list-message-locations): Follow the change above.
6037
6038 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6039
6040         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
6041
6042         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
6043
6044         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
6045
6046         * elmo-util.el (elmo-read): Ditto.
6047         (elmo-display-error): Ditto.
6048
6049         * elmo-vars.el (elmo-date-match): Ditto.
6050
6051         * pldap.el (ldap-coding-system): Ditto.
6052
6053         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
6054         `elmo-inhibit-number-mapping' as nil.
6055
6056 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
6057
6058         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
6059         space delimiter for list response.
6060
6061 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
6062
6063         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
6064
6065 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
6066
6067         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
6068         (elmo-map-message-fetch): Fix.
6069         * elmo-map.el (elmo-folder-status): Fix for killed.
6070
6071 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
6072
6073         * elmo-sendlog.el: New file.
6074         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
6075
6076 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
6077
6078         * acap.el (acap-logging-out): New buffer local variable.
6079         (acap-close): Set it.
6080         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
6081         an error.
6082
6083 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
6084
6085         * acap.el (acap-response-bye-p): New function.
6086         (acap-response-bye-message): Ditto.
6087         (acap-wait-for-response): If bye response is received, cause an error.
6088         (acap-parse-response): Make bye response when 'Bye' is received.
6089
6090 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
6091
6092         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
6093
6094 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6095
6096         * elmo-util.el (elmo-copy-file): Added argument
6097         `ok-if-already-exists'.
6098         (elmo-copy-file): Fixed typo.
6099
6100 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
6101
6102         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
6103
6104 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
6105
6106         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
6107
6108 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
6109
6110         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
6111         to killed-list.
6112
6113 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
6114
6115         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
6116         (elmo-folder-initialize): Fix for `copy'.
6117         (elmo-pipe-drain): Ditto.
6118         (elmo-folder-open-internal): Ditto.
6119         (elmo-folder-newsgroups): Fix.
6120
6121 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
6122
6123         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
6124         for each message.
6125
6126         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
6127         recent value is returned from imap folder.
6128
6129         * elmo.el (elmo-folder-newsgroups): New generic function.
6130
6131         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
6132         (elmo-folder-initialize): Set it.
6133         (elmo-folder-expand-msgdb-path): Use it.
6134         (elmo-folder-newsgroups): Define.
6135
6136         * elmo-filter.el (elmo-folder-newsgroups): Define.
6137
6138         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
6139
6140         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
6141
6142         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
6143
6144 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6145
6146         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
6147         user option.
6148         (elmo-shimbun-header-extra-field): New inline function.
6149         (elmo-shimbun-header-set-extra-field): Ditto.
6150         (elmo-shimbun-folder-header-hash-setup): Ditto.
6151         (elmo-shimbun-update-overview): Ditto.
6152         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
6153         (elmo-shimbun-folder-setup): Use
6154         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
6155         (elmo-shimbun-get-headers): Ditto.
6156         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
6157         Insert `X-Shimbun-Id:' header if extra field is set.
6158         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
6159         field's value instead of `shimbun-header-id'.
6160
6161         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
6162         inline function.
6163         (elmo-msgdb-overview-entity-set-date): Ditto.
6164         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
6165
6166 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
6167
6168         * mmimap.el (mmimap-entity-section): Changed body node number from
6169         "0" to "1".
6170
6171 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6172
6173         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
6174         `elmo-folder-delete-messages'.
6175
6176         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
6177         (elmo-folder-initialize): Changed to expand alias into index path.
6178
6179         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
6180         `elmo-mime-insert-header-from-buffer' with 6th arg
6181         `sorted-fields'.
6182
6183 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
6184
6185         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
6186
6187         * elmo.el (elmo-diff-new): New inline function.
6188         (elmo-diff-unread): Ditto.
6189         (elmo-diff-all): Ditto.
6190
6191         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
6192         value from responseb.
6193         (elmo-imap4-folder-diff-plugged): Ditto.
6194         (elmo-imap4-server-diff-async): Added recent argument.
6195         (elmo-server-diff-async): Ditto.
6196         (elmo-imap4-folder-diff-plugged): Ditto.
6197
6198         * elmo-version.el (elmo-version): Up to 2.7.6.
6199
6200 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6201
6202         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
6203         in quoted-stirng.
6204
6205 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
6206
6207         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
6208
6209         * elmo-imap4.el (elmo-folder-initialize): Ditto.
6210
6211         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6212
6213         * elmo-multi.el (elmo-folder-initialize): Ditto.
6214
6215         * elmo-util.el (elmo-parse-token): New function.
6216         (elmo-parse-prefixed-element): Ditto.
6217
6218 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6219
6220         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
6221         delete process.
6222         (elmo-imap4-accept-ok): Ditto.
6223
6224 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6225
6226         * mmimap.el (mime-imap-entity-header-string): Don't check first
6227         element of node-id is `0' (Follow last change).
6228
6229 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6230
6231         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
6232         assigned irregular node-id to nested multipart section.
6233         (initialize-instance): Followed above change.
6234
6235 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6236
6237         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
6238         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
6239         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
6240         `elmo-shimbun-get-headers');
6241         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
6242         visible article on summary exists in headers).
6243         (elmo-map-message-fetch): Cause an error when folder is unplugged.
6244
6245 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
6246
6247         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
6248         definition.
6249
6250 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
6251
6252         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
6253
6254 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6255
6256         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
6257         header separator into loop condition.
6258
6259 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6260
6261         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
6262         Return duplicate folder if it has subfolder.
6263
6264 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6265
6266         * elmo.el (elmo-make-folder): Add folder name error check.
6267
6268         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
6269         (elmo-nntp-encode-group-string): New inline function.
6270         (elmo-nntp-decode-group-string): Ditto.
6271         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
6272         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
6273         Use `not' instead of `null';
6274         Use elmo-nntp-decode-group-string.
6275
6276         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
6277
6278         * elmo-version.el (elmo-version): Up to 2.7.5.
6279
6280 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6281
6282         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
6283         Hide progress gauge if `elmo-folder-move-messages' exits
6284         nonlocally.
6285
6286 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6287
6288         * elmo-imap4.el (elmo-folder-initialize): Use
6289         `elmo-imap4-encode-folder-string' for folder name.
6290
6291 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6292
6293         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
6294         `done'.
6295
6296 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6297
6298         * elmo-util.el (elmo-progress-counter-alist): New internal
6299         variable.
6300         (elmo-progress-counter-value): New macro.
6301         (elmo-progress-counter-all-value): Ditto.
6302         (elmo-progress-counter-format): Ditto.
6303         (elmo-progress-counter-set-value): Ditto.
6304         (elmo-progress-set): New function.
6305         (elmo-progress-clear): Ditto.
6306         (elmo-progress-notify): Ditto.
6307
6308         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
6309         counter.
6310
6311         * elmo.el (elmo-generic-folder-append-messages): Call
6312         `elmo-progress-notify'.
6313         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
6314
6315         * elmo-archive.el (elmo-folder-append-messages): Call
6316         `elmo-progress-notify'.
6317
6318         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
6319
6320         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
6321
6322         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
6323
6324 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6325
6326         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
6327         'Create'.
6328         (elmo-message-encache-dop): Added argument `read'.
6329
6330         * elmo-shimbun.el (elmo-message-encache): Ditto.
6331
6332         * elmo-net.el (elmo-message-encache): Ditto.
6333
6334         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
6335         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
6336         elmo-imap4-seen-messages.
6337         (elmo-folder-msgdb-create-plugged): Initialize
6338         elmo-imap4-seen-messages;
6339         Set seen mark on elmo-imap4-seen-messages.
6340
6341         * elmo-pipe.el (elmo-folder-message-file-p): Define.
6342
6343         * elmo.el (elmo-generic-folder-append-messages): Check return value of
6344         elmo-folder-append-buffer.
6345         (elmo-folder-encache): Added optional argument `read'.
6346         (elmo-message-encache): Ditto.
6347
6348         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
6349
6350         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
6351
6352         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
6353         if append buffer content succeds.
6354
6355 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6356
6357         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
6358         elmo-display-progress.
6359
6360         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
6361         Set 4th argument of mime-display-message.
6362         (elmo-mime-display-as-is): Ditto.
6363
6364 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
6365
6366         * elmo-nmz.el (toplevel): Require 'mime-edit.
6367         (elmo-nmz-content-type-alist): Abolished.
6368         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
6369         content is not a message.
6370         (elmo-map-message-fetch): Changed behavior exept for message content;
6371         Detect mime-charset automatically, Use `mime-find-file-type' to detect
6372         content-type, Add From: and Subject: field.
6373
6374 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6375
6376         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
6377         (elmo-map-message-fetch): Add `Content-Type' field if contents is
6378         not a message.
6379
6380 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6381
6382         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
6383         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
6384
6385         * elmo-archive.el (elmo-folder-writable-p): Defined.
6386
6387         * elmo-cache.el (elmo-folder-writable-p): Ditto.
6388
6389         * elmo-filter.el (elmo-folder-writable-p): Ditto.
6390
6391         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
6392
6393         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
6394
6395         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
6396
6397         * elmo-mark.el (elmo-folder-writable-p): Ditto.
6398
6399         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
6400
6401         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
6402
6403 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
6404
6405         * elmo-util.el (elmo-address-quote-specials): New function;
6406         Renamed from `wl-address-quote-specials'.
6407
6408 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6409
6410         * elmo-version.el (elmo-version): Up to 2.7.4.
6411
6412 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
6413
6414         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
6415
6416 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6417
6418         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
6419         both compile-time and run-time to avoid byte-compile warning.
6420
6421 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
6422
6423         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
6424
6425 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6426
6427         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
6428         option.
6429         (elmo-mime-display-as-is-internal): Use it.
6430
6431         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
6432         if `read-passwd' is not defined.
6433
6434 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6435
6436         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
6437         by original number.
6438         (elmo-folder-status): Call `elmo-folder-open-internal';
6439         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
6440         (elmo-folder-close-internal): Set location-alist as nil.
6441         (elmo-folder-clear): Define.
6442         (elmo-folder-check): Don't set location-alist as nil.
6443
6444         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
6445
6446 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
6447
6448         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
6449         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
6450
6451         * mmimap.el (mime-imap-entity::requested): New slot.
6452         (mime-imap-location-fetch-entity-p): New generic function.
6453         (mime-decode-parameters): Define using `defun-maybe'.
6454         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6455         content-type structure.
6456         (mime-entity-body): Return empty body if
6457         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6458
6459         * elmo.el (elmo-message-displaying): New variable.
6460
6461         * elmo-mime.el (elmo-mime-message-display): Bind
6462         elmo-message-displaying as t.
6463
6464         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6465
6466 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6467
6468         * acap.el (acap-open): erase buffer before starting network process.
6469         (acap-store): Rewrite.
6470
6471 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6472
6473         * elmo-imap4.el (elmo-imap4-default-mailbox,
6474         elmo-imap4-default-server
6475         elmo-imap4-default-authenticate-type,
6476         elmo-imap4-default-user,
6477         elmo-imap4-default-port,
6478         elmo-imap4-default-stream-type,
6479         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6480
6481         * elmo-pop3.el (elmo-pop3-default-user,
6482         elmo-pop3-default-server,
6483         elmo-pop3-default-authenticate-type,
6484         elmo-pop3-default-port,
6485         elmo-pop3-default-stream-type,
6486         elmo-pop3-stream-type-alist): Ditto.
6487
6488         * elmo-nntp.el (elmo-nntp-default-server,
6489         elmo-nntp-default-user,
6490         elmo-nntp-default-port,
6491         elmo-nntp-default-stream-type,
6492         elmo-nntp-stream-type-alist): Ditto.
6493
6494         * elmo-vars.el: Follow changes above.
6495         (elmo-setting): New custom group; added 'elmo-setting group to
6496         above variables.
6497
6498         * elmo-version.el (elmo-version): Up to 2.7.3.
6499
6500         * acap.el (acap-parse-response): Don't delete process when BYE
6501         response (It causes hang-up on slow network environment).
6502         (toplevel): Added comment.
6503
6504 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6505
6506         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6507
6508         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6509         parsing NIL.
6510         (acap-parse-return-metadata): Ditto.
6511
6512         * slp.el: New file.
6513         (toplevel): Fixed typo.
6514
6515         * acap.el: New file.
6516         (acap-network-stream-open): Show "Connecting..." message.
6517         (acap-parse-response): Fixed problem for BYE untagged response.
6518         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6519         (toplevel): Added tiny comments.
6520
6521 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6522
6523         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6524         space delimiter for uidl response.
6525
6526 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6527
6528         * elmo-vars.el (elmo-use-semi): Eliminated.
6529
6530         * elmo-util.el (elmo-string-assoc-all): New function.
6531
6532 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6533
6534         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6535         property 'mime-preview-situation for `mime-preview-quit'.
6536
6537 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6538
6539         * elmo.el (elmo-message-fetch-with-cache-process): Call
6540         elmo-message-fetch-internal instead of causing an error when fetch
6541         strategy is 'entire but only 'section cache is available.
6542
6543 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6544
6545         * elmo-version.el (elmo-version): Up to 2.7.2.
6546
6547         * elmo.el (elmo-generic-folder-append-messages): Make
6548         fetch-strategy with `use-cache'.
6549
6550         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6551         (elmo-dop-queue-method-name): New macro.
6552
6553 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6554
6555         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6556         unbalanced parenthesis.
6557
6558 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6559
6560         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6561
6562 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6563
6564         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6565         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6566
6567 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6568
6569         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6570         local variables.
6571
6572 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6573
6574         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6575         (elmo-message-use-cache-p): Define.
6576         (elmo-folder-msgdb-create): Treat cache.
6577
6578 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6579
6580         * elmo-nntp.el (elmo-network-initialize-session): Call
6581         `elmo-nntp-send-mode-reader'.
6582         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6583
6584 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6585
6586         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6587         alist.
6588         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6589         assoc.
6590
6591         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6592         for `elmo-plugged-p'.
6593         (elmo-open-network-stream): Fixed stream-type argument.
6594
6595 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6596
6597         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6598         unknown archive type is specified.
6599
6600 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6601
6602         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6603
6604         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6605         while loading msgdb.
6606
6607         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6608         (elmo-folder-open-internal): Rewrite.
6609
6610 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6611
6612         * elmo-mime.el (elmo-mime-display-as-is-internal):
6613         Adjust buffer-multibyte status.
6614
6615 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6616
6617         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6618         of elmo-condition-find-key.
6619
6620         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6621         (elmo-condition-in-msgdb-p): Ditto.
6622         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6623         argument.
6624
6625 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6626
6627         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6628
6629 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6630
6631         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6632         label for elmo-display-progress.
6633
6634 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6635
6636         * elmo.el (elmo-folder-clear): New method.
6637         (elmo-folder-clear): Define.
6638         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6639
6640         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6641         (elmo-folder-clear): Define.
6642
6643         * elmo-map.el (elmo-folder-clear): Define.
6644
6645         * elmo-version.el (elmo-version): Up to 2.7.1.
6646
6647 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6648
6649         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6650         updates.
6651
6652 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6653
6654         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6655         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6656
6657 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6658
6659         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6660
6661         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6662         and re-written.
6663
6664         * elmo-imap4.el (elmo-folder-initialize): Use
6665         elmo-get-network-stream-type.
6666
6667         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6668
6669         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6670
6671 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6672
6673         * elmo.el (elmo-message-encache): Set unread argument for
6674         elmo-message-fetch.
6675
6676         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6677
6678         * elmo.el (elmo-net-port-info): New method.
6679
6680         * elmo-shimbun.el (elmo-net-port-info): Define.
6681         (elmo-message-encache): Ditto.
6682
6683         * elmo-net.el (elmo-net-port-info): Define as method.
6684
6685         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6686         unplugged status when elmo-enable-disconnected-operation is t.
6687
6688         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6689         of spool folder before checking new number.
6690
6691 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6692
6693         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6694         (elmo-network-setup-session): Ditto.
6695         (elmo-message-fetch-plugged): Ditto.
6696         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6697         (elmo-network-initialize-session): Ditto.
6698         (elmo-pop3-read-response): Abolish 3rd argument.
6699         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6700         (elmo-pop3-read-contents): Ditto.
6701         (elmo-pop3-read-body): Ditto.
6702         (elmo-folder-status): Call elmo-folder-close.
6703         (elmo-pop3-lock): Abolish.
6704         (elmo-pop3-unlock): Ditto.
6705         (elmo-pop3-locked-p): Ditto.
6706         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6707
6708 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6709
6710         * elmo-version.el (elmo-version): Up to 2.7.0.
6711
6712         * elmo-pop3.el (elmo-pop3-debug): New variable.
6713         (elmo-pop3-debug-inhibit-logging): Ditto.
6714         (elmo-pop3-debug): New function.
6715         (elmo-pop3-send-command): Call elmo-pop3-debug.
6716         (elmo-pop3-read-response): Added keep-lock optional argument;
6717         Don't unlock if keep-lock is non-nil.
6718         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6719         (elmo-network-authenticate-session): Bind
6720         elmo-pop3-debug-inhibit-logging as t.
6721         (elmo-network-setup-session): Call elmo-pop3-read-response with
6722         keep-lock argument.
6723         (elmo-pop3-read-msg): Ditto.
6724         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6725         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6726         (elmo-network-initialize-session): Call elmo-pop3-lock.
6727         (elmo-folder-close-internal): Don't clear location-alist slot.
6728         (elmo-folder-check): Clear location-alist slot.
6729
6730 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6731
6732         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6733         (elmo-pop3-send-command): Call elmo-pop3-lock.
6734         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6735         (elmo-pop3-read-contents): Ditto.
6736         (elmo-pop3-lock): New function.
6737         (elmo-pop3-unlock): Ditto.
6738         (elmo-pop3-locked-p): Ditto.
6739         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6740         returns t.
6741
6742 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6743
6744         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6745
6746         * elmo-util.el (elmo-file-field-primitive-condition-match):
6747         New inline function (Don't fetch file content if "first" or "last").
6748         (elmo-file-field-condition-match): Use
6749         elmo-file-field-primitive-condition-match.
6750
6751         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6752         "first".
6753
6754         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6755         (elmo-message-fetch-plugged): Fixed.
6756
6757         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6758
6759 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6760
6761         * elmo.el (elmo-folder-move-messages): Bind
6762         elmo-inhibit-display-retrieval-progress as t while moving messages.
6763
6764         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6765         New variable.
6766         (elmo-inhibit-display-retrieval-progress): Ditto.
6767
6768         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6769         for retrieval progress;
6770         Don't display progress when total buffer size is smaller than
6771         elmo-display-retrieval-progress-threshold.
6772         (elmo-message-fetch-plugged): Don't display progress when
6773         elmo-inhibit-display-retrieval-progress is non-nil.
6774
6775         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6776         for retrieval progress;
6777         Don't display progress when literal size is smaller than
6778         elmo-display-retrieval-progress-threshold.
6779         (elmo-imap4-message-fetch): Don't display progress when
6780         elmo-inhibit-display-retrieval-progress is non-nil.
6781
6782 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6783
6784         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6785         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6786         (elmo-imap4-message-fetch): Likewise.
6787
6788         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6789         (elmo-shimbun-index-range-alist): Ditto.
6790         (elmo-shimbun-use-entire-index): Abolish.
6791         (shimbun-mua-use-entire-index): Ditto.
6792         (elmo-shimbun-folder): Added new slot `range'.
6793         (elmo-folder-initialize): Setup slot `range'.
6794
6795 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6796
6797         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6798         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6799         (elmo-shimbun-get-headers): Use return value of
6800         `shimbun-article-expiration-days'.
6801         (elmo-folder-close-internal): Clean up last-check slot.
6802
6803         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6804         (elmo-pop3-total-size): New variable.
6805         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6806
6807         * elmo.el (elmo-folder-reserve-status-p): New method.
6808
6809         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6810         (elmo-shimbun-use-entire-index): New user option.
6811         (shimbun-elmo-mua): New class.
6812         (shimbun-mua-search-id): Define.
6813         (shimbun-mua-use-entire-index): Ditto.
6814         (elmo-shimbun-folder:last-check): New slot.
6815         (elmo-shimbun-headers-cache-header-list): Abolish.
6816         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6817         (elmo-shimbun-headers-cache-header-hash): Ditto.
6818         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6819         (elmo-shimbun-headers-cache-last-check): Ditto.
6820         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6821         (elmo-shimbun-headers-check-p): Rewrite.
6822         (elmo-shimbun-msgdb-to-headers): New function.
6823         (elmo-shimbun-get-headers): Rewrite.
6824         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6825         (elmo-folder-open-internal): Get headers only if
6826         `elmo-shimbun-headers-check-p' is non-nil.
6827         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6828         is non-nil.
6829         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6830         (elmo-quit): Removed.
6831
6832         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6833         function.
6834         (elmo-msgdb-overview-entity-set-extra): Ditto.
6835         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6836
6837         * elmo-map.el (elmo-folder-status): Don't call
6838         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6839         is non-nil.
6840
6841 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6842
6843         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6844         of `elmo-msgdb-search-internal-primitive' when condition's car is
6845         `and' or `or'.
6846
6847 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6848
6849         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6850
6851 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6852
6853         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6854         call `elmo-pipe-drain'.
6855
6856 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6857
6858         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6859         typo. (elmo-cache-folder -> elmo-mark-folder)
6860
6861 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6862
6863         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6864         `elmo-message-fetch'.
6865
6866 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6867
6868         * elmo-net.el (elmo-message-encache): Fixed typo.
6869         (elmo-message-fetch-unplugged): Changed call
6870         `elmo-message-fetch-internal' without argument `outbuf'.
6871
6872 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6873
6874         * elmo.el (elmo-message-encache): Define as generic function.
6875         (elmo-message-fetch-field): New generic function.
6876         (elmo-message-fetch-with-cache-process): Cause an error when
6877         fetch strategy is 'entire but only 'section cache is available.
6878         (toplevel): Fixed nmz folder definition.
6879
6880         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6881         (elmo-msgdb-resume-list-filename): Ditto.
6882         (elmo-queue-filename): Ditto.
6883         (elmo-enable-disconnected-operation): Changed default value to t.
6884
6885         * elmo-util.el (elmo-cache-path-section-p): New function.
6886         (elmo-file-cache-get): Use it.
6887         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6888         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6889         (elmo-dop-queue-save): Ditto.
6890
6891         * elmo-net.el (elmo-folder-status-unplugged): Call
6892         elmo-folder-status-dop.
6893         (elmo-folder-list-messages-unplugged): Implemented.
6894         (elmo-folder-delete-messages-unplugged): Define.
6895         (elmo-folder-msgdb-create): Define.
6896         (elmo-folder-msgdb-create-unplugged): Define.
6897         (elmo-folder-mark-as-read-unplugged): Ditto.
6898         (elmo-folder-unmark-read-unplugged): Ditto.
6899         (elmo-folder-mark-as-important-unplugged): Ditto.
6900         (elmo-folder-unmark-important-unplugged): Ditto.
6901         (elmo-message-encache): Ditto.
6902
6903         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6904         (elmo-dop-queue-save): Ditto.
6905
6906         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6907         `elmo-folder-msgdb-create'.
6908         (elmo-folder-append-buffer): Implemented unplugged operation.
6909         (elmo-folder-append-messages): Call parent method in unplugged status.
6910         (elmo-message-fetch-unplugged): Removed definition.
6911         (elmo-message-fetch-field): Implemented.
6912
6913         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6914         (elmo-dop-folder): Removed variable definition.
6915         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6916         (elmo-dop-queue-flush): Implemented.
6917         (elmo-dop-queue-merge): Removed definition (TODO).
6918         (elmo-dop-spool-folder): New function.
6919         (elmo-dop-spool-folder-append-buffer): Ditto.
6920         (elmo-dop-spool-folder-list-messages): Ditto.
6921         (elmo-dop-list-deleting-messages): Ditto.
6922         (elmo-folder-append-buffer-dop): Ditto.
6923         (elmo-folder-delete-messages-dop): Ditto.
6924         (elmo-message-encache-dop): New inline function.
6925         (elmo-create-folder-dop): Ditto.
6926         (elmo-folder-mark-as-read-dop): Ditto.
6927         (elmo-folder-unmark-read-dop): Ditto.
6928         (elmo-folder-mark-as-important-dop): Ditto.
6929         (elmo-folder-unmark-important-dop): Ditto.
6930         (elmo-folder-status-dop): Fixed.
6931         (elmo-folder-append-buffer-dop-delayed): New function.
6932         (elmo-folder-delete-messages-dop-delayed): Ditto.
6933         (elmo-dop-msgdb): Ditto.
6934
6935 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6936
6937         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6938
6939 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6940
6941         * elmo.el (elmo-folder-move-messages): Fixed problem when
6942         `dst-folder' is 'null.
6943
6944 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6945
6946         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6947         instead of current mark.
6948
6949         * elmo-multi.el (elmo-folder-list-importants-internal): No
6950         operation if importants is not list.
6951
6952         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6953         Return t if importants is not list.
6954
6955         * elmo-map.el (elmo-map-folder-list-importants): Define.
6956         (elmo-folder-list-importants-internal): Check return value of
6957         `elmo-map-folder-list-importants-internal'.
6958
6959         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6960
6961         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6962
6963         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6964
6965         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6966
6967 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6968
6969         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6970         (Patch is provided by <kita@coe.nttdata.co.jp>).
6971
6972 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6973
6974         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6975         mark folder.
6976
6977 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6978
6979         * elmo.el (elmo-message-fetch): Define.
6980         (elmo-message-fetch-with-cache-process): New generic method.
6981         (elmo-message-fetch-internal): New generic method.
6982         (elmo-folder-synchronize):
6983
6984         * elmo-archive.el (elmo-message-fetch-internal): Define.
6985         (elmo-message-fetch): Eliminated.
6986
6987         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6988         (elmo-message-fetch): Eliminated.
6989
6990         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6991         argument OUTBUF.
6992         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6993
6994         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6995         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6996
6997         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6998         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6999
7000         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
7001
7002         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
7003
7004         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
7005
7006         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
7007         (elmo-message-fetch-unplugged): New generic method.
7008         (elmo-message-fetch-internal): Remove cache process (Renamed from
7009         `elmo-message-fetch').
7010
7011         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
7012         (elmo-message-fetch): Eliminated.
7013         (elmo-message-fetch-unplugged): Ditto.
7014
7015         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
7016
7017 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7018
7019         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
7020         of `to-be-deleted' from number-alist to number-list.
7021
7022 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7023
7024         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
7025         (elmo-folder-mark-as-important): Ditto.
7026
7027 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
7028
7029         * elmo.el (elmo-folder): Added process-duplicates slot.
7030
7031         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
7032         (elmo-folder-unmark-read): Ditto.
7033         (elmo-folder-unmark-important): Ditto.
7034         (elmo-folder-mark-as-important): Ditto.
7035
7036         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
7037         duplicated message processing.
7038
7039         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
7040
7041 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7042
7043         * elmo-util.el (elmo-list-subdirectories-1): New function.
7044         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
7045         (elmo-mapcar-list-of-list): New function.
7046
7047         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
7048         `elmo-mapcar-list-of-list' instead of `mapcar'.
7049
7050         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
7051
7052         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
7053         `elmo-have-link-count'. Return the fully qualified folder name.
7054
7055 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
7056
7057         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
7058         (elmo-shimbun-headers-cache): New internal variable.
7059         (elmo-shimbun-headers-cache-header-list): New inline function.
7060         (elmo-shimbun-headers-cache-set-header-list): Ditto.
7061         (elmo-shimbun-headers-cache-header-hash): Ditto.
7062         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
7063         (elmo-shimbun-headers-cache-last-check): Ditto.
7064         (elmo-shimbun-headers-cache-set-last-check): Ditto.
7065         (elmo-shimbun-lapse-seconds): Ditto.
7066         (elmo-shimbun-headers-cache-check-p): Ditto.
7067         (elmo-shimbun-get-headers): New function.
7068         (elmo-folder-open-internal): Call it.
7069         (elmo-quit): Define (Clear headers-cache).
7070
7071 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
7072
7073         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
7074
7075         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
7076         (elmo-msgdb-flist-save): Ditto.
7077
7078         * elmo-shimbun.el (elmo-folder-list-subfolders):
7079         Use `shimbun-groups' instead of `shimbun-groups-internal'.
7080         (elmo-folder-exists-p): Ditto.
7081
7082         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
7083         argument for `shimbun-header-insert'.
7084
7085 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
7086
7087         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
7088         at first time.
7089
7090         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
7091         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
7092
7093 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
7094
7095         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
7096         (elmo-folder-plugged-p): Define.
7097         (elmo-folder-set-plugged): Ditto.
7098         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
7099         (elmo-folder-list-messages-internal): Return t if unplugged.
7100         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
7101
7102         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
7103         when elmo-folder-list-messages-internal method of children returns t.
7104
7105         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
7106         pair is nil.
7107         (elmo-folder-open-internal): Don't update if unplugged status.
7108
7109 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
7110
7111         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
7112         new message.
7113
7114 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
7115
7116         * elmo-util.el (elmo-file-cache-save): Ignore errors.
7117
7118         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
7119         saving.
7120
7121 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
7122
7123         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
7124
7125         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
7126         (elmo-folder-open-internal): Set up headers slot.
7127         (elmo-folder-check): Call elmo-folder-close-internal and
7128         elmo-folder-open-internal.
7129         (elmo-folder-close-internal): Clean up headers slot.
7130
7131 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7132
7133         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
7134         exactly folder list.
7135         (elmo-folder-append-messages): Fixed append archive with prefix.
7136
7137         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
7138         make temp files with start-number.
7139
7140         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
7141
7142 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7143
7144         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
7145         argument `visible-only'.
7146         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
7147         instead of `if'.
7148
7149         * elmo-pop3.el (elmo-folder-open-internal): Check
7150         `elmo-inhibit-number-mapping' is non-nil.
7151
7152         * elmo-pipe.el (elmo-folder-status): Fixed.
7153
7154 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
7155
7156         * elmo.el (elmo-dop-queue-flush): Added autload setting.
7157
7158         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
7159         (elmo-folder-open-internal): Setup `header-hash' slot.
7160         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
7161         information.
7162         (elmo-map-message-fetch): Ditto.
7163
7164 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
7165
7166         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7167         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7168         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7169         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
7170
7171         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
7172
7173 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
7174
7175         * sb-airs.el: Added footer.
7176
7177         * shimbun.el (shimbun-article): Define as luna-method.
7178
7179         * sb-tcup.el: New file.
7180
7181         * sb-airs.el (toplevel): Require 'sb-mhonarc.
7182         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
7183
7184 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
7185
7186         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
7187         (shimbun-get-headers): Ditto.
7188
7189         * elmo.el: Moved obsolete variable definitions from
7190         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
7191
7192         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
7193         groups.
7194
7195         * shimbun.el: New file.
7196
7197         * elmo-shimbun.el: New file.
7198
7199         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7200         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7201         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7202         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
7203
7204 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
7205
7206         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
7207         hierarchy is t.
7208
7209 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
7210
7211         * elmo.el (elmo-folder-msgdb): Define as macro.
7212         (elmo-folder-open): Added argument `load-msgdb'.
7213         (elmo-generic-folder-open): Ditto.
7214         (elmo-folder-encache): New function.
7215
7216         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
7217
7218         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
7219
7220         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
7221         Eliminated argument FOLDER and added argument MSGDB.
7222         (elmo-dop-queue-load): Moved from elmo-dop.el.
7223         (elmo-dop-queue-save): Ditto.
7224
7225         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
7226
7227         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
7228
7229         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
7230         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
7231         (elmo-filter-folder-list-importants-internal): Ditto.
7232
7233         * elmo-map.el (elmo-folder-pack-number): Ditto.
7234
7235         * elmo-mime.el (elmo-mime-message-display): Ditto.
7236
7237         * elmo.el (elmo-generic-folder-commit): Ditto.
7238         (elmo-folder-list-unreads): Ditto.
7239         (elmo-folder-list-importants): Ditto.
7240         (elmo-generic-folder-commit): Ditto.
7241         (elmo-message-set-mark): Ditto.
7242         (elmo-generic-folder-append-msgdb): Ditto.
7243         (elmo-folder-synchronize): Ditto.
7244         (elmo-folder-messages): Ditto.
7245         (elmo-init): Call elmo-dop-queue-load.
7246         (elmo-folder-list-messages): Ditto.
7247
7248         * elmo-nntp.el (elmo-folder-update-number): Ditto.
7249         (elmo-nntp-folder-process-crosspost): Ditto.
7250         (elmo-folder-list-unreads-internal): Ditto.
7251
7252         * elmo-dop.el: Removed old functions.
7253
7254 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
7255
7256         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
7257         `folder' to `msgdb'.
7258
7259 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
7260
7261         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
7262         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
7263
7264         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
7265         case-fold-search.
7266
7267 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
7268
7269         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
7270         defined.
7271
7272         * mmimap.el (toplevel): Require 'mime-parse and 'static.
7273         (mmimap-parse-parameters-from-list): Define as alias for
7274         `mime-decode-parameter-plist' if it is defined as function.
7275         (mmimap-make-mime-entity): Added argument `number'.
7276         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
7277         as 0.
7278         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
7279
7280         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
7281
7282         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
7283
7284         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
7285
7286 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
7287
7288         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
7289
7290         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
7291         when elmo-imap4-default-authenticate-type is nil.
7292         (elmo-folder-list-subfolders): Ditto
7293         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
7294         (elmo-imap4-fetch-callback-1-subr): Renamed from
7295         `elmo-imap4-fetch-callback-1' and define as inline function.
7296         (elmo-imap4-fetch-callback-1):
7297         Renamed from `elmo-imap4-fetch-callback'.
7298         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
7299
7300         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
7301         msgdb path (To keep compatibility with main trunk).
7302
7303         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
7304
7305         * elmo-util.el (elmo-make-file-cache): Moved position of
7306         some macros.
7307
7308         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
7309         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
7310         instead of `elmo-pop3-inhibit-uidl'.
7311         (elmo-folder-exists-p): Ditto.
7312         (elmo-pop3-folder-list-messages): Ditto.
7313
7314         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
7315         instead of `elmo-pop3-inhibit-uidl'.
7316         (elmo-folder-status): Ditto.
7317
7318         * elmo-dop.el (elmo-dop-folder): New variable.
7319         (elmo-dop-lock-message): Eliminated.
7320         (elmo-dop-unlock-message): Ditto.
7321         (elmo-dop-lock-list-load): Ditto.
7322         (elmo-dop-lock-list-save): Ditto.
7323         (elmo-dop-delete-folder): Ditto.
7324         (elmo-dop-rename-folder): Ditto.
7325
7326         * elmo.el: Removed incomplete commentary.
7327
7328 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7329
7330         * elmo.el (toplevel): Require 'elmo-version first;
7331         for little `recursive-load-depth' settings.
7332         Fix "ends here" comment.
7333
7334 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
7335
7336         * elmo-util.el (toplevel): Require 'poem;
7337         Some functions are moved from elmo-cache.el.
7338
7339         * elmo-net.el (toplevel): Require 'elmo-cache.
7340
7341         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
7342
7343         * elmo.el (toplevel): Ditto.
7344
7345         * elmo-cache.el: Rewrite with luna;
7346         Some functions are moved to elmo-util.el.
7347
7348         * elmo-internal.el (elmo-internal-folder-list): New variable.
7349         (elmo-internal-folder-initialize): Rewrite.
7350         (elmo-folder-list-subfolders): Ditto.
7351
7352         * elmo-cache.el (elmo-cache-search-all): Eliminated.
7353         (elmo-cache-collect-sub-directories): Ditto.
7354
7355 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
7356
7357         * elmo-version.el (elmo-version): Up to 2.5.8.
7358
7359         * elmo.el (elmo-folder-list-messages-mark-match): New function.
7360
7361         * elmo-util.el (elmo-list-insert): New function.
7362
7363 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
7364
7365         * elmo.el (elmo-init): New function.
7366         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
7367
7368         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
7369         (Renamed from `elmo-localdir-header-chop-length').
7370
7371         * elmo-pop3.el (elmo-pop3-use-cache,
7372         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
7373
7374         * elmo-nntp.el (elmo-message-fetch): Define.
7375         (elmo-message-fetch-unplugged): Ditto.
7376         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
7377         (elmo-nntp-use-cache): Ditto.
7378         (elmo-nntp-max-number-precedes-list-active): Ditto.
7379
7380         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
7381
7382         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
7383         `elmo-msgdb-insert-file-header'.
7384         Use `elmo-msgdb-file-header-chop-length'.
7385
7386         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
7387         `elmo-vars.el'.
7388
7389         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
7390         (elmo-cache-msgdb-create-overview-entity-from-file): Use
7391         `elmo-msgdb-insert-file-header'.
7392
7393         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
7394         Use new variable;
7395         Define obsolete variables with `elmo-define-obsolete-variable',
7396
7397         * elmo-util.el (elmo-warning-buffer-name): New constant.
7398         (elmo-warning): New function.
7399         (elmo-obsolete-variable-alist): New variable.
7400         (elmo-obsolete-variable-show-warnings): New variable.
7401         (elmo-define-obsolete-variable): New function.
7402         (elmo-resque-obsolete-variable): Ditto.
7403         (elmo-resque-obsolete-variables): Ditto.
7404
7405 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7406
7407         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
7408         Eliminated.
7409
7410         * elmo-pop3.el, elmo-nntp.el: Use custom.
7411
7412 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7413
7414         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
7415         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
7416
7417 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7418
7419         * Luna-fy Kenichi OKADA's following changes.
7420         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
7421         `nohide'.
7422         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
7423
7424 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
7425
7426         * elmo-util.el (elmo-display-progress): Prefer
7427         `progress-feedback-with-label' to `lprogress-display'.
7428
7429 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7430
7431         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
7432
7433 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
7434
7435         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
7436         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
7437         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7438         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7439         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
7440         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
7441         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7442         * elmo-filter.el (elmo-filter-list-folder): Ditto.
7443         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7444         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7445         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7446         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7447         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7448
7449 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7450
7451         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
7452         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7453
7454 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7455
7456         * elmo.el (elmo-folder-process-crosspost): New generic method.
7457         (elmo-folder-writable-p): Ditto.
7458         (elmo-folder-message-appendable-p): Eliminated.
7459         (elmo-generic-folder-append-msgdb): Rewrite.
7460         (elmo-newsgroups-hashtb): New internal variable.
7461         (elmo-crosspost-message-set): Eliminated.
7462         (elmo-crosspost-message-delete): Ditto.
7463         (elmo-setup-subscribed-newsgroups): New function.
7464         (elmo-crosspost-message-alist-modified): New internal variable.
7465         (elmo-crosspost-message-alist-load): New function (Renamed from
7466         `wl-crosspost-alist-load').
7467         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7468         `wl-crosspost-alist-save').
7469
7470         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7471
7472         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7473         `unreads'.
7474         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7475         elmo-newsgroups-hashtb).
7476         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7477         `elmo-nntp-folder-update-crosspost-message-alist'.
7478         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7479         `elmo-nntp-groups-hashtb'.
7480         (elmo-nntp-make-groups-hashtb): Eliminated.
7481         (elmo-nntp-parse-newsgroups): New function (Renamed from
7482         `wl-parse-newsgroups').
7483         (elmo-folder-creatable-p, elmo-folder-writable-p,
7484         elmo-folder-close-internal, elmo-folder-mark-as-read,
7485         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7486         Define.
7487         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7488
7489         * elmo-net.el (elmo-message-fetch): Check buffer size.
7490
7491         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7492
7493         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7494
7495         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7496         before `close' command.
7497
7498         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7499         `mark-alist' (All other related portions are changed).
7500
7501 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7502
7503         * elmo-util.el (elmo-create-hash-size): Eliminated.
7504         (elmo-make-hash) Make a hash with `one less than a power of two'
7505         length.
7506
7507         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7508         (elmo-hash-maximum-size): Changed value.
7509
7510 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7511
7512         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7513         (elmo-mime-message-display-as-is): Ditto.
7514
7515 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7516
7517         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7518         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7519
7520 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7521
7522         * elmo-mark.el: New file.
7523
7524         * elmo-internal.el: Rewrite (Almost empty).
7525
7526 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7527
7528         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7529         (mime-imap-entity-header-string): Ditto.
7530         (mmimap-entity-section): Rewrite.
7531
7532 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7533
7534         * elmo-nmz.el: New file.
7535
7536         * elmo-pipe.el: Rewrite with luna.
7537
7538 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7539
7540         * elmo-archive.el: Rewrite with luna.
7541
7542         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7543         (elmo-folder-list-importants-internal): Ditto.
7544
7545 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7546
7547         * elmo-archive.el (elmo-archive-version): Abolish.
7548         (toplevel) Removed `boso' comment.
7549
7550 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7551
7552         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7553         elmo-msgdb-add-msgs-to-seen-list-subr;
7554         Changed argument seen-marks to unread-marks.
7555
7556         * elmo-nntp.el: Rewrite with luna.
7557
7558 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7559
7560         * elmo-filter.el: Rewrite with luna.
7561
7562 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7563
7564         * elmo-pop3.el: Rewrite with luna.
7565
7566 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7567
7568         * elmo-multi.el: Rewrite with luna.
7569
7570         * elmo-vars.el (elmo-use-killed-list): Abolish.
7571         All other related portions are changed.
7572         (elmo-filename-replace-string-alist): Renamed from
7573         elmo-msgid-replace-string-alist.
7574
7575 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7576
7577         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7578
7579         * elmo-map.el: New file.
7580         * elmo-maildir.el: Rewrite with luna.
7581
7582 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7583
7584         * elmo.el: Changed meaning of `elmo-folder-commit'.
7585         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7586
7587 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7588
7589         * elmo.el (elmo-folder-append-buffer): New function.
7590         (Renamed from `elmo-append-msg')
7591
7592 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7593
7594         * elmo-mime.el: New file.
7595
7596 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7597
7598         * elmo-cache.el: Rewrite.
7599
7600 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7601
7602         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7603
7604 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7605
7606         * elmo-vars.el (elmo): New group.
7607         (elmo-strict-diff-folder-regexp): New variable.
7608
7609         * elmo-util.el (elmo-call-func): Abolish.
7610         (elmo-folder-get-type): Ditto.
7611         (elmo-*-get-spec): Ditto.
7612         (elmo-*-spec-*): Ditto.
7613         (elmo-imap4-identical-name-space-p): Ditto.
7614         (elmo-folder-identical-system-p): Ditto.
7615         (elmo-folder-direct-copy-alist): Ditto.
7616         (elmo-folder-direct-copy-p): Ditto.
7617
7618         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7619         (elmo-folder-initialize): Define.
7620         (elmo-folder-get-primitive-list): Ditto.
7621
7622         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7623         (elmo-folder-initialize): Define.
7624         Renamed `elmo-network-session-host-internal' to
7625         `elmo-network-session-server-internal'.
7626
7627         * elmo-multi.el (elmo-multi-folder): New luna class.
7628         (elmo-folder-initialize): Define.
7629         (elmo-folder-get-primitive-list): Ditto.
7630         (elmo-folder-contains-type): Ditto.
7631         (elmo-message-use-cache-p): Ditto.
7632
7633         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7634         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7635
7636         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7637         (elmo-folder-initialize): Define.
7638
7639         * elmo-filter.el (elmo-filter-folder): New luna class.
7640         (elmo-folder-initialize): Define.
7641         (elmo-folder-get-primitive-list): Ditto.
7642         (elmo-folder-contains-type): Ditto.
7643
7644 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7645
7646         * elmo-imap4.el: Rewrite with luna.
7647
7648         * mmimap.el: New file.
7649
7650         * mmelmo.el, mmelmo-imap4.el: Removed.
7651
7652         * elmo-net.el: Ditto.
7653
7654         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7655         (elmo-folder-initialize): Define.
7656
7657         * elmo-archive.el (elmo-archive-folder): New luna class.
7658         (elmo-folder-initialize): Define.
7659
7660         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7661         `elmo-folder-msgdb-path'.
7662         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7663         `elmo-make-folder'.
7664
7665 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7666
7667         * elmo.el: New file.
7668
7669         * elmo2.el: Renamed to elmo.el.
7670
7671 \f
7672 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7673
7674         * elmo-cache.el (elmo-cache-expire-by-size): Count
7675         a disk usage for a cache file entry in KB even when
7676         its kind is a directory.
7677
7678 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7679
7680         * elmo-version.el (elmo-version): Up to 2.5.7.
7681
7682 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7683
7684         * elmo-version.el (elmo-version): Up to 2.5.6.
7685
7686 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7687
7688         * elmo-version.el (elmo-version): Up to 2.5.5.
7689
7690 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7691
7692         * elmo-imap4.el (elmo-network-authenticate-session):
7693         Fixed a logic for response checking.
7694
7695 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7696
7697         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7698         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7699         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7700         `sasl-mechanisms'.
7701
7702         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7703         for `starttls-open-stream' and `starttls-negotiate'.
7704
7705         * elmo-nntp.el: Remove autoload settings for
7706         `starttls-open-stream' and `starttls-negotiate'.
7707
7708         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7709         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7710         `luna-define-class' with `eval-and-compile'.
7711
7712 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7713
7714         * elmo-util.el (elmo-read-search-condition-internal):
7715         Require an element of table for searching field.
7716
7717 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7718
7719         * elmo-version.el (elmo-version): Up to 2.5.4.
7720
7721 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7722
7723         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7724
7725 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7726
7727         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7728
7729 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7730
7731         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7732         before greeting.
7733
7734 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7735
7736         * elmo-imap4.el (elmo-imap4-delete-folder):
7737         Send "close" before "delete" (Use commented out line).
7738         (elmo-imap4-rename-folder): Ditto.
7739
7740         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7741         folder string itself.
7742         (elmo-dop-list-deleted): New function.
7743         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7744         killed.
7745
7746         * elmo-util.el (elmo-string-rassoc-all): New function.
7747
7748 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7749
7750         * elmo-version.el (elmo-version): Up to 2.5.3.
7751
7752         * elmo-net.el (elmo-network-get-session): Changed logic for
7753         checking process status.
7754
7755         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7756         process is nil;
7757         Changed logic for checking process status.
7758
7759 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7760
7761         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7762         before greeting.
7763         (elmo-network-setup-session): Set UIDL hash size according to
7764         the length of list response.
7765         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7766         according to the length of list response;
7767         Return the length of list response.
7768         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7769
7770 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7771
7772         * elmo-imap4.el (toplevel): Require 'ssl.
7773         Add autoload 'starttls.
7774         * elmo-pop3.el (toplevel): Ditto.
7775         * elmo-nntp.el (toplevel): Ditto.
7776
7777 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7778
7779         * elmo-imap4.el (toplevel): defun at compile time.
7780         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7781         sasl-next-step, sasl-step-data, sasl-step-set-data.
7782         * elmo-pop3.el (toplevel): Ditto.
7783
7784 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7785
7786         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7787
7788 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7789
7790         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7791         if error.
7792         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7793         and `elmo-pop-auth-apop'.
7794
7795 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7796
7797         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7798
7799 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7800
7801         * elmo-pop3.el (elmo-network-authenticate-session): Split
7802         encoded response value.
7803
7804 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7805
7806         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7807         `elmo-pop3-force-login'.
7808         Redefine `sasl-mechanisms'.
7809         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7810
7811 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7812
7813         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7814         Delete `elmo-imap4-authenticator-alist'.
7815         (elmo-imap4-auth-cram-md5): Delete.
7816         (elmo-imap4-auth-digest-md5): Delete.
7817
7818 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7819
7820         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7821         (elmo-pop3-auth-scram-md5): Ditto.
7822         (elmo-pop3-auth-cram-md5): Ditto.
7823
7824 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7825
7826         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7827         Delete `elmo-pop3-authenticator-alist'.
7828
7829 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7830
7831         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7832         new SASL API.
7833         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7834
7835 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7836
7837         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7838
7839 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7840
7841         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7842         Fixed problem when `elmo-pop3-use-uidl' is nil.
7843         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7844
7845 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7846
7847         * elmo-version.el (elmo-version): Up to 2.5.2.
7848
7849 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7850
7851         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7852         New function.
7853         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7854         (elmo-pop3-msgdb-create-as-numlist): Use it.
7855
7856         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7857         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7858
7859         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7860         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7861
7862 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7863
7864         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7865         when elmo-mark-as-read is called with second argument nil.
7866
7867 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7868
7869         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7870         Moved to elmo-util.el.
7871
7872         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7873         Moved from elmo-pipe.el
7874
7875         * elmo-archive.el (elmo-archive-call-process): Enclose with
7876         static-if.
7877
7878         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7879         "RFC822" (because RFC822.PEEK is obsolete).
7880         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7881
7882 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7883
7884         * elmo-archive.el (elmo-archive-call-process): Don't check for
7885         the exit status when Nemacs is running.
7886
7887 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7888
7889         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7890         'plain.
7891
7892         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7893         (elmo-pop3-get-spec): Set default of auth to 'user.
7894
7895         * elmo-imap4.el (elmo-imap4-session-check):
7896         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7897         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7898         (elmo-imap4-auth-login): New function; Revival.
7899         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7900         `elmo-imap4-auth-login'.
7901
7902 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7903
7904         * elmo2.el (toplevel): Move `product-provide' declare.
7905         * mmelmo.el (toplevel): Ditto.
7906
7907 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7908
7909         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7910
7911 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7912
7913         * elmo-util.el (elmo-folder-get-store-type): New function.
7914         (elmo-folder-direct-copy-p): Use it.
7915
7916 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7917
7918         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7919         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7920         and result of `elmo-imap4-use-flag-p'.
7921         (elmo-imap4-fetch-callback-1): Set mark according to
7922         the result of `elmo-imap4-use-flag-p'.
7923
7924 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7925
7926         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7927         (elmo-generic-list-folder-unread): Ditto.
7928         (elmo-folder-get-info): Ditto.
7929         (elmo-folder-set-info-max-by-numdb): Ditto.
7930         (elmo-folder-get-info-max): Ditto.
7931         (elmo-folder-get-info-length): Ditto.
7932         (elmo-folder-get-info-unread): Ditto.
7933         (elmo-folder-info-make-hashtb): Ditto.
7934
7935         * elmo2.el: Removed above functions.
7936
7937 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7938
7939         * elmo-imap4.el (toplevel): Require 'ssl.
7940         Add autoload 'starttls.
7941         * elmo-pop3.el (toplevel): Ditto.
7942         * elmo-nntp.el (toplevel): Ditto.
7943
7944 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7945
7946         * elmo-imap4.el (toplevel): defun at compile time.
7947         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7948         sasl-next-step, sasl-step-data, sasl-step-set-data.
7949         * elmo-pop3.el (toplevel): Ditto.
7950
7951 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7952
7953         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7954
7955 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7956
7957         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7958         if error.
7959         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7960         and `elmo-pop-auth-apop'.
7961
7962 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7963
7964         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7965
7966 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7967
7968         * elmo-pop3.el (elmo-network-authenticate-session): Split
7969         encoded response value.
7970
7971 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7972
7973         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7974         `elmo-pop3-force-login'.
7975         Redefine `sasl-mechanisms'.
7976         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7977
7978 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7979
7980         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7981         Delete `elmo-imap4-authenticator-alist'.
7982         (elmo-imap4-auth-cram-md5): Delete.
7983         (elmo-imap4-auth-digest-md5): Delete.
7984
7985 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7986
7987         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7988         (elmo-pop3-auth-scram-md5): Ditto.
7989         (elmo-pop3-auth-cram-md5): Ditto.
7990
7991 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7992
7993         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7994         Delete `elmo-pop3-authenticator-alist'.
7995
7996 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7997
7998         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7999         new SASL API.
8000         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
8001
8002 \f
8003 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
8004
8005         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
8006
8007 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
8008
8009         * elmo-nntp.el (elmo-nntp-get-folders-info):
8010         Fixed problem when '\' character is contained in user-id.
8011         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
8012
8013 \f
8014 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
8015
8016         * elmo-imap4.el (elmo-imap4-delete-folder):
8017         Send "close" before "delete" (Use commented out line).
8018         (elmo-imap4-rename-folder): Ditto.
8019
8020         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
8021         folder string itself.
8022         (elmo-dop-list-deleted): New function.
8023         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
8024         killed.
8025
8026         * elmo-util.el (elmo-string-rassoc-all): New function.
8027
8028         * elmo-version.el (elmo-version): Up to 2.5.1.
8029
8030 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
8031
8032         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
8033
8034         * elmo-internal.el (elmo-internal-search): Fix last change.
8035
8036 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
8037
8038         * elmo-internal.el (elmo-internal-search): Rewrite.
8039         (Fixed problem which is pointed out by Akihiro MOTOKI
8040         <motoki@da.jp.nec.com>)
8041
8042         * elmo-version.el (elmo-version): Up to 2.5.0.
8043
8044 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
8045
8046         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
8047
8048 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
8049
8050         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
8051         non-nil, make hierarchy.
8052
8053 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
8054
8055         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
8056         `elmo-pop3-use-uidl' must be bound to nil.
8057         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
8058
8059 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
8060
8061         * elmo-util.el (elmo-copy-file): Don't cause an error after
8062         `add-name-to-file' failed.
8063
8064         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
8065         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
8066
8067 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8068
8069         * elmo-version.el (elmo-version): Up to 2.3.93.
8070
8071 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
8072
8073         * elmo-util.el (elmo-flatten): New function.
8074
8075 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8076
8077         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
8078         sync Author header.
8079         * elmo-cache.el (toplevel): Ditto.
8080         * elmo-database.el (toplevel): Ditto.
8081         * elmo-date.el (toplevel): Ditto.
8082         * elmo-dop.el (toplevel): Ditto.
8083         * elmo-filter.el (toplevel): Ditto.
8084         * elmo-imap4.el (toplevel): Ditto.
8085         * elmo-internal.el (toplevel): Ditto.
8086         * elmo-localdir.el (toplevel): Ditto.
8087         * elmo-localnews.el (toplevel): Ditto.
8088         * elmo-maildir.el (toplevel): Ditto.
8089         * elmo-msgdb.el (toplevel): Ditto.
8090         * elmo-multi.el (toplevel): Ditto.
8091         * elmo-net.el (toplevel): Ditto.
8092         * elmo-nntp.el (toplevel): Ditto.
8093         * elmo-pipe.el (toplevel): Ditto.
8094         * elmo-pop3.el (toplevel): Ditto.
8095         * elmo-util.el (toplevel): Ditto.
8096         * elmo-vars.el (toplevel): Ditto.
8097         * elmo2.el (toplevel): Ditto.
8098         * mmelmo-imap4.el (toplevel): Ditto.
8099         * mmelmo.el (toplevel): Ditto.
8100
8101         * elmo-version.el (elmo-version): Move to top.
8102
8103         * elmo-cache.el (toplevel): Fixed multiple Author header format.
8104         * elmo-imap4.el (toplevel): Ditto.
8105         * elmo-localdir.el (toplevel): Ditto.
8106         * elmo-msgdb.el (toplevel): Ditto.
8107         * elmo-nntp.el (toplevel): Ditto.
8108         * elmo-pop3.el (toplevel): Ditto.
8109         * elmo-version.el (toplevel): Ditto.
8110
8111         * elmo-localnews.el (toplevel): Added Keyword header.
8112
8113 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
8114
8115         * elmo-version.el (product-version-as-string): Defined using
8116         `defun-maybe'.
8117         (toplevel): Use it.
8118
8119         * elmo-localdir.el (toplevel): Updated copyright notice.
8120         * elmo-version.el (toplevel): Ditto.
8121         * elmo-msgdb.el (toplevel): Ditto.
8122         * elmo-imap4.el (toplevel): Ditto.
8123         * elmo-nntp.el (toplevel): Ditto.
8124         * elmo-pop3.el (toplevel): Ditto.
8125
8126 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
8127
8128         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
8129         messages.
8130
8131         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
8132         parameter value (It sometimes contains raw kanji).
8133
8134 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8135
8136         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
8137         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
8138
8139 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8140
8141         * elmo-imap4.el (elmo-network-initialize-session): Fix.
8142
8143 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8144
8145         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
8146         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
8147
8148 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
8149
8150         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
8151         value if selecting folder succceeded.
8152         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
8153
8154 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8155
8156         * elmo-util.el (elmo-make-directory): Fixed permission lateral
8157         representation.
8158
8159         * elmo-util.el (elmo-string-matched-member): New function.
8160
8161 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
8162
8163         * elmo-util.el (elmo-unintern): New macro.
8164         (elmo-number-set-member): Fixed docstring.
8165
8166         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
8167         tag token.
8168
8169 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
8170
8171         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
8172         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
8173
8174 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
8175
8176         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
8177         `no-error'.
8178         Added docstring.
8179         Return non-nil if selecting folder succeeded.
8180         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
8181
8182 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
8183
8184         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
8185         `file-name-completion' returns t.
8186         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
8187         (elmo-maildir-set-mark): Put `info' part to the files in the cur
8188         directory if it does not exist.
8189         (elmo-maildir-update-current): Use `while' instead of `mapcar'
8190         for iteration.
8191
8192 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
8193
8194         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
8195         enclosure (It's harmful in unplugged status).
8196
8197         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
8198
8199         * mmelmo-1.el: Removed.
8200
8201         * mmelmo-2.el: Ditto.
8202
8203         * mmelmo-imap4-1.el: Ditto.
8204
8205         * mmelmo-imap4-2.el: Ditto.
8206
8207         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
8208
8209         * mmelmo.el: Merged mmelmo-2.el.
8210
8211         * elmo-version.el (elmo-version): Up to 2.3.92.
8212
8213 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8214
8215         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
8216         elmo-update-number): Remove last period in "...done." message.
8217         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
8218         Ditto.
8219         * elmo-cache.el (elmo-cache-expire-by-size,
8220         elmo-cache-get-sorted-cache-file-list,
8221         elmo-cache-msgdb-create-as-numlist): Ditto.
8222         * elmo-dop.el (elmo-dop-save-pending-messages,
8223         (elmo-dop-flush-pending-append-operations): Ditto.
8224         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
8225         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
8226         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
8227         (elmo-localdir-pack-number): Ditto.
8228         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
8229         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
8230         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
8231         mime-write-entity-content): Ditto.
8232         * pldap.el (ldap-search-basic): Ditto.
8233
8234 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
8235
8236         * elmo-version.el (elmo-version): Up to 2.3.91.
8237
8238         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
8239         Only when filter is 'last'.
8240
8241         * elmo-util.el (elmo-condition-atom-regexp): New constant.
8242         (elmo-condition-parse-search-value): Use it.
8243         (elmo-read-search-condition-internal): Quote value only when
8244         it is not an atom.
8245
8246 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
8247
8248         * elmo2.el (elmo-generic-folder-diff): Fix.
8249
8250 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
8251
8252         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
8253         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
8254         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
8255         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8256         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
8257         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
8258
8259 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
8260
8261         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
8262         extra-fields.
8263
8264 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
8265
8266         * elmo-version.el (elmo-version): Up to 2.3.90.
8267
8268         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
8269         (elmo-imap4-list-folder-important): Ditto.
8270
8271 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8272
8273         * elmo-nntp.el (elmo-network-initialize-session): Fix.
8274
8275 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8276
8277         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
8278
8279 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
8280
8281         * elmo-nntp.el (elmo-network-initialize-session):
8282         Add starttls negotiation.
8283
8284 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8285
8286         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
8287         response.
8288         (elmo-network-setup-session): Define.
8289         Call `elmo-nntp-send-mode-reader' when session opened.
8290
8291 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8292
8293         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
8294
8295 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
8296
8297         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
8298         an invalid SPACE character ahead of `SEARCH' command.  Move
8299         a valid SPACE character following `SEARCH' from conditional
8300         `format' arguments to control-strings.
8301
8302 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8303
8304         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
8305         was succeeded.
8306
8307         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
8308
8309 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
8310
8311         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
8312         `w32-get-true-file-link-count' as t.
8313
8314         * elmo-imap4.el (elmo-imap4-read): Abolished.
8315         (Renamed to `elmo-read' and moved to elmo-util.el)
8316         All other related portions are changed.
8317
8318         * elmo-util.el (elmo-read): New function.
8319         (elmo-condition-parse-search-value): Use it.
8320
8321 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
8322
8323         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
8324
8325         * elmo-nntp.el (elmo-nntp-session): Define.
8326         (elmo-nntp-setting): Abolished.
8327         All other related portions are changed.
8328         (elmo-nntp-get-server-command): Changed argument.
8329         (elmo-nntp-set-server-command): Ditto.
8330         (elmo-nntp-xover-p): Ditto.
8331         (elmo-nntp-set-xover): Ditto.
8332         (elmo-nntp-listgroup-p): Ditto.
8333         (elmo-nntp-set-listgroup): Ditto.
8334         (elmo-nntp-list-active-p): Ditto.
8335         (elmo-nntp-set-list-active): Ditto.
8336         (elmo-nntp-xhdr-p): Ditto.
8337         (elmo-nntp-set-xhdr): Ditto.
8338         (elmo-nntp-flush-connection): Abolished.
8339         (elmo-nntp-get-connection): Abolished.
8340         (elmo-nntp-get-session): New function.
8341         (elmo-network-initialize-session): Defined.
8342         (elmo-network-authenticate-session): Ditto.
8343         (elmo-nntp-send-mode-reader): Changed argument.
8344         (elmo-nntp-send-command): Changed argument.
8345         All other related portions are changed.
8346         (elmo-nntp-read-response): Ditto.
8347         (elmo-nntp-read-raw-response): Ditto.
8348         (elmo-nntp-read-contents): Ditto.
8349         (elmo-nntp-read-body): Ditto.
8350         (elmo-nntp-goto-folder): Abolished.
8351         (elmo-nntp-select-group): New function.
8352         All other related portions are changed.
8353         (This function substitutes `elmo-nntp-goto-folder')
8354         (elmo-nntp-msgdb-create-by-header): Rewrite.
8355         (elmo-nntp-get-overview): Eliminated.
8356         (elmo-nntp-get-message): Ditto.
8357         (elmo-nntp-open-connection) Abolished.
8358         (elmo-nntp-read-msg): Rewrite.
8359         (elmo-nntp-post): Ditto.
8360         (elmo-nntp-send-data): Abolished.
8361         (elmo-nntp-send-buffer): New function.
8362         (elmo-nntp-send-data-line): Define as inline function.
8363         (elmo-nntp-get-folders-info-prepare): Use session as key.
8364         (elmo-nntp-groups-read-response): Changed argument.
8365         (elmo-nntp-retrieve-headers): Ditto.
8366         (elmo-nntp-msgdb-create-message): Ditto.
8367
8368         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
8369         when searching by 'since' or 'before'.
8370
8371 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8372
8373         * elmo-version.el (toplevel): Use product-version-as-string for set
8374         verstion-string, if defined.
8375
8376 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
8377
8378         * elmo-util.el: Doc fixes.
8379
8380 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8381
8382         * elmo-archive.el (toplevel): Use product-provide.
8383         * elmo-cache.el (toplevel): Ditto.
8384         * elmo-database.el (toplevel): Ditto.
8385         * elmo-date.el (toplevel): Ditto.
8386         * elmo-dop.el (toplevel): Ditto.
8387         * elmo-filter.el (toplevel): Ditto.
8388         * elmo-imap4.el (toplevel): Ditto.
8389         * elmo-internal.el (toplevel): Ditto.
8390         * elmo-localdir.el (toplevel): Ditto.
8391         * elmo-localnews.el (toplevel): Ditto.
8392         * elmo-maildir.el (toplevel): Ditto.
8393         * elmo-msgdb.el (toplevel): Ditto.
8394         * elmo-multi.el (toplevel): Ditto.
8395         * elmo-net.el (toplevel): Ditto.
8396         * elmo-nntp.el (toplevel): Ditto.
8397         * elmo-pipe.el (toplevel): Ditto.
8398         * elmo-pop3.el (toplevel): Ditto.
8399         * elmo-util.el (toplevel): Ditto.
8400         * elmo-vars.el (toplevel): Ditto.
8401         * elmo2.el (toplevel): Ditto.
8402         * mmelmo-1.el (toplevel): Ditto.
8403         * mmelmo-2.el (toplevel): Ditto.
8404         * mmelmo-imap4-1.el (toplevel): Ditto.
8405         * mmelmo-imap4-2.el (toplevel): Ditto.
8406         * mmelmo-imap4.el (toplevel): Ditto.
8407         * mmelmo.el (toplevel): Ditto.
8408
8409 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
8410
8411         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
8412         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
8413
8414 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
8415
8416         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
8417         before splitting.
8418         (elmo-multi-split-number-alist): Ditto.
8419
8420 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8421
8422         * elmo-version.el: New file.  Use product.el.
8423         * elmo2.el: Add (require 'elmo-version).
8424         * elmo-vars.el (elmo-appname, elmo-version): Move to
8425         elmo-version.el
8426
8427 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
8428
8429         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
8430         `elmo-msgdb-expand-path'.
8431         (elmo-msgdb-load): Ditto.
8432         Abolished 2nd argument. If 1st argument is not string, treat as spec.
8433         (elmo-generic-list-folder-unread): Rewrite.
8434         (elmo-generic-list-folder-important): Changed argument.
8435         (elmo-list-folder-unread): Ditto.
8436         (elmo-list-folder-important): Ditto.
8437         (elmo-folder-diff): Rewrite.
8438         (elmo-generic-folder-diff): New function.
8439         (elmo-multi-get-number-alist-list): Abolished
8440         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
8441         (elmo-multi-folder-diff): Moved to elmo-multi.el
8442         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
8443
8444         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
8445         `elmo-msgdb-expand-path'.
8446         (elmo-pop3-msgdb-create-as-numlist): Ditto.
8447         (elmo-pop3-read-msg): Ditto.
8448         (elmo-pop3-delete-msgs): Ditto.
8449         (elmo-pop3-folder-diff): New alias.
8450
8451         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
8452         `elmo-msgdb-expand-path'.
8453         (elmo-pipe-list-folder-unread): Changed arguments.
8454         (elmo-pipe-list-folder-important): Ditto.
8455         (elmo-pipe-folder-diff): New alias.
8456
8457         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8458         `elmo-msgdb-expand-path'.
8459         (elmo-nntp-max-of-folder): Ditto.
8460         (elmo-nntp-msgdb-create): Ditto.
8461         (elmo-nntp-delete-msgs): Ditto.
8462         (elmo-nntp-folder-diff): New alias.
8463
8464         * elmo-multi.el (elmo-multi-folder-diff): New function.
8465         (elmo-multi-split-mark-alist): Ditto.
8466         (elmo-multi-split-number-alist): Ditto.
8467         (elmo-multi-mark-alist-list): Abolished (Renamed to
8468         elmo-multi-split-mark-alist).
8469         (elmo-multi-list-folder-unread): Rewrite.
8470         (elmo-multi-list-folder-important): Ditto.
8471         (elmo-multi-list-folder): Set `spec' as 1st argument for
8472         `elmo-msgdb-expand-path'.
8473         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8474         instead of `elmo-multi-get-number-alist-list'.
8475
8476         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8477         If 1st argument is not string, treat as spec.
8478         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8479         `elmo-msgdb-expand-path'.
8480         (elmo-msgdb-flist-load): Ditto.
8481         (elmo-msgdb-flist-save): Ditto.
8482         (elmo-msgdb-delete-path): Ditto.
8483         (elmo-msgdb-rename-path): Ditto.
8484
8485         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8486         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8487         (elmo-maildir-delete-mark-msgs): Ditto.
8488         (elmo-maildir-msgdb-create): Ditto.
8489         (elmo-maildir-read-msg): Ditto.
8490         (elmo-maildir-delete-msgs): Ditto.
8491         (elmo-maildir-list-folder-subr): Ditto.
8492         (elmo-maildir-search): Ditto.
8493         (elmo-maildir-get-msg-filename): Ditto.
8494         (elmo-maildir-pack-number): Ditto.
8495         (elmo-maildir-folder-diff): New alias.
8496
8497         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8498
8499         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8500         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8501         (elmo-localdir-folder-diff): New alias.
8502
8503         * elmo-internal.el (elmo-internal-list-folder-subr):
8504         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8505         (elmo-internal-list-folder-by-location): Ditto.
8506         (elmo-internal-msgdb-create): Ditto.
8507         (elmo-internal-delete-msgs): Ditto.
8508         (elmo-internal-read-msg): Ditto.
8509         (elmo-internal-folder-diff): New alias.
8510
8511         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8512         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8513         `elmo-msgdb-expand-path'.
8514         (elmo-imap4-list-folder-unread): Changed arguments.
8515         (elmo-imap4-list-folder-important): Ditto.
8516
8517         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8518         (elmo-filter-list-folder-important): Ditto.
8519         (elmo-filter-folder-diff): New function.
8520
8521         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8522
8523         * elmo-cache.el (elmo-cache-list-folder):
8524         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8525         (elmo-cache-copy-msgs): Ditto.
8526         (elmo-cache-folder-diff): New alias.
8527
8528         * elmo-archive.el (elmo-archive-list-folder-subr):
8529         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8530         (elmo-archive-get-archive-name): Ditto.
8531         (elmo-archive-create-file): Ditto.
8532         (elmo-archive-append-msg): Ditto.
8533         (elmo-archive-copy-msgs): Ditto.
8534         (elmo-archive-copy-msgs-froms): Ditto.
8535         (elmo-archive-get-msg-filename): Ditto.
8536         (elmo-archive-folder-diff): New alias.
8537
8538 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8539
8540         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8541         (elmo-pop3-stream-type-alist): New variable.
8542         (elmo-nntp-stream-type-alist): New variable.
8543
8544         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8545         (elmo-kill-buffer): Ditto.
8546         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8547         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8548         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8549         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8550         (elmo-imap4-get-spec): Take into account
8551         `elmo-imap4-stream-type-alist'.
8552
8553 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8554
8555         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8556         (elmo-nntp-list-folders-get-cache): Ditto.
8557
8558 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8559
8560         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8561         character before 'uid'.
8562
8563 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8564
8565         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8566
8567         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8568
8569         * elmo-util.el (elmo-number-set-member): New function.
8570         (elmo-number-set-append-list): Ditto.
8571         (elmo-number-set-append): Ditto.
8572
8573         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8574         Use `elmo-number-set-member'.
8575         (elmo-living-messages): Ditto.
8576         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8577         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8578
8579         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8580         (elmo-imap4-add-to-cont-list): Abolished.
8581         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8582         instead of elmo-imap4-add-to-cont-list.
8583
8584         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8585         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8586
8587         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8588
8589 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8590
8591         * elmo-util.el (elmo-condition-parse-search-value):
8592         Fixed date parsing.
8593
8594 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8595
8596         * elmo-util.el (elmo-condition-find-key-internal): New function.
8597         (elmo-condition-find-key): Ditto.
8598
8599         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8600         (elmo-msgdb-search-internal): Ditto.
8601         (elmo-msgdb-search): Ditto.
8602
8603 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8604
8605         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8606         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8607
8608         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8609         (elmo-nntp-search-primitive): Fixed problem when condition is
8610         'unmatch'.
8611
8612         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8613
8614         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8615         (elmo-nntp-xhdr-p): New macro.
8616         (elmo-nntp-set-xhdr): Ditto.
8617         (elmo-nntp-parse-xhdr-response): New function.
8618         (elmo-nntp-retrieve-field): Ditto.
8619         (elmo-nntp-search-primitive): Ditto.
8620         (elmo-nntp-search): Implemented.
8621
8622         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8623
8624         * elmo-archive.el (elmo-archive-search): Set all number list to
8625         `elmo-archive-field-condition-match'
8626
8627         * elmo-localdir.el (elmo-localdir-search): Likewise.
8628
8629         * elmo-maildir.el (elmo-maildir-search): Likewise.
8630
8631 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8632
8633         * elmo-msgdb.el (elmo-living-messages): New function.
8634         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8635         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8636         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8637         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8638         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8639         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8640         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8641         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8642         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8643         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8644         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8645
8646 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8647
8648         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8649
8650         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8651
8652         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8653
8654         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8655         arguments for `SEARCH' command.
8656         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8657         All other related portions are changed.
8658
8659         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8660
8661         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8662         (elmo-list-folder-unread): Rewrite.
8663         (elmo-list-folder-important): Ditto.
8664
8665         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8666         (elmo-condition-parse-error): New inline function.
8667         (elmo-read-search-condition): New function.
8668         (elmo-read-search-condition-internal): Ditto.
8669         (elmo-parse-search-condition): Rewrite.
8670         (elmo-condition-parse): New function.
8671         (elmo-condition-parse-or-expr): Ditto.
8672         (elmo-condition-parse-and-expr): Ditto.
8673         (elmo-condition-parse-primitive): Ditto.
8674         (elmo-condition-parse-search-value): Ditto.
8675         (elmo-buffer-field-primitive-condition-match): Ditto.
8676         (elmo-buffer-field-condition-match): Rewrite.
8677         (elmo-file-field-condition-match): Ditto.
8678
8679         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8680         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8681
8682         * elmo-internal.el (elmo-internal-search): Set `number' and
8683         `number-list' argument of `elmo-file-field-condition-match'.
8684
8685         * elmo-maildir.el (elmo-maildir-search): Ditto.
8686
8687         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8688         `msgdb' as argument instead of `mark-alist'.
8689         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8690         `overview'.
8691
8692         * elmo-multi.el: Likewise.
8693
8694         * elmo-pipe.el: Likewise.
8695
8696         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8697         (elmo-imap4-search-internal): Rewrite.
8698         (elmo-imap4-search): Ditto.
8699
8700         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8701         (elmo-filter-list-folder-unread): Ditto.
8702         (elmo-filter-list-folder-important): Ditto.
8703         (elmo-filter-search): Rewrite.
8704
8705         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8706         `number-list' argument of `elmo-file-field-condition-match'.
8707         (elmo-cache-search): Ditto.
8708
8709         * elmo-localdir.el: Likewise.
8710
8711         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8712         number-list and pass it to `elmo-buffer-field-condition-match'.
8713         (elmo-archive-field-condition-match): Pass `number-list' to
8714         `elmo-archive-field-condition-match'
8715
8716 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8717
8718         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8719         `listgroup'.
8720
8721         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8722         (elmo-folder-diff-async-callback-data): Ditto.
8723         (elmo-folder-diff-async): New function.
8724
8725         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8726         (elmo-network-session-cache-key): Use it as a prefix of the session
8727         name.
8728         (elmo-network-open-session): Ditto.
8729
8730         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8731         (elmo-imap4-status-callback-data): Ditto.
8732         (elmo-imap4-server-diff-async-callback): New variable.
8733         (elmo-imap4-server-diff-async-callback-data): Ditto.
8734         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8735         `elmo-imap4-status-callback-data'.
8736         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8737         `elmo-imap4-status-callback-data' as nil.
8738         (elmo-imap4-server-diff): Ditto.
8739         (elmo-imap4-server-diff-async-callback-1): New function.
8740         (elmo-imap4-server-diff-async): Ditto.
8741         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8742
8743 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8744
8745         * elmo-util.el (elmo-list-delete): Doc fix.
8746         (elmo-delete-lists): Abolish.
8747         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8748         instead of `elmo-delete-lists'.
8749
8750 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8751
8752         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8753         before `sort'.
8754
8755 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8756
8757         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8758         `elmo-imap4-literal-subr'.
8759         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8760         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8761
8762 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8763
8764         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8765         (elmo-archive-list-folder): Fix.
8766         (elmo-archive-max-of-folder): Fix.
8767
8768 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8769
8770         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8771          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8772         (elmo-localdir-append-msg): Ditto.
8773         (elmo-localdir-list-folder): Fix for `nonsort'.
8774         (elmo-localdir-list-folder-subr): Fix for `killed'.
8775         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8776         (elmo-maildir-list-folder-subr): Ditto.
8777         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8778         (elmo-archive-list-folder-subr): Ditto.
8779         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8780         (elmo-internal-list-folder-subr): Ditto.
8781
8782 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8783
8784         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8785
8786 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8787
8788         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8789
8790 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8791
8792         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8793         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8794
8795         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8796         before greeting.
8797         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8798         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8799
8800 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8801
8802         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8803
8804         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8805         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8806         before STORE command.
8807
8808 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8809
8810         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8811
8812         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8813         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8814         of `response'.
8815         (elmo-imap4-list-folders): Removed unused local variable.
8816         (elmo-network-initialize-session): Ditto.
8817         (elmo-imap4-delete-msg-by-id): Ditto.
8818         (elmo-imap4-parse-fetch): Ditto.
8819         (elmo-imap4-copy-msgs): Ditto.
8820         Use `dst-spec' instead of `dst-folder'.
8821         (elmo-network-authenticate-session): Check authenticate type `plain'.
8822
8823 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8824
8825         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8826         garbage checking.
8827         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8828         `elmo-imap4-response-value'.
8829         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8830
8831 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8832
8833         * elmo-imap4.el (elmo-imap4-send-command):
8834         Cause elmo-imap4-bye-error when current response is BYE.
8835         (elmo-imap4-arrival-filter): Changed greeting response value.
8836
8837         * elmo2.el (elmo-imap4-bye-error): Define.
8838
8839         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8840         (elmo-imap4-server-diff): Ditto.
8841         (elmo-imap4-response-bye-p): New macro.
8842         (elmo-imap4-response-error-text): Get text from BYE response.
8843         (elmo-imap4-read-response): Return if BYE response.
8844         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8845         (elmo-imap4-folder-exists-p): Ditto.
8846         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8847         (elmo-imap4-parse-bye): New function.
8848         (elmo-imap4-parse-response): Remove needless let.
8849         Call `elmo-imap4-parse-bye'.
8850
8851 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8852
8853         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8854         the mailbox does not exist.
8855         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8856
8857 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8858
8859         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8860
8861 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8862
8863         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8864
8865         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8866         (elmo-network-initialize-session-buffer): Defined.
8867
8868         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8869         Abolished.
8870         (mmelmo-imap4-get-mime-entity): Rewrite.
8871
8872         * elmo2.el (elmo-error): Capitalize error message.
8873
8874         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8875         (elmo-network-session-buffer): New macro.
8876         (elmo-network-open-session): Use it.
8877
8878         * elmo-imap4.el: Rewrite.
8879
8880 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8881
8882         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8883
8884 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8885
8886         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8887         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8888         (elmo-imap4-create-msgdb-from-overview-string): Use
8889         `elmo-msgdb-create-overview-from-buffer'.
8890
8891 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8892
8893         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8894         (elmo-imap4-default-hierarchy-delimiter): New variable.
8895         (elmo-imap4-list-folders): Use it.
8896
8897 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8898
8899         * elmo-net.el (elmo-network-open-session): Add user and
8900         stream-type for process-buffer name.
8901
8902         * elmo-pop3.el (elmo-network-initialize-session): Call
8903         buffer-disable-undo.
8904
8905         * elmo-imap4.el (elmo-network-initialize-session):
8906         Set current-buffer as an argument for `buffer-disable-undo'.
8907
8908         * elmo-pop3.el (elmo-network-close-session): Don't use
8909         `process-live-p'.
8910
8911         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8912         Set default as 'user.
8913
8914         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8915
8916         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8917         and `elmo-imap4-flush-connection'.
8918
8919         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8920         (elmo-pop3-get-spec): Assume auth as symbol.
8921         (elmo-open-network-stream): Moved to `elmo-net'.
8922
8923         * elmo-pop3.el (toplevel): Require 'elmo-net.
8924         Define `sasl-cram-md5' to silence byte compilier.
8925         (elmo-pop3-connection-cache) Abolished.
8926         (elmo-pop3-authenticator-alist) New variable.
8927         (elmo-pop3-session): Define.
8928         (elmo-pop3-connection-get-process): Abolished.
8929         (elmo-pop3-connection-get-buffer): Ditto.
8930         (elmo-pop3-close-connection): Ditto.
8931         (elmo-pop3-flush-connection): Ditto.
8932         (elmo-pop3-get-connection): Ditto.
8933         (elmo-pop3-get-session): New function.
8934         (Replacement for `elmo-pop3-get-connection').
8935         All other related modules are changed.
8936         (elmo-network-close-session): Define.
8937         (elmo-pop3-send-command): Abolished argument `buffer'.
8938         All other related modules are changed.
8939         (elmo-pop3-read-response): Likewise.
8940         (elmo-pop3-open-connection): Abolished.
8941         (elmo-pop3-auth-user): New function.
8942         (elmo-pop3-auth-apop): Ditto.
8943         (elmo-pop3-auth-cram-md5): Ditto.
8944         (elmo-pop3-auth-scram-md5): Ditto.
8945         (elmo-pop3-auth-digest-md5): Ditto.
8946         (elmo-network-initialize-session): Define.
8947         (elmo-network-authenticate-session): Ditto.
8948         (elmo-network-setup-session): Ditto.
8949
8950         * elmo-imap4.el (toplevel): Require 'elmo-net.
8951         (elmo-imap4-session): Define.
8952         (elmo-imap4-connection-cache): Abolished.
8953         (elmo-imap4-password-key): Ditto.
8954         (elmo-imap4-flush-connection): Ditto.
8955         (elmo-imap4-get-connection): Ditto.
8956         All other related modules are changed.
8957         (elmo-imap4-get-session): New function
8958         (Replacement for `elmo-imap4-get-connection').
8959         (elmo-imap4-read-response): Abolished argument `buffer'.
8960         All other related modules are changed.
8961         (elmo-imap4-send-command): Likewise.
8962         (elmo-imap4-select-folder): Abolished.
8963         All other related modules are changed.
8964         (elmo-imap4-select-mailbox): New function.
8965         (Replacement for `elmo-imap4-select-folder').
8966         (elmo-imap4-auth-login): Simplify.
8967         (Assume current buffer as process buffer)
8968         (elmo-imap4-auth-cram-md5): Ditto.
8969         (elmo-imap4-auth-digest-md5): Ditto.
8970         (elmo-imap4-login): Ditto.
8971         (elmo-imap4-open-connection): Abolished.
8972         (elmo-imap4-open-connection-1): Abolished.
8973         (elmo-network-initialize-sessoin): Define.
8974         (elmo-network-authenticate-session): Ditto.
8975         (elmo-network-setup-session): Ditto.
8976
8977         * elmo-net.el: New module.
8978
8979 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8980
8981         * elmo-util.el (elmo-define-error): New function.
8982
8983         * elmo2.el (elmo-error): Define.
8984         (elmo-open-error): Define.
8985         (elmo-authenticate-error): Define.
8986
8987         * elmo-imap4.el (elmo-imap4-error): Abolish.
8988         (elmo-imap4-error-type): Abolish.
8989         (elmo-imap4-error-process): Abolish.
8990         (elmo-imap4-error-message): Abolish
8991         (elmo-imap4-list-folders): Don't quote lambda.
8992         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8993         (elmo-imap4-parse-namespace): Ditto.
8994         (elmo-imap4-open-connection): Rewrite.
8995         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8996         (elmo-imap4-get-connection): Abolish local variable `result'.
8997
8998 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8999
9000         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
9001         wrong-type-argument error when auth is nil.
9002
9003 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
9004
9005         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
9006         (elmo-default-nntp-stream-type): Ditto.
9007         (elmo-default-pop3-stream-type): Ditto.
9008         (elmo-network-stream-type-alist): Ditto.
9009         (elmo-default-imap4-ssl): Abolished.
9010         (elmo-default-nntp-ssl): Ditto.
9011         (elmo-default-pop3-ssl): Ditto.
9012
9013         * elmo-util.el: (toplevel): Removed needless requires.
9014         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
9015         (elmo-open-network-stream): Open network stream according to
9016         the value of `elmo-network-stream-type-alist'.
9017         (elmo-get-network-stream-type): New function.
9018         (elmo-network-stream-type-spec-string): New macro.
9019         (elmo-network-stream-type-symbol): Ditto.
9020         (elmo-network-stream-type-function): Ditto.
9021
9022         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
9023         network-stream-type. All other related portions are changed.
9024         (elmo-pop3-open-connection): Ditto.
9025
9026         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
9027         network-stream-type. All other related portions are changed.
9028
9029         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
9030         network-stream-type.All other related portions are changed.
9031         (elmo-imap4-error): New macro.
9032         (elmo-imap4-error-type): Ditto.
9033         (elmo-imap4-error-process): Ditto.
9034         (elmo-imap4-error-message): Ditto.
9035         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
9036         (elmo-imap4-auth-cram-md5): Ditto.
9037         (elmo-imap4-auth-digest-md5): Ditto.
9038         (elmo-imap4-login): Ditto.
9039         (elmo-imap4-open-connection): Remove password entry if authentication
9040         was in vain.
9041         (elmo-imap4-user-at-host): Abolished.
9042         (elmo-imap4-password-key): New buffer local variable.
9043         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
9044         using protocol, port, auth and stream-type.
9045
9046         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
9047
9048 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
9049
9050         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
9051
9052         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
9053
9054         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
9055         (elmo-imap4-authenticator-alist): New variable.
9056         (elmo-imap4-open-connection-1): Rename from
9057         elmo-imap4-open-connection.
9058         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
9059         only wraps elmo-imap4-open-connection-1.
9060         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
9061         user-at-host.
9062         (elmo-imap4-auth-login): New function.
9063         (elmo-imap4-auth-cram-md5): New function.
9064         (elmo-imap4-auth-digest-md5): New function.
9065         (elmo-imap4-login): New function.
9066
9067 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
9068
9069         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
9070         function `error'.
9071
9072 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
9073
9074         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
9075
9076 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
9077
9078         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
9079
9080 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
9081
9082         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
9083         for server responses, quote `*' regardless of where it appears.
9084
9085 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
9086
9087         * elmo-maildir.el (elmo-maildir-commit): New alias.
9088
9089 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
9090
9091         * elmo-util.el (elmo-display-progress):
9092                 Use `progress-feedback-with-label'.
9093
9094 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
9095
9096         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
9097         (elmo-imap4-non-atom-char-regex): Ditto.
9098         (elmo-imap4-non-text-char-regex): Ditto.
9099         (elmo-imap4-literal-threshold): Ditto.
9100         (elmo-imap4-atom-p): New function.
9101         (elmo-imap4-quotable-p): Ditto.
9102         (elmo-imap4-nil): Ditto.
9103         (elmo-imap4-atom): Ditto.
9104         (elmo-imap4-quoted): Ditto.
9105         (elmo-imap4-literal-subr): Ditto.
9106         (elmo-imap4-literal): Ditto.
9107         (elmo-imap4-buffer-literal): Ditto.
9108         (elmo-imap4-string-subr): Ditto.
9109         (elmo-imap4-string): Ditto.
9110         (elmo-imap4-buffer-string): Ditto.
9111         (elmo-imap4-astring-subr): Ditto.
9112         (elmo-imap4-astring): Ditto.
9113         (elmo-imap4-buffer-astring): Ditto.
9114         (elmo-imap4-nstring): Ditto.
9115         (elmo-imap4-buffer-nstring): Ditto.
9116         (elmo-imap4-mailbox): New alias.
9117         (elmo-imap4-field-body): Ditto.
9118         (elmo-imap4-userid): Ditto.
9119         (elmo-imap4-password): Ditto.
9120         (elmo-imap4-format-quoted): New function.
9121         (elmo-imap4-send-command): Rewritten.  Accept a list of command
9122         arguments and handle "atom", "quoted" and "literal" string here.
9123         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
9124         `elmo-imap4-send-command'.
9125         (elmo-imap4-folder-exists-p): Likewise.
9126         (elmo-imap4-create-folder): Likewise.
9127         (elmo-imap4-delete-folder): Likewise.
9128         (elmo-imap4-rename-folder): Likewise.
9129         (elmo-imap4-max-of-folder): Likewise.
9130         (elmo-imap4-check-validity): Likewise.
9131         (elmo-imap4-sync-validity): Likewise.
9132         (elmo-imap4-server-diff): Likewise.
9133         (elmo-imap4-select-folder): Likewise.
9134         (elmo-imap4-copy-msgs): Likewise.
9135         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
9136         (elmo-imap4-mark-set-on-msgs): Likewise.
9137         (elmo-imap4-read-part): Likewise.
9138         (elmo-imap4-read-msg): Likewise.
9139         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
9140         `elmo-imap4-password' for `elmo-imap4-send-command'.
9141         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
9142         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
9143         `elmo-imap4-buffer-literal'.
9144         (elmo-imap4-append-msg): Likewise.
9145
9146         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
9147         `delete' for removing dead connection from the connection cache.
9148         Move deletion of the process buffer after that.
9149         (elmo-imap4-list): Change `defsubst' to `defun'.
9150         (elmo-imap4-commit): Make error message verbose.
9151         (elmo-imap4-search): Ditto.
9152         (elmo-imap4-list): Ditto.
9153         (elmo-imap4-select-folder): Ditto.
9154         (elmo-imap4-copy-msgs): Ditto.
9155         (elmo-imap4-delete-msg-by-id): Ditto.
9156         (elmo-imap4-append-msg-by-id): Ditto.
9157         (elmo-imap4-append-msg): Ditto.
9158
9159 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
9160
9161         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
9162         when dired is used on XEmacs.
9163
9164 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
9165
9166         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
9167         instead of `append'.
9168         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
9169         `elmo-plugged-p' directly.
9170         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
9171         of `elmo-plugged-p' directly.
9172
9173         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
9174         Eliminate unused variable.  Use `memq' for checking a process status.
9175         Use `cons' instead of `append' for updating the connection cache.
9176         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
9177         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
9178
9179 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
9180
9181         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
9182         `elmo-imap4-read-point' exactly.
9183
9184         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
9185         the local variable `folder' to `mailbox'.
9186         Rename the argument `fld' to `folder'.
9187
9188 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
9189
9190         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
9191         * elmo-imap4.el (elmo-imap4-commit): Ditto.
9192
9193 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
9194
9195         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
9196         (elmo-pop3-number-uidl-hash): New buffer-local variable.
9197         (elmo-pop3-uidl-number-hash): Ditto.
9198         (elmo-pop3-size-hash): Ditto.
9199         (elmo-pop3-uidl-done): Ditto.
9200         (elmo-pop3-list-done): Ditto.
9201         (elmo-pop3-connection-get-process): New defmacro.
9202         (elmo-pop3-connection-get-buffer): Ditto.
9203         (elmo-pop3-close-connection): Delete buffer and process.
9204         (elmo-pop3-flush-connection): Don't delete buffer and process.
9205         (elmo-pop3-get-connection): Added optional argument `if-exists'.
9206         Setup UIDL and size hash.
9207         (elmo-pop3-send-command-no-erase): Deleted
9208         (elmo-pop3-send-command): Added optional argument `no-erase'.
9209         (elmo-pop3-parse-uidl-response): New function.
9210         (elmo-pop3-parse-list-response): Set size hash.
9211         (elmo-pop3-list-location): New function.
9212         (elmo-pop3-list-by-uidl-subr): Ditto.
9213         (elmo-pop3-list-by-list): Ditto.
9214         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
9215         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
9216         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
9217         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
9218         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
9219         Use uidl.
9220         (elmo-pop3-uidl-to-number): New function.
9221         (elmo-pop3-number-to-uidl): Ditto.
9222         (elmo-pop3-number-to-size): Ditto.
9223         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
9224         Set number by use of uidl.
9225         (elmo-pop3-msgdb-create-message): Likewise.
9226         Set size, loc-alist in msgdb.
9227         (elmo-pop3-read-msg): Set number by use of uidl.
9228         Added optional argument `msgdb'.
9229         (elmo-pop3-delete-msg): Ditto.
9230         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
9231         (elmo-pop3-commit): Close connection.
9232
9233         * elmo-pipe.el (elmo-pipe-max-of-folder):
9234         Bind `elmo-pop3-use-uidl' as nil.
9235         (elmo-pipe-drain): Ditto.
9236         Call `elmo-commit'.
9237
9238         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
9239         (elmo-msgdb-overview-entity-set-size): New defsubst.
9240
9241 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
9242
9243         * elmo-vars.el (elmo-use-killed-list): New variable
9244         (Renamed from `elmo-nntp-use-killed-list').
9245         (elmo-nntp-use-killed-list): Eliminated.
9246
9247         * elmo-msgdb.el (elmo-msgdb-expand-path):
9248         Changed expanding msgdb path for elmo-multi.
9249
9250         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
9251         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
9252         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
9253         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
9254         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
9255         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
9256         (toplevel): Deleted time-stamp line.
9257
9258         * elmo2.el (elmo-clear-killed ): Defined as function
9259         (Abolished defining as a backend function).
9260         All other related modules are changed.
9261
9262 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
9263
9264         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
9265
9266 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
9267
9268         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
9269
9270 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
9271
9272         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
9273
9274 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
9275
9276         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
9277         asynchronous folder check.
9278
9279         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
9280
9281         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
9282         `elmo-nntp-use-killed-list'.
9283         (elmo-nntp-list-folder): Use killed list.
9284         (elmo-nntp-max-of-folder): Ditto.
9285         (elmo-nntp-msgdb-create): Set killed list.
9286
9287         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
9288
9289         * elmo2.el (elmo-clear-killed): New backend function.
9290         All other related modules are changed.
9291
9292 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
9293
9294         * elmo-util.el (elmo-imap4-spec-folder): Use
9295         `elmo-imap4-spec-mailbox'; Mark as obsolete.
9296         All callers changed.
9297
9298 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
9299
9300         * mmelmo-2.el (initialize-instance):
9301         Use `mime-buffer-entity-buffer-internal' instead of
9302         `mime-entity-buffer'.
9303
9304         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
9305         (mime-entity-body): Implemented.
9306         (mime-goto-header-start-point): Deleted.
9307         (mime-goto-body-end-point): Ditto.
9308         (mime-entity-point-min): Ditto.
9309         (mime-entity-point-max): Ditto.
9310         (mime-entity-children): Ditto.
9311         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
9312         instead of `mime-entity-buffer'.
9313         (mime-entity-header-buffer): Ditto.
9314         (mime-entity-body-buffer): Ditto.
9315         (mime-write-entity-content): Ditto.
9316
9317         * pldap.el (ldap-static-if): New macro.
9318         (toplevel): Use it instead of `static-if'.
9319
9320 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
9321
9322         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
9323         included in `attrs' argument.
9324
9325 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
9326
9327         * elmo-util.el (elmo-get-passwd): Use old backquote style.
9328
9329         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
9330         (ldap-ldif-safe-init-char-regexp): Ditto.
9331         (ldap-ldif-safe-string-regexp): Ditto.
9332         (ldap/ldif-safe-string-p): New macro.
9333         (ldap/ldif-insert-field): Ditto.
9334         (ldap-modify): Use it.
9335         (ldap-add): Ditto.
9336         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
9337         (ldap-decode-attribute): Decode only when `attr' is consp.
9338         (ldap-delete): Bind `ret'.
9339         (toplevel): Require 'cl at compile time.
9340         Removed (require 'poe) and (require 'std11).
9341         (pldap-version): Eliminated.
9342         (ldap-search-basic): Removed auth and dn binding.
9343         (ldap-ldif-field-name-regexp): New constant.
9344         (ldap-ldif-field-head-regexp): Ditto.
9345         (ldap-ldif-next-field-head-regexp): Ditto.
9346         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
9347         (ldap/field-end): New function.
9348         (ldap/field-body): Use it.
9349         (ldap/collect-field): Ditto.
9350         (ldap-search-basic): Use `ldap/field-body'.
9351
9352 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
9353
9354         * pldap.el (ldap-default-attribute-encoder): New user option.
9355         (ldap/field-body): Decode base64 string.
9356         (ldap/collect-field): Ditto.
9357         (ldap-encode-attribute): New function.
9358         (ldap-add-entries): Use it.
9359         (ldap-modify-entries): Ditto.
9360         (ldap-search-entries): Enclosed decoding function with
9361         `with-temp-buffer' and set as unibyte.
9362         (ldap-search-basic): Set process buffer as unibyte.
9363
9364         * elmo-util.el (elmo-folder-identical-system-p):
9365         Eliminated name space checking.
9366
9367         * pldap.el: New module.
9368         toplevel: Changed condition to detect built-in ldap feature.
9369         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
9370         (ldap-add): Added error handling.
9371         (ldap-modify): Ditto.
9372         (ldap-delete): Ditto.
9373
9374 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
9375
9376         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
9377         Initialize local variables with `let'.  Inline a temporary
9378         variable for the progress percentage.  Sort `setq' to reduce
9379         function call in the while-loop.
9380
9381         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
9382         into the conditional branch.
9383
9384 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
9385
9386         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
9387         Move a conditional out of the while-loop.
9388
9389 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9390
9391         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
9392         elmo-msgdb-overview-get-entity-by-number.
9393         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
9394         throw.
9395
9396 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
9397
9398         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
9399         the local variable for a packed number self descriptively.
9400
9401 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9402
9403         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
9404         * elmo-localdir.el (elmo-localdir-pack-number): Use
9405         `elmo-msgdb-overview-get-entity' instead of
9406         `elmo-msgdb-overview-get-entity-by-number'.
9407         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
9408         (elmo-msgdb-search-overview-entity): Removed.
9409         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
9410         by message-id or number.
9411         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
9412         instead of `elmo-msgdb-overview-get-entity-by-number'.
9413
9414 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9415
9416         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
9417         non-nil, use hash table for overview.
9418         (elmo-hash-maximum-size): New variable.
9419         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
9420         (elmo-msgdb-make-overview-hashtb): New function.
9421         (elmo-msgdb-clear-overview-hashtb): New function.
9422         (elmo-clear-hash-val): New macro.
9423         All other related modules are changed.
9424
9425 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
9426
9427         * elmo2.el (elmo-move-msgs): If there's other message with
9428         same message-id, don't use cache.
9429
9430 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
9431
9432         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
9433         number is already packed.
9434
9435 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
9436
9437         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
9438
9439 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9440
9441         * elmo-vars.el (elmo-display-progress-threshold): New variable.
9442         All other related modules are changed.
9443
9444 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
9445
9446         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
9447         of refiling failure on Maildir.
9448
9449 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9450
9451         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
9452         decoded mime-charset with cache.
9453         (elmo-msgdb-overview-entity-get-from): Ditto.
9454         (elmo-msgdb-overview-entity-get-subject): Ditto.
9455         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9456
9457 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9458
9459         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9460         (elmo-remove-passwd): Fill password with 0 before erase.
9461         * elmo-vars.el (elmo-passwd-life-time): New variable.
9462
9463 \f
9464 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9465
9466         * elmo-cache.el (elmo-buffer-cache-add):
9467         Set message cache buffer as unibyte.
9468
9469 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9470
9471         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9472         become nil.
9473
9474 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9475
9476         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9477         when display is finished.
9478         (elmo-nntp-msgdb-create): Ditto.
9479         (elmo-nntp-groups-read-response): Ditto.
9480         (elmo-nntp-retrieve-headers): Ditto.
9481         (elmo-nntp-msgdb-create-message): Ditto.
9482         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9483         (elmo-pop3-msgdb-create-message): Ditto.
9484
9485 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9486
9487         * elmo-maildir.el (elmo-maildir-msgdb-create):
9488         Use `elmo-msgdb-sort-by-date'.
9489
9490 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9491
9492         * elmo2.el (elmo-read-msg-no-cache):
9493         Eliminated arguments after `outbuf'.
9494         Don't use cache even if it exists.
9495         (elmo-read-msg): Don't pass arguments after `outbuf' to
9496         `elmo-read-msg-no-cache'.
9497
9498 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9499
9500         * elmo-archive.el (elmo-archive-list-folders):
9501         Use `file-name-directory' if base folder does not exist.
9502
9503 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9504
9505         * elmo-archive.el (elmo-archive-list-folders): Don't use
9506         `file-name-directory'.
9507
9508 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9509
9510         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9511         If `force' is non-nil, try flushing all operation queues.
9512
9513 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9514
9515         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9516         as-binary-process.
9517
9518 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9519
9520         * elmo-util.el (elmo-display-progress): Fixed.
9521
9522 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9523
9524         * elmo-util.el (elmo-display-progress): New function.
9525         All other related modules are changed.