Update.
[elisp/wanderlust.git] / elmo / ChangeLog
1 2008-03-30  Tetsurou Okazaki  <okazaki@be.to>
2
3         * elmo-imap4.el (elmo-imap4-send-command): Combine `process-send-string' calls.
4
5 2008-02-20  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6
7         * elmo-util.el (elmo-add-name-to-file, elmo-field-body): Use
8         `eval-and-compile' for suppress compile warnings.
9
10         * elmo-vars.el (dynamic-link, dynamic-call): Use `defalias-maybe'
11         instead of `defun-maybe'
12
13         * elmo-util.el: Add (eval-when-compile (require 'static)).
14
15 2008-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
16
17         * mmimap.el: Remove (require 'static).
18         * acap.el: Ditto.
19
20         * elmo-flag.el: Move ';;; Code:' comment.
21         * elmo-imap4.el: Ditto.
22         * elmo-net.el: Ditto.
23
24         * elmo-version.el (product-provide): Fix comment.
25
26 2008-02-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
27
28         * slp.el: Add (eval-when-compile (require 'cl)).
29         * elmo-date.el: Ditto.
30         * elmo-pop3.el: Ditto.
31         * elmo-mime.el: Add (eval-when-compile (require 'elmo)).
32
33 2008-02-17  TAKAHASHI Kaoru  <kaoru@kaisei.org>
34
35         * modb.el (elmo-msgdb-match-condition-primitive): Use
36         `string-to-number' instead of `string-to-int'.
37
38         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer)
39         (elmo-msgdb-message-match-condition)
40         (elmo-msgdb-create-message-entity-from-buffer): Use
41         `string-to-number' instead of `string-to-int'.
42
43         * elmo.el (elmo-folder-confirm-appends): Use `string-to-number'
44         instead of `string-to-int'.
45
46         * elmo-util.el (elmo-cache-expire-by-age): Use `string-to-number'
47         instead of `string-to-int'.
48
49         * elmo-pop3.el (elmo-pop3-list-by-list, elmo-folder-status): Use
50         `string-to-number' instead of `string-to-int'.
51
52         * elmo-nntp.el (elmo-nntp-make-msglist)
53         (elmo-folder-list-messages-plugged, elmo-nntp-folder-status)
54         (elmo-nntp-create-msgdb-from-overview-string)
55         (elmo-nntp-parse-xhdr-response, elmo-nntp-msgdb-create-message)
56         (elmo-nntp-search-primitive): Use `string-to-number' instead of
57         `string-to-int'.
58
59         * elmo-net.el (elmo-net-folder-set-parameters): Use
60         `string-to-number' instead of `string-to-int'.
61
62         * elmo-localdir.el (elmo-localdir-list-subr): Use
63         `string-to-number' instead of `string-to-int'.
64
65         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Use
66         `string-to-number' instead of `string-to-int'.
67
68         * elmo-date.el (elmo-date-get-datevec): Use `string-to-number'
69         instead of `string-to-int'.
70
71         * elmo-archive.el (elmo-archive-list-folder-subr): Use
72         `string-to-number' instead of `string-to-int'.
73
74 2008-02-16  TAKAHASHI Kaoru  <kaoru@kaisei.org>
75
76         * elmo-util.el (elmo-get-passwd): Fix typo.
77
78         * elmo-nntp.el (elmo-nntp-get-server-command)
79         (elmo-nntp-set-server-command, elmo-nntp-xover-p)
80         (elmo-nntp-listgroup-p, elmo-nntp-set-listgroup)
81         (elmo-nntp-list-active-p, elmo-nntp-set-list-active)
82         (elmo-nntp-xhdr-p, elmo-nntp-set-xhdr): New backquote style.
83
84         * elmo-imap4.el (elmo-imap4-debug)
85         (elmo-imap4-response-continue-req-p, elmo-imap4-response-ok-p)
86         (elmo-imap4-response-bye-p, elmo-imap4-response-garbage-p)
87         (elmo-imap4-response-value, elmo-imap4-response-error-text)
88         (elmo-imap4-response-bodydetail-text, elmo-imap4-value)
89         (elmo-imap4-nth, elmo-imap4-detect-search-charset)
90         (elmo-imap4-identical-system-p): New backquote style.
91
92 2008-02-15  TAKAHASHI Kaoru  <kaoru@kaisei.org>
93
94         * elmo-dop.el (elmo-make-dop-queue): New backquote style.
95         (elmo-dop-queue-fname, elmo-dop-queue-method): Ditto.
96         (elmo-dop-queue-arguments): Ditto.
97
98         * elmo-date.el (elmo-match-substring): New backquote style.
99         (elmo-match-string, elmo-match-buffer): Ditto.
100         (elmo-date-make-sortable-string): Ditto.
101
102         * elmo-archive.el (elmo-archive-get-method):New backquote style.
103         (elmo-archive-get-suffix, elmo-archive-get-regexp): Ditto.
104
105         * elmo-multi.el (elmo-multi-real-folder-number): New backquote
106         style.
107
108         * elmo-net.el (elmo-network-stream-type-spec-string): New
109         backquote style.
110         (elmo-network-stream-type-symbol): Ditto.
111         (elmo-network-stream-type-feature): Ditto.
112         (elmo-network-stream-type-function): Ditto.
113         (elmo-network-session-buffer): Ditto.
114
115         * elmo-util.el (elmo-file-cache-expand-path): New backquote style.
116         (elmo-file-cache-status, elmo-file-cache-path): Ditto.
117         (elmo-make-file-cache, elmo-string, elmo-get-passwd): Ditto.
118         (elmo-bind-directory, elmo-set-work-buf): Ditto.
119
120         * elmo.el (elmo-folder-send): New backquote style.
121
122 2008-02-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
123
124         * pldap.el (ldap-static-if): New backquote style.
125         (ldap/ldif-safe-string-p): Ditto.
126         (ldap/ldif-insert-field): Ditto.
127
128         * elmo-version.el (elmo-version): Up to 2.15.6.
129
130 2008-01-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
131
132         * elmo-imap4.el (elmo-folder-list-messages-plugged): Don't include
133         messages with \Deleted flag.
134         (elmo-folder-delete-messages-plugged): Ask before sending expunge
135         command if there are messages with \Deleted flag.
136
137 2007-04-24  Yoichi NAKAYAMA  <yoichi@geiin.org>
138
139         * elmo-pop3.el (elmo-pop3-auth-apop): Use more strict regexp.
140         http://seclists.org/bugtraq/2007/Apr/0018.html
141         (Suggested by Tatsuya Kinoshita)
142
143 2007-04-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
144
145         * elmo-imap4.el (elmo-folder-delete): Don't call close for mailbox
146         with \Noselect attribute.
147
148 2007-04-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
149
150         * elmo-imap4.el (elmo-folder-list-subfolders): Fix handling of
151         hierarchical folder structure with UW-imapd.
152
153 2007-02-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
154
155         * elmo-imap4.el (elmo-imap4-clear-login): Don't send LOGIN command
156         when the LOGINDISABLED capability is advertised.
157
158 2007-01-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
159
160         * elmo-msgdb.el (elmo-msgdb-extra-fields): Make it non-destructive.
161
162 2007-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
163
164         * elmo-shimbun.el (elmo-shimbun-update-overview): Add argnument
165         `entity'.
166         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview' only
167         if the message entity is exists.
168
169 2007-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
170
171         * elmo-util.el (elmo-msgdb-insert-file-header): Call
172         `elmo-delete-cr-buffer'.
173
174         * elmo-localdir.el (elmo-message-fetch-internal): Use
175         `insert-file-contents-as-raw-text' instead of
176         `insert-file-contents-as-binary'.
177
178         * elmo-maildir.el (elmo-map-message-fetch): Ditto.
179
180 2006-12-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
181
182         * elmo-imap4.el (elmo-network-initialize-session): Check to
183         retrieve a whole greeting message.
184
185 2006-11-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
186
187         * elmo-flag.el (elmo-folder-commit): Encode `.minfo' at save.
188
189 2006-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
190
191         * elmo-util.el (elmo-safe-plist-get): New alias or macro.
192         (elmo-progress-notify): Use it instead of `plist-get'.
193
194 2006-11-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
195
196         * elmo.el (elmo-generic-folder-append-messages): Remove unused
197         variable `table'.
198
199 2006-11-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
200
201         * elmo-pipe.el (elmo-folder-set-plugged): Define.
202
203 2006-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
204
205         * elsp-bsfilter.el (elmo-spam-bsfilter-use-remote): New user option.
206         (elmo-spam-list-spam-messages): Check it option.
207
208 2006-11-08  Tetsurou Okazaki  <okazaki@be.to>
209
210         * elmo-util.el (elmo-with-progress-display): Return the value
211         of the last form in `body'.
212
213 2006-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
214
215         * elmo-util.el (elmo-progress-start): Accept nil for `total'.  Set
216         `elmo-progress-counter' as t when a query callback returns nil.
217         (elmo-progress-clear): New function.
218         (elmo-progress-done): Split into `elmo-progress-clear'.
219         (elmo-progress-notify): Update a total slot when it is nil.
220         (elmo-with-progress-display): Call `elmo-progress-clear' in
221         unwind-protect and move calling `elmo-progress-done' to outside.
222
223         * elmo-imap4.el (elmo-imap4-find-next-line): Call
224         `elmo-progress-notify' with :total parameter instead of
225         `elmo-progress-counter-set-total'.
226
227 2006-11-07  Tetsurou Okazaki  <okazaki@be.to>
228
229         * elmo-util.el (elmo-cache-expire-by-age): Add docstring.
230         Make it interactive.
231         (elmo-progress-start): Avoid updating `elmo-progress-counter'
232         when a query callback returns nil.  Return a progress counter
233         instead of t whenever a start callback was called.
234
235 2006-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
236
237         * elmo-imap4.el (elmo-imap4-session-capable-p): New macro.
238         (elmo-imap4-send-command): Use it.
239         (elmo-network-initialize-session): Ditto.
240         (elmo-network-setup-session): Ditto.
241         (elmo-folder-msgdb-create-plugged): Ditto.
242
243 2006-11-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
244
245         * elmo-util.el (elmo-progress-done): Fix a miss refer to
246         `elmo-progress-counter'.
247
248 2006-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
249
250         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Abolish.
251         (elsp-bsfilter-list-spam-filter): New function.
252         (elsp-bsfilter-start-list-spam): Ditto.
253         (elsp-bsfilter-read-list-spam): Ditto.
254         (elmo-spam-list-spam-messages): Use async process to display
255         progress message by each message.
256
257 2006-11-03  Yoichi NAKAYAMA  <yoichi@geiin.org>
258
259         * elmo-spam.el (elmo-spam-process-messages-as-mbox): Fix problem
260         of flushing previously inserted message contents.
261
262         * elmo-imap4.el (elmo-folder-search): Fix return value.
263
264 2006-11-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
265
266         * elmo-imap4.el (elmo-imap4-find-next-line): Check whether a label
267         of reporter is enable or not.
268
269 2006-10-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
270
271         * elmo-util.el (elmo-list-bigger-diff): Abolish.
272         (elmo-display-progress): Ditto.
273         (elmo-progress-counter-alist): Ditto.
274         (elmo-progress-set): Ditto.
275         (elmo-progress-clear): Ditto.
276         (elmo-progress-counter-all-value): Rename to
277         `elmo-progress-counter-total'.
278         (elmo-progress-counter-format): Rename to
279         `elmo-progress-counter-action'.
280         (elmo-progress-counter): New internal variable.
281         (elmo-progress-callback-function): Ditto.
282         (elmo-progress-counter-label): New function.
283         (elmo-progress-counter-set-total): Ditto.
284         (elmo-progress-counter-set-action): Ditto.
285         (elmo-progress-call-callback): Ditto.
286         (elmo-progress-start): Ditto.
287         (elmo-progress-done): Ditto.
288         (elmo-progress-notify): Rewrite.
289         (elmo-with-progress-display): Remove first argument
290         `condition'. Add optional argument `var' in `spec'.
291
292         * elmo-vars.el (elmo-display-progress-threshold): Abolish.
293         (elmo-display-retrieval-progress-threshold): Ditto.
294         (elmo-inhibit-display-retrieval-progress): Ditto.
295
296         * Replace all pair of `elmo-progress-set' and
297         `elmo-progress-clear' into `elmo-with-progress-display'.
298
299         * Replace to call `elmo-display-progress' into pair of
300         `elmo-progress-notify' and `elmo-with-progress-display'.
301
302         * elmo-version.el (elmo-version): Up to 2.15.5.
303
304 2006-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
305
306         * elmo-imap4.el (elmo-imap4-arrival-filter): Use `case' instead of
307         `cond'.
308
309 2006-10-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
310
311         * elmo-imap4.el (elmo-imap4-arrival-filter): Call delete-region in
312         cleanup-forms [wl:14027].
313
314 2006-10-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
315
316         * elmo-flag.el (elmo-global-flag-set-internal): Use
317         `elmo-copy-file' by priority when the message is a file.
318
319 2006-10-01  Yoichi NAKAYAMA  <yoichi@geiin.org>
320
321         * elmo.el: Fix typo: disptch -> dispatch.
322
323 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
324
325         * elmo.el (elmo-file-tag): New class.
326         (elmo-append-messages-disptch-table): New constant.
327         (elmo-folder-type-p): New function.
328         (elmo-folder-append-messages): Redefine as function.
329
330         * elmo-null.el (elmo-folder-append-messages): Renamed from
331         `elmo-folder-append-messages'.
332
333         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
334         (elmo-folder-append-messages-*-maildir): Renamed from
335         `elmo-folder-append-messages'.
336
337         * elmo-localdir.el (elmo-localdir-folder): Inherit
338         `elmo-file-tag'.
339         (elmo-folder-append-messages-*-localdir): Renamed from
340         `elmo-folder-append-messages'.
341
342         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
343         from `elmo-folder-append-messages'.
344
345         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
346         `elmo-folder-append-messages'.
347
348         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
349         function.
350         (elmo-folder-append-messages-*-filter): Ditto.
351
352         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
353
354         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
355         (elmo-folder-append-messages-*-pipe): Renamed from
356         `elmo-folder-append-messages'.
357
358         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
359
360         * elmo-file.el (elmo-file-folder): Ditto.
361
362         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
363
364         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
365         from `elmo-folder-append-messages'
366
367 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
368
369         * elmo-map.el (elmo-location-map-setup): Change an argument
370         `locations' to optional.
371         (elmo-location-map-clear): Abolish.
372         (elmo-folder-clear): Follow the API change.
373
374         * elmo-pop3.el (elmo-folder-clear): Ditto.
375
376         * elmo-pop3.el (toplevel): Require elmo-map.
377         (elmo-pop3-folder): Inherit elmo-location-map and abolish
378         location-alist slot (All other related portions are changed).
379         (elmo-pop3-folder-use-uidl): New function.
380         (elmo-folder-msgdb-create): Don't sort message entities.
381         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
382         (elmo-pop3-number-to-size): Convert return value to number.
383         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
384         working buffer.
385
386         * elmo-map.el: Use `location-map' as a variable name for instance
387         instead of `mapper'.
388         (elmo-location-map-setup): Return location alist.
389         (elmo-location-map-update): Ditto.
390
391 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
392
393         * elmo-map.el (elmo-location-map): New class; split location and
394         number mapping from elmo-map-folder (All other related portions
395         are changed).
396
397         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
398         change.
399
400         * elmo-version.el (elmo-version): Up to 2.15.4.
401
402 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
403
404         * elmo-vars.el (elmo-use-hardlink): New user option.
405
406         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
407         `elmo-use-hardlink'.
408
409         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
410         killed-list.
411         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
412         instead of `*-internal'. Use `elmo-with-progress-display'.
413
414 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
415
416         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
417         `elmo-spam-process-messages-as-mbox'.
418
419         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
420
421 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
422
423         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
424         argument BUFFER of `call-process'.
425
426 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
427
428         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
429         args.
430         (elsp-bsfilter-list-spam-files): Ditto.
431
432 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
433
434         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
435         (elmo-spam-bsfilter-max-messages-per-process): New use option.
436         (elmo-spam-bsfilter-debug): Fix a group.
437         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
438         `--homedir'.
439         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
440         (elsp-bsfilter-list-spam-files): New function.
441         (elmo-spam-list-spam-messages): Define.
442         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
443         (elmo-spam-bsfilter-register-messages): New function.
444         (elmo-spam-register-spam-messages): Define.
445         (elmo-spam-register-good-messages): Ditto.
446
447         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
448
449         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
450         `nconc' and `consp'.
451
452 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
453
454         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
455         hash table to test whether a location is exists.
456
457 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
458
459         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
460         even if some error occurred.
461
462         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
463         meaningless unwind-protect.
464
465         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
466         start-number correctly.
467         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
468         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
469
470 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
471
472         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
473         (elmo-folder-initialize): Use it.
474         (elmo-global-flag-replace-referrer): New function.
475
476         * elmo.el (toplevel): Added autoload setting for
477         `elmo-global-flag-replace-referrer'.
478         (elmo-folder-rename): Rewrite the last change use
479         `elmo-global-flag-replace-referrer'.
480
481         * elmo-pipe.el (elmo-folder-rename): Call
482         `elmo-global-flag-replace-referrer'.
483
484 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
485
486         * elmo.el (elmo-folder-rename): Set meta data for global flags
487         follow the rename.
488
489 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
490
491         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
492         as 'not-loaded.
493         (elmo-folder-close): Ditto.
494         (elmo-filter-folder-number-list-loaded-p): New function.
495         (elmo-filter-folder-number-list): Check whether loaded or not.
496         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
497         of `elmo-filter-folder-number-list-internal'.
498         (elmo-folder-delete-messages): Ditto.
499         (elmo-folder-length): Check whether number-list is loaded or not.
500
501 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
502
503         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
504         field `real field' into each element of list.
505         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
506         (elmo-msgdb-message-entity-field): Ditto.
507         (modb-entity-ml-info-real-fields): New function.
508
509         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
510
511         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
512         `elmo-msgdb-extra-fields'.
513
514 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
515
516         * elmo-util.el (elmo-passwd-alist-load): Move point to min
517         position before read.
518
519 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
520
521         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
522         (elmo-global-flags-initialize): Ditto.
523
524 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
525
526         * elmo-archive.el (toplevel): Don't require emu, std11
527         and elmo-localdir.
528
529         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
530         definition.
531
532 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
533
534         * elmo.el (elmo-folder-confirm-appends): Display folder name.
535
536 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
537
538         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
539         literals.
540
541 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
542
543         * elmo-maildir.el (elmo-maildir-list-location): Reduce
544         `elmo-get-last-modification-time' call.
545
546 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
547
548         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
549         expression.
550         (elmo-maildir-set-mark): Ditto.
551         (elmo-maildir-delete-mark): Ditto.
552
553 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
554
555         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
556         optional argument `separators'.
557
558 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
559
560         * elmo.el (cache-changed): Abolish.
561         (status-changed): New signal.
562         (elmo-message-killed-p): New generic function and define for
563         elmo-folder.
564         (elmo-folder-recover-messages): Ditto.
565         (elmo-message-set-cached): Emit signal `status-changed' instead of
566         `cache-changed'.
567         (elmo-message-status): New macro.
568         (elmo-message-status-folder): Ditto.
569         (elmo-message-status-number): Ditto.
570         (elmo-message-status-set-flags): Ditto.
571         (elmo-message-status-set-killed): Ditto.
572         (elmo-message-status-flags): New function.
573         (elmo-message-status-cached-p): Ditto.
574         (elmo-message-status-killed-p): Ditto.
575
576         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
577         `status-changed' instead of `cache-changed'.
578         (elmo-folder-recover-messages): Define.
579         (elmo-message-killed-p): Ditto.
580
581         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
582         `status-changed' instead of `cache-changed'.
583
584         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
585         (elmo-message-killed-p): Define.
586         (elmo-folder-recover-messages): Ditto.
587
588         * elmo-version.el (elmo-version): Up to 2.15.3.
589
590 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
591
592         * elmo-signal.el (elmo-signal-bindings): Use cons to append
593         element into list.
594         (elmo-define-signal-handler): Add docstring.
595         (elmo-define-signal-filter): Ditto.
596
597         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
598
599 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
600
601         * elmo-util.el (elmo-flatten): Don't use recursive call.
602
603         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
604         assignment.
605         (elmo-folder-message-make-temp-files): Use `number-to-string'
606         instead of `int-to-string'.
607
608 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
609
610         * elmo-search.el (elmo-folder-delete-messages): Define.
611
612 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
613
614         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
615         customization type.
616         (elmo-mailing-list-count-spec-list): Ditto.
617
618         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
619         for `list-id'.
620
621 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
622
623         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
624         handling.
625
626 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
627
628         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
629         (elmo-mailing-list-count-spec-list): Ditto.
630
631         * elmo-util.el (elmo-map-until-success): New function.
632         (elmo-string-match-substring): Ditto.
633         (elmo-find-list-match-value): Ditto.
634
635         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
636         Removed.
637         (modb-entity-extract-ml-info-from-subject): Ditto.
638         (modb-entity-extract-ml-info-from-return-path): Ditto.
639         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
640         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
641         (modb-entity-extract-ml-info-from-mailman): Ditto.
642         (modb-entity-extract-mailing-list-info-functions): Ditto.
643         (modb-entity-extract-mailing-list-info): Rewrite with
644         `elmo-find-list-match-value'.
645
646 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
647
648         * elmo-net.el (elmo-network-session-retry-count): New user option.
649         (elmo-network-session-buffer-name): New internal function.
650         (elmo-network-session-buffer-create): Ditto.
651         (elmo-network-open-session): Retry open network session
652         `elmo-network-session-retry-count' times.
653
654 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
655
656         * elmo-util.el (elmo-list-filter): Rewritten.
657
658 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
659
660         * elmo-util.el (elmo-string-member): Allow symbol element in list.
661
662 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
663
664         * elmo-search.el (elmo-make-search-engine): Use prefix
665         `elmo-search-' for require symbol instead of `else-'.
666         (elmo-search-engine-extprog): New class.
667         (elmo-search-engine-do-search): Remove nil from argument
668         list. Added argument pattern to evaluate element as function.
669         (elmo-search-engine-local-file): Derived from
670         `elmo-search-engine-extprog'.
671         (elmo-search-engine-create-message-entity): Check existance of file.
672         (elmo-search-engine-fetch-message): Ditto.
673         (elmo-search-namazu-index): Follow the API change.
674         (elmo-search-grep-target): Ditto.
675
676 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
677
678         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
679         characters of working buffer.
680
681         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
682         Does not bind `default-mime-charset'.
683         (elmo-msgdb-create-message-entity-from-buffer): Removed
684         unnecessary local bind.
685
686         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
687         function.
688         (modb-entity-extract-mailing-list-info-functions): Added it.
689
690 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
691
692         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
693         when number and message-id are non-nil.
694
695         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
696
697         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
698         conditional steatment.
699         (elmo-pop3-auth-apop): Likewise.
700         (elmo-network-authenticate-session): Likewise.
701
702 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
703
704         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
705         symbol `fill-column'.
706         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
707         decode field value.
708
709         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
710         (elmo-decoded-field-body): Ditto.
711
712 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
713
714         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
715         `tokens' to `params'.
716
717 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
718
719         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
720         working buffer.
721
722 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
723
724         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
725         decide index.
726
727 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
728
729         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
730         Set default value as nil.
731         (toplevel): Register search engines by
732         `elmo-search-register-engine' if there are not defined.
733
734         * elmo.el (autoload): Added autoload setting for
735         `elmo-search-register-engine'.
736
737 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
738
739         * elmo.el (toplevel): `[' is redefined as the prefix of the search
740         folder instead of nmz folder.
741         (elmo-nmz-default-index-path): Added obsolete variable setting.
742         (elmo-nmz-index-alias-alist): Ditto.
743         (elmo-nmz-use-drive-letter): Ditto.
744
745         * elmo-search.el (elmo-search-register-engine): New function.
746
747         * elmo-nmz.el: Removed.
748
749         * elmo-version.el (elmo-version): Up to 2.15.2.
750
751 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
752
753         * elmo-search.el: New file.
754
755 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
756
757         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
758         condition `larger' and `smaller'.
759
760 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
761
762         * elmo-util.el (elmo-safe-filename): Rewrite to replace
763         `"' (double quote) into "_Q_".
764
765 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
766
767         * elmo-net.el (elmo-net-quote-chars): Abolish.
768         (elmo-net-format-quoted): Ditto.
769
770 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
771
772         * elmo.el (elmo-get-folder-function): New variable.
773         (elmo-get-folder): New function.
774         (elmo-folder-rename): Call `elmo-make-folder' with specified
775         mime-charset.
776
777         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
778         `elmo-make-folder'.
779         (elmo-split-subr): Ditto.
780
781         * elmo-multi.el (elmo-folder-initialize): Ditto.
782
783         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
784
785         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
786         (elmo-flag-get-folder): Ditto.
787
788         * elmo-filter.el (elmo-folder-initialize): Ditto.
789
790         * elmo-access.el (elmo-folder-initialize): Ditto.
791         (elmo-access-folder-update-children): Ditto.
792
793         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
794         (elmo-dop-queue-flush): Ditto.
795         (elmo-folder-append-buffer-dop-delayed): Ditto.
796         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
797         mime-charset.
798
799         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
800         instead of `elmo-make-folder'.
801         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
802         destination folder instead of send `elmo-folder-rename-internal'.
803
804         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
805         slot of subfolder instead of create it.
806
807 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
808
809         * elmo-util.el (elmo-collect-separators): New function.
810         (elmo-collect-separators-internal): Ditto.
811         (elmo-collect-trail-separators): Ditto.
812         (elmo-parse-separated-tokens): Ditto.
813         (elmo-parse-separated-tokens-internal): Ditto.
814         (elmo-quote-syntactical-element): Ditto.
815
816         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
817         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
818
819         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
820         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
821         (elmo-nntp-folder-list-subfolders): Quote a user name.
822
823         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
824         (elmo-net-parse-network): Abolish.
825         (elmo-net-folder-set-parameters): New function.
826         (elmo-folder-initialize): Follow the above change.
827
828         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
829         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
830         (elmo-folder-list-subfolders): Use
831         `elmo-quote-syntactical-element' instead of
832         `elmo-net-format-quoted' to quote mailbox and user name.
833
834 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
835
836         * elmo-util.el (elmo-token-valid-p): New function.
837         (elmo-parse-token): Add optional argument `requirement'.
838         (elmo-parse-prefixed-element): Likewise.
839
840         * elmo-net.el (elmo-net-quote-chars): Renamed from
841         `elmo-net-quote-chars-regexp'.
842         (elmo-net-format-quoted): Add optional argument `extra-chars'.
843
844         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
845         by info document. Check token `uidl' is started an alphabet.
846
847         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
848         by info document. Check token `user' is started an alphabet.
849
850         * elmo-imap4.el (elmo-folder-initialize): Ditto.
851         (elmo-folder-list-subfolders): Quote user.
852
853 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
854
855         * elmo-util.el (elmo-quoted-specials-list): New constant.
856         (elmo-quoted-token): New function.
857
858         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
859         (elmo-net-format-quoted): New function.
860         (elmo-net-parse-network): Ditto.
861         (elmo-folder-initialize): Use it.
862
863         * elmo-nntp.el (elmo-folder-initialize): Use
864         `elmo-net-parse-network' to parse network specification instead of
865         `elmo-folder-initialize#elmo-net'.
866
867         * elmo-pop3.el (elmo-folder-initialize): Ditto.
868
869         * elmo-imap4.el (elmo-folder-initialize): Ditto.
870         (elmo-folder-list-subfolders): Quote folder name by
871         `elmo-net-format-quoted'.
872
873 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
874
875         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
876         (elmo-folder-search): Use it.
877
878 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
879
880         * modb-standard.el (modb-standard-loaded-message-id): Use
881         `elmo-msgdb-message-entity-field'.
882
883 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
884
885         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
886         without filename.
887
888 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
889
890         * elmo-util.el (elmo-set-auto-coding): New function.
891         (elmo-object-load): Use it.
892
893 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
894
895         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
896         (elmo-time<): Define as alias of `elmo-time-less-p'.
897         (elmo-time-to-datevec): New function.
898
899         * elmo-date.el (elmo-time-to-days): New function.
900
901 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
902
903         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
904         is not cons cell.
905
906 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
907
908         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
909         parenthesis.
910
911         * elmo-util.el (elmo-map-recursive): New function.
912
913         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
914         (modb-entity-encode-string-recursive): Ditto.
915
916 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
917
918         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
919         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
920         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
921         compare sequence number when last modified time is nil.
922
923 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
924
925         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
926
927         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
928
929 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
930
931         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
932         modification time of the file.
933
934 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
935
936         * elmo-util.el (elmo-condition-optimize): Discriminated against
937         preserved fields, extra fields and the other weight.
938
939 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
940
941         * modb-entity.el (initialize-instance): Define.
942         (modb-entity-handler-mime-charset): New internal function.
943         (modb-standard-entity-set-field): Use it.
944         (elmo-msgdb-message-entity-field): Ditto.
945         (elmo-msgdb-message-entity-field): Ditto.
946
947         * modb.el (elmo-msgdb-match-condition): Rewrite with
948         `elmo-condition-match'.
949         (elmo-msgdb-match-condition-primitive): New function.
950
951         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
952         arguments `flags' and `numbers'.
953         (elmo-msgdb-match-condition-primitive): Abolished (merged to
954         `elmo-msgdb-message-match-condition').
955         (modb-buffer-entity-handler): New class.
956
957         * elmo.el (elmo-folder-search): Optimize condition to use
958         `elmo-condition-optimize'.
959         (elmo-message-buffer-match-condition): New function.
960         (elmo-message-match-condition): Use
961         `elmo-message-buffer-match-condition' instead of
962         `elmo-buffer-field-condition-match'.
963
964         * elmo-util.el (elmo-condition-match): New function.
965         (elmo-condition-optimize): Ditto.
966         (elmo-buffer-field-primitive-condition-match): Abolish.
967         (elmo-buffer-field-condition-match): Ditto.
968
969         * elmo-archive.el (elmo-archive-field-condition-match): Use
970         `elmo-message-buffer-match-condition' instead of
971         `elmo-buffer-field-condition-match'.
972
973 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
974
975         * elmo-flag.el (elmo-global-flags-initialize): Check the
976         existence of the flag directory.
977
978 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
979
980         * elmo-access.el (elmo-folder-initialize): Call
981         `elmo-multi-connect-signals'.
982
983         * elmo-pipe.el (elmo-folder-close): Define.
984
985         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
986         children folders.
987
988         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
989         with target folder.
990
991         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
992         `number'.
993
994         * elmo-multi.el (elmo-message-entity): Don't use return value of
995         `elmo-message-entity-set-number'.
996
997 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
998
999         * modb.el (modb-generic): Added slot `mime-charset'.
1000
1001         * modb-standard.el (modb-standard): Added slot `overview-handler'.
1002         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
1003         and `modb-entity-handler-dump-parameters'.
1004         (modb-standard-default-entity-handler): Abolish.
1005         (elmo-msgdb-message-entity-handler): Save created handler by
1006         instance slot.
1007
1008         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
1009         (modb-entity-handler-list-parameters): New method.
1010         (modb-entity-handler-equal-p): New function.
1011         (modb-entity-handler-dump-parameters): Ditto.
1012         (modb-entity-parse-address-string): Encode return value.
1013         (modb-entity-make-address-string): Decode argument value.
1014         (modb-entity-decode-string-recursive): New function.
1015         (modb-entity-encode-string-recursive): Ditto.
1016         (modb-standard-entity-normalizer): Set to encode field value.
1017         (modb-standard-entity-specializer): Follow the above change.
1018         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
1019         mime-charset of handler.
1020         (elmo-msgdb-message-entity-field): Ditto.
1021         (elmo-msgdb-copy-message-entity): Fixed reference to internal
1022         structure.
1023         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
1024
1025         * elmo.el (elmo-folder): Added slot `mime-charset'.
1026         (elmo-make-folder): Added argument `mime-charset'.
1027         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
1028         `mime-charest'.
1029
1030         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
1031         (elmo-make-msgdb): Likewise.
1032
1033         * elmo-internal.el (elmo-internal-folder-initialize): Call
1034         `luna-make-entity' with :mime-charset parameter.
1035
1036 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
1037
1038         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
1039         encoded words in `from' and `subject' field.
1040
1041 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1042
1043         * modb.el (elmo-msgdb-message-field): Add argument `type'.
1044         (elmo-msgdb-match-condition): Get handler from entity instead of
1045         msgdb.
1046
1047         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
1048         (modb-standard-load-entity): Treat new file format.
1049         (modb-standard-save-entity-1): Save as new file format.
1050         (modb-standard-save-entity): Split messages into section here.
1051         (elmo-msgdb-message-field): Follow the API change.
1052         (modb-standard-default-entity-handler): New internal variable.
1053         (elmo-msgdb-message-entity-handler): Define.
1054
1055         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1056         to `elmo-vars.el'.
1057         (modb-entity-field-extractor-alist): New user option.
1058         (elmo-msgdb-message-entity-field): Removed argument `decode' and
1059         added argument `type'.
1060         (elmo-msgdb-copy-message-entity): Add optional argument
1061         `make-handler'.
1062         (modb-set-field-converter): New function.
1063         (modb-convert-field-value): Ditto.
1064         (modb-entity-string-decoder): Ditto.
1065         (modb-entity-string-encoder): Ditto.
1066         (modb-entity-parse-date-string): Ditto.
1067         (modb-entity-make-date-string): Ditto.
1068         (modb-entity-mime-decoder): Ditto.
1069         (modb-entity-mime-encoder): Ditto.
1070         (modb-entity-address-list-decoder): Ditto.
1071         (modb-entity-address-list-encoder): Ditto.
1072         (modb-entity-parse-address-string): Ditto.
1073         (modb-entity-make-address-string): Ditto.
1074         (modb-entity-create-field-indices): Ditto.
1075         (modb-legacy-entity-field-slots): New constant.
1076         (modb-legacy-entity-field-indices): Ditto.
1077         (modb-legacy-entity-normalizer): New variable.
1078         (modb-legacy-entity-specializer): Ditto.
1079         (modb-legacy-entity-field-index): New macro.
1080         (modb-legacy-entity-set-field): New function.
1081         (modb-legacy-make-message-entity): Rewrite.
1082         (elmo-msgdb-create-message-entity-from-buffer): Use
1083         `elmo-msgdb-get-references-from-buffer'. Use
1084         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
1085         Use `modb-legacy-entity-set-field' instead of
1086         `elmo-msgdb-message-entity-set-field'.
1087         (elmo-msgdb-message-entity-field): Rewrite.
1088         (elmo-msgdb-message-entity-set-field): Ditto.
1089         (elmo-msgdb-copy-message-entity): Make new entity by
1090         `make-handler' if it specified.
1091         (elmo-msgdb-message-match-condition): Define a method of
1092         `modb-entity-handler' and follow the API change.
1093         (modb-standard-entity-handler): New class.
1094         (modb-entity-extract-ml-info-from-x-sequence): New function.
1095         (modb-entity-extract-ml-info-from-subject): Ditto.
1096         (modb-entity-extract-ml-info-from-return-path): Ditto.
1097         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
1098         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
1099         (modb-entity-extract-mailing-list-info): Ditto.
1100         (modb-entity-extract-mailing-list-info-functions): New variable.
1101
1102         * elmo.el (elmo-message-field): Add optional argument `type'.
1103
1104         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1105         from `modb-entity.el'.
1106
1107         * elmo-util.el (elmo-object-load): Decode by coding-system from
1108         `set-auto-coding-function'.
1109         (elmo-object-save): Use `detect-mime-charset-region' and add
1110         coding cookie if encode.
1111         (elmo-msgdb-get-references-from-buffer): New function.
1112         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
1113
1114         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
1115
1116         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
1117         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
1118         instead of `shimbun-make-header' and follow the API change.
1119         (elmo-shimbun-update-overview): Follow the API change.
1120         (elmo-map-folder-list-message-locations): Ditto.
1121
1122         * elmo-pipe.el (elmo-message-field): Ditto.
1123
1124         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
1125         Ditto.
1126
1127         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1128
1129         * elmo-multi.el (elmo-message-field): Ditto.
1130
1131         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
1132         (elmo-msgdb-sort-by-date): Ditto.
1133         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
1134         `elmo-message-entity-field'.
1135         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
1136         change.
1137         (elmo-msgdb-overview-entity-get-from): Ditto.
1138         (elmo-msgdb-overview-entity-get-subject): Ditto.
1139         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1140         (elmo-msgdb-overview-entity-get-date): Ditto.
1141         (elmo-msgdb-overview-entity-get-to): Ditto.
1142         (elmo-msgdb-overview-entity-get-cc): Ditto.
1143
1144         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1145         (elmo-mime-collect-message/partial-pieces): Ditto.
1146
1147         * elmo-filter.el (elmo-message-field): Ditto.
1148
1149         * elmo-date.el (elmo-datevec-to-time): New function.
1150         (elmo-time-parse-date-string): Ditto.
1151         (elmo-time-make-date-string): Ditto.
1152         (elmo-time<): Ditto.
1153
1154         * elmo-version.el (elmo-version): Up to 2.15.1.
1155
1156 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
1157
1158         * elmo-flag.el (elmo-global-flags-initialize): Don't include
1159         member of elmo-local-flags.
1160
1161 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
1162
1163         * elmo-version.el (elmo-version): Up to 2.15.0.
1164
1165 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1166
1167         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
1168         `ignore-msgdb' is non-nil.
1169
1170 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1171
1172         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
1173         (elmo-condition-in-msgdb-p): Ditto.
1174         (elmo-file-field-primitive-condition-match): Ditto.
1175         (elmo-file-field-condition-match): Ditto.
1176
1177         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
1178
1179 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1180
1181         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
1182         subdirectories here.
1183         (elmo-global-flags-initialize): New function.
1184
1185         * elmo.el (toplevel): Added autoload setting for
1186         `elmo-global-flags-initialize'.
1187
1188 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
1189
1190         * elmo.el (message-number-changed): Define new signal.
1191         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
1192         message-number-changed signal.
1193         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1194         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1195         Respect `elmo-pack-number-check-strict'.
1196
1197 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1198
1199         * elmo-signal.el (elmo-connect-signal): Document.
1200         (elmo-emit-signal): Ditto.
1201         (elmo-emit-signal): It should pass source argument to filter and
1202         handler, not slot-source.
1203
1204 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1205
1206         * modb.el (elmo-msgdb-update-entity): New API and define generic
1207         implement.
1208
1209         * modb-standard.el (elmo-msgdb-update-entity): Define.
1210
1211         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
1212         API and define generic implement.
1213
1214         * elmo.el (update-overview): New singnal.
1215
1216         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
1217         `elmo-msgdb-update-entity' and emit signal `update-overview'.
1218         (elmo-message-entity-parent): Define.
1219
1220         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
1221         `update-overview'.
1222
1223         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
1224
1225         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
1226
1227 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
1228
1229         * elmo.el (elmo-folder-synchronize): Sort the return value of
1230         `elmo-list-diff'.
1231
1232         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
1233         list.
1234
1235 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1236
1237         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
1238         `default-enable-multibyte-characters'.
1239         (elmo-object-load): Use `with-temp-buffer' instead of
1240         `elmo-set-work-buf'.
1241         (elmo-object-save): Ditto.
1242         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
1243         `elmo-set-work-buf'.
1244         (elmo-decoded-field-body): Ditto.
1245
1246         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
1247
1248         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
1249         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
1250
1251         * elmo-version.el (elmo-version): Up to 2.13.3.
1252
1253 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
1254
1255         * elmo-util.el (elmo-list-diff): Fix the last change.
1256         Reverse order of result lists.
1257
1258 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
1259
1260         * modb-standard.el (elmo-msgdb-set-flag): Use
1261         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
1262         (elmo-msgdb-unset-flag): Ditto.
1263
1264         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
1265         `elmo-list-diff'.
1266
1267         * elmo-util.el (elmo-list-diff): Rewrite.
1268         (elmo-list-diff-nonsortable): New function.
1269
1270 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
1271
1272         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
1273         `elmo-multibypte-buffer-name'.  All referers are updated.
1274
1275 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1276
1277         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
1278         (elmo-mime-entity-fragment-p): New function.
1279         (mime-elmo-buffer-entity): Added slot `reassembled'.
1280         (elmo-message-mime-entity): Added 4th argument `reassemble'.
1281         (elmo-message-mime-entity-internal): New function (renamed from
1282         `elmo-message-mime-entity').
1283         (elmo-mime-inherit-field-list-from-enclosed): New constant.
1284         (elmo-mime-make-reassembled-mime-entity): New function.
1285         (elmo-message-reassembled-mime-entity): Ditto.
1286         (elmo-mime-collect-message/partial-pieces): Ditto.
1287
1288 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1289
1290         * elmo.el (elmo-message-fetch-string): Disable multibyte.
1291
1292         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
1293         (elmo-with-enable-multibyte): New macro.
1294
1295         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
1296
1297 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1298
1299         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
1300         argument `number'.
1301         (elmo-filter-connect-signals): Follow the above change.
1302
1303 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
1304
1305         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
1306
1307         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
1308         that only the first flag is used.
1309
1310 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1311
1312         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
1313         if available.
1314
1315 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1316
1317         * elmo-signal.el: New file.
1318
1319         * elmo.el (toplevel): Require elmo-signal.
1320         (flag-changing, flag-changed, cache-changed): New signal.
1321         (elmo-folder): Remove slog `handlers'.
1322         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1323         `elmo-folder-notify-event'.
1324         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1325         (elmo-folder-unset-flag): Ditto.
1326         (elmo-event-handler): Abolish.
1327         (elmo-event-handler-flag-changed): Ditto.
1328         (elmo-event-handler-cache-changed): Ditto.
1329         (elmo-folder-add-handler): Ditto.
1330         (elmo-folder-remove-handler): Ditto.
1331         (elmo-folder-notify-event): Ditto.
1332
1333         * elmo-pipe.el (toplevel): Require elmo-signal.
1334         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1335         (elmo-pipe-connect-signals): New function.
1336         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1337         (elmo-folder-set-flag): Ditto.
1338         (elmo-folder-unset-flag): Ditto.
1339         (elmo-message-set-cached): Ditto.
1340
1341         * elmo-multi.el (toplevel): Require elmo-signal.
1342         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1343         (elmo-multi-connect-signals): New function.
1344         (elmo-multi-map-numbers): Ditto.
1345         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1346         (elmo-message-fetch): Ditto.
1347         (elmo-folder-set-flag): Ditto.
1348         (elmo-folder-unset-flag): Ditto.
1349
1350         * elmo-filter.el (toplevel): Require elmo-signal.
1351         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1352         (elmo-filter-connect-signals): New function.
1353         (elmo-filter-add-flag-count): Ditto.
1354         (elmo-message-fetch): Does not call
1355         `elmo-filter-folder-countup-message-flags' and
1356         `elmo-folder-notify-event'.
1357         (elmo-message-set-cached): Ditto.
1358         (elmo-folder-set-flag): Ditto.
1359         (elmo-folder-unset-flag): Ditto.
1360
1361         * elmo-version.el (elmo-version): Up to 2.13.2.
1362
1363 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1364
1365         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1366         `flags'.
1367
1368 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1369
1370         * elmo-filter.el (elmo-message-set-cached): Call
1371         `elmo-folder-notify-event' with event `cache-changed'.
1372
1373         * elmo-multi.el (elmo-message-set-cached): Ditto.
1374
1375         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1376
1377 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1378
1379         * elmo.el (elmo-folder-encache): Abolish.
1380
1381 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1382
1383         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1384         (elmo-folder-next-message-number-dop): Return appropriate negative
1385         integer.
1386
1387 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1388
1389         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1390         clearing pending operations.
1391         (elmo-folder-next-message-number-dop): Return appropriate negative
1392         integer.
1393
1394 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1395
1396         * elmo.el (toplevel): Added autoload setting for `md5'.
1397         (elmo-msgdb-path-encode-threshold): New user option.
1398         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1399         longer than `elmo-msgdb-path-encode-threshold'.
1400
1401         * elmo-flag.el (elmo-global-mark-migrate): Use
1402         `elmo-folder-expand-msgdb-path' instead of
1403         `elmo-folder-msgdb-path'.
1404
1405 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1406
1407         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1408         element of the difference is nil.
1409
1410 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1411
1412         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1413         to the check logic of file systems which are weak in colon character.
1414
1415 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1416
1417         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1418
1419 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1420
1421         * elmo-maildir.el (elmo-maildir-move-file): New function.
1422         (elmo-folder-append-buffer): Use it.
1423         (elmo-folder-append-messages): Ditto.
1424         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1425
1426         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1427         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1428
1429         * elmo-maildir.el (elmo-maildir-separator): New user option.
1430         (elmo-maildir-adjust-separator): New macro.
1431         (elmo-maildir-list-location): Use it.
1432         (elmo-maildir-update-current): Ditto.
1433         (elmo-maildir-set-mark): Ditto.
1434         (elmo-maildir-delete-mark): Ditto.
1435         (These changes are based on Hiroya Murata's patch [wl: 13437])
1436
1437 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1438
1439         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1440
1441 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1442
1443         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1444         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1445         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1446
1447 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1448
1449         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1450         Use `with-temp-buffer'.
1451
1452 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1453
1454         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1455
1456         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1457         `wl-read-search-condition').
1458         (elmo-read-search-condition-internal): Likewise.
1459
1460         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1461         (elmo-flag-valid-p): New function.
1462         (elmo-folder-initialize): Check flag name is valid.
1463
1464 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1465
1466         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1467         delimiter to obtain root mailbox itself.
1468
1469 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1470
1471         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1472         type mismatch.
1473
1474 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1475
1476         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1477         as t.
1478
1479 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1480
1481         * elmo-shimbun.el (toplevel): Require cl at compile.
1482
1483         * elmo-nntp.el (toplevel): Ditto.
1484
1485         * elmo-nmz.el (toplevel): Ditto.
1486
1487         * elmo-multi.el (toplevel): Ditto.
1488
1489         * elmo-file.el (toplevel): Ditto.
1490
1491         * elmo-dop.el (toplevel): Ditto.
1492
1493         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1494
1495 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1496
1497         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1498         as nil.
1499
1500         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1501         size of elmo-message-fetch-internal is 0 byte.
1502
1503 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1504
1505         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1506
1507 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1508
1509         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1510         always plugged.
1511
1512 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1513
1514         * elmo-maildir.el (elmo-map-message-fetch): Call
1515         `elmo-map-folder-set-flag'.
1516
1517         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1518         (elmo-message-fetch): Merge from
1519         `elmo-message-fetch-with-cache-process'.
1520
1521         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1522         (elmo-message-fetch): Define.
1523
1524         * elmo-nntp.el (elmo-message-fetch): Renamed from
1525         `elmo-message-fetch-with-cache-process'.
1526
1527         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1528         (elmo-message-fetch): Define.
1529
1530         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1531         search-key.
1532
1533         * elmo-shimbun.el (shimbun-mua-search-id): Use
1534         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1535         (elmo-shimbun-folder-shimbun-header): Ditto.
1536         (elmo-shimbun-get-headers): Ditto.
1537         (elmo-shimbun-update-overview): Ditto.
1538
1539         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1540
1541         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1542         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1543
1544 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1545
1546         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1547         message is cached.
1548         (elmo-message-fetch-string): Fixed argument.
1549
1550 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1551
1552         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1553         exchange order of arguments `section' and `unread'.
1554         (elmo-message-encache): Follow the API change.
1555         (elmo-message-match-condition): Ditto.
1556         (elmo-generic-folder-append-messages): Ditto.
1557         (elmo-message-fetch-string): New function.
1558
1559         * elmo-split.el (elmo-split-subr): Ditto.
1560
1561         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1562
1563         * elmo-pipe.el (elmo-message-fetch): Ditto.
1564
1565         * elmo-multi.el (elmo-message-fetch): Ditto.
1566
1567         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1568
1569         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1570
1571         * elmo-filter.el (elmo-message-fetch): Ditto.
1572
1573         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1574
1575         * elmo-imap4.el (mime-imap-location-section-body): Use
1576         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1577         follow the API change.
1578
1579 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1580
1581         * elmo-access.el: New file.
1582
1583         * elmo-null.el: Ditto.
1584
1585         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1586
1587 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1588
1589         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1590         (elmo-network-session): New attribute `last-accessed'.
1591         (elmo-network-get-session): Discard network cache if elapsed time
1592         since last-accessed is larger than elmo-network-session-idle-timeout.
1593
1594 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1595
1596         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1597         and added `number', `require-entireness'.
1598         (elmo-find-fetch-strategy): Rewrite.
1599         (elmo-message-fetch): Unset `unread' flag when argument unread is
1600         non-nil.
1601
1602         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1603
1604         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1605         (elmo-message-fetch): Notify event `flag-changed'.
1606
1607         * elmo-pipe.el: Likewise.
1608
1609         * elmo-mime.el (elmo-mime-entity): New class.
1610         (elmo-mime-entity-display-p): New generic function.
1611         (elmo-mime-entity-display): Ditto.
1612         (elmo-mime-entity-display-as-is): Ditto.
1613         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1614         elmo-mime-entity.
1615         (elmo-make-mime-message-location): Removed.
1616         (elmo-mime-message-display): Ditto.
1617         (elmo-mime-display-as-is): Ditto.
1618         (elmo-message-mime-entity): New function.
1619
1620         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1621
1622         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1623         change.
1624         (elmo-message-fetch): Re-count flagged message number and notify
1625         event `flag-changed'.
1626
1627         * elmo-version.el (elmo-version): Up to 2.13.1.
1628
1629 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1630
1631         * elmo-filter.el (elmo-message-field): Define.
1632         (elmo-message-set-field): Ditto.
1633
1634 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1635
1636         * elmo.el (elmo-message-set-cached): Call
1637         `elmo-folder-notify-event' with cache-changed.
1638         (elmo-event-handler-cache-changed): New generic function.
1639
1640 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1641
1642         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1643         instead of elmo-add-name-to-file.
1644         (elmo-folder-append-messages): Ditto.
1645
1646 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1647
1648         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1649
1650 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1651
1652         * elmo-version.el (elmo-version): Up to 2.13.0.
1653
1654         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1655         `auto'.
1656
1657         * modb-standard.el (modb-standard-economize-entity-size): Changed
1658         default value to `t'.
1659
1660         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1661         `standard'.
1662
1663         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1664         after parsing greeting string.
1665
1666 2004-11-23  Daishi Kato <daishi@axlight.com>
1667
1668         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1669         New user option.
1670         (elmo-spam-spamoracle-call): Use it.
1671
1672 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1673
1674         * elmo.el (elmo-message-accessible-p): Message in dop spool
1675         is accessible.
1676
1677 2004-11-23  Daishi Kato <daishi@axlight.com>
1678
1679         * elsp-spamoracle.el: New file.
1680
1681 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1682
1683         * elmo.el (elmo-message-flags-for-append): New function.
1684         (elmo-generic-folder-append-messages): Use it.
1685
1686         * elmo-split.el (elmo-split-subr): Ditto.
1687
1688         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1689         `flags' and use elmo-folder-append-buffer instead of
1690         write-region-as-binary.
1691         (elmo-dop-filter-pending-messages): New function.
1692         (elmo-folder-append-buffer-dop): Call
1693         elmo-dop-spool-folder-append-buffer with `flag'.
1694         (elmo-folder-set-flag-dop): Filter messages by
1695         elmo-dop-filter-pending-messages.
1696         (elmo-folder-unset-flag-dop): Ditto.
1697         (elmo-folder-append-buffer-dop-delayed): Use
1698         elmo-message-flags-for-append to get flags of the message and
1699         simplify.
1700
1701 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1702
1703         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1704
1705 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1706
1707         * elmo.el (elmo-folder): Added handlers slot.
1708         (elmo-event-handler): New class.
1709         (elmo-event-handler-flag-changed): New API.
1710         (elmo-folder-add-handler): New function.
1711         (elmo-folder-remove-handler): Ditto.
1712         (elmo-folder-notify-event): Ditto.
1713         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1714         `flag-changed'.
1715         (elmo-folder-unset-flag): Ditto.
1716
1717         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1718         (elmo-folder-unset-flag): Ditto.
1719
1720         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1721         (elmo-folder-unset-flag): Ditto.
1722
1723         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1724         (elmo-folder-unset-flag): Ditto.
1725
1726         * elmo-version.el (elmo-version): Up to 2.11.33.
1727
1728 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1729
1730         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1731
1732 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1733
1734         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1735
1736         * elmo-flag.el (elmo-folder-unset-flag): Define.
1737         (elmo-global-flag-detach): Do process when the flag is not target
1738         flag.
1739
1740 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1741
1742         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1743         variable.
1744         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1745
1746 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1747
1748         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1749         function.
1750         (elmo-folder-delete-messages): Detach messages before delete
1751         messages from target folder.
1752         (elmo-folder-detach-messages): Set updated number-list to slot.
1753
1754 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1755
1756         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1757
1758 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1759
1760         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1761
1762 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1763
1764         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1765         internal use only).
1766         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1767         not modified.
1768         (elmo-folder-delete-messages): Define.
1769         (elmo-folder-move-messages): Don't call
1770         `elmo-folder-detach-messages'.
1771         (elmo-folder-synchronize): Rewrite.
1772         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1773
1774         * elmo-util.el (elmo-last): New function.
1775         (elmo-set-list): Ditto.
1776         (elmo-number-set-delete-list): Ditto.
1777         (elmo-number-set-delete): Ditto.
1778
1779         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1780
1781         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1782         `elmo-folder-delete-messages' and don't delete location map.
1783         (elmo-folder-detach-messages): Define.
1784
1785         * elmo-imap4.el (elmo-folder-delete): Use
1786         `elmo-folder-delete-messages-internal' instead of
1787         `elmo-folder-delete-messages'.
1788
1789         * elmo-filter.el (elmo-folder-delete-messages): Call
1790         `elmo-folder-detach-messages'.
1791         (elmo-folder-detach-messages): Don't call
1792         `elmo-folder-detach-messages' for target folder.
1793
1794         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1795         message deletion is succeeded.
1796
1797         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1798
1799         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1800         from `elmo-folder-delete-messages'.
1801
1802         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1803
1804         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1805
1806         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1807
1808         * elmo-version.el (elmo-version): Up to 2.11.32.
1809
1810 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1811
1812         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1813         (elmo-global-flag-list): Added obsolete variable setting.
1814
1815         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1816
1817         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1818         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1819         `elmo-mime-display-header-analysis' is nil.
1820
1821         * elmo-flag.el (elmo-global-flags): Renamed from
1822         `elmo-global-flag-list' (All other related portions are changed).
1823         (elmo-local-flags): New variable.
1824         (elmo-local-flag-p): New function.
1825         (elmo-global-flag-set-internal): Cause an error when flag is not
1826         global.
1827
1828 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1829
1830         * elmo-util.el (elmo-concat-path): Treat empty path.
1831
1832 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1833
1834         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1835         field-or-fields).
1836         (elmo-split-address-match): Ditto.
1837         (elmo-split-equal): Ditto.
1838         (elmo-split-match): Ditto.
1839
1840 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1841
1842         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1843         (elmo-generic-folder-append-messages): If src message exists but
1844         has no flag, pass (read) for the FLAG argument of
1845         `elmo-folder-append-buffer'. Otherwise, pass nil.
1846
1847         * elmo-split.el (elmo-split-subr): Likewise.
1848
1849         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1850
1851         * elmo-multi.el (elmo-message-flags): Ditto.
1852
1853         * elmo-filter.el (elmo-message-flags): Ditto.
1854
1855         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1856         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1857         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1858         
1859 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1860
1861         * elmo-split.el (elmo-split-rule): Update comment.
1862         (elmo-split-address-equal): Allow 2nd argument to be a list.
1863         (elmo-split-address-match): Ditto.
1864         (elmo-split-equal): Ditto.
1865         (elmo-split-match): Ditto.
1866
1867 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1868
1869         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1870         (elmo-folder-append-msgdb): Don't treat `read'.
1871         (elmo-message-flags): Don't return `read'.
1872
1873         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1874         (elmo-folder-unset-read-delayed): Ditto.
1875
1876         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1877
1878 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1879
1880         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1881         deletion.
1882
1883 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1884
1885         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1886         header.
1887
1888 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1889
1890         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1891         here.
1892         (elmo-msgdb-save): Bind inhibit-quit.
1893         (modb-standard-message-entity): Ditto.
1894
1895 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1896
1897         * elmo-database.el: No need to require elmo-msgdb.
1898
1899 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1900
1901         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1902         instead of `elmo-list-subdirectories'.
1903
1904 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1905
1906         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1907         group entry.
1908         (elmo-folder-exists-p): "[" is empty.
1909         (elmo-folder-list-subfolders): Define.
1910         (elmo-folder-have-subfolder-p): Ditto.
1911
1912 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1913
1914         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1915
1916 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1917
1918         * elmo-filter.el (elmo-folder-local-p): Define.
1919
1920 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1921
1922         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1923         when entity is garbaged.
1924         (modb-standard-save-entity-1): Don't modify the original entity.
1925
1926 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1927
1928         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1929
1930 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1931
1932         * elmo.el (elmo-strict-folder-diff): Use
1933         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1934
1935 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1936
1937         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1938         (elmo-msgdb-message-number): Ditto.
1939         (elmo-msgdb-message-field): Ditto.
1940
1941         * modb-standard.el (modb-standard-economize-entity-size): New user
1942         option.
1943         (modb-standard-loaded-message-id): New inline function.
1944         (modb-standard-load-entity): Use it.
1945         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1946         throw message-id string away.
1947         (elmo-msgdb-flag-available-p): Define.
1948         (elmo-msgdb-message-number): Ditto.
1949         (elmo-msgdb-message-field): Ditto.
1950
1951         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1952         (suppoted -> supported).
1953         (modb-legacy-supported-flag-p): Ditto.
1954         (elmo-msgdb-set-flag): Ditto.
1955         (elmo-msgdb-unset-flag): Ditto.
1956         (elmo-msgdb-flag-available-p): Define.
1957
1958         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1959         is `t', treat it as legacy entity.
1960         
1961         * elmo.el (elmo-message-flag-available-p): New generic function.
1962         (elmo-message-number): Ditto.
1963         (elmo-message-field): Use `elmo-msgdb-message-field'.
1964
1965         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1966
1967         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1968         (elmo-message-number): Ditto.
1969
1970         * elmo-multi.el (elmo-message-number): Define.
1971         (elmo-message-flag-available-p): Ditto.
1972
1973         * elmo-filter.el (elmo-message-flag-available-p): Define.
1974         (elmo-message-number): Ditto.
1975
1976         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1977         (elmo-folder-initialize): Load `max-number'.
1978         (elmo-folder-commit): Save it.
1979         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1980         (elmo-global-flag-set-internal): Set up max-number slot.
1981
1982 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1983
1984         * elmo-version.el (elmo-version): Up to 2.11.31.
1985
1986 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1987
1988         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1989         unibyte string of the current buffer for the argument of `md5'
1990         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1991
1992 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1993
1994         * modb-legacy.el (modb-legacy-flag-list): New constant.
1995         (modb-legacy-suppoted-flag-p): New internal function.
1996         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1997         (elmo-msgdb-unset-flag): Ditto.
1998
1999 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
2000
2001         * elmo.el (elmo-make-folder): Remove text properties for prefix.
2002
2003         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
2004         from msgdb.
2005
2006 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2007
2008         * elmo-multi.el (elmo-folder-count-flags): Changed return value
2009         (follow the API change).
2010
2011         * elmo-filter.el (elmo-folder-count-flags): Ditto.
2012
2013 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
2014
2015         * modb-standard.el (modb-standard-digest-flags): Abolish.
2016         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
2017
2018         * elmo-vars.el (elmo-digest-flags): New variable.
2019         (elmo-preserved-flags): Moved from elmo-flag.el.
2020
2021         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
2022         (elmo-imap4-flag-to-imap-criteria): Ditto.
2023         (elmo-imap4-folder-list-flagged): Use it.
2024
2025         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
2026
2027         * elmo.el (elmo-folder-count-flags): Changed return value.
2028
2029         * elmo-flag.el (elmo-preserved-flags): New variable.
2030         (elmo-get-global-flags): Use it.
2031
2032         * modb-standard.el (modb-standard-digest-flags): New variable.
2033         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
2034         Changed behavior of `any'.
2035
2036         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
2037         which are defined the Internet draft
2038         (draft-melnikov-imap-keywords-03.txt).
2039         (elmo-imap4-flags-to-imap): New function.
2040         (elmo-folder-append-buffer): Use it.
2041
2042         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
2043         in the docstring.
2044
2045         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
2046         avoid the bug of Emacs 21.3.
2047
2048 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
2049
2050         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
2051         function find-coding-system does not exist.
2052
2053 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2054
2055         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
2056         parsing.
2057
2058 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2059
2060         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
2061         response codes.
2062
2063 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2064
2065         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
2066         (elmo-network-close-session): Follow the changes in
2067         `elmo-pop3-read-response'.
2068         (elmo-pop3-auth-user): Ditto.
2069         (elmo-pop3-auth-apop): Ditto.
2070         (elmo-network-initialize-session): Ditto.
2071         (elmo-network-authenticate-session): Ditto.
2072         (elmo-network-setup-session): Ditto.
2073         (elmo-folder-status): Ditto.
2074         (elmo-message-fetch-plugged): Ditto.
2075         (elmo-pop3-delete-msg): Ditto.
2076
2077 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
2078
2079         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
2080         on failure.
2081
2082 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2083
2084         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
2085         style.
2086         (elmo-bind-directory): Ditto.
2087
2088 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2089
2090         * elmo.el (elmo-folder-append-messages): Note on return value.
2091         * elmo-archive.el (elmo-folder-append-messages): Don't return
2092         message numbers which could not be appended.
2093
2094 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2095
2096         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
2097
2098 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2099
2100         * elmo-version.el (elmo-version): Up to 2.11.30.
2101
2102 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2103
2104         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
2105         `mask'.
2106
2107         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
2108
2109         * elmo-multi.el (elmo-folder-synchronize): Likewise.
2110         (elmo-multi-split-numbers): Add elmo-folder object into each
2111         element of return value at first.
2112         (elmo-folder-delete-messages): Follow the above change.
2113         (elmo-folder-detach-messages): Ditto.
2114
2115         * elmo-filter.el (elmo-folder-synchronize): Minimize message
2116         number which is synchronized in target folder.
2117
2118 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2119
2120         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
2121         Change default value to symbol `all'.
2122         (elmo-map-message-fetch): Change condition to update overview
2123         follow the above.
2124
2125 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2126
2127         * elmo-shimbun.el (elmo-map-message-fetch): Change default
2128         behavior to update overview.
2129         (elmo-shimbun-update-overview-folder-list): Note it.
2130
2131 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2132
2133         * modb-standard.el (modb-standard-message-entity): Avoid infinite
2134         recursive call.
2135
2136 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2137
2138         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
2139         buffer-disable-undo, it is unnecessary.
2140         (elmo-spam-register-good-messages): Ditto.
2141
2142         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2143         Ditto.
2144
2145         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
2146
2147 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2148
2149         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
2150         (elmo-set-work-buf): Use set-buffer-multibyte instead of
2151         elmo-set-buffer-multibyte.
2152         (elmo-object-load): Ditto.
2153         (elmo-save-buffer): Ditto.
2154         (elmo-delete-char): Ditto.
2155         (elmo-file-field-primitive-condition-match): Ditto.
2156         (elmo-mime-string): Ditto.
2157
2158         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
2159         (elmo-archive-field-condition-match): Ditto.
2160
2161         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
2162
2163         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
2164
2165         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
2166         (elmo-nntp-msgdb-create-message): Ditto.
2167
2168         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2169
2170         * elmo.el (elmo-message-match-condition): Ditto.
2171         (elmo-message-match-condition): Ditto.
2172
2173         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2174         Ditto.
2175
2176         * elmo-version.el (elmo-version): Up to 2.11.29.
2177
2178         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
2179         (elsp-header): New backend.
2180
2181         * elmo-util.el (elmo-decoded-field-body): New function.
2182
2183 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2184
2185         * elmo-version.el (elmo-version): Up to 2.11.28.
2186
2187 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2188
2189         * elmo-filter.el: Rewrite.
2190
2191         * elmo-version.el (elmo-version): Up to 2.11.27.
2192
2193 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
2194
2195         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
2196         msgdb path for the localdir folder with absolute path.
2197
2198         * utf7.el: Synch up with latest gnus/utf7.el;
2199         Modified for latest Emacs.
2200
2201 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2202
2203         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
2204         shimbun backend couldn't open.
2205
2206 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
2207
2208         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
2209         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
2210         when a destination folder is a filter folder.
2211
2212 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2213
2214         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
2215         (elmo-generic-folder-append-messages): Call elmo-message-flags
2216         with argument `msgid'.
2217
2218         * elmo-split.el (elmo-split-subr): Ditto.
2219
2220         * elmo-pipe.el (elmo-message-flags): Follow the API change.
2221
2222         * elmo-multi.el (elmo-message-flags): Ditto.
2223
2224 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2225
2226         * elmo.el (elmo-folder): Add new slot `flag-table'.
2227         (elmo-folder-flag-table): New API.
2228         (elmo-folder-close-flag-table): Ditto.
2229         (elmo-folder-preserve-flags): New function.
2230         (elmo-generic-folder-append-messages): Use
2231         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
2232         Flag of a non-registered message, it sets to nil.
2233         Does not set flag to flag-table.
2234
2235         * elmo-maildir.el (elmo-folder-append-buffer): Use
2236         `elmo-folder-preserve-flags'.
2237         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2238         `elmo-folder-close-flag-table'.
2239
2240         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
2241         (elmo-archive-folder-append-buffer): Use
2242         `elmo-folder-preserve-flags'.
2243
2244         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
2245
2246         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
2247
2248         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2249         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2250         `elmo-folder-close-flag-table'.
2251
2252         * elmo-version.el (elmo-version): Up to 2.11.26.
2253
2254 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2255
2256         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
2257
2258         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
2259         md5's 4th and 5th argument (non-existent in flim one).
2260
2261 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2262
2263         * elmo-split.el (elmo-split-subr): Flag of a non-registered
2264         message, It sets to nil.
2265
2266 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2267
2268         * elmo.el (elmo-folder-list-messages): Merge lists only if both
2269         list is non-nil.
2270
2271 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
2272
2273         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
2274
2275         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
2276
2277         * elmo-util.el (elmo-uniq-sorted-list): New function.
2278         (elmo-make-number-list): Ditto.
2279         (elmo-number-set-to-number-list): Use elmo-make-number-list
2280         and don't use nreverse.
2281
2282 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2283
2284         * elmo-version.el (elmo-version): Up to 2.11.25.
2285
2286 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2287
2288         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
2289         field not exists in message, Use md5 message digest of header.
2290
2291 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2292
2293         * elmo.el (elmo-folder-append-buffer): Add note on return value.
2294         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
2295         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2296         * elmo-split.el (elmo-split-subr): Check return value of
2297         elmo-folder-append-buffer.
2298
2299         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
2300         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2301
2302         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
2303         message-id.
2304
2305 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
2306
2307         * elmo-split.el (elmo-split-subr): Append message with flag.
2308
2309         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
2310         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
2311         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2312
2313 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
2314
2315         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
2316         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
2317         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2318
2319 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
2320
2321         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2322         with a function call of `process-buffer'.  All callers are updated.
2323         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2324         Remove redundant `set-buffer' in a while loop.
2325
2326 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2327
2328         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2329         calls.
2330
2331 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2332
2333         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2334         elsp-spamfilter-register-buffer-internal with current buffer.
2335         (elmo-spam-register-spam-buffer): Ditto.
2336         (elmo-spam-register-good-buffer): Ditto.
2337
2338 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2339
2340         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2341         if it is not contained in the response(A workaround for courier-imap).
2342
2343 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2344
2345         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2346         parenthesis.
2347
2348 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2349
2350         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2351         range.
2352
2353 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2354
2355         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2356         of nconc.
2357
2358         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2359         argument handler.
2360         (elmo-msgdb-message-match-condition): Follow the change above.
2361
2362 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2363
2364         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2365         folder name.
2366
2367 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2368
2369         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2370
2371 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2372
2373         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2374
2375 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2376
2377         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2378         not found.
2379
2380 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2381
2382         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2383         value.
2384         (elmo-file-command-argument): Undo last change for cygwin.
2385         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2386         Don't return nil.
2387         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2388
2389 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2390
2391         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2392         value returned from elmo-file-find is nil.
2393
2394 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2395
2396         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2397         to elmo-vars.el.
2398
2399         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2400         instead of insert-file-contents-as-binary.
2401         (elmo-message-set-field): New generic function.
2402
2403         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2404         behavior change on `split-string'.
2405
2406         * elmo-file.el (elmo-file-find): New function.
2407         (elmo-file-command): New user option.
2408         (elmo-file-command-argument): Ditto.
2409         (elmo-file-fetch-max-size): Ditto.
2410         (elmo-file-detect-format): New function.
2411         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2412         Use elmo-file-detect-format.
2413         (elmo-map-folder-list-message-locations): Don't treat directories.
2414
2415 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2416
2417         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2418         (elmo-passwd-alist-clear): Shred password before clear.
2419         (elmo-remove-passwd): Remove all mached pair.
2420
2421 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2422
2423         * elmo.el (elmo-folder-synchronize): Fix description of the return
2424         value.
2425
2426 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2427
2428         * elmo.el (elmo-message-fetch-bodystructure): New method.
2429         (elmo-message-fetch-bodystructure): Define default.
2430
2431         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2432         elmo-message-fetch-bodystructure.
2433         (elmo-message-fetch-bodystructure): Define.
2434
2435         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2436
2437 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2438
2439         * elmo-filter.el (elmo-message-folder): Define.
2440
2441 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2442
2443         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2444         elmo-delete-cr-buffer.
2445
2446         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2447
2448         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2449
2450         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2451
2452         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2453         type seems to be a text.
2454
2455 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2456
2457         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2458         (elmo-spam-register-good-buffer): Ditto.
2459         (elmo-spam-spamassassin-register-messages): Ditto.
2460
2461         * elmo-util.el (elmo-string-member-ignore-case): Define with
2462         static-cond.
2463
2464 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2465
2466         * elmo.el (elmo-folder-type): Undo last change.
2467
2468         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2469
2470         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2471         warnings.
2472
2473         * elmo-file.el: New file.
2474         
2475         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2476
2477         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2478         variable.
2479         (elmo-spam-spamassassin-register-messages): New inline function.
2480         (elmo-spam-register-spam-messages): Define.
2481         (elmo-spam-register-good-messages): Ditto.
2482
2483         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2484         Fixed typo.
2485
2486         * elmo.el (toplevel): Added autoload setting for
2487         `elmo-get-global-flags'.
2488         (elmo-message-has-global-flag-p): New function.
2489         (elmo-message-set-global-flags): Ditto.
2490         (elmo-folder-type): Improvement for name: format.
2491
2492         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2493         availability of keyword flags.
2494         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2495         (elmo-folder-list-flagged-plugged): Renamed from
2496         elmo-folder-list-flagged-unplugged.
2497         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2498         accept any flag as keyword flag.
2499         (elmo-folder-set-flag-plugged): Accept keyword flags.
2500         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2501
2502         * elmo-flag.el (elmo-get-global-flags): New function.
2503
2504         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2505         folders.
2506
2507         * elmo-version.el (elmo-version): Up to 2.11.24.
2508
2509 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2510
2511         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2512         elmo-multiple-field-body instead of std11-field-body to check all
2513         headers.
2514
2515 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2516
2517         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2518         or "size".
2519
2520 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2521
2522         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2523         unintern is unbound.
2524
2525 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2526
2527         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2528         Protect from infinite loop.
2529
2530 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2531
2532         * elsp-bogofilter.el
2533         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2534         (elmo-spam-bogofilter-register-messages): New internal function.
2535         (elmo-spam-register-spam-messages): Define.
2536         (elmo-spam-register-good-messages): Ditto.
2537
2538 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2539
2540         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2541         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2542         (elmo-spam-bogofilter-call): Fixed the last change.
2543         (elmo-spam-bogofilter-arguments): Ditto.
2544
2545         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2546         Follow the options change of latest bogofilter.
2547
2548         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2549         (elmo-spam-bogofilter-good-switch): Ditto.
2550         (elmo-spam-bogofilter-arguments-alist): New user option.
2551         (elmo-spam-bogofilter-debug): Ditto.
2552         (elmo-spam-bogofilter-call): Renamed from
2553         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2554         is non-nil, insert output in buffer for debug.
2555         (elmo-spam-bogofilter-arguments): New macro.
2556         (elmo-spam-buffer-spam-p): Use it.
2557         (elsp-bogofilter-register-buffer): Ditto.
2558
2559 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2560
2561         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2562         regexp.
2563
2564 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2565
2566         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2567         value as "ruby".
2568         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2569         (elmo-spam-bsfilter-program): Set default value as full path for
2570         `bsfilter'.
2571         (elmo-spam-bsfilter-debug): New user option.
2572         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2573         non-nil, insert output in buffer for debug. Fix treating of
2574         argument.
2575
2576 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2577
2578         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2579         `elmo-maildir-flag-specs' element instead of one.
2580         (elmo-map-folder-unset-flag): Ditto.
2581         (Reported by Ken Makimura <macky@astem.or.jp>)
2582
2583         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2584         (elmo-folder-unset-flag-plugged): Ditto.
2585
2586 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2587
2588         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2589         to `reads' slot only if `in-msgdb' is nil.
2590
2591 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2592
2593         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2594         and complement argument list.
2595
2596 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2597
2598         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2599         instead of elmo-folder-list-flagged.
2600
2601 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2602
2603         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2604
2605         * elsp-bsfilter.el: New file.
2606
2607         * elmo-pipe.el (elmo-folder-list-unreads,
2608         elmo-folder-list-answereds,
2609         elmo-folder-list-importants,
2610         elmo-folder-flag-as-important,
2611         elmo-folder-unflag-important,
2612         elmo-folder-flag-as-read,
2613         elmo-folder-unflag-read,
2614         elmo-folder-flag-as-answered,
2615         elmo-folder-unflag-answered): Remove.
2616         (elmo-folder-set-flag): Define.
2617         (elmo-folder-unset-flag): Ditto.
2618
2619         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2620         (elmo-folder-set-flag): Define.
2621         (elmo-folder-unset-flag): Ditto.
2622         (elmo-folder-list-unreads): Remove.
2623         (elmo-folder-list-flagged): Define.
2624
2625         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2626         (elmo-folder-list-unreads,
2627         elmo-folder-list-importants,
2628         elmo-folder-list-answereds,
2629         elmo-folder-list-unreads-plugged,
2630         elmo-folder-list-importants-plugged,
2631         elmo-folder-list-answereds-plugged): Remove.
2632         (elmo-folder-list-flagged-plugged): New method.
2633         (elmo-folder-unflag-important,
2634         elmo-folder-flag-as-important,
2635         elmo-folder-unflag-read,
2636         elmo-folder-flag-as-read,
2637         elmo-folder-unflag-answered,
2638         elmo-folder-flag-as-answered,
2639         elmo-folder-flag-as-read-unplugged,
2640         elmo-folder-unflag-read-unplugged,
2641         elmo-folder-flag-as-important-unplugged,
2642         elmo-folder-unflag-important-unplugged,
2643         elmo-folder-flag-as-answered-unplugged,
2644         elmo-folder-unflag-answered-unplugged): Remove.
2645         (elmo-folder-set-flag): Define.
2646         (elmo-folder-unset-flag): Ditto.
2647         (elmo-folder-set-flag-unplugged): Ditto.
2648         (elmo-folder-unset-flag-unplugged): Ditto.
2649
2650         * elmo-multi.el (elmo-folder-list-unreads,
2651         elmo-folder-list-answereds,
2652         elmo-folder-list-importants,
2653         elmo-folder-flag-as-important,
2654         elmo-folder-unflag-important,
2655         elmo-folder-flag-as-read,
2656         elmo-folder-unflag-read,
2657         elmo-folder-flag-as-answered,
2658         elmo-folder-unflag-answered): Remove.
2659         (elmo-folder-set-flag): Define.
2660         (elmo-folder-unset-flag): Ditto.
2661
2662         * elmo-map.el (elmo-map-folder-unflag-important,
2663         elmo-map-folder-flag-as-important,
2664         elmo-map-folder-unflag-read,
2665         elmo-map-folder-flag-as-read,
2666         elmo-map-folder-unflag-answered,
2667         elmo-map-folder-flag-as-answered): Remove.
2668         (elmo-map-folder-set-flag): New method.
2669         (elmo-map-folder-unset-flag): Ditto.
2670         (elmo-map-folder-list-unreads,
2671         elmo-map-folder-list-importants,
2672         elmo-map-folder-list-answereds): Remove.
2673         (elmo-folder-list-flagged-internal): Define.
2674         (elmo-map-folder-list-flagged): New method.
2675
2676         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2677         (elmo-map-folder-list-unreads,
2678         elmo-map-folder-list-importants,
2679         elmo-map-folder-list-flagged): Remove.
2680         (elmo-map-folder-list-flagged): Define.
2681         (elmo-map-folder-flag-as-important,
2682         elmo-map-folder-unflag-important,
2683         elmo-map-folder-flag-as-read,
2684         elmo-map-folder-unflag-read,
2685         elmo-map-folder-flag-as-answered,
2686         elmo-map-folder-unflag-answered): Remove.
2687         (elmo-maildir-set-mark-messages): New internal function.
2688         (elmo-map-folder-set-flag): Define.
2689         (elmo-map-folder-unset-flag): Ditto.
2690
2691         * elmo.el (toplevel): Added autoload setting for
2692         `elmo-folder-list-global-flag-messages'.
2693         (elmo-folder-list-unreads,
2694         elmo-folder-list-importants,
2695         elmo-folder-list-answereds): Remove.
2696         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2697         Return a list whitch merged with messages have global flag.
2698         (elmo-folder-list-flagged-internal): New method.
2699         (elmo-folder-unflag-important,
2700         elmo-folder-flag-as-important,
2701         elmo-folder-unflag-read,
2702         elmo-folder-flag-as-read,
2703         elmo-folder-unflag-answered,
2704         elmo-folder-flag-as-answered): Remove.
2705         (elmo-folder-set-flag): New method.
2706         (elmo-folder-unset-flag): Ditto.
2707         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2708         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2709
2710         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2711         (elmo-folder-list-unreads-plugged,
2712         elmo-folder-list-importants-plugged,
2713         elmo-folder-list-answereds-plugged,
2714         elmo-folder-list-flagged-unplugged,
2715         elmo-folder-unflag-important-plugged,
2716         elmo-folder-flag-as-important-plugged,
2717         elmo-folder-unflag-read-plugged,
2718         elmo-folder-flag-as-read-plugged,
2719         elmo-folder-unflag-answered-plugged,
2720         elmo-folder-flag-as-answered-plugged): Remove.
2721         (elmo-folder-set-flag-plugged,
2722         elmo-folder-unset-flag-plugged): Define.
2723
2724         * elmo-flag.el (elmo-folder-initialize): Register to
2725         `elmo-global-flag-list' if flag is not global.
2726         (elmo-folder-append-messages): Set flag to source messages.
2727
2728         * elmo-filter.el (elmo-filter-folder-list-unreads,
2729         elmo-folder-list-unreads,
2730         elmo-filter-folder-list-importants,
2731         elmo-folder-list-importants,
2732         elmo-folder-flag-as-read,
2733         elmo-folder-unflag-read,
2734         elmo-folder-flag-as-important,
2735         elmo-folder-unflag-important,
2736         elmo-folder-flag-as-answered,
2737         elmo-folder-unflag-answered): Remove.
2738         (elmo-folder-set-flag): Define.
2739         (elmo-folder-unset-flag): Ditto.
2740
2741         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2742         elmo-folder-unflag-read-dop,
2743         elmo-folder-flag-as-important-dop,
2744         elmo-folder-unflag-important-dop,
2745         elmo-folder-flag-as-answered-dop,
2746         elmo-folder-unflag-answered-dop): Remove.
2747         (elmo-folder-set-flag-dop,
2748         elmo-folder-unset-flag-dop,
2749         elmo-folder-set-important-delayed,
2750         elmo-folder-unset-important-delayed,
2751         elmo-folder-set-read-delayed,
2752         elmo-folder-unset-read-delayed,
2753         elmo-folder-set-answered-delayed,
2754         elmo-folder-unset-answered-delayed): New function.
2755         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2756         (elmo-dop-queue-method-name-alist): Ditto.
2757
2758         * elmo-version.el (elmo-version): Up to 2.11.23.
2759
2760 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2761
2762         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2763
2764         * elsp-sa.el: New file.
2765
2766 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2767
2768         * modb-standard.el (modb-standard-message-entity): New function.
2769         (elmo-msgdb-message-entity): Use it.
2770
2771 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2772
2773         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2774         behavior when one-level is nil.
2775
2776         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2777
2778         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2779
2780 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2781
2782         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2783         get max number.
2784         (elmo-generic-folder-diff): Ditto.
2785
2786         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2787         (elmo-folder-update-number): Ditto.
2788
2789         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2790         (elmo-folder-next-message-number-dop): Ditto.
2791
2792 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2793
2794         * elmo-filter.el (elmo-folder-msgdb-create): Use
2795         `elmo-message-entity' and `elmo-message-flags' instead of
2796         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2797
2798 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2799
2800         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2801         `if-exists'.
2802
2803 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2804
2805         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2806
2807         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2808
2809         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2810
2811 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2812
2813         * elmo-version.el (elmo-version): Up to 2.11.22.
2814
2815 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2816
2817         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2818
2819 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2820
2821         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2822         if the message dose not exist.
2823
2824 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2825
2826         * elmo-version.el (elmo-version): Up to 2.11.21.
2827
2828 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2829
2830         * modb-standard.el (toplevel): Don't require mime.
2831
2832 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2833
2834         * elsp-bogofilter.el (toplevel): Don't require path-util.
2835         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2836         (elmo-spam-bogofilter-header): Abolish.
2837         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2838         (elmo-spam-bogofilter-args): New user option.
2839         (elsp-bogofilter-call-bogofilter): New internal function.
2840         (elmo-spam-buffer-spam-p): Use it.
2841         (elsp-bogofilter-register-buffer): Renamed from
2842         `elmo-spam-bogofilter-register-buffer';
2843         Use `elsp-bogofilter-call-bogofilter'.
2844         (elmo-spam-register-spam-buffer): Follow the change above.
2845         (elmo-spam-register-good-buffer): Ditto.
2846
2847 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2848
2849         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2850         message-id is nil do nothing.
2851
2852 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2853
2854         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2855         Revival.
2856         (elmo-imap4-session): Removed use-flag slot.
2857         (elmo-imap4-session-select-mailbox): Undo last change.
2858         (elmo-folder-use-flag-p): Use
2859         elmo-imap4-disuse-server-flag-mailbox-regexp.
2860
2861 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2862
2863         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2864         (elmo-imap4-session-select-mailbox): Set it up.
2865         (elmo-folder-use-flag-p): Return value of use-flag slot.
2866
2867 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2868
2869         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2870         message-id is nil.
2871         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2872
2873         * modb-entity.el (elmo-message-entity-handler): Likewise.
2874
2875 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2876
2877         * elmo.el (toplevel): Remove setting of autoloding for
2878         elmo-global-flag-initialize.
2879         (elmo-init): Don't call elmo-global-flag-initialize.
2880         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2881
2882         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2883         (elmo-global-mark-migrate): Don't call it.
2884         (elmo-global-mark-upgrade): Ditto.
2885
2886 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2887
2888         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2889         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2890
2891         * elmo-vars.el (elmo-init-hook): New user option.
2892
2893         * elmo.el (elmo-init): Run the elmo-init-hook.
2894
2895         * elmo-flag.el (elmo-global-mark-migrate): New function.
2896
2897 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2898
2899         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2900         Undo last change (move to elmo-msgdb-unset-flag).
2901         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2902         flag is unset.
2903
2904 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2905
2906         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2907         read flag is set.
2908         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2909         (elmo-msgdb-unset-flag): Ditto.
2910
2911 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2912
2913         * elmo-split.el (elmo-split): Return split message count.
2914
2915 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2916
2917         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2918         is nil.
2919
2920 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2921
2922         * elmo.el (elmo-folder-unflag-important): Call
2923         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2924         a symbol `always'.
2925
2926         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2927         before unset flag.
2928         (elmo-global-flag-detach): Delete the message from flag folder, if
2929         `delete-if-none' is a symbol `always'.
2930
2931 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2932
2933         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2934         `elmo-spam-spamfilter-decode-buffer'.
2935         (elsp-spamfilter-register-buffer-internal): New internal function.
2936         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2937         (elmo-spam-register-spam-buffer): Ditto.
2938         (elmo-spam-register-good-buffer): Ditto.
2939
2940         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2941         change.
2942         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2943         (elmo-spam-register-spam-buffer): Follow the API change.
2944         (elmo-spam-register-good-buffer): Ditto.
2945
2946         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2947         (elmo-split-spam-p): Added argument plist; Call
2948         `elmo-spam-buffer-spam-p' with new argument register.
2949
2950         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2951         `register'.
2952         (elmo-spam-message-spam-p): Ditto.
2953         (elmo-spam-register-spam-buffer): Added optional argument
2954         `restore'.
2955         (elmo-spam-register-good-buffer): Ditto.
2956         (elmo-spam-register-spam-messages): Ditto.
2957         (elmo-spam-register-good-messages): Ditto.
2958
2959 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2960
2961         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2962         register into good corpus.
2963         (elmo-spam-register-good-buffer): Fixed to register into bad
2964         corpus.
2965
2966 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2967
2968         * elmo-version.el (elmo-version): Up to 2.11.20.
2969
2970         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2971         change.
2972
2973         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2974         flag without depending on \Recent flag.
2975
2976 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2977
2978         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2979         (elmo-spam-modified-p): Defined.
2980         (elmo-spam-save-status): Set `modified' slot to nil.
2981         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2982         (elmo-spam-register-good-buffer): Ditto.
2983
2984         * elmo-spam.el (elmo-spam-modified-p): New API.
2985
2986 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2987
2988         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2989         duplicate definition.
2990
2991         * elmo-util.el (elmo-unfold-field-body): New function.
2992         (elmo-msgdb-get-message-id-from-buffer): Use it.
2993
2994         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2995         Fixed the last change; Use elmo-unfold-field-body.
2996
2997 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2998
2999         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3000         Unfold date value.
3001
3002 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3003
3004         * elmo-spam.el (elmo-spam-save-status): New API.
3005
3006         * elsp-spamfilter.el: New file.
3007
3008 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3009
3010         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
3011
3012 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3013
3014         * elmo-split.el (elmo-split-spam-p): New function.
3015
3016         * elmo-spam.el: New file.
3017
3018         * elsp-bogofilter.el: Ditto.
3019
3020 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
3021
3022         * elmo.el (elmo-folder-next-message-number): New API.
3023         (elmo-folder-next-message-number): Define.
3024         (elmo-message-field): Don't check folder length.
3025
3026         * elmo-net.el (elmo-folder-next-message-number): Define.
3027         (elmo-folder-next-message-number-unplugged): Define.
3028
3029         * elmo-map.el (elmo-folder-next-message-number): Define.
3030         (elmo-folder-delete-messages): Clear hash value.
3031
3032         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
3033
3034         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
3035         (elmo-folder-delete-messages-dop-delayed): Always return t.
3036
3037         * elmo-version.el (elmo-version): Up to 2.11.19.
3038
3039 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3040
3041         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
3042         change.
3043
3044         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
3045         identical cons cell into the mark-alist and the hash table.
3046
3047 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
3048
3049         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
3050         elmo-folder-list-messages with argument `visible-only' as t.
3051
3052         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
3053         (elmo-folder-msgdb-create): Check the target folder.
3054
3055 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
3056
3057         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
3058         `permanentflag' instead of `flags'.
3059         (elmo-folder-open): Ditto.
3060         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
3061         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
3062         (elmo-folder-use-flag-p): Always return t.
3063         (elmo-imap4-session-select-mailbox): Use value of `flags' if
3064         `permanentflags' does not exist.
3065         (elmo-folder-open): Ditto.
3066
3067 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
3068
3069         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
3070         is nil.
3071         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
3072
3073         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
3074         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
3075         response.
3076         (elmo-folder-open): Ditto.
3077         (elmo-imap4-set-flag): Send store flag command only when the `flags'
3078         slot of the session includes the flag.
3079         (elmo-imap4-session-flag-available-p): New function.
3080         (elmo-imap4-folder-list-flagged): Ditto.
3081         (elmo-folder-list-unreads-plugged): Use it.
3082         (elmo-folder-list-importants-plugged): Ditto.
3083         (elmo-folder-list-answereds-plugged): Ditto.
3084         (elmo-imap4-search-internal-primitive): Ditto.
3085         (elmo-imap4-folder-list-any-plugged,
3086         elmo-imap4-folder-list-digest-plugged): Abolish.
3087
3088         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
3089         if numbers is nil.
3090
3091 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3092
3093         * elmo-util.el (toplevel): Require emu for char-list-to-string.
3094
3095 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
3096
3097         * elmo-util.el (elmo-get-hash-val): Simplify.
3098         (elmo-set-hash-val): Rewrite.
3099
3100 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3101
3102         * elmo.el (elmo-folder-list-messages): Append killed messages into
3103         result if `visible-only' is nil and `in-msgdb' is non-nil.
3104
3105         * elmo-util.el (elmo-uniq-list): Added optional argument
3106         `delete-function'.
3107
3108         * modb.el (elmo-msgdb-flag-count): New API.
3109
3110         * modb-standard.el (modb-standard): Added slot flag-count.
3111         (modb-standard-countup-flags): New function.
3112         (modb-standard-load-flag): Call it.
3113         (elmo-msgdb-append): Ditto.
3114         (elmo-msgdb-clear): Clear slot flag-count.
3115         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
3116         (elmo-msgdb-unset-flag): Treat `all' flag and call
3117         modb-standard-countup-flags.
3118         (elmo-msgdb-flag-count): Define.
3119         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
3120         (elmo-msgdb-delete-messages): Ditto.
3121
3122         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
3123         (elmo-msgdb-flag-count): Define.
3124
3125         * elmo.el (elmo-folder-list-messages): Undo last change.
3126         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
3127         (elmo-folder-kill-messages): Unset all flags to numbers.
3128
3129         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
3130         elmo-folder-kill-messages.
3131
3132         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
3133         (elmo-nntp-folder-delete-messages): Abolish.
3134
3135         * elmo-version.el (elmo-version): Up to 2.11.18.
3136
3137 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3138
3139         * elmo.el (elmo-folder-kill-messages-before): Abolish.
3140         (elmo-folder-kill-messages-range): New function.
3141         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
3142         instead of elmo-folder-kill-messages-before.
3143
3144 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
3145
3146         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
3147         elmo-imap4-current-msgdb to decide entity handler.
3148
3149 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3150
3151         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
3152
3153         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
3154         inline function.
3155         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
3156         (elmo-msgdb-overview-entity-set-number,
3157         elmo-msgdb-overview-entity-get-references,
3158         elmo-msgdb-overview-entity-set-references,
3159         elmo-msgdb-overview-entity-get-from-no-decode,
3160         elmo-msgdb-overview-entity-get-from,
3161         elmo-msgdb-overview-entity-set-from,
3162         elmo-msgdb-overview-entity-get-subject,
3163         elmo-msgdb-overview-entity-get-subject-no-decode,
3164         elmo-msgdb-overview-entity-set-subject,
3165         elmo-msgdb-overview-entity-get-date,
3166         elmo-msgdb-overview-entity-set-date,
3167         elmo-msgdb-overview-entity-get-to,
3168         elmo-msgdb-overview-entity-get-cc,
3169         elmo-msgdb-overview-entity-get-size,
3170         elmo-msgdb-overview-entity-set-size,
3171         elmo-msgdb-overview-entity-get-extra,
3172         elmo-msgdb-overview-entity-set-extra,
3173         elmo-msgdb-overview-entity-get-extra-field,
3174         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
3175         (elmo-msgdb-make-index): Use
3176         `elmo-msgdb-overview-entity-get-number-internal'.
3177         (elmo-msgdb-clear-index): Ditto.
3178         (elmo-msgdb-append-entity): Ditto;
3179         Use `elmo-msgdb-overview-entity-get-id-internal'.
3180
3181         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
3182         elmo-msgdb-overview-entity-set-number,
3183         elmo-msgdb-overview-entity-get-references,
3184         elmo-msgdb-overview-entity-set-references,
3185         elmo-msgdb-overview-entity-get-from-no-decode,
3186         elmo-msgdb-overview-entity-get-from,
3187         elmo-msgdb-overview-entity-set-from,
3188         elmo-msgdb-overview-entity-get-subject,
3189         elmo-msgdb-overview-entity-get-subject-no-decode,
3190         elmo-msgdb-overview-entity-set-subject,
3191         elmo-msgdb-overview-entity-get-date,
3192         elmo-msgdb-overview-entity-set-date,
3193         elmo-msgdb-overview-entity-get-to,
3194         elmo-msgdb-overview-entity-get-cc,
3195         elmo-msgdb-overview-entity-get-size,
3196         elmo-msgdb-overview-entity-set-size,
3197         elmo-msgdb-overview-entity-get-extra,
3198         elmo-msgdb-overview-entity-set-extra,
3199         elmo-msgdb-overview-entity-get-extra-field,
3200         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
3201         and rewrote for backward compatibility.
3202
3203 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3204
3205         * elmo.el (elmo-message-entity-number,
3206         elmo-message-entity-set-number,
3207         elmo-message-entity-field,
3208         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
3209
3210         * elmo-msgdb.el (elmo-message-entity-number,
3211         elmo-message-entity-set-number,
3212         elmo-message-entity-field,
3213         elmo-message-entity-set-field): Moved from elmo.el.
3214
3215 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3216
3217         * elmo.el (toplevel): Changed definition orders.
3218
3219 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3220
3221         * modb.el (elmo-msgdb-search): New API .
3222         (elmo-msgdb-match-condition): Ditto.
3223
3224         * modb-standard.el (elmo-msgdb-search): Define.
3225
3226         * modb-legacy.el (elmo-msgdb-search): Ditto.
3227
3228         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
3229         from elmo-msgdb-match-condition-internal.
3230
3231         * elmo.el (elmo-folder-search-fast): Abolish.
3232         (elmo-folder-search): Use elmo-msgdb-search and
3233         elmo-with-progress-display.
3234
3235         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
3236         as msgdb API.
3237
3238         * elmo.el (elmo-folder): Remove slot message-modified and
3239         flag-modified.
3240         (elmo-folder-set-message-modified): Abolish.
3241         (elmo-generic-folder-commit): Follow the change above.
3242         (elmo-folder-synchronize): Ditto.
3243
3244         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
3245
3246         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3247
3248         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
3249
3250 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3251
3252         * modb-standard.el (modb-standard-make-message-entity,
3253         elmo-msgdb-make-message-entity,
3254         elmo-msgdb-create-message-entity-from-buffer,
3255         elmo-msgdb-message-entity-number,
3256         elmo-msgdb-message-entity-set-number,
3257         elmo-msgdb-message-entity-field,
3258         elmo-msgdb-message-entity-set-field,
3259         elmo-msgdb-copy-message-entity,
3260         elmo-msgdb-match-condition-internal): Remove.
3261
3262         * modb-entity.el: New file (again).
3263
3264         * modb.el (toplevel): Require modb-entity.
3265         (elmo-msgdb-message-entity-handler): New method.
3266
3267         * modb-standard.el (modb-standard-entity-id): Use
3268         elmo-message-entity-handler.
3269         (modb-standard-load-entity): Ditto.
3270         (elmo-msgdb-append-entity): Ditto.
3271         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3272
3273         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
3274         elmo-msgdb-decoded-cache-hashtb,
3275         (modb-legacy-make-message-entity,
3276         elmo-msgdb-make-message-entity,
3277         elmo-msgdb-create-message-entity-from-buffer,
3278         elmo-msgdb-message-entity-number,
3279         elmo-msgdb-message-entity-set-number,
3280         elmo-msgdb-message-entity-field,
3281         elmo-msgdb-message-entity-set-field,
3282         elmo-msgdb-copy-message-entity,
3283         elmo-msgdb-match-condition-internal,
3284         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
3285
3286         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
3287         (elmo-message-entity-set-number): Ditto.
3288         (elmo-message-entity-field): Ditto.
3289         (elmo-message-entity-set-field): Ditto.
3290
3291         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
3292
3293         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3294
3295         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3296
3297         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3298         (elmo-nntp-msgdb-create-message): Ditto.
3299
3300         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
3301         (elmo-folder-msgdb-create): Add unread flag.
3302
3303         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3304
3305         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
3306
3307         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
3308
3309         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3310
3311         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
3312         elmo-msgdb-messge-entity-handler.
3313         * elmo-version.el (elmo-version): Up to 2.11.17.
3314
3315 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3316
3317         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
3318         change.
3319
3320 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3321
3322         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3323
3324         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3325         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3326         (elmo-msgdb-flag-table): Ditto.
3327         (elmo-msgdb-sort-by-date): Ditto.
3328
3329         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3330
3331         * modb-standard.el (toplevel): Require mime.
3332         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3333         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3334         elmo-msgdb-message-entity-number.
3335         (elmo-msgdb-append-entity): Ditto.
3336         (elmo-msgdb-create-message-entity-from-file): Remove.
3337         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3338         corresponds to the entity.
3339         (elmo-msgdb-message-entity-number): Do nothing currently.
3340         (elmo-msgdb-message-entity-field): Ditto.
3341         (elmo-msgdb-message-entity-set-field): Ditto.
3342         (elmo-msgdb-copy-message-entity): Ditto.
3343         (elmo-msgdb-match-condition-internal): Ditto.
3344
3345         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3346         elmo-util.el.
3347         (elmo-msgdb-create-message-entity-from-file): Remove.
3348
3349         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3350         modb-legacy.el.
3351         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3352
3353         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3354
3355 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3356
3357         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3358         (elmo-msgdb-message-entity-field): Ditto.
3359         (elmo-msgdb-message-entity-number): Ditto.
3360
3361 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3362
3363         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3364         Fixed how to set extra field into entity.
3365         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3366         symbol.
3367
3368         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3369         Fixed how to set extra field into entity.
3370         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3371         symbol.
3372
3373 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3374
3375         * modb.el (elmo-message-entity-db): New function.
3376         (elmo-msgdb-make-message-entity): New API.
3377         (elmo-msgdb-message-entity-number): Ditto.
3378         (elmo-msgdb-message-entity-set-number): Ditto.
3379         (elmo-msgdb-message-entity-field): Ditto.
3380         (elmo-msgdb-message-entity-set-field): Ditto.
3381         (elmo-msgdb-copy-message-entity): Ditto.
3382         (elmo-msgdb-create-message-entity-from-file): Ditto.
3383         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3384         (elmo-msgdb-match-condition-internal): Ditto.
3385
3386         * modb-standard.el (modb-legacy): Require modb-legacy.
3387         (modb-standard-make-message-entity): New inline function.
3388         (elmo-msgdb-make-message-entity): Define.
3389         (elmo-msgdb-create-message-entity-from-file): Ditto.
3390         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3391         (elmo-msgdb-message-entity-field): Ditto.
3392         (elmo-msgdb-message-entity-set-field): Ditto.
3393         (elmo-msgdb-copy-message-entity): Ditto.
3394         (elmo-msgdb-match-condition-internal): Ditto.
3395
3396         * modb-legacy.el: Don't require modb-entity.
3397         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3398         (elmo-msgdb-match-condition-primitive): Ditto.
3399         (elmo-msgdb-get-decoded-cache): Ditto.
3400         (elmo-msgdb-overview-entity-get-id): Ditto.
3401         (elmo-msgdb-overview-entity-get-number): Ditto.
3402         (elmo-msgdb-overview-entity-set-number): Ditto.
3403         (elmo-msgdb-overview-entity-get-references): Ditto.
3404         (elmo-msgdb-overview-entity-set-references): Ditto.
3405         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3406         (elmo-msgdb-overview-entity-get-from): Ditto.
3407         (elmo-msgdb-overview-entity-set-from): Ditto.
3408         (elmo-msgdb-overview-entity-get-subject): Ditto.
3409         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3410         (elmo-msgdb-overview-entity-set-subject): Ditto.
3411         (elmo-msgdb-overview-entity-get-date): Ditto.
3412         (elmo-msgdb-overview-entity-set-date): Ditto.
3413         (elmo-msgdb-overview-entity-get-to): Ditto.
3414         (elmo-msgdb-overview-entity-get-cc): Ditto.
3415         (elmo-msgdb-overview-entity-get-size): Ditto.
3416         (elmo-msgdb-overview-entity-set-size): Ditto.
3417         (elmo-msgdb-overview-entity-get-extra): Ditto.
3418         (elmo-msgdb-overview-entity-set-extra): Ditto.
3419         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3420         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3421         (elmo-msgdb-number-load): Ditto.
3422         (elmo-msgdb-overview-load): Ditto.
3423         (elmo-msgdb-mark-load): Ditto.
3424         (elmo-msgdb-number-save): Ditto.
3425         (elmo-msgdb-mark-save): Ditto.
3426         (elmo-msgdb-overview-save): Ditto.
3427         (modb-legacy-make-message-entity): New inline function.
3428         (elmo-msgdb-insert-file-header): Ditto.
3429         (elmo-msgdb-make-message-entity): Define.
3430         (elmo-msgdb-create-message-entity-from-file): Ditto.
3431         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3432         (elmo-msgdb-message-entity-number): Ditto.
3433         (elmo-msgdb-message-entity-set-number): Ditto.
3434         (elmo-msgdb-message-entity-field): Ditto.
3435         (elmo-msgdb-message-entity-set-field): Ditto.
3436         (elmo-msgdb-copy-message-entity): Ditto.
3437         (elmo-msgdb-match-condition-internal): Ditto.
3438
3439         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3440         (elmo-message-copy-entity): Rewrite.
3441         (elmo-message-entity-number): Ditto.
3442         (elmo-message-entity-set-number): Ditto.
3443         (elmo-message-entity-field): Use elmo-message-entity-db.
3444         (elmo-message-entity-set-field): Ditto.
3445         (elmo-message-field): Rewrite.
3446
3447         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3448         elmo-msgdb.el
3449         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3450
3451         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3452         elmo-message-entity-field.
3453         (elmo-shimbun-folder-shimbun-header): Ditto.
3454         (elmo-shimbun-entity-to-header): Ditto.
3455         (elmo-folder-msgdb-create): Ditto.
3456         (elmo-shimbun-msgdb-create-entity): Ditto;
3457         Use elmo-msgdb-create-message-entity-from-buffer.
3458         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3459         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3460
3461         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3462         elmo-msgdb-create-message-entity-from-file and 
3463         elmo-message-entity-field.
3464
3465         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3466         elmo-message-entity-number.
3467         (elmo-pop3-msgdb-create-message): Use
3468         elmo-msgdb-create-message-entity-from-buffer,
3469         elmo-message-entity-set-field, elmo-message-entity-number and
3470         elmo-message-entity-set-number.
3471
3472         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3473         the API change in elmo-msgdb-make-message-entity.
3474         (elmo-nntp-msgdb-create-message): Use
3475         elmo-msgdb-create-message-entity-from-buffer.
3476
3477         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3478         elmo-message-entity-field and
3479         elmo-msgdb-create-message-entity-from-file.
3480
3481         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3482         (elmo-msgdb-get-field): Abolish.
3483         (elmo-msgdb-get-number): Rewrite.
3484         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3485         (elmo-msgdb-flag-table): Ditto.
3486         (elmo-msgdb-get-last-message-id,
3487         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3488         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3489         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3490         (elmo-msgdb-create-overview-from-buffer,
3491         elmo-msgdb-overview-get-parent-entity): Abolish.
3492
3493         * elmo-mime.el (elmo-mime-display-as-is): Use
3494         elmo-message-entity-field.
3495
3496         * elmo-map.el (elmo-folder-pack-numbers): Use
3497         elmo-message-entity-set-number.
3498
3499         * elmo-maildir.el (elmo-folder-msgdb-create): 
3500         elmo-msgdb-create-message-entity-from-file instead of
3501         elmo-msgdb-create-overview-entity-from-file.
3502
3503         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3504         msgdb.
3505         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3506         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3507
3508         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3509         elmo-messge-entity-field and elmo-message-entity-number.
3510         (elmo-imap4-fetch-callback-1): Call
3511         elmo-msgdb-create-message-entity-from-buffer instead of
3512         elmo-msgdb-create-overview-from-buffer. 
3513         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3514         (elmo-find-fetch-strategy): Likewise.
3515
3516         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3517         elmo-localdir-msgdb-create-entity with argument msgdb.
3518
3519         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3520         and elmo-message-entity-set-number.
3521
3522         * elmo-cache.el (elmo-folder-msgdb-create): Use
3523         elmo-message-entity-field.
3524         (elmo-folder-msgdb-create): Call
3525         elmo-msgdb-create-message-entity-from-file instead of
3526         elmo-msgdb-create-overview-entity-from-file.
3527
3528         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3529         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3530         instead of elmo-msgdb-create-overview-from-buffer.
3531         (elmo-archive-msgdb-create-entity): Ditto.
3532         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3533         elmo-message-entity-field.
3534         (elmo-archive-parse-mmdf): Ditto.
3535
3536         * modb-entity.el: Removed.
3537
3538         * elmo-version.el (elmo-version): Up to 2.11.16.
3539
3540 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3541
3542         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3543         `is-local'.
3544         (elmo-folder-flag-as-answered): Ditto.
3545
3546 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3547
3548         * modb-standard.el: New file.
3549
3550         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3551         elmo-msgdb-convert-type is `sync'.
3552
3553         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3554         (elmo-msgdb-convert-type): New user option.
3555
3556         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3557         (elmo-load-msgdb): Auto detect saved type.
3558
3559         * elmo-version.el (elmo-version): Up to 2.11.15.
3560
3561 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3562
3563         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3564
3565         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3566         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3567         with argument `delete-if-none' when dst-folder is 'null.
3568
3569         * elmo-flag.el (elmo-folder-append-messages): Defined.
3570         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3571
3572 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3573
3574         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3575
3576 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3577
3578         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3579         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3580         (elmo-folder-commit): Ditto.
3581
3582 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3583
3584         * elmo-flag.el: New file.
3585
3586         * elmo-mark.el: Removed.
3587
3588         * modb-legacy.el (modb-legacy-new-mark,
3589         modb-legacy-unread-uncached-mark,
3590         modb-legacy-unread-cached-mark,
3591         modb-legacy-read-uncached-mark,
3592         modb-legacy-answered-cached-mark,
3593         modb-legacy-answered-uncached-mark,
3594         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3595         All other related portions are changed.
3596
3597         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3598         (elmo-folder-list-messages-with-global-mark): Abolish.
3599         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3600         (elmo-folder-flag-as-important): Ditto.
3601         (elmo-folder-unflag-read): Ditto.
3602         (elmo-folder-flag-as-read): Ditto.
3603         (elmo-folder-unflag-answered): Ditto.
3604         (elmo-folder-flag-as-answered): Ditto.
3605         (elmo-message-encache): Return the cache path.
3606         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3607         (elmo-message-set-flag): Transitional implementation.
3608         (elmo-message-unset-flag): Ditto.
3609         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3610         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3611         (elmo-init): Call elmo-global-flag-initialize.
3612         (toplevel): Added autoload settings for elmo-flag.
3613
3614         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3615
3616         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3617         (elmo-file-cache-delete): Don't treat global-mark.
3618
3619         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3620
3621         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3622
3623         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3624         `elmo-global-flags-set'.
3625
3626         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3627         `flag'.
3628         (elmo-folder-unflag-read): Ditto.
3629         (elmo-folder-unflag-important): Ditto.
3630         (elmo-folder-flag-as-important): Ditto.
3631         (elmo-folder-unflag-answered): Ditto.
3632         (elmo-folder-flag-as-answered): Ditto.
3633
3634         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3635         `elmo-global-flags-set'.
3636         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3637
3638         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3639
3640         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3641         `flag'.
3642         (elmo-folder-flag-as-important): Ditto.
3643         (elmo-folder-unflag-important): Ditto.
3644         (elmo-folder-flag-as-important): Ditto.
3645         (elmo-folder-unflag-read): Ditto.
3646         (elmo-folder-flag-as-read): Ditto.
3647         (elmo-folder-unflag-answered): Ditto.
3648         (elmo-folder-flag-as-answered): Ditto.
3649
3650         * elmo-multi.el (elmo-folder-list-importants): Don't call
3651         elmo-folder-list-messages-with-global-mark.
3652         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3653         (elmo-folder-unflag-important): Ditto.
3654         (elmo-folder-flag-as-read): Ditto.
3655         (elmo-folder-unflag-read): Ditto.
3656         (elmo-folder-flag-as-answered): Ditto.
3657         (elmo-folder-unflag-answered): Ditto.
3658
3659         * elmo-msgdb.el (elmo-msgdb-new-mark,
3660         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3661         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3662         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3663         (Moved to modb-legacy.el).
3664         (elmo-flag-table-get): Treat important flag too.
3665
3666         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3667         `mark' to `flag'.
3668         (elmo-map-folder-flag-as-important): Ditto.
3669         (elmo-map-folder-unflag-read): Ditto.
3670         (elmo-map-folder-flag-as-read): Ditto.
3671         (elmo-map-folder-unflag-answered): Ditto.
3672         (elmo-map-folder-flag-as-answered): Ditto.
3673         (elmo-folder-unflag-important): Ditto.
3674         (elmo-folder-flag-as-important): Ditto.
3675         (elmo-folder-unflag-read): Ditto.
3676         (elmo-folder-flag-as-read): Ditto.
3677         (elmo-folder-unflag-answered): Ditto.
3678         (elmo-folder-flag-as-answered): Ditto.
3679
3680         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3681         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3682         `flag'.
3683         (elmo-map-folder-unflag-important): Ditto.
3684         (elmo-map-folder-flag-as-read): Ditto.
3685         (elmo-map-folder-unflag-read): Ditto.
3686         (elmo-map-folder-flag-as-answered): Ditto.
3687         (elmo-map-folder-unflag-answered): Ditto.
3688
3689         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3690         `elmo-global-flags-set'.
3691         (elmo-global-flags-set): Added autoload setting.
3692
3693         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3694         `flag'.
3695
3696         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3697         `elmo-msgdb-global-mark-set'.
3698         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3699         Call `elmo-global-flags-set'.
3700         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3701         `flag'.
3702         (elmo-folder-flag-as-important-plugged): Ditto.
3703         (elmo-folder-unflag-read-plugged): Ditto.
3704         (elmo-folder-flag-as-read-plugged): Ditto.
3705         (elmo-folder-unflag-answered-plugged): Ditto.
3706         (elmo-folder-flag-as-answered-plugged): Ditto.
3707         (elmo-global-flags-set): Added autoload setting.
3708
3709         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3710         `flag'.
3711         (elmo-folder-unflag-read): Ditto.
3712         (elmo-folder-flag-as-important): Ditto.
3713         (elmo-folder-unflag-important): Ditto.
3714         (elmo-folder-flag-as-answered): Ditto.
3715         (elmo-folder-unflag-answered): Ditto.
3716
3717         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3718         change of `mark'->`flag'.
3719         (elmo-dop-queue-method-name-alist): Ditto.
3720         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3721         (elmo-folder-unflag-read-dop): Ditto.
3722         (elmo-folder-flag-as-important-dop): Ditto.
3723         (elmo-folder-unflag-important-dop): Ditto.
3724         (elmo-folder-flag-as-answered-dop): Ditto.
3725         (elmo-folder-unflag-answered-dop): Ditto.
3726
3727         * elmo-cache.el (elmo-folder-msgdb-create): Call
3728         `elmo-global-flags-set'.
3729
3730         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3731         Call `elmo-global-flags-set'.
3732         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3733         elmo-archive-parse-mmdf with argument `folder'.
3734         (elmo-archive-parse-mmdf): Added argument `folder';
3735         Call `elmo-global-flags-set'.
3736
3737         * elmo-version.el (elmo-version): Up to 2.11.14.
3738
3739 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3740
3741         * modb.el (elmo-msgdb-length): Define.
3742
3743         * elmo.el (elmo-make-folder): Fixed.
3744         (elmo-generic-folder-append-messages): Follow the API change.
3745
3746         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3747         API change.
3748
3749 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3750
3751         * modb.el: New file.
3752
3753         * modb-entity.el: Ditto.
3754
3755         * modb-legacy.el: Ditto.
3756
3757         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3758         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3759         of `elmo-msgdb-overview-get-entity'.
3760         (elmo-msgdb-get-field): Ditto.
3761         (elmo-msgdb-merge): Moved to `elmo.el'.
3762         (elmo-msgdb-length): Removed; redefine as modb method.
3763         (elmo-msgdb-change-mark): Abolish.
3764         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3765         (elmo-msgdb-match-condition): Don't use mark.
3766         (elmo-msgdb-overview-get-entity): Abolish.
3767         Split modb part into `modb*.el'.
3768
3769         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3770
3771         * elmo-shimbun.el (shimbun-mua-search-id): Use
3772         `elmo-msgdb-message-entity' instead of
3773         `elmo-msgdb-overview-get-entity'.
3774         (elmo-shimbun-folder-shimbun-header): Ditto.
3775         (elmo-shimbun-get-headers): Ditto.
3776         (elmo-shimbun-update-overview): Ditto.
3777
3778         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3779
3780         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3781
3782         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3783         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3784
3785         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3786         `elmo-msgdb-mark-to-flags'.
3787
3788         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3789         `elmo-msgdb-set-path'.
3790
3791         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3792  
3793         * elmo-version.el (elmo-version): Up to 2.11.13.
3794
3795         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3796
3797         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3798         of mark.
3799
3800 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3801
3802         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3803         mismatch.
3804
3805 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3806
3807         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3808         instead of `elmo-msgdb-get-cached'.
3809         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3810
3811         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3812         (elmo-msgdb-set-cached): Ditto.
3813         (elmo-msgdb-set-flag): Rewrite.
3814         (elmo-msgdb-unset-flag): Ditto.
3815
3816         * elmo-msgdb.el: Rewrite with luna.
3817
3818         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3819         (elmo-folder-msgdb): Follow the change above.
3820         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3821         (elmo-folder-unmark-important): Follow the API change.
3822         (elmo-folder-mark-as-important): Ditto.
3823         (elmo-folder-unmark-read): Ditto.
3824         (elmo-folder-mark-as-read): Ditto.
3825         (elmo-folder-unmark-answered): Ditto.
3826         (elmo-folder-mark-as-answered): Ditto.
3827         (elmo-folder-clear): Likewise.
3828
3829         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3830         instead of `elmo-msgdb-load' (renamed).
3831
3832         * elmo-version.el (elmo-version): Up to 2.11.12.
3833
3834 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3835
3836         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3837         change.
3838         (elmo-message-mark): Abolish.
3839         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3840         instead of `elmo-msgdb-change-mark'.
3841
3842         * elmo-pipe.el (elmo-message-mark): Abolish.
3843
3844         * elmo-multi.el (elmo-message-mark): Ditto.
3845
3846         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3847         (elmo-msgdb-unread-uncached-mark): Ditto.
3848         (elmo-msgdb-unread-cached-mark): Ditto.
3849         (elmo-msgdb-read-uncached-mark): Ditto.
3850         (elmo-msgdb-answered-cached-mark): Ditto.
3851         (elmo-msgdb-answered-uncached-mark): Ditto.
3852         (elmo-msgdb-important-mark): Ditto.
3853         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3854         `use-cache'.
3855         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3856         `flags'.
3857         (elmo-flag-table-load): Changed flag to list of flag.
3858         (elmo-flag-table-set): If flags is nil, set read flag.
3859         (elmo-flag-table-get): Return derived flags from global mark,
3860         cache status and saved flags.
3861         (elmo-msgdb-flag-table): Follow the change above.
3862         (elmo-msgdb-out-of-date-messages): New function.
3863
3864         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3865
3866         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3867
3868         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3869
3870         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3871         (elmo-nntp-msgdb-create-message): Ditto.
3872
3873         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3874
3875         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3876         independent.
3877         (elmo-folder-msgdb-create): Follow the API change.
3878
3879         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3880         (elmo-folder-append-messages): Ditto.
3881
3882         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3883         (elmo-folder-append-buffer): Ditto.
3884
3885         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3886
3887         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3888
3889         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3890         (elmo-archive-parse-mmdf): Ditto.
3891
3892         * elmo-version.el (elmo-version): Up to 2.11.11.
3893
3894 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3895
3896         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3897         `elmo-msgdb-mark'.
3898
3899         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3900
3901         * elmo-pipe.el (elmo-message-flags): Defined.
3902
3903         * elmo-multi.el (elmo-message-flags): Ditto.
3904
3905 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3906
3907         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3908         `elmo-msgdb-delete-msgs'.
3909
3910         * elmo.el (elmo-folder-count-flags): Don't use
3911         `elmo-msgdb-get-mark-alist'.
3912         (elmo-folder-detach-messages): Follow the API change.
3913
3914         * elmo.el (elmo-folder-list-messages): Append killed messages into
3915         result if `visible-only' is nil.
3916
3917         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3918         canceled messages.
3919         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3920         (elmo-folder-update-number): Likewise.
3921
3922         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3923         (elmo-pop3-sort-msgdb-by-original-number): Use
3924         `elmo-msgdb-sort-entities'.
3925
3926         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3927         (elmo-msgdb-sort-by-date): Use it.
3928         (elmo-msgdb-overview-sort-by-date): Abolish.
3929
3930         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3931
3932         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3933         (elmo-msgdb-flags): New function.
3934         (elmo-msgdb-merge): Use elmo-msgdb-append.
3935
3936         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3937         change.
3938
3939         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3940
3941         * elmo-dop.el (elmo-folder-status-dop): Use
3942         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3943
3944 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3945
3946         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3947
3948         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3949
3950         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3951
3952         * elmo-util.el (elmo-with-progress-display): New macro.
3953
3954         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3955
3956 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3957
3958         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3959         `elmo-folder-list-message-entities' instead of
3960         `elmo-msgdb-get-overview'.
3961         (elmo-map-folder-list-message-locations): Ditto.
3962
3963         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3964         methods instead of treat directly).
3965         (elmo-msgdb-clear): Ditto.
3966         (elmo-msgdb-delete-msgs): Ditto.
3967         (elmo-msgdb-sort-by-date): Ditto.
3968
3969         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3970         local variables.
3971         (elmo-nntp-folder-msgdb-create): Follow the API change.
3972
3973         * elmo-version.el (elmo-version): Up to 2.11.10.
3974
3975 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3976
3977         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3978         (elmo-msgdb-flags-to-mark): Ditto.
3979         (elmo-msgdb-append-entity): Ditto.
3980
3981         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3982         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3983         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3984         (elmo-archive-parse-mmdf): Ditto.
3985
3986         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3987
3988         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3989
3990         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3991
3992         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3993
3994         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3995
3996         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3997
3998         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3999
4000         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4001
4002         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
4003         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
4004         to empty msgdb.
4005
4006         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
4007         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
4008         instead of directly construction.
4009         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
4010         instead of construct msgdb.
4011
4012         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
4013         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
4014         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
4015         instead of construct msgdb.
4016
4017 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4018
4019         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
4020         when field is from or subject.
4021
4022 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
4023
4024         * elmo-multi.el (elmo-message-entity-parent): Define.
4025         (elmo-folder-search): Rewrite.
4026
4027 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4028
4029         * elmo-multi.el (elmo-message-cached-p): Define.
4030
4031         * elmo.el (elmo-message-cached-p): New method.
4032         (elmo-message-accessible-p): Use it instead of msgdb API directly.
4033         (elmo-message-flags): New method.
4034         (elmo-message-flagged-p): New function.
4035
4036         * elmo-version.el (elmo-version): Up to 2.11.9.
4037
4038 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4039
4040         * elmo-version.el (elmo-version): Up to 2.11.8.
4041
4042         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
4043
4044         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
4045
4046 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
4047
4048         * elmo.el (elmo-folder-detach-messages): Undo last change.
4049
4050 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
4051
4052         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
4053
4054         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
4055         only when src folder type is pop3.
4056
4057 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
4058
4059         * elmo-msgdb.el (elmo-msgdb-make-index): Use
4060         elmo-msgdb-overview-entity-get-number instead of
4061         elmo-message-entity-number.
4062
4063 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4064
4065         * elmo-version.el (elmo-version): Up to 2.11.7.
4066
4067 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
4068
4069         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
4070         function.
4071
4072         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
4073         (elmo-msgdb-merge): New function.
4074         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
4075         (elmo-msgdb-make-index): Rewrite.
4076
4077         * elmo-version.el (elmo-version): Up to 2.11.6.
4078
4079         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
4080         use it as a the path for loading message entities.
4081
4082         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
4083
4084 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
4085
4086         * elmo-filter.el (elmo-folder-set-message-modified): Set 
4087         message-modified slot of itself if it does not require target msgdb.
4088
4089         * elmo-mime.el (elmo-mime-message-display): Display message entirely
4090         if folder length is zero.
4091         (elmo-mime-display-as-is): Ditto.
4092
4093         * elmo-filter.el (elmo-folder-set-message-modified): Define.
4094
4095         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
4096
4097 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4098
4099         * elmo.el (elmo-folder-set-message-modified): New method.
4100         (elmo-generic-folder-commit): Use it.
4101         (elmo-folder-synchronize): Ditto.
4102
4103         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
4104         (elmo-folder-commit): Remove duplicate definition.
4105
4106 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4107
4108         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
4109
4110 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4111
4112         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
4113         (elmo-strict-folder-diff): Ditto.
4114         (elmo-folder-set-info-max-by-numdb): Simplify.
4115
4116         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
4117         elmo-msgdb-list-messages.
4118
4119         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
4120         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
4121
4122 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4123
4124         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
4125         visible-only is non-nil.
4126         (elmo-folder-confirm-appends): Changed message.
4127         (elmo-folder-synchronize): Added argument disable-killed.
4128
4129         * elmo-multi.el (elmo-folder-synchronize): Added argument
4130         disable-killed.
4131
4132         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
4133
4134         * elmo-version.el (elmo-version): Up to 2.11.5.
4135
4136         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
4137         elmo-list-filter.
4138
4139         * elmo-util.el (elmo-list-filter): Simplify.
4140
4141         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
4142         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
4143         (elmo-generic-folder-diff): Abolish argument.
4144         (elmo-msgdb-load): Don't use number-alist.
4145
4146         * elmo-filter.el (elmo-folder-diff): Abolish argument.
4147
4148         * elmo-pipe.el (elmo-folder-diff): Ditto.
4149
4150         * elmo-nmz.el (elmo-folder-diff): Ditto.
4151
4152         * elmo-net.el (elmo-folder-diff): Ditto.
4153
4154         * elmo-maildir.el (elmo-folder-diff): Ditto.
4155
4156         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
4157
4158         * elmo-multi.el (elmo-folder-diff): Ditto
4159         (elmo-multi-folder-diff): Rewrite.
4160
4161 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4162
4163         * elmo-pipe.el (elmo-folder-msgdb): Define.
4164
4165 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
4166
4167         * elmo.el (elmo-message-set-cached): Define as a method.
4168
4169         * elmo-pipe.el (elmo-message-set-cached): Define.
4170         (elmo-find-fetch-strategy): Ditto.
4171
4172         * elmo-multi.el (elmo-message-set-cached): Define.
4173         (elmo-find-fetch-strategy): Rewrite.
4174
4175         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
4176
4177         * elmo-pipe.el (elmo-message-folder): Fixed definition.
4178
4179 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4180
4181         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
4182         instead of number-alist.
4183
4184         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
4185         mark nor message-id when msgdb of source folder is not loaded.
4186
4187         * elmo.el (elmo-generic-folder-append-messages): Ditto.
4188
4189         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4190
4191 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
4192
4193         * elmo.el (elmo-folder-length): Don't require msgdb.
4194
4195 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
4196
4197         * elmo.el (elmo-message-mark): Cause an error when empty folder.
4198         (elmo-message-field): Ditto.
4199
4200         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
4201         (elmo-map-folder-list-message-locations): Setup `answered-locations'
4202         slot.
4203         (elmo-map-folder-list-answereds): Define.
4204         (elmo-maildir-list-location): Treat 'R' info.
4205         (elmo-folder-msgdb-create): Treat flag-table.
4206         (elmo-folder-append-messages): Save flag-table.
4207
4208 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
4209
4210         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
4211         Use SELECT when elmo-imap4-use-select-to-update-status is t.
4212
4213 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4214
4215         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
4216
4217         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
4218         'read when mark is null.
4219
4220 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
4221
4222         * elmo-version.el (elmo-version): Up to 2.11.4.
4223
4224 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4225
4226         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
4227         (elmo-folder-mark-as-answered): Ditto.
4228
4229 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
4230
4231         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
4232         (elmo-pop3-get-session): Make msgdb directory after session.
4233         (elmo-folder-exists-p): Check exactly at the first time even when the
4234         elmo-pop3-exists-exactly is nil.
4235
4236         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
4237         (elmo-folder-list-messages): Define instead of
4238         elmo-folder-list-messages-internal.
4239         (elmo-folder-check): Check destination folder.
4240         (elmo-folder-synchronize): Drain the pipe.
4241
4242         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
4243         when msgdb is not loaded.
4244
4245         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
4246
4247         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
4248         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
4249         messages.
4250
4251         * elmo.el (elmo-folder-kill-messages-before): New function.
4252         (elmo-folder-kill-messages): Ditto.
4253         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
4254
4255         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
4256         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
4257         killed not by synchronize (e.g. scoring).
4258
4259 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4260
4261         * elmo.el (elmo-folder-search-fast): Return t if condition is not
4262         treated.
4263         (elmo-folder-search): Follow the change above.
4264
4265         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
4266         into the candidates of search field.
4267
4268 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
4269
4270         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
4271         (elmo-msgdb-unset-flag): Ditto.
4272
4273         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
4274
4275 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
4276
4277         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
4278         (elmo-folder-commit): Define.
4279         (elmo-folder-synchronize): Ditto.
4280         (elmo-folder-list-flagged): Ditto.
4281         (elmo-folder-commit): Ditto.
4282         (elmo-folder-length): Ditto.
4283         (elmo-folder-count-flags): Ditto.
4284         (elmo-message-mark): Ditto.
4285         (elmo-message-field): Ditto.
4286         (elmo-message-entity): Ditto.
4287         (elmo-message-folder): Ditto.
4288
4289 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
4290
4291         * elmo.el (elmo-message-field): Define as a method.
4292
4293         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
4294         (elmo-message-field): Define.
4295
4296         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
4297         (elmo-folder-list-importants): Ditto.
4298         (elmo-folder-list-answereds): Ditto.
4299
4300         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
4301         qualifier.
4302         (elmo-folder-mark-as-read): Ditto.
4303         (elmo-folder-unmark-read): Ditto.
4304         (elmo-folder-mark-as-answered): Ditto.
4305         (elmo-folder-unmark-answered): Ditto.
4306         (elmo-folder-list-flagged): Define.
4307         (elmo-folder-commit): Ditto.
4308         (elmo-folder-length): Ditto.
4309         (elmo-folder-count-flags): Ditto.
4310
4311 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4312
4313         * elmo.el (elmo-folder-detach-messages): New method.
4314         (elmo-folder-move-messages): Use it.
4315         (elmo-folder-synchronize): Ditto.
4316
4317         * elmo-multi.el (elmo-folder-detach-messages): Define.
4318
4319         * elmo.el (elmo-message-copy-entity): New function.
4320         (elmo-message-entity-set-number): Ditto.
4321         (elmo-message-mark): Define as method.
4322
4323         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4324         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4325         (elmo-message-entity): Fixed last change.
4326         (elmo-message-mark): Define.
4327         (elmo-folder-msgdb-create): Abolish.
4328         (elmo-multi-folder-append-msgdb): Ditto.
4329         (elmo-multi-folder-diff): Fixed.
4330         (elmo-multi-split-number-alist): Removed.
4331         (elmo-multi-split-mark-alist): Removed.
4332         (elmo-folder-list-messages): Define.
4333         (elmo-folder-list-messages-internal): Removed.
4334
4335         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4336         local file messages.
4337         (elmo-folder-msgdb-create): Fixed read mark.
4338
4339 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4340
4341         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4342         if mark is nil.
4343
4344 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4345
4346         * elmo.el (elmo-folder-list-message-entities): Define as inline
4347         function.
4348         (elmo-folder-messages): Abolish.
4349
4350         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4351         folder.
4352         (elmo-folder-synchronize): Define.
4353         (elmo-message-entity): Define.
4354
4355 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4356
4357         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4358         elmo-imap4-session-select-mailbox.
4359
4360         * elmo.el (elmo-folder-move-messages): Don't display any message.
4361
4362         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4363         parsing.
4364         (elmo-imap4-session-check): Don't wait CHECK response.
4365         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4366
4367 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4368
4369         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4370
4371 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4372
4373         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4374         API.
4375         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4376
4377
4378         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4379         (elmo-folder-list-message-entities): Added argument in-msgdb and
4380         numbers.
4381         (elmo-folder-synchronize): Define as a method.
4382
4383         * elmo-nntp.el (elmo-folder-initialize): Don't use
4384         elmo-nntp-default-user if zero-length username is specified
4385         explicitly.
4386
4387 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4388
4389         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4390         server name in case with username.
4391         (XXX: this is ad-hoc fix against username includes "@", it
4392         should be solved fundamentally)
4393
4394 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4395
4396         * elmo-nntp.el (elmo-nntp-debug): New function.
4397         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4398         (elmo-network-authenticate-session): Hide auth-info from the log.
4399
4400         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4401         user name if it is equal to elmo-nntp-default-user.
4402
4403 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4404
4405         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4406         instead of shimbun-server-internal;
4407         Use shimbun-current-group instead of shimbun-current-group-internal.
4408         (elmo-folder-plugged-p): Use shimbun-server instead of
4409         shimbun-server-internal.
4410         (elmo-folder-set-plugged): Ditto.
4411         (elmo-net-port-info): Ditto.
4412         (elmo-folder-check): Ditto.
4413         (elmo-folder-expand-msgdb-path): Ditto.
4414         (elmo-folder-list-subfolders): Ditto.
4415
4416 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4417
4418         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4419         Convert field-name to lower case.
4420         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4421
4422 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4423
4424         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4425         `message' and `error' take format string.
4426
4427 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4428
4429         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4430
4431 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4432
4433         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4434         recursive call (can't byte compile on emacs 20.7).
4435
4436 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4437
4438         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4439         (elmo-folder-list-message-entities): New API.
4440         (elmo-message-entity): Ditto.
4441         (elmo-message-entity-parent): Ditto.
4442         (elmo-folder-do-each-message-entity): Ditto.
4443         (elmo-message-entity-number): Ditto.
4444         (elmo-message-entity-field): Ditto.
4445         (elmo-message-entity-set-field): Ditto.
4446         (elmo-folder-count-flags): Ditto.
4447         (elmo-folder-length): Ditto.
4448
4449         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4450         not.
4451
4452         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4453         (elmo-msgdb-count-marks): Abolish.
4454         (elmo-msgdb-make-entity): Ditto.
4455         (elmo-msgdb-do-each-entity): Ditto.
4456         (elmo-msgdb-message-entity): New inline function.
4457         (elmo-msgdb-message-entity-field): Ditto.
4458         (elmo-msgdb-message-entity-set-field): Ditto.
4459         (elmo-msgdb-make-message-entity): New function.
4460
4461 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4462
4463         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4464         to flag. (All other related portions are changed.)
4465         (elmo-folder-msgdb-create): Likewise.
4466         (elmo-generic-folder-append-messages): Use flag-table instead of
4467         seen-list.
4468         (elmo-folder-move-messages): Removed redundant process.
4469         (elmo-folder-synchronize): Likewise.
4470
4471         * elmo-msgdb.el (elmo-flag-table-get): New function.
4472         (elmo-flag-table-save): Fixed.
4473         (elmo-msgdb-length): New inline function.
4474         (elmo-msgdb-flag-table): New function.
4475         (elmo-msgdb-mark): Add optional argument new.
4476         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4477         (elmo-msgdb-seen-list): Ditto.
4478         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4479
4480
4481 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4482
4483         * elmo.el (elmo-message-set-mark): Abolish.
4484         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4485         (All related portions are changed.)
4486
4487         * elmo-msgdb.el (toplevel): Added comment.
4488         (elmo-load-msgdb): Added 4th element `path'.
4489         (elmo-msgdb-append): Follow the change above.
4490         (elmo-msgdb-clear): Ditto.
4491         (elmo-msgdb-delete-msgs): Ditto.
4492         (elmo-msgdb-get-path): New inline function.
4493         (elmo-msgdb-set-path): Ditto.
4494         (elmo-flag-table-filename): New variable.
4495         (elmo-flag-table-load): New function.
4496         (elmo-flag-table-set): Ditto.
4497         (elmo-flag-table-save): Ditto.
4498         (elmo-msgdb-get-field-value): Abolish.
4499         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4500
4501 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4502
4503         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4504         the folder has been deleted successfully.
4505         * elmo-imap4.el (elmo-folder-delete): Ditto.
4506         * elmo-archive.el (elmo-folder-delete): Ditto.
4507         * elmo-localdir.el (elmo-folder-delete): Ditto.
4508         * elmo-maildir.el (elmo-folder-delete): Ditto.
4509
4510 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4511
4512         * elmo-util.el (elmo-string-member-ignore-case): New function.
4513         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4514         (elmo-imap4-fetch-callback-1-subr): Likewise.
4515
4516 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4517
4518         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4519         the case of the name attribute "\Noselect".
4520
4521 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4522
4523         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4524
4525         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4526         flist, is not always a member of onum-alist.
4527
4528 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4529
4530         * elmo-version.el (elmo-version): Up to 2.11.3.
4531
4532 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4533
4534         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4535         copied from localdir's one.
4536
4537         * elmo-pipe.el (elmo-folder-rename): New method, rename
4538         destination folder with leaving source folder as it is.
4539
4540 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4541
4542         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4543         replace-regexp.
4544
4545 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4546
4547         * elmo-version.el (elmo-version): Up to 2.11.2.
4548
4549 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4550
4551         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4552         shimbun-open in case of "@".
4553         (elmo-folder-open-internal): Cope with shimbun = nil case.
4554         (elmo-folder-plugged-p): Ditto.
4555         (elmo-folder-list-subfolders): Make list for "@/" group.
4556
4557 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4558
4559         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4560         mailbox (e.g. for %~/something).
4561
4562 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4563
4564         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4565         Replace nested conditional with guard clauses.
4566
4567 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4568
4569         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4570         error [wl:11327].
4571
4572         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4573         print-depth.
4574
4575 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4576
4577         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4578         Replace nested conditional with guard clauses.
4579
4580 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4581
4582         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4583         (elmo-passwd-alist-save): Ditto.
4584         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4585
4586 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4587
4588         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4589         dir-name only if it is absolute path.
4590         (TODO: distinguish +/something and +something)
4591
4592 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4593
4594         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4595         path for "+~/something".
4596
4597 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4598
4599         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4600         as non-directory, cause error before rename-file.
4601         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4602         apropriately, mimic localdir's one.
4603         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4604
4605 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4606
4607         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4608
4609 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4610
4611         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4612
4613         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4614         
4615         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4616         is included in the global-mark or not.
4617
4618 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4619
4620         * utf7.el (toplevel): Avoid error when the function
4621         find-coding-system does not exist.
4622
4623 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4624
4625         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4626         cache even if the folder is plugged.
4627         (elmo-nntp-search-primitive): Do nothing when body search is
4628         invoked (although it is not used by the change above).
4629         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4630
4631 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4632
4633         * elmo-version.el (elmo-version): Up to 2.11.1.
4634
4635 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4636
4637         * elmo-archive.el: Specify charset.
4638
4639 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4640
4641         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4642         process buffer lives or not.
4643
4644         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4645         while flushing queues (It causes infinite loop).
4646
4647 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4648
4649         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4650
4651 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4652
4653         * utf7.el (toplevel): Check the ucs features dynamically.
4654         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4655
4656         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4657         folder is creatabe or not if it already exists.
4658
4659 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4660
4661         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4662
4663         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4664
4665         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4666         (elmo-imap4-read-response): Take care of garbage response.
4667
4668 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4669
4670         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4671         just return nil instead of error.
4672
4673 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4674
4675         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4676         search-key is "body".
4677
4678 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4679
4680         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4681         of elmo-string-matched-assoc to use match-data.
4682         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4683
4684 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4685
4686         * elmo-split.el (elmo-split->): New function.
4687         (elmo-split-<): Ditto.
4688
4689 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4690
4691         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4692         workaround for invalid message-id.
4693
4694 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4695
4696         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4697         return normal pop3 session or pop3 biff session.
4698
4699 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4700
4701         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4702         info part to the cur files when the new files already have it.
4703         (Adviced by Jared Rhine <jared@wordzoo.com>)
4704
4705 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4706
4707         * elmo-split.el (elmo-split-default-action): New variable.
4708         (elmo-split-subr): Use it if all other conditions are passed.
4709         Extend `fname' and rename it as `action'. (implemented
4710         Teranishi-san's idea in [wl:10800])
4711
4712 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4713
4714         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4715         * elmo-util.el: Ditto.
4716
4717 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4718
4719         * elmo.el (elmo-message-accessible-p): Renamed from
4720         elmo-message-cached-p and rewritten.
4721
4722 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4723
4724         * elmo.el (elmo-folder-list-flagged): New generic function.
4725         (elmo-folder-list-importants): New implementation.
4726         (elmo-folder-list-answereds): Ditto.
4727         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4728         Added 'digest'.
4729         (elmo-message-cached-p): New function.
4730         (elmo-message-set-flag): Ditto (no content).
4731         (elmo-message-unset-flag): Ditto.
4732         (elmo-folder-list-messages-mark-match): Abolish.
4733
4734         * elmo-util.el (elmo-regexp-opt): New function.
4735
4736         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4737         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4738         Added 'digest'.
4739         (elmo-msgdb-list-flagged): New function.
4740
4741         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4742         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4743         Added 'digest'.
4744
4745         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4746
4747 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4748
4749         * elmo-version.el (elmo-version): Up to 2.11.0.
4750
4751 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4752
4753         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4754         `elmo-file-cache-exists-p'; use proper mark that depends on
4755         `use-cache'.
4756         (elmo-msgdb-unset-flag): Ditto.
4757         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4758
4759         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4760         with 4th argument `use-cache'.
4761
4762 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4763
4764         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4765         (elmo-folder-mark-as-important): Ditto.
4766         (elmo-folder-unmark-read): Ditto.
4767         (elmo-folder-mark-as-read): Ditto.
4768         (elmo-folder-unmark-answered): Ditto.
4769         (elmo-folder-mark-as-answered): Ditto.
4770
4771         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4772         message status.
4773         (elmo-msgdb-mark): Likewise.
4774         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4775         (elmo-msgdb-unset-flag): Likewise.
4776
4777         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4778
4779 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4780
4781         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4782         `last:' filter.
4783
4784 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4785
4786         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4787         set spool-length to 0.
4788
4789 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4790
4791         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4792         (elmo-dop-queue-flush): Fixed last change.
4793
4794 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4795
4796         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4797         if require-msgdb slot is nil.
4798         (elmo-folder-list-importants): Likewise.
4799
4800 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4801
4802         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4803         mark is changed.
4804
4805         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4806         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4807         is changed.
4808
4809 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4810
4811         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4812
4813 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4814
4815         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4816
4817         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4818
4819 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4820
4821         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4822         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4823
4824 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4825
4826         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4827         the problem reported by Sean Rima [wl-en:180].
4828
4829 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4830
4831         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4832
4833         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4834
4835         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4836
4837         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4838
4839         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4840
4841         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4842
4843         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4844
4845 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4846
4847         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4848         status number.
4849
4850 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4851
4852         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4853         (elmo-folder-mark-as-read): Follow the API change.
4854         (elmo-message-set-cached): New function.
4855
4856         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4857
4858         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4859
4860         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4861         (elmo-folder-mark-as-important): Ditto.
4862         (elmo-folder-unmark-read): Ditto.
4863         (elmo-folder-mark-as-read): Ditto.
4864         (elmo-folder-unmark-answered): Ditto.
4865         (elmo-folder-mark-as-answered): Ditto.
4866
4867         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4868         (elmo-folder-unmark-important): Ditto.
4869         (elmo-folder-mark-as-read): Ditto.
4870         (elmo-folder-unmark-read): Ditto.
4871         (elmo-folder-mark-as-answered): Ditto.
4872         (elmo-folder-unmark-answered): Ditto.
4873
4874         * elmo-mark.el (toplevel): Removed some mark method definitions.
4875
4876         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4877         (elmo-map-folder-mark-as-answered): Ditto.
4878         (elmo-folder-unmark-important): Add :before qualifier.
4879         (elmo-folder-mark-as-important): Ditto.
4880         (elmo-folder-unmark-read): Ditto.
4881         (elmo-folder-mark-as-read): Ditto.
4882         (elmo-folder-unmark-answered): Define.
4883         (elmo-folder-mark-as-answered): Ditto.
4884
4885         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4886         (elmo-map-folder-unmark-answered): Ditto.
4887
4888         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4889
4890         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4891         (elmo-folder-mark-as-important): Ditto.
4892         (elmo-folder-unmark-read): Ditto.
4893         (elmo-folder-mark-as-read): Ditto.
4894         (elmo-folder-unmark-answered): Ditto.
4895         (elmo-folder-mark-as-answered): Ditto.
4896
4897         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4898         `mark'; evaluate mark condition.
4899         (elmo-msgdb-match-condition-internal): New function.
4900         (elmo-msgdb-match-condition): Call it; changed argument.
4901
4902         * elmo.el (elmo-folder-search): Follow the API change on
4903         `elmo-msgdb-match-condition'.
4904
4905 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4906
4907         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4908         original mark is non-nil.
4909
4910 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4911
4912         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4913         (elmo-map-folder-list-answereds): New method.
4914         (elmo-folder-list-unreads): Add :around qualifier.
4915         (elmo-folder-list-importants): Ditto.
4916         (elmo-folder-list-answereds): Ditto.
4917
4918 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4919
4920         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4921
4922         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4923         method if msgdb is not required.
4924         (elmo-filter-folder-list-importants): Don't treat global-mark.
4925
4926         * elmo.el (elmo-folder-list-importants): Ditto.
4927
4928         * elmo-net.el (elmo-folder-list-importants): Ditto.
4929
4930         * elmo-map.el (elmo-folder-list-importants): Ditto.
4931
4932         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4933
4934         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4935         (elmo-imap4-folder-list-any-plugged): New function.
4936         (elmo-imap4-search-internal-primitive): Use it.
4937
4938         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4939         only when require-msgdb slot is non-nil.
4940         (elmo-folder-close): Clear target folder's msgdb.
4941
4942 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4943
4944         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4945         (elmo-pop3-msgdb-create-by-header): Ditto.
4946         (elmo-pop3-msgdb-create-message): Ditto.
4947
4948         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4949
4950         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4951
4952         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4953
4954         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4955         (elmo-folder-msgdb-create): Ditto.
4956         (elmo-nntp-folder-msgdb-create): Ditto.
4957         (elmo-nntp-msgdb-create-by-header): Ditto.
4958         (elmo-nntp-msgdb-create-message): Ditto.
4959         (elmo-folder-list-unreads): Define.
4960
4961         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4962         (elmo-folder-append-messages): Ditto.
4963         (elmo-folder-list-unreads): Define.
4964         (elmo-folder-list-importants): Ditto.
4965         (elmo-folder-list-answereds): Ditto.
4966
4967         * elmo-net.el (elmo-folder-list-unreads): Define.
4968         (elmo-folder-list-importants): Ditto.
4969         (elmo-folder-list-answereds): Ditto.
4970         (elmo-folder-list-answereds-plugged): Ditto.
4971         (elmo-folder-msgdb-create): Follow the API change.
4972         (elmo-folder-msgdb-create-unplugged): Ditto.
4973         (elmo-folder-unmark-answered): Define.
4974         (elmo-folder-mark-as-answered-unplugged): Ditto.
4975         (elmo-folder-unmark-answered-unplugged): Ditto.
4976
4977         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4978         (elmo-msgdb-unread-uncached-mark): Ditto.
4979         (elmo-msgdb-unread-cached-mark): Ditto.
4980         (elmo-msgdb-read-uncached-mark): Ditto.
4981         (elmo-msgdb-answered-cached-mark): Ditto.
4982         (elmo-msgdb-answered-uncached-mark): Ditto.
4983         (elmo-msgdb-important-mark): Ditto.
4984         (elmo-msgdb-set-mark): Rewrite.
4985         (elmo-msgdb-count-marks): Rewrite.
4986         (elmo-msgdb-mark-alist-set): Abolish.
4987         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4988         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4989
4990         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4991         (elmo-folder-close): Define.
4992         (elmo-folder-msgdb-create): Follow the API change.
4993         (elmo-folder-list-unreads): Rewrite.
4994         (elmo-folder-mark-as-important): Ditto.
4995         (elmo-folder-unmark-important): Ditto.
4996         (elmo-folder-mark-as-read): Ditto.
4997         (elmo-folder-unmark-read): Ditto.
4998         (elmo-folder-mark-as-answered): Define.
4999         (elmo-folder-unmark-answered): Ditto.
5000
5001         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
5002         (elmo-folder-append-messages): Ditto.
5003
5004         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
5005
5006         * elmo-map.el (elmo-folder-list-unreads): Ditto.
5007         (elmo-folder-list-importants): Ditto.
5008
5009         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
5010         (elmo-folder-append-messages): Ditto.
5011
5012         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
5013         change.
5014         (elmo-folder-msgdb-create-plugged): Ditto.
5015         (elmo-folder-append-messages): Ditto.
5016         (elmo-folder-list-answereds-plugged): Define.
5017         (elmo-imap4-search-internal-primitive): Add `mark' processing.
5018         (elmo-folder-unmark-answered-plugged): Define.
5019         (elmo-folder-mark-as-answered-plugged): Ditto.
5020         (elmo-folder-search-requires-msgdb-p): Ditto.
5021
5022         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
5023         (elmo-folder-initialize): Set it.
5024         (elmo-folder-msgdb): Define.
5025         (elmo-folder-check): Call elmo-folder-synchronize.
5026         (elmo-folder-close): Define.
5027         (elmo-folder-commit): Ditto.
5028         (elmo-folder-msgdb-create): Rewrite.
5029         (elmo-folder-list-unreads): Ditto.
5030         (elmo-folder-list-importants): Ditto.
5031         (elmo-folder-mark-as-read): Ditto.
5032         (elmo-folder-unmark-read): Ditto.
5033         (elmo-folder-mark-as-important): Ditto.
5034         (elmo-folder-unmark-important): Ditto.
5035         (elmo-folder-mark-as-answered): Define.
5036         (elmo-folder-unmark-answered): Ditto.
5037
5038         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
5039         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
5040         (elmo-dop-queue-method-name-alist): Likewise.
5041         (elmo-folder-mark-as-answered-dop): New inline function.
5042         (elmo-folder-unmark-answered-dop): Ditto.
5043         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
5044
5045         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
5046         (elmo-folder-msgdb-create): Ditto.
5047         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
5048         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
5049         (elmo-archive-parse-mmdf): Ditto.
5050
5051         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
5052         (elmo-folder-list-unreads-internal): Ditto.
5053
5054         * elmo.el (elmo-folder-msgdb): Define as generic function.
5055         (elmo-folder-list-messages): Added argument `in-msgdb'.
5056         (elmo-folder-list-unreads): Define as generic function.
5057         (elmo-folder-list-importants): Ditto.
5058         (elmo-folder-list-answereds): Ditto.
5059         (elmo-folder-list-messages-with-global-mark): New function.
5060         (elmo-folder-msgdb-create): Removed mark arguments.
5061         (elmo-folder-unmark-answered): New generic function.
5062         (elmo-folder-mark-as-answered): Ditto.
5063         (elmo-folder-append-messages): Removed argunment `unread-marks'
5064         (elmo-folder-list-unreads-internal): Abolish.
5065         (elmo-folder-list-importants-internal): Ditto.
5066         (elmo-folder-search-requires-msgdb-p): New generic function.
5067         (elmo-folder-search-requires-msgdb-p-internal): New function.
5068         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
5069         elmo-msgdb-load.
5070         (elmo-folder-search-fast): Added key 'mark'.
5071         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
5072         instead of unread-marks argument.
5073         (elmo-folder-move-messages): Removed argunment `unread-marks'
5074         (elmo-folder-unmark-important): Define.
5075         (elmo-folder-mark-as-important): Ditto.
5076         (elmo-folder-unmark-read): Ditto.
5077         (elmo-folder-mark-as-read): Ditto.
5078         (elmo-folder-unmark-answered): Ditto.
5079         (elmo-folder-mark-as-answered): Ditto.
5080         (elmo-folder-replace-marks): Abolish.
5081         (elmo-generic-folder-append-msgdb): Append msgdb before checking
5082         duplicates.
5083         (elmo-folder-synchronize): Removed mark arguments;
5084         return crosspost only number.
5085
5086 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5087
5088         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
5089         Remove redundunt connectivity check.
5090
5091 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5092
5093         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
5094         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
5095
5096 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
5097
5098         * pldap.el (ldap-decode-string): Return string as-is if
5099         `ldap-coding-system' is nil.
5100         (ldap-encode-string): Ditto.
5101         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
5102         (ldap-default-host): Fixed docstring.
5103
5104 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
5105
5106         * elmo-util.el (elmo-warning): Define as a macro which uses
5107         `display-warning' if it is defined as a function.
5108
5109         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
5110         (elmo-split-equal): Use it.
5111         (elmo-split-match): Ditto.
5112         (elmo-split-message-entity): New buffer-local variable.
5113         (elmo-split-subr): Set it.
5114
5115         * elmo-version.el (elmo-version): Up to 2.9.15.
5116
5117 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
5118
5119         * elmo-imap4.el (elmo-network-initialize-session):
5120         Check capability after starttls.
5121
5122 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
5123
5124         * elmo-util.el (elmo-list-delete): Added optional argument
5125         DELETE-FUNCTION.
5126
5127         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
5128
5129         * elmo-util.el (elmo-warning): Ignore errors while recenter.
5130
5131         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
5132
5133         * elmo-imap4.el (elmo-folder-initialize): Don't use
5134         elmo-imap4-default-mailbox.
5135
5136 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5137
5138         * elmo-split.el (toplevel): Use `product-provide'.
5139         (elmo-split): Checkdoc.
5140
5141 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
5142
5143         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
5144         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
5145         the function `elmo-imap4-debug-1'.
5146
5147 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5148
5149         * elmo-split.el (elmo-split): Moved to run hooks and to show
5150         message from elmo-split-subr.
5151         (elmo-split-subr): Follow the change above.
5152
5153         * elmo-split.el (elmo-split-subr): New function (renamed from
5154         elmo-split-subr).
5155         (elmo-split): Changed to call elmo-split-subr by element of
5156         elmo-split-folder.
5157         (elmo-split-folder): Changed customization type to choice.
5158
5159 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5160
5161         * elmo-split.el (elmo-split-and): Fixed condition.
5162
5163 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5164
5165         * elmo-split.el: New file.
5166         (elmo-split): Fixed logic.
5167         Display "Test:" instead of "Folder:" when reharsal.
5168
5169         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
5170         explicitly.
5171
5172         * elmo-version.el (elmo-version): Up to 2.9.14.
5173
5174         * elmo-util.el (elmo-expand-newtext): New function (renamed from
5175         wl-expand-newtext).
5176
5177 2002-06-10  Kenichi Sato <ksato@sonycom.com>
5178
5179         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
5180         message with no message-id field.
5181
5182 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
5183
5184         * elmo-version.el (elmo-version): Up to 2.9.13.
5185
5186         * elmo-dop.el (elmo-folder-status-dop): Fix.
5187
5188 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
5189
5190         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
5191
5192         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
5193         changing default value of default-mime-charset.
5194         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
5195
5196         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
5197
5198         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
5199         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
5200         instead of elmo-dop-queue-method-name-alist to check merging queue.
5201         (elmo-folder-delete-messages-dop): Delete from queue if negative
5202         message number.
5203         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
5204         file is already removed.
5205
5206 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
5207
5208         * elmo-vars.el: Bind colon keywords for old Emacsen.
5209
5210 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5211
5212         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
5213         against non-exsisting charset.
5214
5215 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
5216
5217         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
5218         Use eword-decode-and-unfold-unstructured-field-body.
5219
5220         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
5221         (elmo-msgdb-create-overview-from-buffer): Use document charset if
5222         exists to decode raw subject string.
5223         (toplevel): Require 'mime.
5224
5225         * elmo-version.el (elmo-version): Up to 2.9.12.
5226
5227 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
5228
5229         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
5230         (elmo-msgdb-set-mark): Ditto.
5231
5232         * elmo-version.el (elmo-version): Up to 2.9.11.
5233
5234 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
5235
5236         * elmo-util.el (elmo-delete-match-files): New function.
5237
5238         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
5239         instead of elmo-delete-directory.
5240
5241         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
5242         elmo-hash-minimun-size as 63.
5243
5244         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
5245         elmo-diff-unread is nil.
5246
5247         * elmo-imap4.el (elmo-folder-open): Fix.
5248
5249         * elmo.el (elmo-message-mark): Rewrite.
5250         (elmo-message-field): Ditto.
5251         (elmo-message-set-mark): Ditto.
5252         (elmo-folder-replace-marks): New function.
5253         (elmo-generic-folder-append-msgdb): Removed third argument for
5254         elmo-msgdb-append.
5255         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
5256         (elmo-msgdb-load): New implementation.
5257
5258         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
5259
5260         * elmo-util.el (elmo-list-insert): New implementation.
5261
5262         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
5263         argument for elmo-msgdb-append.
5264         
5265
5266         * elmo-msgdb.el (elmo-load-msgdb): New function.
5267         (elmo-make-msgdb): Ditto.
5268         (elmo-msgdb-get-index): New inline function.
5269         (elmo-msgdb-set-index): Ditto.
5270         (elmo-msgdb-get-entity-hashtb): Ditto.
5271         (elmo-msgdb-get-mark-hashtb): Ditto.
5272         (elmo-msgdb-get-mark): Ditto.
5273         (elmo-msgdb-set-mark): Ditto.
5274         (elmo-msgdb-count-marks): Ditto.
5275         (elmo-msgdb-get-number): Ditto.
5276         (elmo-msgdb-get-field): Ditto.
5277         (elmo-msgdb-seen-list): Ditto.
5278         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
5279         (elmo-msgdb-delete-msgs): Follow the changes above.
5280         (elmo-msgdb-overview-get-entity): Ditto.
5281         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
5282         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
5283         and rewritten.
5284         (elmo-msgdb-make-index): Likewise.
5285         (elmo-msgdb-append): Removed third argument.
5286         (elmo-msgdb-clear): Clear index as nil.
5287         (elmo-folder-set-info-hashtb): Removed.
5288         (elmo-folder-set-info-max-by-numdb): Ditto.
5289         (elmo-folder-info-make-hashtb): Ditto.
5290
5291         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
5292
5293         * elmo-map.el (elmo-folder-pack-number): Ditto.
5294
5295 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
5296
5297         * elmo-version.el (elmo-version): Up to 2.9.10.
5298
5299         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
5300
5301         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
5302
5303 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
5304
5305         * elmo-utils.el (elmo-make-directory): Add option.
5306         Default file mode is 700.
5307
5308 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5309
5310         * elmo-shimbun.el (elmo-folder-local-p): Defined.
5311
5312 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
5313
5314         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
5315         mime-charset.
5316
5317         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
5318         and "smaller".
5319
5320 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5321
5322         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5323         (elmo-shimbun-folder-entity-hash): New function.
5324         (elmo-shimbun-folder-shimbun-header): Ditto.
5325         (elmo-shimbun-entity-to-header): Ditto.
5326         (elmo-shimbun-msgdb-to-headers): Removed.
5327         (elmo-shimbun-folder-setup): Ditto.
5328         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5329         for hash key.
5330         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5331         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5332         Removed useless local bind.
5333         (elmo-folder-open-internal): Don't call
5334         `elmo-shimbun-folder-setup'.
5335         (elmo-folder-close-internal): Clear entity-hash slot.
5336         (elmo-folder-clear): Ditto.
5337         (elmo-shimbun-msgdb-create-entity): Use
5338         `elmo-shimbun-folder-shimbun-header'.
5339         (elmo-map-message-fetch): Ditto.
5340         (elmo-shimbun-update-overview): Use overview entity instead of
5341         shimbun header to lookup id by references.
5342         (elmo-map-folder-list-message-locations): Use not only headers but
5343         also overviews to list locations.
5344
5345 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5346
5347         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5348         msgdb path.
5349
5350         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5351
5352 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5353
5354         * elmo-util.el (elmo-read-search-condition-internal): Give default
5355         value for date.
5356
5357 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5358
5359         * elmo-util.el (elmo-condition-parse-search-value): Accept
5360         YYYY-MM-DD format to search.
5361         * elmo-date.el (elmo-date-get-datevec): Likewise.
5362
5363 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5364
5365         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5366         debugging code.
5367
5368 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5369
5370         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5371         from t.
5372
5373         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5374
5375         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5376         case from `elmo-folder-exists-p'.
5377         (elmo-folder-exists-p): Removed.
5378         (elmo-folder-creatable-p) Ditto.
5379
5380         * elmo-net.el (elmo-folder-create): Defined.
5381         (elmo-folder-create-unplugged): New function.
5382         (elmo-folder-exists-p): Changed default value to nil from t.
5383
5384         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5385         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5386
5387         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5388         `elmo-create-folder-dop' and append queue
5389         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5390         (elmo-folder-create-dop-delayed): New function.
5391
5392         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5393
5394         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5395
5396         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5397         (elmo-folder-writable-p) : Ditto.
5398
5399         * elmo-version.el (elmo-version): Up to 2.9.9.
5400
5401 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5402
5403         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5404         `elmo-message-use-cache-p' returns nil.
5405         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5406         (ignore cache file and refer the substance in local folders)
5407
5408 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5409
5410         * elmo-version.el (elmo-version): Up to 2.9.8.
5411
5412 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5413
5414         * elmo-version.el (elmo-version): Up to 2.9.7.
5415
5416         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5417
5418 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5419
5420         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5421
5422 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5423
5424         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5425         from --early.
5426         (elmo-map-folder-list-message-locations): Reverse location list.
5427
5428 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5429
5430         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5431
5432 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5433
5434         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5435         as a key.
5436         (elmo-nntp-folder-list-subfolders): Follow the change above.
5437
5438 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5439
5440         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5441         name if authentication type is specified.
5442
5443 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5444
5445         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5446         variable.
5447         (elmo-default-nntp-stream-type): Ditto.
5448         (elmo-default-pop3-stream-type): Ditto.
5449
5450 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5451
5452         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5453
5454 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5455
5456         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5457         elmo-vars.el.
5458         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5459
5460         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5461         (elmo-maildir-folder-path): Ditto.
5462         (elmo-maildir-list): Ditto (abolished).
5463
5464 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5465
5466         * elmo-version.el (elmo-version): Up to 2.9.6.
5467
5468 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5469
5470         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5471         (elmo-maildir-folder-path): Ditto.
5472         (elmo-msgdb-directory): Ditto.
5473         (elmo-passwd-life-time): Ditto.
5474         (elmo-msgdb-extra-fields): Ditto.
5475         (elmo-enable-disconnected-operation): Ditto.
5476
5477 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5478
5479         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5480         other choices.
5481         (elmo-pop3-default-authenticate-type): Ditto.
5482
5483 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5484
5485         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5486         choices for custom.
5487         (elmo-pop3-default-authenticate-type): Ditto.
5488
5489 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5490
5491         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5492         mailbox to new-folder.
5493
5494 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5495
5496         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5497         less than new, set new as unread.
5498
5499         * elmo-util.el (elmo-string): Don't put text-property if nil.
5500
5501 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5502
5503         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5504         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5505
5506 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5507
5508         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5509         is nil on `completing-read'.
5510
5511 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5512
5513         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5514         for namespace part.
5515         (elmo-imap4-parse-namespace-subr): Ditto.
5516         (elmo-folder-list-subfolders): Append a delimiter when the specified
5517         folder path is a root with namespace and does not end with delimiter.
5518
5519 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5520
5521         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5522         was used.
5523
5524 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5525
5526         * elmo-util.el (elmo-save-buffer): The first argument of message
5527         is a format control string.
5528
5529 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5530
5531         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5532         `elmo-folder-diff').
5533         (elmo-diff-unread): Likewise.
5534
5535 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5536
5537         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5538         is t on `completing-read'.
5539
5540 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5541
5542         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5543         method of target folder with self mark-alist if MARK-ALIST is nil.
5544
5545 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5546
5547         * elmo-version.el (elmo-version): Up to 2.9.5.
5548
5549 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5550
5551         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5552         (elmo-dop-merge-funcs): Remove.
5553
5554 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5555
5556         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5557         Return t if PATH is directory, too.
5558         Use `dolist' instead of while loop.
5559
5560 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5561
5562         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5563         is deleted.
5564
5565 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5566
5567         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5568         return value to t.
5569         (elmo-folder-list-messages-unplugged): Return t if
5570         elmo-enable-disconnected-operation is nil.
5571
5572         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5573         `elmo-folder-list-messages-internal'.
5574
5575 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5576
5577         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5578         Change to looking-at `[23][0-9]+'.
5579         (elmo-network-initialize-session): Use 'error-msg'
5580         * elmo-net.el (elmo-network-open-session): Set unplugged
5581         if elmo-network-initialize-session returns 'elmo-open-err.
5582
5583 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5584
5585         * elmo-version.el (elmo-version): Up to 2.9.4.
5586
5587 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5588
5589         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5590         `elmo-folder-list-messages-internal'.
5591
5592 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5593
5594         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5595         (elmo-message-match-condition): New method.
5596         (elmo-folder-search-fast): New inline function.
5597         (elmo-msgdb-search): Removed.
5598
5599         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5600         target folder if it is unplugged.
5601         (elmo-folder-list-messages-internal): Return t if target folder is
5602         unplugged and itself is persistent; In this case, use list be
5603         searched already.
5604
5605         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5606         (elmo-msgdb-search-internal-primitive): Ditto.
5607         (elmo-msgdb-match-condition): New function.
5608         (elmo-msgdb-match-condition-primitive): Ditto.
5609
5610         * elmo-util.el (elmo-filter-condition-p): New macro.
5611
5612         * elmo-cache.el (elmo-folder-search): Removed.
5613
5614         * elmo-localdir.el (elmo-folder-search): Ditto.
5615
5616         * elmo-maildir.el (elmo-folder-search): Ditto.
5617
5618         * elmo-mark.el (elmo-folder-search): Ditto.
5619
5620         * elmo-nmz.el (elmo-folder-search): Ditto.
5621
5622         * elmo-sendlog.el (elmo-folder-search): Ditto.
5623
5624         * elmo-shimbun.el (elmo-folder-search): Ditto.
5625
5626         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5627         if folder is unplugged.
5628
5629         * elmo-nntp.el (elmo-folder-search): Likewise.
5630         (elmo-nntp-search-internal): New function.
5631
5632         * elmo-version.el (elmo-version): Up to 2.9.3.
5633
5634 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5635
5636         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5637
5638 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5639
5640         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5641
5642 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5643
5644         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5645
5646 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5647
5648         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5649         (elmo-map-folder-list-message-locations): Do drive letter conversion
5650         on Windows environment.
5651         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5652         (elmo-map-message-fetch): Ditto.
5653
5654 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5655
5656         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5657         (elmo-network-initialize-session): Ditto.
5658
5659 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5660
5661         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5662
5663         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5664
5665         * elmo-util.el (elmo-progress-clear): Ditto.
5666
5667         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5668         `DD-Mon-YYYY' type date.
5669
5670 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5671
5672         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5673         `elmo-date-make-sortable-string' instead of
5674         `timezone-make-date-sortable'.
5675
5676         * elmo-date.el (elmo-date-make-sortable-string): Use
5677         `timezone-make-time-string'.
5678
5679 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5680
5681         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5682
5683         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5684         `since'; Fix timezone.
5685
5686         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5687
5688         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5689
5690 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5691
5692         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5693
5694 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5695
5696         * elmo.el (elmo-generic-folder-append-messages): Make
5697         fetch-strategy with `use-cache' as 'maybe. Check return value of
5698         `elmo-message-fetch'.
5699         (elmo-message-fetch): Return return value of
5700         `elmo-message-fetch-with-cache-process'.
5701         (elmo-message-fetch-with-cache-process): Return non-nil if
5702         fetching was succeed. Load cache when fetching was failed and
5703         fetch-strategy-use-cache is 'maybe.
5704
5705         * elmo-util.el (elmo-file-cache-load): New function.
5706
5707         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5708         defun.
5709
5710         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5711         non-nil if fetching was succeed.
5712
5713         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5714
5715         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5716
5717         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5718         (elmo-message-fetch-with-cache-process): Likwise.
5719
5720         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5721
5722         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5723
5724         * elmo-version.el (elmo-version): Up to 2.9.2.
5725
5726 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5727
5728         * elmo.el (elmo-folder-delete): Delete msgdb path.
5729
5730         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5731
5732         * elmo-maildir.el (elmo-folder-delete): Ditto.
5733
5734         * elmo-localdir.el (elmo-folder-delete): Ditto.
5735
5736         * elmo-imap4.el (elmo-folder-delete): Ditto.
5737
5738 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5739
5740         * elmo.el (luna-define-class): Added `biff' slot.
5741
5742         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5743         (elmo-pop3-debug-inhibit-logging): Abolished.
5744         (elmo-network-close-session): Eliminated needless let.
5745         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5746         (elmo-pop3-send-command): Added `no-log' argument.
5747         (elmo-pop3-process-filter): Use `with-current-buffer'.
5748         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5749         if login failure.
5750         (elmo-pop3-auth-apop): Likewise.
5751         (elmo-network-authenticate-session): Likewise.
5752
5753         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5754         if biff folder.
5755
5756         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5757         string to determine protocol.
5758         (elmo-network-session-name-prefix): Abolished.
5759         (elmo-network-session-cache-key): Follow the change above.
5760         (elmo-network-open-session): Ditto.
5761
5762         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5763         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5764
5765         * elmo-version.el (elmo-version): Up to 2.9.1.
5766
5767         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5768         unmatch condition checking.
5769
5770         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5771         condition.
5772
5773 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5774
5775         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5776
5777 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5778
5779         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5780         test for while loop to execute at least one SEARCH command.
5781
5782 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5783
5784         * elmo-version.el (elmo-version): Up to 2.9.0.
5785
5786 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5787
5788         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5789         (elmo-archive-folder-path): Define.
5790         (elmo-folder-initialize): Setup `dir-name' slot.
5791         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5792         Use `dir-name' as prefix of each subfolders.
5793         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5794
5795 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5796
5797         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5798         (elmo-pipe-folder-list-target-messages): New internal function.
5799         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5800         `killed-list'.
5801         (elmo-pipe-folder-copied-list-load): New function.
5802         (elmo-pipe-folder-copied-list-save): Ditto.
5803         (elmo-folder-open-internal): Follow the change above.
5804         (elmo-folder-status): Fixed for copy.
5805
5806 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5807
5808         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5809
5810 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5811
5812         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5813         elmo-copy-file instead of elmo-add-name-to-file.
5814
5815         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5816
5817         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5818         "file://..." index.
5819
5820         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5821         of accept-process-output as 1.
5822         (elmo-pop3-read-contents): Ditto.
5823         (elmo-pop3-read-body): Ditto.
5824
5825 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5826
5827         * elmo-version.el (product-version-as-string): Remove define.
5828
5829 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5830
5831         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5832         (elmo-imap4-copy-messages): Chop number set using
5833         `elmo-imap4-number-set-chop-length'.
5834         (elmo-imap4-set-flag): Ditto.
5835         (elmo-imap4-search-internal-primitive): Ditto.
5836
5837 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5838
5839         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5840         `elmo-folder-make-temp-dir'
5841
5842         * elmo-vars.el (elmo-cache-directory): New variable.
5843         (elmo-cache-dir): Abolished.
5844         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5845
5846         * elmo-version.el (elmo-version): Up to 2.7.7.
5847
5848 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5849
5850         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5851         defcustom; Set default value as t.
5852
5853 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5854
5855         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5856         (ldap-search-program-arguments): Changed default value.
5857         (ldap-search-basic): Accept exit status 4.
5858         (ldap/field-body): Parse options.
5859         (ldap/collect-field): Ditto.
5860         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5861
5862         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5863         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5864         (elmo-imap4-accept-ok): Ditto.
5865         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5866         'notify-bye, only BYE error is reported.
5867         (elmo-folder-exists-p-plugged): Set no-error argument of
5868         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5869
5870         * elmo.el (elmo-imap4-bye-error): Changed message.
5871
5872         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5873         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5874         queues (It causes infinite loop).
5875
5876 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5877
5878         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5879         (RECENT UNSEEN MESSAGES) extension.
5880
5881 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5882
5883         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5884         Check number of overview fields.
5885
5886 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5887
5888         * elmo.el (elmo-folder-confirm-appends): Changed message.
5889         (elmo-folder-confirm-appends): Ditto.
5890
5891         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5892         `with-temp-buffer'.
5893         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5894
5895 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5896
5897         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5898         of elmo-folder-update-threshold is nil, which can be set by
5899         wl-summary-update-confirm-threshold.
5900
5901 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5902
5903         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5904         (elmo-nmz-index-alias-alist): Ditto.
5905         (elmo-map-folder-list-message-locations): Follow the change above.
5906
5907 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5908
5909         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5910
5911         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5912
5913         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5914
5915         * elmo-util.el (elmo-read): Ditto.
5916         (elmo-display-error): Ditto.
5917
5918         * elmo-vars.el (elmo-date-match): Ditto.
5919
5920         * pldap.el (ldap-coding-system): Ditto.
5921
5922         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5923         `elmo-inhibit-number-mapping' as nil.
5924
5925 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5926
5927         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5928         space delimiter for list response.
5929
5930 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5931
5932         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5933
5934 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5935
5936         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5937         (elmo-map-message-fetch): Fix.
5938         * elmo-map.el (elmo-folder-status): Fix for killed.
5939
5940 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5941
5942         * elmo-sendlog.el: New file.
5943         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5944
5945 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5946
5947         * acap.el (acap-logging-out): New buffer local variable.
5948         (acap-close): Set it.
5949         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5950         an error.
5951
5952 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5953
5954         * acap.el (acap-response-bye-p): New function.
5955         (acap-response-bye-message): Ditto.
5956         (acap-wait-for-response): If bye response is received, cause an error.
5957         (acap-parse-response): Make bye response when 'Bye' is received.
5958
5959 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5960
5961         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5962
5963 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5964
5965         * elmo-util.el (elmo-copy-file): Added argument
5966         `ok-if-already-exists'.
5967         (elmo-copy-file): Fixed typo.
5968
5969 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5970
5971         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5972
5973 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5974
5975         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5976
5977 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5978
5979         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5980         to killed-list.
5981
5982 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5983
5984         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5985         (elmo-folder-initialize): Fix for `copy'.
5986         (elmo-pipe-drain): Ditto.
5987         (elmo-folder-open-internal): Ditto.
5988         (elmo-folder-newsgroups): Fix.
5989
5990 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5991
5992         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5993         for each message.
5994
5995         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5996         recent value is returned from imap folder.
5997
5998         * elmo.el (elmo-folder-newsgroups): New generic function.
5999
6000         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
6001         (elmo-folder-initialize): Set it.
6002         (elmo-folder-expand-msgdb-path): Use it.
6003         (elmo-folder-newsgroups): Define.
6004
6005         * elmo-filter.el (elmo-folder-newsgroups): Define.
6006
6007         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
6008
6009         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
6010
6011         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
6012
6013 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6014
6015         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
6016         user option.
6017         (elmo-shimbun-header-extra-field): New inline function.
6018         (elmo-shimbun-header-set-extra-field): Ditto.
6019         (elmo-shimbun-folder-header-hash-setup): Ditto.
6020         (elmo-shimbun-update-overview): Ditto.
6021         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
6022         (elmo-shimbun-folder-setup): Use
6023         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
6024         (elmo-shimbun-get-headers): Ditto.
6025         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
6026         Insert `X-Shimbun-Id:' header if extra field is set.
6027         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
6028         field's value instead of `shimbun-header-id'.
6029
6030         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
6031         inline function.
6032         (elmo-msgdb-overview-entity-set-date): Ditto.
6033         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
6034
6035 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
6036
6037         * mmimap.el (mmimap-entity-section): Changed body node number from
6038         "0" to "1".
6039
6040 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6041
6042         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
6043         `elmo-folder-delete-messages'.
6044
6045         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
6046         (elmo-folder-initialize): Changed to expand alias into index path.
6047
6048         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
6049         `elmo-mime-insert-header-from-buffer' with 6th arg
6050         `sorted-fields'.
6051
6052 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
6053
6054         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
6055
6056         * elmo.el (elmo-diff-new): New inline function.
6057         (elmo-diff-unread): Ditto.
6058         (elmo-diff-all): Ditto.
6059
6060         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
6061         value from responseb.
6062         (elmo-imap4-folder-diff-plugged): Ditto.
6063         (elmo-imap4-server-diff-async): Added recent argument.
6064         (elmo-server-diff-async): Ditto.
6065         (elmo-imap4-folder-diff-plugged): Ditto.
6066
6067         * elmo-version.el (elmo-version): Up to 2.7.6.
6068
6069 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6070
6071         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
6072         in quoted-stirng.
6073
6074 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
6075
6076         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
6077
6078         * elmo-imap4.el (elmo-folder-initialize): Ditto.
6079
6080         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6081
6082         * elmo-multi.el (elmo-folder-initialize): Ditto.
6083
6084         * elmo-util.el (elmo-parse-token): New function.
6085         (elmo-parse-prefixed-element): Ditto.
6086
6087 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6088
6089         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
6090         delete process.
6091         (elmo-imap4-accept-ok): Ditto.
6092
6093 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6094
6095         * mmimap.el (mime-imap-entity-header-string): Don't check first
6096         element of node-id is `0' (Follow last change).
6097
6098 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6099
6100         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
6101         assigned irregular node-id to nested multipart section.
6102         (initialize-instance): Followed above change.
6103
6104 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6105
6106         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
6107         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
6108         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
6109         `elmo-shimbun-get-headers');
6110         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
6111         visible article on summary exists in headers).
6112         (elmo-map-message-fetch): Cause an error when folder is unplugged.
6113
6114 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
6115
6116         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
6117         definition.
6118
6119 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
6120
6121         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
6122
6123 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6124
6125         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
6126         header separator into loop condition.
6127
6128 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6129
6130         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
6131         Return duplicate folder if it has subfolder.
6132
6133 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6134
6135         * elmo.el (elmo-make-folder): Add folder name error check.
6136
6137         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
6138         (elmo-nntp-encode-group-string): New inline function.
6139         (elmo-nntp-decode-group-string): Ditto.
6140         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
6141         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
6142         Use `not' instead of `null';
6143         Use elmo-nntp-decode-group-string.
6144
6145         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
6146
6147         * elmo-version.el (elmo-version): Up to 2.7.5.
6148
6149 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6150
6151         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
6152         Hide progress gauge if `elmo-folder-move-messages' exits
6153         nonlocally.
6154
6155 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6156
6157         * elmo-imap4.el (elmo-folder-initialize): Use
6158         `elmo-imap4-encode-folder-string' for folder name.
6159
6160 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6161
6162         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
6163         `done'.
6164
6165 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6166
6167         * elmo-util.el (elmo-progress-counter-alist): New internal
6168         variable.
6169         (elmo-progress-counter-value): New macro.
6170         (elmo-progress-counter-all-value): Ditto.
6171         (elmo-progress-counter-format): Ditto.
6172         (elmo-progress-counter-set-value): Ditto.
6173         (elmo-progress-set): New function.
6174         (elmo-progress-clear): Ditto.
6175         (elmo-progress-notify): Ditto.
6176
6177         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
6178         counter.
6179
6180         * elmo.el (elmo-generic-folder-append-messages): Call
6181         `elmo-progress-notify'.
6182         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
6183
6184         * elmo-archive.el (elmo-folder-append-messages): Call
6185         `elmo-progress-notify'.
6186
6187         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
6188
6189         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
6190
6191         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
6192
6193 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6194
6195         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
6196         'Create'.
6197         (elmo-message-encache-dop): Added argument `read'.
6198
6199         * elmo-shimbun.el (elmo-message-encache): Ditto.
6200
6201         * elmo-net.el (elmo-message-encache): Ditto.
6202
6203         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
6204         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
6205         elmo-imap4-seen-messages.
6206         (elmo-folder-msgdb-create-plugged): Initialize
6207         elmo-imap4-seen-messages;
6208         Set seen mark on elmo-imap4-seen-messages.
6209
6210         * elmo-pipe.el (elmo-folder-message-file-p): Define.
6211
6212         * elmo.el (elmo-generic-folder-append-messages): Check return value of
6213         elmo-folder-append-buffer.
6214         (elmo-folder-encache): Added optional argument `read'.
6215         (elmo-message-encache): Ditto.
6216
6217         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
6218
6219         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
6220
6221         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
6222         if append buffer content succeds.
6223
6224 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6225
6226         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
6227         elmo-display-progress.
6228
6229         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
6230         Set 4th argument of mime-display-message.
6231         (elmo-mime-display-as-is): Ditto.
6232
6233 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
6234
6235         * elmo-nmz.el (toplevel): Require 'mime-edit.
6236         (elmo-nmz-content-type-alist): Abolished.
6237         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
6238         content is not a message.
6239         (elmo-map-message-fetch): Changed behavior exept for message content;
6240         Detect mime-charset automatically, Use `mime-find-file-type' to detect
6241         content-type, Add From: and Subject: field.
6242
6243 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6244
6245         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
6246         (elmo-map-message-fetch): Add `Content-Type' field if contents is
6247         not a message.
6248
6249 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6250
6251         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
6252         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
6253
6254         * elmo-archive.el (elmo-folder-writable-p): Defined.
6255
6256         * elmo-cache.el (elmo-folder-writable-p): Ditto.
6257
6258         * elmo-filter.el (elmo-folder-writable-p): Ditto.
6259
6260         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
6261
6262         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
6263
6264         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
6265
6266         * elmo-mark.el (elmo-folder-writable-p): Ditto.
6267
6268         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
6269
6270         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
6271
6272 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
6273
6274         * elmo-util.el (elmo-address-quote-specials): New function;
6275         Renamed from `wl-address-quote-specials'.
6276
6277 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6278
6279         * elmo-version.el (elmo-version): Up to 2.7.4.
6280
6281 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
6282
6283         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
6284
6285 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6286
6287         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
6288         both compile-time and run-time to avoid byte-compile warning.
6289
6290 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
6291
6292         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
6293
6294 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6295
6296         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
6297         option.
6298         (elmo-mime-display-as-is-internal): Use it.
6299
6300         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
6301         if `read-passwd' is not defined.
6302
6303 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6304
6305         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
6306         by original number.
6307         (elmo-folder-status): Call `elmo-folder-open-internal';
6308         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
6309         (elmo-folder-close-internal): Set location-alist as nil.
6310         (elmo-folder-clear): Define.
6311         (elmo-folder-check): Don't set location-alist as nil.
6312
6313         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
6314
6315 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
6316
6317         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
6318         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
6319
6320         * mmimap.el (mime-imap-entity::requested): New slot.
6321         (mime-imap-location-fetch-entity-p): New generic function.
6322         (mime-decode-parameters): Define using `defun-maybe'.
6323         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6324         content-type structure.
6325         (mime-entity-body): Return empty body if
6326         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6327
6328         * elmo.el (elmo-message-displaying): New variable.
6329
6330         * elmo-mime.el (elmo-mime-message-display): Bind
6331         elmo-message-displaying as t.
6332
6333         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6334
6335 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6336
6337         * acap.el (acap-open): erase buffer before starting network process.
6338         (acap-store): Rewrite.
6339
6340 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6341
6342         * elmo-imap4.el (elmo-imap4-default-mailbox,
6343         elmo-imap4-default-server
6344         elmo-imap4-default-authenticate-type,
6345         elmo-imap4-default-user,
6346         elmo-imap4-default-port,
6347         elmo-imap4-default-stream-type,
6348         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6349
6350         * elmo-pop3.el (elmo-pop3-default-user,
6351         elmo-pop3-default-server,
6352         elmo-pop3-default-authenticate-type,
6353         elmo-pop3-default-port,
6354         elmo-pop3-default-stream-type,
6355         elmo-pop3-stream-type-alist): Ditto.
6356
6357         * elmo-nntp.el (elmo-nntp-default-server,
6358         elmo-nntp-default-user,
6359         elmo-nntp-default-port,
6360         elmo-nntp-default-stream-type,
6361         elmo-nntp-stream-type-alist): Ditto.
6362
6363         * elmo-vars.el: Follow changes above.
6364         (elmo-setting): New custom group; added 'elmo-setting group to
6365         above variables.
6366
6367         * elmo-version.el (elmo-version): Up to 2.7.3.
6368
6369         * acap.el (acap-parse-response): Don't delete process when BYE
6370         response (It causes hang-up on slow network environment).
6371         (toplevel): Added comment.
6372
6373 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6374
6375         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6376
6377         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6378         parsing NIL.
6379         (acap-parse-return-metadata): Ditto.
6380
6381         * slp.el: New file.
6382         (toplevel): Fixed typo.
6383
6384         * acap.el: New file.
6385         (acap-network-stream-open): Show "Connecting..." message.
6386         (acap-parse-response): Fixed problem for BYE untagged response.
6387         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6388         (toplevel): Added tiny comments.
6389
6390 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6391
6392         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6393         space delimiter for uidl response.
6394
6395 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6396
6397         * elmo-vars.el (elmo-use-semi): Eliminated.
6398
6399         * elmo-util.el (elmo-string-assoc-all): New function.
6400
6401 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6402
6403         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6404         property 'mime-preview-situation for `mime-preview-quit'.
6405
6406 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6407
6408         * elmo.el (elmo-message-fetch-with-cache-process): Call
6409         elmo-message-fetch-internal instead of causing an error when fetch
6410         strategy is 'entire but only 'section cache is available.
6411
6412 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6413
6414         * elmo-version.el (elmo-version): Up to 2.7.2.
6415
6416         * elmo.el (elmo-generic-folder-append-messages): Make
6417         fetch-strategy with `use-cache'.
6418
6419         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6420         (elmo-dop-queue-method-name): New macro.
6421
6422 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6423
6424         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6425         unbalanced parenthesis.
6426
6427 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6428
6429         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6430
6431 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6432
6433         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6434         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6435
6436 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6437
6438         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6439         local variables.
6440
6441 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6442
6443         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6444         (elmo-message-use-cache-p): Define.
6445         (elmo-folder-msgdb-create): Treat cache.
6446
6447 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6448
6449         * elmo-nntp.el (elmo-network-initialize-session): Call
6450         `elmo-nntp-send-mode-reader'.
6451         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6452
6453 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6454
6455         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6456         alist.
6457         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6458         assoc.
6459
6460         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6461         for `elmo-plugged-p'.
6462         (elmo-open-network-stream): Fixed stream-type argument.
6463
6464 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6465
6466         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6467         unknown archive type is specified.
6468
6469 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6470
6471         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6472
6473         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6474         while loading msgdb.
6475
6476         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6477         (elmo-folder-open-internal): Rewrite.
6478
6479 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6480
6481         * elmo-mime.el (elmo-mime-display-as-is-internal):
6482         Adjust buffer-multibyte status.
6483
6484 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6485
6486         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6487         of elmo-condition-find-key.
6488
6489         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6490         (elmo-condition-in-msgdb-p): Ditto.
6491         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6492         argument.
6493
6494 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6495
6496         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6497
6498 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6499
6500         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6501         label for elmo-display-progress.
6502
6503 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6504
6505         * elmo.el (elmo-folder-clear): New method.
6506         (elmo-folder-clear): Define.
6507         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6508
6509         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6510         (elmo-folder-clear): Define.
6511
6512         * elmo-map.el (elmo-folder-clear): Define.
6513
6514         * elmo-version.el (elmo-version): Up to 2.7.1.
6515
6516 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6517
6518         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6519         updates.
6520
6521 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6522
6523         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6524         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6525
6526 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6527
6528         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6529
6530         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6531         and re-written.
6532
6533         * elmo-imap4.el (elmo-folder-initialize): Use
6534         elmo-get-network-stream-type.
6535
6536         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6537
6538         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6539
6540 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6541
6542         * elmo.el (elmo-message-encache): Set unread argument for
6543         elmo-message-fetch.
6544
6545         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6546
6547         * elmo.el (elmo-net-port-info): New method.
6548
6549         * elmo-shimbun.el (elmo-net-port-info): Define.
6550         (elmo-message-encache): Ditto.
6551
6552         * elmo-net.el (elmo-net-port-info): Define as method.
6553
6554         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6555         unplugged status when elmo-enable-disconnected-operation is t.
6556
6557         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6558         of spool folder before checking new number.
6559
6560 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6561
6562         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6563         (elmo-network-setup-session): Ditto.
6564         (elmo-message-fetch-plugged): Ditto.
6565         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6566         (elmo-network-initialize-session): Ditto.
6567         (elmo-pop3-read-response): Abolish 3rd argument.
6568         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6569         (elmo-pop3-read-contents): Ditto.
6570         (elmo-pop3-read-body): Ditto.
6571         (elmo-folder-status): Call elmo-folder-close.
6572         (elmo-pop3-lock): Abolish.
6573         (elmo-pop3-unlock): Ditto.
6574         (elmo-pop3-locked-p): Ditto.
6575         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6576
6577 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6578
6579         * elmo-version.el (elmo-version): Up to 2.7.0.
6580
6581         * elmo-pop3.el (elmo-pop3-debug): New variable.
6582         (elmo-pop3-debug-inhibit-logging): Ditto.
6583         (elmo-pop3-debug): New function.
6584         (elmo-pop3-send-command): Call elmo-pop3-debug.
6585         (elmo-pop3-read-response): Added keep-lock optional argument;
6586         Don't unlock if keep-lock is non-nil.
6587         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6588         (elmo-network-authenticate-session): Bind
6589         elmo-pop3-debug-inhibit-logging as t.
6590         (elmo-network-setup-session): Call elmo-pop3-read-response with
6591         keep-lock argument.
6592         (elmo-pop3-read-msg): Ditto.
6593         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6594         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6595         (elmo-network-initialize-session): Call elmo-pop3-lock.
6596         (elmo-folder-close-internal): Don't clear location-alist slot.
6597         (elmo-folder-check): Clear location-alist slot.
6598
6599 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6600
6601         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6602         (elmo-pop3-send-command): Call elmo-pop3-lock.
6603         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6604         (elmo-pop3-read-contents): Ditto.
6605         (elmo-pop3-lock): New function.
6606         (elmo-pop3-unlock): Ditto.
6607         (elmo-pop3-locked-p): Ditto.
6608         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6609         returns t.
6610
6611 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6612
6613         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6614
6615         * elmo-util.el (elmo-file-field-primitive-condition-match):
6616         New inline function (Don't fetch file content if "first" or "last").
6617         (elmo-file-field-condition-match): Use
6618         elmo-file-field-primitive-condition-match.
6619
6620         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6621         "first".
6622
6623         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6624         (elmo-message-fetch-plugged): Fixed.
6625
6626         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6627
6628 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6629
6630         * elmo.el (elmo-folder-move-messages): Bind
6631         elmo-inhibit-display-retrieval-progress as t while moving messages.
6632
6633         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6634         New variable.
6635         (elmo-inhibit-display-retrieval-progress): Ditto.
6636
6637         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6638         for retrieval progress;
6639         Don't display progress when total buffer size is smaller than
6640         elmo-display-retrieval-progress-threshold.
6641         (elmo-message-fetch-plugged): Don't display progress when
6642         elmo-inhibit-display-retrieval-progress is non-nil.
6643
6644         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6645         for retrieval progress;
6646         Don't display progress when literal size is smaller than
6647         elmo-display-retrieval-progress-threshold.
6648         (elmo-imap4-message-fetch): Don't display progress when
6649         elmo-inhibit-display-retrieval-progress is non-nil.
6650
6651 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6652
6653         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6654         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6655         (elmo-imap4-message-fetch): Likewise.
6656
6657         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6658         (elmo-shimbun-index-range-alist): Ditto.
6659         (elmo-shimbun-use-entire-index): Abolish.
6660         (shimbun-mua-use-entire-index): Ditto.
6661         (elmo-shimbun-folder): Added new slot `range'.
6662         (elmo-folder-initialize): Setup slot `range'.
6663
6664 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6665
6666         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6667         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6668         (elmo-shimbun-get-headers): Use return value of
6669         `shimbun-article-expiration-days'.
6670         (elmo-folder-close-internal): Clean up last-check slot.
6671
6672         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6673         (elmo-pop3-total-size): New variable.
6674         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6675
6676         * elmo.el (elmo-folder-reserve-status-p): New method.
6677
6678         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6679         (elmo-shimbun-use-entire-index): New user option.
6680         (shimbun-elmo-mua): New class.
6681         (shimbun-mua-search-id): Define.
6682         (shimbun-mua-use-entire-index): Ditto.
6683         (elmo-shimbun-folder:last-check): New slot.
6684         (elmo-shimbun-headers-cache-header-list): Abolish.
6685         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6686         (elmo-shimbun-headers-cache-header-hash): Ditto.
6687         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6688         (elmo-shimbun-headers-cache-last-check): Ditto.
6689         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6690         (elmo-shimbun-headers-check-p): Rewrite.
6691         (elmo-shimbun-msgdb-to-headers): New function.
6692         (elmo-shimbun-get-headers): Rewrite.
6693         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6694         (elmo-folder-open-internal): Get headers only if
6695         `elmo-shimbun-headers-check-p' is non-nil.
6696         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6697         is non-nil.
6698         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6699         (elmo-quit): Removed.
6700
6701         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6702         function.
6703         (elmo-msgdb-overview-entity-set-extra): Ditto.
6704         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6705
6706         * elmo-map.el (elmo-folder-status): Don't call
6707         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6708         is non-nil.
6709
6710 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6711
6712         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6713         of `elmo-msgdb-search-internal-primitive' when condition's car is
6714         `and' or `or'.
6715
6716 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6717
6718         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6719
6720 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6721
6722         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6723         call `elmo-pipe-drain'.
6724
6725 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6726
6727         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6728         typo. (elmo-cache-folder -> elmo-mark-folder)
6729
6730 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6731
6732         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6733         `elmo-message-fetch'.
6734
6735 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6736
6737         * elmo-net.el (elmo-message-encache): Fixed typo.
6738         (elmo-message-fetch-unplugged): Changed call
6739         `elmo-message-fetch-internal' without argument `outbuf'.
6740
6741 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6742
6743         * elmo.el (elmo-message-encache): Define as generic function.
6744         (elmo-message-fetch-field): New generic function.
6745         (elmo-message-fetch-with-cache-process): Cause an error when
6746         fetch strategy is 'entire but only 'section cache is available.
6747         (toplevel): Fixed nmz folder definition.
6748
6749         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6750         (elmo-msgdb-resume-list-filename): Ditto.
6751         (elmo-queue-filename): Ditto.
6752         (elmo-enable-disconnected-operation): Changed default value to t.
6753
6754         * elmo-util.el (elmo-cache-path-section-p): New function.
6755         (elmo-file-cache-get): Use it.
6756         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6757         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6758         (elmo-dop-queue-save): Ditto.
6759
6760         * elmo-net.el (elmo-folder-status-unplugged): Call
6761         elmo-folder-status-dop.
6762         (elmo-folder-list-messages-unplugged): Implemented.
6763         (elmo-folder-delete-messages-unplugged): Define.
6764         (elmo-folder-msgdb-create): Define.
6765         (elmo-folder-msgdb-create-unplugged): Define.
6766         (elmo-folder-mark-as-read-unplugged): Ditto.
6767         (elmo-folder-unmark-read-unplugged): Ditto.
6768         (elmo-folder-mark-as-important-unplugged): Ditto.
6769         (elmo-folder-unmark-important-unplugged): Ditto.
6770         (elmo-message-encache): Ditto.
6771
6772         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6773         (elmo-dop-queue-save): Ditto.
6774
6775         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6776         `elmo-folder-msgdb-create'.
6777         (elmo-folder-append-buffer): Implemented unplugged operation.
6778         (elmo-folder-append-messages): Call parent method in unplugged status.
6779         (elmo-message-fetch-unplugged): Removed definition.
6780         (elmo-message-fetch-field): Implemented.
6781
6782         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6783         (elmo-dop-folder): Removed variable definition.
6784         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6785         (elmo-dop-queue-flush): Implemented.
6786         (elmo-dop-queue-merge): Removed definition (TODO).
6787         (elmo-dop-spool-folder): New function.
6788         (elmo-dop-spool-folder-append-buffer): Ditto.
6789         (elmo-dop-spool-folder-list-messages): Ditto.
6790         (elmo-dop-list-deleting-messages): Ditto.
6791         (elmo-folder-append-buffer-dop): Ditto.
6792         (elmo-folder-delete-messages-dop): Ditto.
6793         (elmo-message-encache-dop): New inline function.
6794         (elmo-create-folder-dop): Ditto.
6795         (elmo-folder-mark-as-read-dop): Ditto.
6796         (elmo-folder-unmark-read-dop): Ditto.
6797         (elmo-folder-mark-as-important-dop): Ditto.
6798         (elmo-folder-unmark-important-dop): Ditto.
6799         (elmo-folder-status-dop): Fixed.
6800         (elmo-folder-append-buffer-dop-delayed): New function.
6801         (elmo-folder-delete-messages-dop-delayed): Ditto.
6802         (elmo-dop-msgdb): Ditto.
6803
6804 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6805
6806         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6807
6808 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6809
6810         * elmo.el (elmo-folder-move-messages): Fixed problem when
6811         `dst-folder' is 'null.
6812
6813 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6814
6815         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6816         instead of current mark.
6817
6818         * elmo-multi.el (elmo-folder-list-importants-internal): No
6819         operation if importants is not list.
6820
6821         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6822         Return t if importants is not list.
6823
6824         * elmo-map.el (elmo-map-folder-list-importants): Define.
6825         (elmo-folder-list-importants-internal): Check return value of
6826         `elmo-map-folder-list-importants-internal'.
6827
6828         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6829
6830         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6831
6832         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6833
6834         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6835
6836 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6837
6838         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6839         (Patch is provided by <kita@coe.nttdata.co.jp>).
6840
6841 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6842
6843         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6844         mark folder.
6845
6846 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6847
6848         * elmo.el (elmo-message-fetch): Define.
6849         (elmo-message-fetch-with-cache-process): New generic method.
6850         (elmo-message-fetch-internal): New generic method.
6851         (elmo-folder-synchronize):
6852
6853         * elmo-archive.el (elmo-message-fetch-internal): Define.
6854         (elmo-message-fetch): Eliminated.
6855
6856         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6857         (elmo-message-fetch): Eliminated.
6858
6859         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6860         argument OUTBUF.
6861         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6862
6863         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6864         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6865
6866         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6867         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6868
6869         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6870
6871         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6872
6873         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6874
6875         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6876         (elmo-message-fetch-unplugged): New generic method.
6877         (elmo-message-fetch-internal): Remove cache process (Renamed from
6878         `elmo-message-fetch').
6879
6880         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6881         (elmo-message-fetch): Eliminated.
6882         (elmo-message-fetch-unplugged): Ditto.
6883
6884         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6885
6886 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6887
6888         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6889         of `to-be-deleted' from number-alist to number-list.
6890
6891 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6892
6893         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6894         (elmo-folder-mark-as-important): Ditto.
6895
6896 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6897
6898         * elmo.el (elmo-folder): Added process-duplicates slot.
6899
6900         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6901         (elmo-folder-unmark-read): Ditto.
6902         (elmo-folder-unmark-important): Ditto.
6903         (elmo-folder-mark-as-important): Ditto.
6904
6905         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6906         duplicated message processing.
6907
6908         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6909
6910 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6911
6912         * elmo-util.el (elmo-list-subdirectories-1): New function.
6913         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6914         (elmo-mapcar-list-of-list): New function.
6915
6916         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6917         `elmo-mapcar-list-of-list' instead of `mapcar'.
6918
6919         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6920
6921         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6922         `elmo-have-link-count'. Return the fully qualified folder name.
6923
6924 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6925
6926         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6927         (elmo-shimbun-headers-cache): New internal variable.
6928         (elmo-shimbun-headers-cache-header-list): New inline function.
6929         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6930         (elmo-shimbun-headers-cache-header-hash): Ditto.
6931         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6932         (elmo-shimbun-headers-cache-last-check): Ditto.
6933         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6934         (elmo-shimbun-lapse-seconds): Ditto.
6935         (elmo-shimbun-headers-cache-check-p): Ditto.
6936         (elmo-shimbun-get-headers): New function.
6937         (elmo-folder-open-internal): Call it.
6938         (elmo-quit): Define (Clear headers-cache).
6939
6940 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6941
6942         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6943
6944         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6945         (elmo-msgdb-flist-save): Ditto.
6946
6947         * elmo-shimbun.el (elmo-folder-list-subfolders):
6948         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6949         (elmo-folder-exists-p): Ditto.
6950
6951         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6952         argument for `shimbun-header-insert'.
6953
6954 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6955
6956         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6957         at first time.
6958
6959         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6960         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6961
6962 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6963
6964         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6965         (elmo-folder-plugged-p): Define.
6966         (elmo-folder-set-plugged): Ditto.
6967         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6968         (elmo-folder-list-messages-internal): Return t if unplugged.
6969         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6970
6971         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6972         when elmo-folder-list-messages-internal method of children returns t.
6973
6974         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6975         pair is nil.
6976         (elmo-folder-open-internal): Don't update if unplugged status.
6977
6978 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6979
6980         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6981         new message.
6982
6983 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6984
6985         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6986
6987         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6988         saving.
6989
6990 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6991
6992         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6993
6994         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6995         (elmo-folder-open-internal): Set up headers slot.
6996         (elmo-folder-check): Call elmo-folder-close-internal and
6997         elmo-folder-open-internal.
6998         (elmo-folder-close-internal): Clean up headers slot.
6999
7000 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7001
7002         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
7003         exactly folder list.
7004         (elmo-folder-append-messages): Fixed append archive with prefix.
7005
7006         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
7007         make temp files with start-number.
7008
7009         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
7010
7011 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7012
7013         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
7014         argument `visible-only'.
7015         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
7016         instead of `if'.
7017
7018         * elmo-pop3.el (elmo-folder-open-internal): Check
7019         `elmo-inhibit-number-mapping' is non-nil.
7020
7021         * elmo-pipe.el (elmo-folder-status): Fixed.
7022
7023 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
7024
7025         * elmo.el (elmo-dop-queue-flush): Added autload setting.
7026
7027         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
7028         (elmo-folder-open-internal): Setup `header-hash' slot.
7029         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
7030         information.
7031         (elmo-map-message-fetch): Ditto.
7032
7033 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
7034
7035         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7036         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7037         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7038         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
7039
7040         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
7041
7042 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
7043
7044         * sb-airs.el: Added footer.
7045
7046         * shimbun.el (shimbun-article): Define as luna-method.
7047
7048         * sb-tcup.el: New file.
7049
7050         * sb-airs.el (toplevel): Require 'sb-mhonarc.
7051         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
7052
7053 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
7054
7055         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
7056         (shimbun-get-headers): Ditto.
7057
7058         * elmo.el: Moved obsolete variable definitions from
7059         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
7060
7061         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
7062         groups.
7063
7064         * shimbun.el: New file.
7065
7066         * elmo-shimbun.el: New file.
7067
7068         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7069         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7070         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7071         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
7072
7073 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
7074
7075         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
7076         hierarchy is t.
7077
7078 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
7079
7080         * elmo.el (elmo-folder-msgdb): Define as macro.
7081         (elmo-folder-open): Added argument `load-msgdb'.
7082         (elmo-generic-folder-open): Ditto.
7083         (elmo-folder-encache): New function.
7084
7085         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
7086
7087         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
7088
7089         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
7090         Eliminated argument FOLDER and added argument MSGDB.
7091         (elmo-dop-queue-load): Moved from elmo-dop.el.
7092         (elmo-dop-queue-save): Ditto.
7093
7094         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
7095
7096         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
7097
7098         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
7099         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
7100         (elmo-filter-folder-list-importants-internal): Ditto.
7101
7102         * elmo-map.el (elmo-folder-pack-number): Ditto.
7103
7104         * elmo-mime.el (elmo-mime-message-display): Ditto.
7105
7106         * elmo.el (elmo-generic-folder-commit): Ditto.
7107         (elmo-folder-list-unreads): Ditto.
7108         (elmo-folder-list-importants): Ditto.
7109         (elmo-generic-folder-commit): Ditto.
7110         (elmo-message-set-mark): Ditto.
7111         (elmo-generic-folder-append-msgdb): Ditto.
7112         (elmo-folder-synchronize): Ditto.
7113         (elmo-folder-messages): Ditto.
7114         (elmo-init): Call elmo-dop-queue-load.
7115         (elmo-folder-list-messages): Ditto.
7116
7117         * elmo-nntp.el (elmo-folder-update-number): Ditto.
7118         (elmo-nntp-folder-process-crosspost): Ditto.
7119         (elmo-folder-list-unreads-internal): Ditto.
7120
7121         * elmo-dop.el: Removed old functions.
7122
7123 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
7124
7125         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
7126         `folder' to `msgdb'.
7127
7128 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
7129
7130         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
7131         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
7132
7133         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
7134         case-fold-search.
7135
7136 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
7137
7138         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
7139         defined.
7140
7141         * mmimap.el (toplevel): Require 'mime-parse and 'static.
7142         (mmimap-parse-parameters-from-list): Define as alias for
7143         `mime-decode-parameter-plist' if it is defined as function.
7144         (mmimap-make-mime-entity): Added argument `number'.
7145         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
7146         as 0.
7147         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
7148
7149         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
7150
7151         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
7152
7153         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
7154
7155 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
7156
7157         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
7158
7159         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
7160         when elmo-imap4-default-authenticate-type is nil.
7161         (elmo-folder-list-subfolders): Ditto
7162         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
7163         (elmo-imap4-fetch-callback-1-subr): Renamed from
7164         `elmo-imap4-fetch-callback-1' and define as inline function.
7165         (elmo-imap4-fetch-callback-1):
7166         Renamed from `elmo-imap4-fetch-callback'.
7167         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
7168
7169         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
7170         msgdb path (To keep compatibility with main trunk).
7171
7172         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
7173
7174         * elmo-util.el (elmo-make-file-cache): Moved position of
7175         some macros.
7176
7177         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
7178         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
7179         instead of `elmo-pop3-inhibit-uidl'.
7180         (elmo-folder-exists-p): Ditto.
7181         (elmo-pop3-folder-list-messages): Ditto.
7182
7183         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
7184         instead of `elmo-pop3-inhibit-uidl'.
7185         (elmo-folder-status): Ditto.
7186
7187         * elmo-dop.el (elmo-dop-folder): New variable.
7188         (elmo-dop-lock-message): Eliminated.
7189         (elmo-dop-unlock-message): Ditto.
7190         (elmo-dop-lock-list-load): Ditto.
7191         (elmo-dop-lock-list-save): Ditto.
7192         (elmo-dop-delete-folder): Ditto.
7193         (elmo-dop-rename-folder): Ditto.
7194
7195         * elmo.el: Removed incomplete commentary.
7196
7197 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7198
7199         * elmo.el (toplevel): Require 'elmo-version first;
7200         for little `recursive-load-depth' settings.
7201         Fix "ends here" comment.
7202
7203 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
7204
7205         * elmo-util.el (toplevel): Require 'poem;
7206         Some functions are moved from elmo-cache.el.
7207
7208         * elmo-net.el (toplevel): Require 'elmo-cache.
7209
7210         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
7211
7212         * elmo.el (toplevel): Ditto.
7213
7214         * elmo-cache.el: Rewrite with luna;
7215         Some functions are moved to elmo-util.el.
7216
7217         * elmo-internal.el (elmo-internal-folder-list): New variable.
7218         (elmo-internal-folder-initialize): Rewrite.
7219         (elmo-folder-list-subfolders): Ditto.
7220
7221         * elmo-cache.el (elmo-cache-search-all): Eliminated.
7222         (elmo-cache-collect-sub-directories): Ditto.
7223
7224 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
7225
7226         * elmo-version.el (elmo-version): Up to 2.5.8.
7227
7228         * elmo.el (elmo-folder-list-messages-mark-match): New function.
7229
7230         * elmo-util.el (elmo-list-insert): New function.
7231
7232 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
7233
7234         * elmo.el (elmo-init): New function.
7235         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
7236
7237         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
7238         (Renamed from `elmo-localdir-header-chop-length').
7239
7240         * elmo-pop3.el (elmo-pop3-use-cache,
7241         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
7242
7243         * elmo-nntp.el (elmo-message-fetch): Define.
7244         (elmo-message-fetch-unplugged): Ditto.
7245         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
7246         (elmo-nntp-use-cache): Ditto.
7247         (elmo-nntp-max-number-precedes-list-active): Ditto.
7248
7249         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
7250
7251         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
7252         `elmo-msgdb-insert-file-header'.
7253         Use `elmo-msgdb-file-header-chop-length'.
7254
7255         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
7256         `elmo-vars.el'.
7257
7258         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
7259         (elmo-cache-msgdb-create-overview-entity-from-file): Use
7260         `elmo-msgdb-insert-file-header'.
7261
7262         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
7263         Use new variable;
7264         Define obsolete variables with `elmo-define-obsolete-variable',
7265
7266         * elmo-util.el (elmo-warning-buffer-name): New constant.
7267         (elmo-warning): New function.
7268         (elmo-obsolete-variable-alist): New variable.
7269         (elmo-obsolete-variable-show-warnings): New variable.
7270         (elmo-define-obsolete-variable): New function.
7271         (elmo-resque-obsolete-variable): Ditto.
7272         (elmo-resque-obsolete-variables): Ditto.
7273
7274 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7275
7276         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
7277         Eliminated.
7278
7279         * elmo-pop3.el, elmo-nntp.el: Use custom.
7280
7281 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7282
7283         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
7284         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
7285
7286 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7287
7288         * Luna-fy Kenichi OKADA's following changes.
7289         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
7290         `nohide'.
7291         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
7292
7293 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
7294
7295         * elmo-util.el (elmo-display-progress): Prefer
7296         `progress-feedback-with-label' to `lprogress-display'.
7297
7298 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7299
7300         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
7301
7302 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
7303
7304         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
7305         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
7306         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7307         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7308         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
7309         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
7310         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7311         * elmo-filter.el (elmo-filter-list-folder): Ditto.
7312         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7313         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7314         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7315         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7316         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7317
7318 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7319
7320         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
7321         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7322
7323 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7324
7325         * elmo.el (elmo-folder-process-crosspost): New generic method.
7326         (elmo-folder-writable-p): Ditto.
7327         (elmo-folder-message-appendable-p): Eliminated.
7328         (elmo-generic-folder-append-msgdb): Rewrite.
7329         (elmo-newsgroups-hashtb): New internal variable.
7330         (elmo-crosspost-message-set): Eliminated.
7331         (elmo-crosspost-message-delete): Ditto.
7332         (elmo-setup-subscribed-newsgroups): New function.
7333         (elmo-crosspost-message-alist-modified): New internal variable.
7334         (elmo-crosspost-message-alist-load): New function (Renamed from
7335         `wl-crosspost-alist-load').
7336         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7337         `wl-crosspost-alist-save').
7338
7339         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7340
7341         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7342         `unreads'.
7343         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7344         elmo-newsgroups-hashtb).
7345         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7346         `elmo-nntp-folder-update-crosspost-message-alist'.
7347         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7348         `elmo-nntp-groups-hashtb'.
7349         (elmo-nntp-make-groups-hashtb): Eliminated.
7350         (elmo-nntp-parse-newsgroups): New function (Renamed from
7351         `wl-parse-newsgroups').
7352         (elmo-folder-creatable-p, elmo-folder-writable-p,
7353         elmo-folder-close-internal, elmo-folder-mark-as-read,
7354         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7355         Define.
7356         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7357
7358         * elmo-net.el (elmo-message-fetch): Check buffer size.
7359
7360         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7361
7362         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7363
7364         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7365         before `close' command.
7366
7367         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7368         `mark-alist' (All other related portions are changed).
7369
7370 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7371
7372         * elmo-util.el (elmo-create-hash-size): Eliminated.
7373         (elmo-make-hash) Make a hash with `one less than a power of two'
7374         length.
7375
7376         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7377         (elmo-hash-maximum-size): Changed value.
7378
7379 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7380
7381         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7382         (elmo-mime-message-display-as-is): Ditto.
7383
7384 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7385
7386         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7387         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7388
7389 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7390
7391         * elmo-mark.el: New file.
7392
7393         * elmo-internal.el: Rewrite (Almost empty).
7394
7395 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7396
7397         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7398         (mime-imap-entity-header-string): Ditto.
7399         (mmimap-entity-section): Rewrite.
7400
7401 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7402
7403         * elmo-nmz.el: New file.
7404
7405         * elmo-pipe.el: Rewrite with luna.
7406
7407 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7408
7409         * elmo-archive.el: Rewrite with luna.
7410
7411         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7412         (elmo-folder-list-importants-internal): Ditto.
7413
7414 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7415
7416         * elmo-archive.el (elmo-archive-version): Abolish.
7417         (toplevel) Removed `boso' comment.
7418
7419 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7420
7421         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7422         elmo-msgdb-add-msgs-to-seen-list-subr;
7423         Changed argument seen-marks to unread-marks.
7424
7425         * elmo-nntp.el: Rewrite with luna.
7426
7427 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7428
7429         * elmo-filter.el: Rewrite with luna.
7430
7431 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7432
7433         * elmo-pop3.el: Rewrite with luna.
7434
7435 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7436
7437         * elmo-multi.el: Rewrite with luna.
7438
7439         * elmo-vars.el (elmo-use-killed-list): Abolish.
7440         All other related portions are changed.
7441         (elmo-filename-replace-string-alist): Renamed from
7442         elmo-msgid-replace-string-alist.
7443
7444 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7445
7446         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7447
7448         * elmo-map.el: New file.
7449         * elmo-maildir.el: Rewrite with luna.
7450
7451 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7452
7453         * elmo.el: Changed meaning of `elmo-folder-commit'.
7454         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7455
7456 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7457
7458         * elmo.el (elmo-folder-append-buffer): New function.
7459         (Renamed from `elmo-append-msg')
7460
7461 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7462
7463         * elmo-mime.el: New file.
7464
7465 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7466
7467         * elmo-cache.el: Rewrite.
7468
7469 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7470
7471         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7472
7473 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7474
7475         * elmo-vars.el (elmo): New group.
7476         (elmo-strict-diff-folder-regexp): New variable.
7477
7478         * elmo-util.el (elmo-call-func): Abolish.
7479         (elmo-folder-get-type): Ditto.
7480         (elmo-*-get-spec): Ditto.
7481         (elmo-*-spec-*): Ditto.
7482         (elmo-imap4-identical-name-space-p): Ditto.
7483         (elmo-folder-identical-system-p): Ditto.
7484         (elmo-folder-direct-copy-alist): Ditto.
7485         (elmo-folder-direct-copy-p): Ditto.
7486
7487         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7488         (elmo-folder-initialize): Define.
7489         (elmo-folder-get-primitive-list): Ditto.
7490
7491         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7492         (elmo-folder-initialize): Define.
7493         Renamed `elmo-network-session-host-internal' to
7494         `elmo-network-session-server-internal'.
7495
7496         * elmo-multi.el (elmo-multi-folder): New luna class.
7497         (elmo-folder-initialize): Define.
7498         (elmo-folder-get-primitive-list): Ditto.
7499         (elmo-folder-contains-type): Ditto.
7500         (elmo-message-use-cache-p): Ditto.
7501
7502         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7503         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7504
7505         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7506         (elmo-folder-initialize): Define.
7507
7508         * elmo-filter.el (elmo-filter-folder): New luna class.
7509         (elmo-folder-initialize): Define.
7510         (elmo-folder-get-primitive-list): Ditto.
7511         (elmo-folder-contains-type): Ditto.
7512
7513 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7514
7515         * elmo-imap4.el: Rewrite with luna.
7516
7517         * mmimap.el: New file.
7518
7519         * mmelmo.el, mmelmo-imap4.el: Removed.
7520
7521         * elmo-net.el: Ditto.
7522
7523         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7524         (elmo-folder-initialize): Define.
7525
7526         * elmo-archive.el (elmo-archive-folder): New luna class.
7527         (elmo-folder-initialize): Define.
7528
7529         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7530         `elmo-folder-msgdb-path'.
7531         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7532         `elmo-make-folder'.
7533
7534 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7535
7536         * elmo.el: New file.
7537
7538         * elmo2.el: Renamed to elmo.el.
7539
7540 \f
7541 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7542
7543         * elmo-cache.el (elmo-cache-expire-by-size): Count
7544         a disk usage for a cache file entry in KB even when
7545         its kind is a directory.
7546
7547 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7548
7549         * elmo-version.el (elmo-version): Up to 2.5.7.
7550
7551 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7552
7553         * elmo-version.el (elmo-version): Up to 2.5.6.
7554
7555 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7556
7557         * elmo-version.el (elmo-version): Up to 2.5.5.
7558
7559 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7560
7561         * elmo-imap4.el (elmo-network-authenticate-session):
7562         Fixed a logic for response checking.
7563
7564 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7565
7566         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7567         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7568         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7569         `sasl-mechanisms'.
7570
7571         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7572         for `starttls-open-stream' and `starttls-negotiate'.
7573
7574         * elmo-nntp.el: Remove autoload settings for
7575         `starttls-open-stream' and `starttls-negotiate'.
7576
7577         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7578         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7579         `luna-define-class' with `eval-and-compile'.
7580
7581 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7582
7583         * elmo-util.el (elmo-read-search-condition-internal):
7584         Require an element of table for searching field.
7585
7586 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7587
7588         * elmo-version.el (elmo-version): Up to 2.5.4.
7589
7590 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7591
7592         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7593
7594 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7595
7596         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7597
7598 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7599
7600         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7601         before greeting.
7602
7603 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7604
7605         * elmo-imap4.el (elmo-imap4-delete-folder):
7606         Send "close" before "delete" (Use commented out line).
7607         (elmo-imap4-rename-folder): Ditto.
7608
7609         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7610         folder string itself.
7611         (elmo-dop-list-deleted): New function.
7612         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7613         killed.
7614
7615         * elmo-util.el (elmo-string-rassoc-all): New function.
7616
7617 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7618
7619         * elmo-version.el (elmo-version): Up to 2.5.3.
7620
7621         * elmo-net.el (elmo-network-get-session): Changed logic for
7622         checking process status.
7623
7624         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7625         process is nil;
7626         Changed logic for checking process status.
7627
7628 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7629
7630         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7631         before greeting.
7632         (elmo-network-setup-session): Set UIDL hash size according to
7633         the length of list response.
7634         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7635         according to the length of list response;
7636         Return the length of list response.
7637         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7638
7639 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7640
7641         * elmo-imap4.el (toplevel): Require 'ssl.
7642         Add autoload 'starttls.
7643         * elmo-pop3.el (toplevel): Ditto.
7644         * elmo-nntp.el (toplevel): Ditto.
7645
7646 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7647
7648         * elmo-imap4.el (toplevel): defun at compile time.
7649         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7650         sasl-next-step, sasl-step-data, sasl-step-set-data.
7651         * elmo-pop3.el (toplevel): Ditto.
7652
7653 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7654
7655         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7656
7657 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7658
7659         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7660         if error.
7661         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7662         and `elmo-pop-auth-apop'.
7663
7664 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7665
7666         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7667
7668 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7669
7670         * elmo-pop3.el (elmo-network-authenticate-session): Split
7671         encoded response value.
7672
7673 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7674
7675         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7676         `elmo-pop3-force-login'.
7677         Redefine `sasl-mechanisms'.
7678         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7679
7680 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7681
7682         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7683         Delete `elmo-imap4-authenticator-alist'.
7684         (elmo-imap4-auth-cram-md5): Delete.
7685         (elmo-imap4-auth-digest-md5): Delete.
7686
7687 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7688
7689         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7690         (elmo-pop3-auth-scram-md5): Ditto.
7691         (elmo-pop3-auth-cram-md5): Ditto.
7692
7693 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7694
7695         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7696         Delete `elmo-pop3-authenticator-alist'.
7697
7698 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7699
7700         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7701         new SASL API.
7702         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7703
7704 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7705
7706         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7707
7708 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7709
7710         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7711         Fixed problem when `elmo-pop3-use-uidl' is nil.
7712         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7713
7714 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7715
7716         * elmo-version.el (elmo-version): Up to 2.5.2.
7717
7718 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7719
7720         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7721         New function.
7722         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7723         (elmo-pop3-msgdb-create-as-numlist): Use it.
7724
7725         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7726         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7727
7728         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7729         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7730
7731 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7732
7733         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7734         when elmo-mark-as-read is called with second argument nil.
7735
7736 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7737
7738         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7739         Moved to elmo-util.el.
7740
7741         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7742         Moved from elmo-pipe.el
7743
7744         * elmo-archive.el (elmo-archive-call-process): Enclose with
7745         static-if.
7746
7747         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7748         "RFC822" (because RFC822.PEEK is obsolete).
7749         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7750
7751 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7752
7753         * elmo-archive.el (elmo-archive-call-process): Don't check for
7754         the exit status when Nemacs is running.
7755
7756 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7757
7758         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7759         'plain.
7760
7761         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7762         (elmo-pop3-get-spec): Set default of auth to 'user.
7763
7764         * elmo-imap4.el (elmo-imap4-session-check):
7765         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7766         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7767         (elmo-imap4-auth-login): New function; Revival.
7768         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7769         `elmo-imap4-auth-login'.
7770
7771 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7772
7773         * elmo2.el (toplevel): Move `product-provide' declare.
7774         * mmelmo.el (toplevel): Ditto.
7775
7776 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7777
7778         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7779
7780 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7781
7782         * elmo-util.el (elmo-folder-get-store-type): New function.
7783         (elmo-folder-direct-copy-p): Use it.
7784
7785 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7786
7787         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7788         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7789         and result of `elmo-imap4-use-flag-p'.
7790         (elmo-imap4-fetch-callback-1): Set mark according to
7791         the result of `elmo-imap4-use-flag-p'.
7792
7793 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7794
7795         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7796         (elmo-generic-list-folder-unread): Ditto.
7797         (elmo-folder-get-info): Ditto.
7798         (elmo-folder-set-info-max-by-numdb): Ditto.
7799         (elmo-folder-get-info-max): Ditto.
7800         (elmo-folder-get-info-length): Ditto.
7801         (elmo-folder-get-info-unread): Ditto.
7802         (elmo-folder-info-make-hashtb): Ditto.
7803
7804         * elmo2.el: Removed above functions.
7805
7806 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7807
7808         * elmo-imap4.el (toplevel): Require 'ssl.
7809         Add autoload 'starttls.
7810         * elmo-pop3.el (toplevel): Ditto.
7811         * elmo-nntp.el (toplevel): Ditto.
7812
7813 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7814
7815         * elmo-imap4.el (toplevel): defun at compile time.
7816         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7817         sasl-next-step, sasl-step-data, sasl-step-set-data.
7818         * elmo-pop3.el (toplevel): Ditto.
7819
7820 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7821
7822         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7823
7824 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7825
7826         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7827         if error.
7828         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7829         and `elmo-pop-auth-apop'.
7830
7831 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7832
7833         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7834
7835 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7836
7837         * elmo-pop3.el (elmo-network-authenticate-session): Split
7838         encoded response value.
7839
7840 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7841
7842         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7843         `elmo-pop3-force-login'.
7844         Redefine `sasl-mechanisms'.
7845         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7846
7847 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7848
7849         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7850         Delete `elmo-imap4-authenticator-alist'.
7851         (elmo-imap4-auth-cram-md5): Delete.
7852         (elmo-imap4-auth-digest-md5): Delete.
7853
7854 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7855
7856         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7857         (elmo-pop3-auth-scram-md5): Ditto.
7858         (elmo-pop3-auth-cram-md5): Ditto.
7859
7860 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7861
7862         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7863         Delete `elmo-pop3-authenticator-alist'.
7864
7865 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7866
7867         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7868         new SASL API.
7869         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7870
7871 \f
7872 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7873
7874         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7875
7876 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7877
7878         * elmo-nntp.el (elmo-nntp-get-folders-info):
7879         Fixed problem when '\' character is contained in user-id.
7880         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7881
7882 \f
7883 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7884
7885         * elmo-imap4.el (elmo-imap4-delete-folder):
7886         Send "close" before "delete" (Use commented out line).
7887         (elmo-imap4-rename-folder): Ditto.
7888
7889         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7890         folder string itself.
7891         (elmo-dop-list-deleted): New function.
7892         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7893         killed.
7894
7895         * elmo-util.el (elmo-string-rassoc-all): New function.
7896
7897         * elmo-version.el (elmo-version): Up to 2.5.1.
7898
7899 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7900
7901         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7902
7903         * elmo-internal.el (elmo-internal-search): Fix last change.
7904
7905 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7906
7907         * elmo-internal.el (elmo-internal-search): Rewrite.
7908         (Fixed problem which is pointed out by Akihiro MOTOKI
7909         <motoki@da.jp.nec.com>)
7910
7911         * elmo-version.el (elmo-version): Up to 2.5.0.
7912
7913 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7914
7915         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7916
7917 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7918
7919         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7920         non-nil, make hierarchy.
7921
7922 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7923
7924         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7925         `elmo-pop3-use-uidl' must be bound to nil.
7926         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7927
7928 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7929
7930         * elmo-util.el (elmo-copy-file): Don't cause an error after
7931         `add-name-to-file' failed.
7932
7933         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7934         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7935
7936 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7937
7938         * elmo-version.el (elmo-version): Up to 2.3.93.
7939
7940 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7941
7942         * elmo-util.el (elmo-flatten): New function.
7943
7944 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7945
7946         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7947         sync Author header.
7948         * elmo-cache.el (toplevel): Ditto.
7949         * elmo-database.el (toplevel): Ditto.
7950         * elmo-date.el (toplevel): Ditto.
7951         * elmo-dop.el (toplevel): Ditto.
7952         * elmo-filter.el (toplevel): Ditto.
7953         * elmo-imap4.el (toplevel): Ditto.
7954         * elmo-internal.el (toplevel): Ditto.
7955         * elmo-localdir.el (toplevel): Ditto.
7956         * elmo-localnews.el (toplevel): Ditto.
7957         * elmo-maildir.el (toplevel): Ditto.
7958         * elmo-msgdb.el (toplevel): Ditto.
7959         * elmo-multi.el (toplevel): Ditto.
7960         * elmo-net.el (toplevel): Ditto.
7961         * elmo-nntp.el (toplevel): Ditto.
7962         * elmo-pipe.el (toplevel): Ditto.
7963         * elmo-pop3.el (toplevel): Ditto.
7964         * elmo-util.el (toplevel): Ditto.
7965         * elmo-vars.el (toplevel): Ditto.
7966         * elmo2.el (toplevel): Ditto.
7967         * mmelmo-imap4.el (toplevel): Ditto.
7968         * mmelmo.el (toplevel): Ditto.
7969
7970         * elmo-version.el (elmo-version): Move to top.
7971
7972         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7973         * elmo-imap4.el (toplevel): Ditto.
7974         * elmo-localdir.el (toplevel): Ditto.
7975         * elmo-msgdb.el (toplevel): Ditto.
7976         * elmo-nntp.el (toplevel): Ditto.
7977         * elmo-pop3.el (toplevel): Ditto.
7978         * elmo-version.el (toplevel): Ditto.
7979
7980         * elmo-localnews.el (toplevel): Added Keyword header.
7981
7982 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7983
7984         * elmo-version.el (product-version-as-string): Defined using
7985         `defun-maybe'.
7986         (toplevel): Use it.
7987
7988         * elmo-localdir.el (toplevel): Updated copyright notice.
7989         * elmo-version.el (toplevel): Ditto.
7990         * elmo-msgdb.el (toplevel): Ditto.
7991         * elmo-imap4.el (toplevel): Ditto.
7992         * elmo-nntp.el (toplevel): Ditto.
7993         * elmo-pop3.el (toplevel): Ditto.
7994
7995 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7996
7997         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7998         messages.
7999
8000         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
8001         parameter value (It sometimes contains raw kanji).
8002
8003 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8004
8005         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
8006         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
8007
8008 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8009
8010         * elmo-imap4.el (elmo-network-initialize-session): Fix.
8011
8012 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8013
8014         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
8015         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
8016
8017 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
8018
8019         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
8020         value if selecting folder succceeded.
8021         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
8022
8023 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8024
8025         * elmo-util.el (elmo-make-directory): Fixed permission lateral
8026         representation.
8027
8028         * elmo-util.el (elmo-string-matched-member): New function.
8029
8030 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
8031
8032         * elmo-util.el (elmo-unintern): New macro.
8033         (elmo-number-set-member): Fixed docstring.
8034
8035         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
8036         tag token.
8037
8038 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
8039
8040         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
8041         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
8042
8043 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
8044
8045         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
8046         `no-error'.
8047         Added docstring.
8048         Return non-nil if selecting folder succeeded.
8049         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
8050
8051 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
8052
8053         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
8054         `file-name-completion' returns t.
8055         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
8056         (elmo-maildir-set-mark): Put `info' part to the files in the cur
8057         directory if it does not exist.
8058         (elmo-maildir-update-current): Use `while' instead of `mapcar'
8059         for iteration.
8060
8061 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
8062
8063         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
8064         enclosure (It's harmful in unplugged status).
8065
8066         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
8067
8068         * mmelmo-1.el: Removed.
8069
8070         * mmelmo-2.el: Ditto.
8071
8072         * mmelmo-imap4-1.el: Ditto.
8073
8074         * mmelmo-imap4-2.el: Ditto.
8075
8076         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
8077
8078         * mmelmo.el: Merged mmelmo-2.el.
8079
8080         * elmo-version.el (elmo-version): Up to 2.3.92.
8081
8082 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8083
8084         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
8085         elmo-update-number): Remove last period in "...done." message.
8086         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
8087         Ditto.
8088         * elmo-cache.el (elmo-cache-expire-by-size,
8089         elmo-cache-get-sorted-cache-file-list,
8090         elmo-cache-msgdb-create-as-numlist): Ditto.
8091         * elmo-dop.el (elmo-dop-save-pending-messages,
8092         (elmo-dop-flush-pending-append-operations): Ditto.
8093         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
8094         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
8095         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
8096         (elmo-localdir-pack-number): Ditto.
8097         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
8098         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
8099         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
8100         mime-write-entity-content): Ditto.
8101         * pldap.el (ldap-search-basic): Ditto.
8102
8103 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
8104
8105         * elmo-version.el (elmo-version): Up to 2.3.91.
8106
8107         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
8108         Only when filter is 'last'.
8109
8110         * elmo-util.el (elmo-condition-atom-regexp): New constant.
8111         (elmo-condition-parse-search-value): Use it.
8112         (elmo-read-search-condition-internal): Quote value only when
8113         it is not an atom.
8114
8115 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
8116
8117         * elmo2.el (elmo-generic-folder-diff): Fix.
8118
8119 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
8120
8121         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
8122         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
8123         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
8124         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8125         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
8126         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
8127
8128 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
8129
8130         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
8131         extra-fields.
8132
8133 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
8134
8135         * elmo-version.el (elmo-version): Up to 2.3.90.
8136
8137         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
8138         (elmo-imap4-list-folder-important): Ditto.
8139
8140 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8141
8142         * elmo-nntp.el (elmo-network-initialize-session): Fix.
8143
8144 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8145
8146         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
8147
8148 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
8149
8150         * elmo-nntp.el (elmo-network-initialize-session):
8151         Add starttls negotiation.
8152
8153 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8154
8155         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
8156         response.
8157         (elmo-network-setup-session): Define.
8158         Call `elmo-nntp-send-mode-reader' when session opened.
8159
8160 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8161
8162         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
8163
8164 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
8165
8166         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
8167         an invalid SPACE character ahead of `SEARCH' command.  Move
8168         a valid SPACE character following `SEARCH' from conditional
8169         `format' arguments to control-strings.
8170
8171 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8172
8173         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
8174         was succeeded.
8175
8176         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
8177
8178 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
8179
8180         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
8181         `w32-get-true-file-link-count' as t.
8182
8183         * elmo-imap4.el (elmo-imap4-read): Abolished.
8184         (Renamed to `elmo-read' and moved to elmo-util.el)
8185         All other related portions are changed.
8186
8187         * elmo-util.el (elmo-read): New function.
8188         (elmo-condition-parse-search-value): Use it.
8189
8190 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
8191
8192         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
8193
8194         * elmo-nntp.el (elmo-nntp-session): Define.
8195         (elmo-nntp-setting): Abolished.
8196         All other related portions are changed.
8197         (elmo-nntp-get-server-command): Changed argument.
8198         (elmo-nntp-set-server-command): Ditto.
8199         (elmo-nntp-xover-p): Ditto.
8200         (elmo-nntp-set-xover): Ditto.
8201         (elmo-nntp-listgroup-p): Ditto.
8202         (elmo-nntp-set-listgroup): Ditto.
8203         (elmo-nntp-list-active-p): Ditto.
8204         (elmo-nntp-set-list-active): Ditto.
8205         (elmo-nntp-xhdr-p): Ditto.
8206         (elmo-nntp-set-xhdr): Ditto.
8207         (elmo-nntp-flush-connection): Abolished.
8208         (elmo-nntp-get-connection): Abolished.
8209         (elmo-nntp-get-session): New function.
8210         (elmo-network-initialize-session): Defined.
8211         (elmo-network-authenticate-session): Ditto.
8212         (elmo-nntp-send-mode-reader): Changed argument.
8213         (elmo-nntp-send-command): Changed argument.
8214         All other related portions are changed.
8215         (elmo-nntp-read-response): Ditto.
8216         (elmo-nntp-read-raw-response): Ditto.
8217         (elmo-nntp-read-contents): Ditto.
8218         (elmo-nntp-read-body): Ditto.
8219         (elmo-nntp-goto-folder): Abolished.
8220         (elmo-nntp-select-group): New function.
8221         All other related portions are changed.
8222         (This function substitutes `elmo-nntp-goto-folder')
8223         (elmo-nntp-msgdb-create-by-header): Rewrite.
8224         (elmo-nntp-get-overview): Eliminated.
8225         (elmo-nntp-get-message): Ditto.
8226         (elmo-nntp-open-connection) Abolished.
8227         (elmo-nntp-read-msg): Rewrite.
8228         (elmo-nntp-post): Ditto.
8229         (elmo-nntp-send-data): Abolished.
8230         (elmo-nntp-send-buffer): New function.
8231         (elmo-nntp-send-data-line): Define as inline function.
8232         (elmo-nntp-get-folders-info-prepare): Use session as key.
8233         (elmo-nntp-groups-read-response): Changed argument.
8234         (elmo-nntp-retrieve-headers): Ditto.
8235         (elmo-nntp-msgdb-create-message): Ditto.
8236
8237         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
8238         when searching by 'since' or 'before'.
8239
8240 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8241
8242         * elmo-version.el (toplevel): Use product-version-as-string for set
8243         verstion-string, if defined.
8244
8245 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
8246
8247         * elmo-util.el: Doc fixes.
8248
8249 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8250
8251         * elmo-archive.el (toplevel): Use product-provide.
8252         * elmo-cache.el (toplevel): Ditto.
8253         * elmo-database.el (toplevel): Ditto.
8254         * elmo-date.el (toplevel): Ditto.
8255         * elmo-dop.el (toplevel): Ditto.
8256         * elmo-filter.el (toplevel): Ditto.
8257         * elmo-imap4.el (toplevel): Ditto.
8258         * elmo-internal.el (toplevel): Ditto.
8259         * elmo-localdir.el (toplevel): Ditto.
8260         * elmo-localnews.el (toplevel): Ditto.
8261         * elmo-maildir.el (toplevel): Ditto.
8262         * elmo-msgdb.el (toplevel): Ditto.
8263         * elmo-multi.el (toplevel): Ditto.
8264         * elmo-net.el (toplevel): Ditto.
8265         * elmo-nntp.el (toplevel): Ditto.
8266         * elmo-pipe.el (toplevel): Ditto.
8267         * elmo-pop3.el (toplevel): Ditto.
8268         * elmo-util.el (toplevel): Ditto.
8269         * elmo-vars.el (toplevel): Ditto.
8270         * elmo2.el (toplevel): Ditto.
8271         * mmelmo-1.el (toplevel): Ditto.
8272         * mmelmo-2.el (toplevel): Ditto.
8273         * mmelmo-imap4-1.el (toplevel): Ditto.
8274         * mmelmo-imap4-2.el (toplevel): Ditto.
8275         * mmelmo-imap4.el (toplevel): Ditto.
8276         * mmelmo.el (toplevel): Ditto.
8277
8278 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
8279
8280         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
8281         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
8282
8283 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
8284
8285         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
8286         before splitting.
8287         (elmo-multi-split-number-alist): Ditto.
8288
8289 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8290
8291         * elmo-version.el: New file.  Use product.el.
8292         * elmo2.el: Add (require 'elmo-version).
8293         * elmo-vars.el (elmo-appname, elmo-version): Move to
8294         elmo-version.el
8295
8296 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
8297
8298         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
8299         `elmo-msgdb-expand-path'.
8300         (elmo-msgdb-load): Ditto.
8301         Abolished 2nd argument. If 1st argument is not string, treat as spec.
8302         (elmo-generic-list-folder-unread): Rewrite.
8303         (elmo-generic-list-folder-important): Changed argument.
8304         (elmo-list-folder-unread): Ditto.
8305         (elmo-list-folder-important): Ditto.
8306         (elmo-folder-diff): Rewrite.
8307         (elmo-generic-folder-diff): New function.
8308         (elmo-multi-get-number-alist-list): Abolished
8309         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
8310         (elmo-multi-folder-diff): Moved to elmo-multi.el
8311         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
8312
8313         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
8314         `elmo-msgdb-expand-path'.
8315         (elmo-pop3-msgdb-create-as-numlist): Ditto.
8316         (elmo-pop3-read-msg): Ditto.
8317         (elmo-pop3-delete-msgs): Ditto.
8318         (elmo-pop3-folder-diff): New alias.
8319
8320         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
8321         `elmo-msgdb-expand-path'.
8322         (elmo-pipe-list-folder-unread): Changed arguments.
8323         (elmo-pipe-list-folder-important): Ditto.
8324         (elmo-pipe-folder-diff): New alias.
8325
8326         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8327         `elmo-msgdb-expand-path'.
8328         (elmo-nntp-max-of-folder): Ditto.
8329         (elmo-nntp-msgdb-create): Ditto.
8330         (elmo-nntp-delete-msgs): Ditto.
8331         (elmo-nntp-folder-diff): New alias.
8332
8333         * elmo-multi.el (elmo-multi-folder-diff): New function.
8334         (elmo-multi-split-mark-alist): Ditto.
8335         (elmo-multi-split-number-alist): Ditto.
8336         (elmo-multi-mark-alist-list): Abolished (Renamed to
8337         elmo-multi-split-mark-alist).
8338         (elmo-multi-list-folder-unread): Rewrite.
8339         (elmo-multi-list-folder-important): Ditto.
8340         (elmo-multi-list-folder): Set `spec' as 1st argument for
8341         `elmo-msgdb-expand-path'.
8342         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8343         instead of `elmo-multi-get-number-alist-list'.
8344
8345         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8346         If 1st argument is not string, treat as spec.
8347         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8348         `elmo-msgdb-expand-path'.
8349         (elmo-msgdb-flist-load): Ditto.
8350         (elmo-msgdb-flist-save): Ditto.
8351         (elmo-msgdb-delete-path): Ditto.
8352         (elmo-msgdb-rename-path): Ditto.
8353
8354         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8355         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8356         (elmo-maildir-delete-mark-msgs): Ditto.
8357         (elmo-maildir-msgdb-create): Ditto.
8358         (elmo-maildir-read-msg): Ditto.
8359         (elmo-maildir-delete-msgs): Ditto.
8360         (elmo-maildir-list-folder-subr): Ditto.
8361         (elmo-maildir-search): Ditto.
8362         (elmo-maildir-get-msg-filename): Ditto.
8363         (elmo-maildir-pack-number): Ditto.
8364         (elmo-maildir-folder-diff): New alias.
8365
8366         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8367
8368         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8369         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8370         (elmo-localdir-folder-diff): New alias.
8371
8372         * elmo-internal.el (elmo-internal-list-folder-subr):
8373         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8374         (elmo-internal-list-folder-by-location): Ditto.
8375         (elmo-internal-msgdb-create): Ditto.
8376         (elmo-internal-delete-msgs): Ditto.
8377         (elmo-internal-read-msg): Ditto.
8378         (elmo-internal-folder-diff): New alias.
8379
8380         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8381         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8382         `elmo-msgdb-expand-path'.
8383         (elmo-imap4-list-folder-unread): Changed arguments.
8384         (elmo-imap4-list-folder-important): Ditto.
8385
8386         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8387         (elmo-filter-list-folder-important): Ditto.
8388         (elmo-filter-folder-diff): New function.
8389
8390         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8391
8392         * elmo-cache.el (elmo-cache-list-folder):
8393         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8394         (elmo-cache-copy-msgs): Ditto.
8395         (elmo-cache-folder-diff): New alias.
8396
8397         * elmo-archive.el (elmo-archive-list-folder-subr):
8398         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8399         (elmo-archive-get-archive-name): Ditto.
8400         (elmo-archive-create-file): Ditto.
8401         (elmo-archive-append-msg): Ditto.
8402         (elmo-archive-copy-msgs): Ditto.
8403         (elmo-archive-copy-msgs-froms): Ditto.
8404         (elmo-archive-get-msg-filename): Ditto.
8405         (elmo-archive-folder-diff): New alias.
8406
8407 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8408
8409         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8410         (elmo-pop3-stream-type-alist): New variable.
8411         (elmo-nntp-stream-type-alist): New variable.
8412
8413         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8414         (elmo-kill-buffer): Ditto.
8415         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8416         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8417         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8418         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8419         (elmo-imap4-get-spec): Take into account
8420         `elmo-imap4-stream-type-alist'.
8421
8422 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8423
8424         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8425         (elmo-nntp-list-folders-get-cache): Ditto.
8426
8427 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8428
8429         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8430         character before 'uid'.
8431
8432 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8433
8434         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8435
8436         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8437
8438         * elmo-util.el (elmo-number-set-member): New function.
8439         (elmo-number-set-append-list): Ditto.
8440         (elmo-number-set-append): Ditto.
8441
8442         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8443         Use `elmo-number-set-member'.
8444         (elmo-living-messages): Ditto.
8445         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8446         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8447
8448         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8449         (elmo-imap4-add-to-cont-list): Abolished.
8450         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8451         instead of elmo-imap4-add-to-cont-list.
8452
8453         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8454         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8455
8456         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8457
8458 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8459
8460         * elmo-util.el (elmo-condition-parse-search-value):
8461         Fixed date parsing.
8462
8463 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8464
8465         * elmo-util.el (elmo-condition-find-key-internal): New function.
8466         (elmo-condition-find-key): Ditto.
8467
8468         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8469         (elmo-msgdb-search-internal): Ditto.
8470         (elmo-msgdb-search): Ditto.
8471
8472 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8473
8474         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8475         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8476
8477         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8478         (elmo-nntp-search-primitive): Fixed problem when condition is
8479         'unmatch'.
8480
8481         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8482
8483         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8484         (elmo-nntp-xhdr-p): New macro.
8485         (elmo-nntp-set-xhdr): Ditto.
8486         (elmo-nntp-parse-xhdr-response): New function.
8487         (elmo-nntp-retrieve-field): Ditto.
8488         (elmo-nntp-search-primitive): Ditto.
8489         (elmo-nntp-search): Implemented.
8490
8491         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8492
8493         * elmo-archive.el (elmo-archive-search): Set all number list to
8494         `elmo-archive-field-condition-match'
8495
8496         * elmo-localdir.el (elmo-localdir-search): Likewise.
8497
8498         * elmo-maildir.el (elmo-maildir-search): Likewise.
8499
8500 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8501
8502         * elmo-msgdb.el (elmo-living-messages): New function.
8503         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8504         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8505         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8506         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8507         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8508         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8509         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8510         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8511         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8512         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8513         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8514
8515 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8516
8517         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8518
8519         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8520
8521         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8522
8523         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8524         arguments for `SEARCH' command.
8525         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8526         All other related portions are changed.
8527
8528         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8529
8530         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8531         (elmo-list-folder-unread): Rewrite.
8532         (elmo-list-folder-important): Ditto.
8533
8534         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8535         (elmo-condition-parse-error): New inline function.
8536         (elmo-read-search-condition): New function.
8537         (elmo-read-search-condition-internal): Ditto.
8538         (elmo-parse-search-condition): Rewrite.
8539         (elmo-condition-parse): New function.
8540         (elmo-condition-parse-or-expr): Ditto.
8541         (elmo-condition-parse-and-expr): Ditto.
8542         (elmo-condition-parse-primitive): Ditto.
8543         (elmo-condition-parse-search-value): Ditto.
8544         (elmo-buffer-field-primitive-condition-match): Ditto.
8545         (elmo-buffer-field-condition-match): Rewrite.
8546         (elmo-file-field-condition-match): Ditto.
8547
8548         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8549         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8550
8551         * elmo-internal.el (elmo-internal-search): Set `number' and
8552         `number-list' argument of `elmo-file-field-condition-match'.
8553
8554         * elmo-maildir.el (elmo-maildir-search): Ditto.
8555
8556         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8557         `msgdb' as argument instead of `mark-alist'.
8558         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8559         `overview'.
8560
8561         * elmo-multi.el: Likewise.
8562
8563         * elmo-pipe.el: Likewise.
8564
8565         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8566         (elmo-imap4-search-internal): Rewrite.
8567         (elmo-imap4-search): Ditto.
8568
8569         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8570         (elmo-filter-list-folder-unread): Ditto.
8571         (elmo-filter-list-folder-important): Ditto.
8572         (elmo-filter-search): Rewrite.
8573
8574         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8575         `number-list' argument of `elmo-file-field-condition-match'.
8576         (elmo-cache-search): Ditto.
8577
8578         * elmo-localdir.el: Likewise.
8579
8580         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8581         number-list and pass it to `elmo-buffer-field-condition-match'.
8582         (elmo-archive-field-condition-match): Pass `number-list' to
8583         `elmo-archive-field-condition-match'
8584
8585 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8586
8587         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8588         `listgroup'.
8589
8590         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8591         (elmo-folder-diff-async-callback-data): Ditto.
8592         (elmo-folder-diff-async): New function.
8593
8594         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8595         (elmo-network-session-cache-key): Use it as a prefix of the session
8596         name.
8597         (elmo-network-open-session): Ditto.
8598
8599         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8600         (elmo-imap4-status-callback-data): Ditto.
8601         (elmo-imap4-server-diff-async-callback): New variable.
8602         (elmo-imap4-server-diff-async-callback-data): Ditto.
8603         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8604         `elmo-imap4-status-callback-data'.
8605         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8606         `elmo-imap4-status-callback-data' as nil.
8607         (elmo-imap4-server-diff): Ditto.
8608         (elmo-imap4-server-diff-async-callback-1): New function.
8609         (elmo-imap4-server-diff-async): Ditto.
8610         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8611
8612 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8613
8614         * elmo-util.el (elmo-list-delete): Doc fix.
8615         (elmo-delete-lists): Abolish.
8616         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8617         instead of `elmo-delete-lists'.
8618
8619 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8620
8621         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8622         before `sort'.
8623
8624 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8625
8626         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8627         `elmo-imap4-literal-subr'.
8628         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8629         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8630
8631 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8632
8633         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8634         (elmo-archive-list-folder): Fix.
8635         (elmo-archive-max-of-folder): Fix.
8636
8637 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8638
8639         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8640          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8641         (elmo-localdir-append-msg): Ditto.
8642         (elmo-localdir-list-folder): Fix for `nonsort'.
8643         (elmo-localdir-list-folder-subr): Fix for `killed'.
8644         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8645         (elmo-maildir-list-folder-subr): Ditto.
8646         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8647         (elmo-archive-list-folder-subr): Ditto.
8648         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8649         (elmo-internal-list-folder-subr): Ditto.
8650
8651 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8652
8653         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8654
8655 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8656
8657         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8658
8659 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8660
8661         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8662         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8663
8664         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8665         before greeting.
8666         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8667         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8668
8669 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8670
8671         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8672
8673         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8674         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8675         before STORE command.
8676
8677 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8678
8679         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8680
8681         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8682         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8683         of `response'.
8684         (elmo-imap4-list-folders): Removed unused local variable.
8685         (elmo-network-initialize-session): Ditto.
8686         (elmo-imap4-delete-msg-by-id): Ditto.
8687         (elmo-imap4-parse-fetch): Ditto.
8688         (elmo-imap4-copy-msgs): Ditto.
8689         Use `dst-spec' instead of `dst-folder'.
8690         (elmo-network-authenticate-session): Check authenticate type `plain'.
8691
8692 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8693
8694         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8695         garbage checking.
8696         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8697         `elmo-imap4-response-value'.
8698         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8699
8700 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8701
8702         * elmo-imap4.el (elmo-imap4-send-command):
8703         Cause elmo-imap4-bye-error when current response is BYE.
8704         (elmo-imap4-arrival-filter): Changed greeting response value.
8705
8706         * elmo2.el (elmo-imap4-bye-error): Define.
8707
8708         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8709         (elmo-imap4-server-diff): Ditto.
8710         (elmo-imap4-response-bye-p): New macro.
8711         (elmo-imap4-response-error-text): Get text from BYE response.
8712         (elmo-imap4-read-response): Return if BYE response.
8713         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8714         (elmo-imap4-folder-exists-p): Ditto.
8715         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8716         (elmo-imap4-parse-bye): New function.
8717         (elmo-imap4-parse-response): Remove needless let.
8718         Call `elmo-imap4-parse-bye'.
8719
8720 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8721
8722         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8723         the mailbox does not exist.
8724         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8725
8726 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8727
8728         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8729
8730 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8731
8732         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8733
8734         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8735         (elmo-network-initialize-session-buffer): Defined.
8736
8737         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8738         Abolished.
8739         (mmelmo-imap4-get-mime-entity): Rewrite.
8740
8741         * elmo2.el (elmo-error): Capitalize error message.
8742
8743         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8744         (elmo-network-session-buffer): New macro.
8745         (elmo-network-open-session): Use it.
8746
8747         * elmo-imap4.el: Rewrite.
8748
8749 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8750
8751         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8752
8753 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8754
8755         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8756         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8757         (elmo-imap4-create-msgdb-from-overview-string): Use
8758         `elmo-msgdb-create-overview-from-buffer'.
8759
8760 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8761
8762         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8763         (elmo-imap4-default-hierarchy-delimiter): New variable.
8764         (elmo-imap4-list-folders): Use it.
8765
8766 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8767
8768         * elmo-net.el (elmo-network-open-session): Add user and
8769         stream-type for process-buffer name.
8770
8771         * elmo-pop3.el (elmo-network-initialize-session): Call
8772         buffer-disable-undo.
8773
8774         * elmo-imap4.el (elmo-network-initialize-session):
8775         Set current-buffer as an argument for `buffer-disable-undo'.
8776
8777         * elmo-pop3.el (elmo-network-close-session): Don't use
8778         `process-live-p'.
8779
8780         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8781         Set default as 'user.
8782
8783         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8784
8785         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8786         and `elmo-imap4-flush-connection'.
8787
8788         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8789         (elmo-pop3-get-spec): Assume auth as symbol.
8790         (elmo-open-network-stream): Moved to `elmo-net'.
8791
8792         * elmo-pop3.el (toplevel): Require 'elmo-net.
8793         Define `sasl-cram-md5' to silence byte compilier.
8794         (elmo-pop3-connection-cache) Abolished.
8795         (elmo-pop3-authenticator-alist) New variable.
8796         (elmo-pop3-session): Define.
8797         (elmo-pop3-connection-get-process): Abolished.
8798         (elmo-pop3-connection-get-buffer): Ditto.
8799         (elmo-pop3-close-connection): Ditto.
8800         (elmo-pop3-flush-connection): Ditto.
8801         (elmo-pop3-get-connection): Ditto.
8802         (elmo-pop3-get-session): New function.
8803         (Replacement for `elmo-pop3-get-connection').
8804         All other related modules are changed.
8805         (elmo-network-close-session): Define.
8806         (elmo-pop3-send-command): Abolished argument `buffer'.
8807         All other related modules are changed.
8808         (elmo-pop3-read-response): Likewise.
8809         (elmo-pop3-open-connection): Abolished.
8810         (elmo-pop3-auth-user): New function.
8811         (elmo-pop3-auth-apop): Ditto.
8812         (elmo-pop3-auth-cram-md5): Ditto.
8813         (elmo-pop3-auth-scram-md5): Ditto.
8814         (elmo-pop3-auth-digest-md5): Ditto.
8815         (elmo-network-initialize-session): Define.
8816         (elmo-network-authenticate-session): Ditto.
8817         (elmo-network-setup-session): Ditto.
8818
8819         * elmo-imap4.el (toplevel): Require 'elmo-net.
8820         (elmo-imap4-session): Define.
8821         (elmo-imap4-connection-cache): Abolished.
8822         (elmo-imap4-password-key): Ditto.
8823         (elmo-imap4-flush-connection): Ditto.
8824         (elmo-imap4-get-connection): Ditto.
8825         All other related modules are changed.
8826         (elmo-imap4-get-session): New function
8827         (Replacement for `elmo-imap4-get-connection').
8828         (elmo-imap4-read-response): Abolished argument `buffer'.
8829         All other related modules are changed.
8830         (elmo-imap4-send-command): Likewise.
8831         (elmo-imap4-select-folder): Abolished.
8832         All other related modules are changed.
8833         (elmo-imap4-select-mailbox): New function.
8834         (Replacement for `elmo-imap4-select-folder').
8835         (elmo-imap4-auth-login): Simplify.
8836         (Assume current buffer as process buffer)
8837         (elmo-imap4-auth-cram-md5): Ditto.
8838         (elmo-imap4-auth-digest-md5): Ditto.
8839         (elmo-imap4-login): Ditto.
8840         (elmo-imap4-open-connection): Abolished.
8841         (elmo-imap4-open-connection-1): Abolished.
8842         (elmo-network-initialize-sessoin): Define.
8843         (elmo-network-authenticate-session): Ditto.
8844         (elmo-network-setup-session): Ditto.
8845
8846         * elmo-net.el: New module.
8847
8848 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8849
8850         * elmo-util.el (elmo-define-error): New function.
8851
8852         * elmo2.el (elmo-error): Define.
8853         (elmo-open-error): Define.
8854         (elmo-authenticate-error): Define.
8855
8856         * elmo-imap4.el (elmo-imap4-error): Abolish.
8857         (elmo-imap4-error-type): Abolish.
8858         (elmo-imap4-error-process): Abolish.
8859         (elmo-imap4-error-message): Abolish
8860         (elmo-imap4-list-folders): Don't quote lambda.
8861         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8862         (elmo-imap4-parse-namespace): Ditto.
8863         (elmo-imap4-open-connection): Rewrite.
8864         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8865         (elmo-imap4-get-connection): Abolish local variable `result'.
8866
8867 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8868
8869         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8870         wrong-type-argument error when auth is nil.
8871
8872 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8873
8874         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8875         (elmo-default-nntp-stream-type): Ditto.
8876         (elmo-default-pop3-stream-type): Ditto.
8877         (elmo-network-stream-type-alist): Ditto.
8878         (elmo-default-imap4-ssl): Abolished.
8879         (elmo-default-nntp-ssl): Ditto.
8880         (elmo-default-pop3-ssl): Ditto.
8881
8882         * elmo-util.el: (toplevel): Removed needless requires.
8883         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8884         (elmo-open-network-stream): Open network stream according to
8885         the value of `elmo-network-stream-type-alist'.
8886         (elmo-get-network-stream-type): New function.
8887         (elmo-network-stream-type-spec-string): New macro.
8888         (elmo-network-stream-type-symbol): Ditto.
8889         (elmo-network-stream-type-function): Ditto.
8890
8891         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8892         network-stream-type. All other related portions are changed.
8893         (elmo-pop3-open-connection): Ditto.
8894
8895         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8896         network-stream-type. All other related portions are changed.
8897
8898         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8899         network-stream-type.All other related portions are changed.
8900         (elmo-imap4-error): New macro.
8901         (elmo-imap4-error-type): Ditto.
8902         (elmo-imap4-error-process): Ditto.
8903         (elmo-imap4-error-message): Ditto.
8904         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8905         (elmo-imap4-auth-cram-md5): Ditto.
8906         (elmo-imap4-auth-digest-md5): Ditto.
8907         (elmo-imap4-login): Ditto.
8908         (elmo-imap4-open-connection): Remove password entry if authentication
8909         was in vain.
8910         (elmo-imap4-user-at-host): Abolished.
8911         (elmo-imap4-password-key): New buffer local variable.
8912         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8913         using protocol, port, auth and stream-type.
8914
8915         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8916
8917 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8918
8919         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8920
8921         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8922
8923         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8924         (elmo-imap4-authenticator-alist): New variable.
8925         (elmo-imap4-open-connection-1): Rename from
8926         elmo-imap4-open-connection.
8927         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8928         only wraps elmo-imap4-open-connection-1.
8929         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8930         user-at-host.
8931         (elmo-imap4-auth-login): New function.
8932         (elmo-imap4-auth-cram-md5): New function.
8933         (elmo-imap4-auth-digest-md5): New function.
8934         (elmo-imap4-login): New function.
8935
8936 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8937
8938         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8939         function `error'.
8940
8941 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8942
8943         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8944
8945 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8946
8947         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8948
8949 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8950
8951         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8952         for server responses, quote `*' regardless of where it appears.
8953
8954 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8955
8956         * elmo-maildir.el (elmo-maildir-commit): New alias.
8957
8958 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8959
8960         * elmo-util.el (elmo-display-progress):
8961                 Use `progress-feedback-with-label'.
8962
8963 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8964
8965         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8966         (elmo-imap4-non-atom-char-regex): Ditto.
8967         (elmo-imap4-non-text-char-regex): Ditto.
8968         (elmo-imap4-literal-threshold): Ditto.
8969         (elmo-imap4-atom-p): New function.
8970         (elmo-imap4-quotable-p): Ditto.
8971         (elmo-imap4-nil): Ditto.
8972         (elmo-imap4-atom): Ditto.
8973         (elmo-imap4-quoted): Ditto.
8974         (elmo-imap4-literal-subr): Ditto.
8975         (elmo-imap4-literal): Ditto.
8976         (elmo-imap4-buffer-literal): Ditto.
8977         (elmo-imap4-string-subr): Ditto.
8978         (elmo-imap4-string): Ditto.
8979         (elmo-imap4-buffer-string): Ditto.
8980         (elmo-imap4-astring-subr): Ditto.
8981         (elmo-imap4-astring): Ditto.
8982         (elmo-imap4-buffer-astring): Ditto.
8983         (elmo-imap4-nstring): Ditto.
8984         (elmo-imap4-buffer-nstring): Ditto.
8985         (elmo-imap4-mailbox): New alias.
8986         (elmo-imap4-field-body): Ditto.
8987         (elmo-imap4-userid): Ditto.
8988         (elmo-imap4-password): Ditto.
8989         (elmo-imap4-format-quoted): New function.
8990         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8991         arguments and handle "atom", "quoted" and "literal" string here.
8992         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8993         `elmo-imap4-send-command'.
8994         (elmo-imap4-folder-exists-p): Likewise.
8995         (elmo-imap4-create-folder): Likewise.
8996         (elmo-imap4-delete-folder): Likewise.
8997         (elmo-imap4-rename-folder): Likewise.
8998         (elmo-imap4-max-of-folder): Likewise.
8999         (elmo-imap4-check-validity): Likewise.
9000         (elmo-imap4-sync-validity): Likewise.
9001         (elmo-imap4-server-diff): Likewise.
9002         (elmo-imap4-select-folder): Likewise.
9003         (elmo-imap4-copy-msgs): Likewise.
9004         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
9005         (elmo-imap4-mark-set-on-msgs): Likewise.
9006         (elmo-imap4-read-part): Likewise.
9007         (elmo-imap4-read-msg): Likewise.
9008         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
9009         `elmo-imap4-password' for `elmo-imap4-send-command'.
9010         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
9011         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
9012         `elmo-imap4-buffer-literal'.
9013         (elmo-imap4-append-msg): Likewise.
9014
9015         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
9016         `delete' for removing dead connection from the connection cache.
9017         Move deletion of the process buffer after that.
9018         (elmo-imap4-list): Change `defsubst' to `defun'.
9019         (elmo-imap4-commit): Make error message verbose.
9020         (elmo-imap4-search): Ditto.
9021         (elmo-imap4-list): Ditto.
9022         (elmo-imap4-select-folder): Ditto.
9023         (elmo-imap4-copy-msgs): Ditto.
9024         (elmo-imap4-delete-msg-by-id): Ditto.
9025         (elmo-imap4-append-msg-by-id): Ditto.
9026         (elmo-imap4-append-msg): Ditto.
9027
9028 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
9029
9030         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
9031         when dired is used on XEmacs.
9032
9033 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
9034
9035         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
9036         instead of `append'.
9037         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
9038         `elmo-plugged-p' directly.
9039         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
9040         of `elmo-plugged-p' directly.
9041
9042         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
9043         Eliminate unused variable.  Use `memq' for checking a process status.
9044         Use `cons' instead of `append' for updating the connection cache.
9045         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
9046         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
9047
9048 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
9049
9050         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
9051         `elmo-imap4-read-point' exactly.
9052
9053         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
9054         the local variable `folder' to `mailbox'.
9055         Rename the argument `fld' to `folder'.
9056
9057 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
9058
9059         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
9060         * elmo-imap4.el (elmo-imap4-commit): Ditto.
9061
9062 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
9063
9064         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
9065         (elmo-pop3-number-uidl-hash): New buffer-local variable.
9066         (elmo-pop3-uidl-number-hash): Ditto.
9067         (elmo-pop3-size-hash): Ditto.
9068         (elmo-pop3-uidl-done): Ditto.
9069         (elmo-pop3-list-done): Ditto.
9070         (elmo-pop3-connection-get-process): New defmacro.
9071         (elmo-pop3-connection-get-buffer): Ditto.
9072         (elmo-pop3-close-connection): Delete buffer and process.
9073         (elmo-pop3-flush-connection): Don't delete buffer and process.
9074         (elmo-pop3-get-connection): Added optional argument `if-exists'.
9075         Setup UIDL and size hash.
9076         (elmo-pop3-send-command-no-erase): Deleted
9077         (elmo-pop3-send-command): Added optional argument `no-erase'.
9078         (elmo-pop3-parse-uidl-response): New function.
9079         (elmo-pop3-parse-list-response): Set size hash.
9080         (elmo-pop3-list-location): New function.
9081         (elmo-pop3-list-by-uidl-subr): Ditto.
9082         (elmo-pop3-list-by-list): Ditto.
9083         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
9084         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
9085         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
9086         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
9087         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
9088         Use uidl.
9089         (elmo-pop3-uidl-to-number): New function.
9090         (elmo-pop3-number-to-uidl): Ditto.
9091         (elmo-pop3-number-to-size): Ditto.
9092         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
9093         Set number by use of uidl.
9094         (elmo-pop3-msgdb-create-message): Likewise.
9095         Set size, loc-alist in msgdb.
9096         (elmo-pop3-read-msg): Set number by use of uidl.
9097         Added optional argument `msgdb'.
9098         (elmo-pop3-delete-msg): Ditto.
9099         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
9100         (elmo-pop3-commit): Close connection.
9101
9102         * elmo-pipe.el (elmo-pipe-max-of-folder):
9103         Bind `elmo-pop3-use-uidl' as nil.
9104         (elmo-pipe-drain): Ditto.
9105         Call `elmo-commit'.
9106
9107         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
9108         (elmo-msgdb-overview-entity-set-size): New defsubst.
9109
9110 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
9111
9112         * elmo-vars.el (elmo-use-killed-list): New variable
9113         (Renamed from `elmo-nntp-use-killed-list').
9114         (elmo-nntp-use-killed-list): Eliminated.
9115
9116         * elmo-msgdb.el (elmo-msgdb-expand-path):
9117         Changed expanding msgdb path for elmo-multi.
9118
9119         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
9120         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
9121         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
9122         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
9123         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
9124         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
9125         (toplevel): Deleted time-stamp line.
9126
9127         * elmo2.el (elmo-clear-killed ): Defined as function
9128         (Abolished defining as a backend function).
9129         All other related modules are changed.
9130
9131 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
9132
9133         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
9134
9135 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
9136
9137         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
9138
9139 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
9140
9141         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
9142
9143 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
9144
9145         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
9146         asynchronous folder check.
9147
9148         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
9149
9150         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
9151         `elmo-nntp-use-killed-list'.
9152         (elmo-nntp-list-folder): Use killed list.
9153         (elmo-nntp-max-of-folder): Ditto.
9154         (elmo-nntp-msgdb-create): Set killed list.
9155
9156         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
9157
9158         * elmo2.el (elmo-clear-killed): New backend function.
9159         All other related modules are changed.
9160
9161 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
9162
9163         * elmo-util.el (elmo-imap4-spec-folder): Use
9164         `elmo-imap4-spec-mailbox'; Mark as obsolete.
9165         All callers changed.
9166
9167 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
9168
9169         * mmelmo-2.el (initialize-instance):
9170         Use `mime-buffer-entity-buffer-internal' instead of
9171         `mime-entity-buffer'.
9172
9173         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
9174         (mime-entity-body): Implemented.
9175         (mime-goto-header-start-point): Deleted.
9176         (mime-goto-body-end-point): Ditto.
9177         (mime-entity-point-min): Ditto.
9178         (mime-entity-point-max): Ditto.
9179         (mime-entity-children): Ditto.
9180         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
9181         instead of `mime-entity-buffer'.
9182         (mime-entity-header-buffer): Ditto.
9183         (mime-entity-body-buffer): Ditto.
9184         (mime-write-entity-content): Ditto.
9185
9186         * pldap.el (ldap-static-if): New macro.
9187         (toplevel): Use it instead of `static-if'.
9188
9189 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
9190
9191         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
9192         included in `attrs' argument.
9193
9194 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
9195
9196         * elmo-util.el (elmo-get-passwd): Use old backquote style.
9197
9198         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
9199         (ldap-ldif-safe-init-char-regexp): Ditto.
9200         (ldap-ldif-safe-string-regexp): Ditto.
9201         (ldap/ldif-safe-string-p): New macro.
9202         (ldap/ldif-insert-field): Ditto.
9203         (ldap-modify): Use it.
9204         (ldap-add): Ditto.
9205         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
9206         (ldap-decode-attribute): Decode only when `attr' is consp.
9207         (ldap-delete): Bind `ret'.
9208         (toplevel): Require 'cl at compile time.
9209         Removed (require 'poe) and (require 'std11).
9210         (pldap-version): Eliminated.
9211         (ldap-search-basic): Removed auth and dn binding.
9212         (ldap-ldif-field-name-regexp): New constant.
9213         (ldap-ldif-field-head-regexp): Ditto.
9214         (ldap-ldif-next-field-head-regexp): Ditto.
9215         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
9216         (ldap/field-end): New function.
9217         (ldap/field-body): Use it.
9218         (ldap/collect-field): Ditto.
9219         (ldap-search-basic): Use `ldap/field-body'.
9220
9221 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
9222
9223         * pldap.el (ldap-default-attribute-encoder): New user option.
9224         (ldap/field-body): Decode base64 string.
9225         (ldap/collect-field): Ditto.
9226         (ldap-encode-attribute): New function.
9227         (ldap-add-entries): Use it.
9228         (ldap-modify-entries): Ditto.
9229         (ldap-search-entries): Enclosed decoding function with
9230         `with-temp-buffer' and set as unibyte.
9231         (ldap-search-basic): Set process buffer as unibyte.
9232
9233         * elmo-util.el (elmo-folder-identical-system-p):
9234         Eliminated name space checking.
9235
9236         * pldap.el: New module.
9237         toplevel: Changed condition to detect built-in ldap feature.
9238         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
9239         (ldap-add): Added error handling.
9240         (ldap-modify): Ditto.
9241         (ldap-delete): Ditto.
9242
9243 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
9244
9245         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
9246         Initialize local variables with `let'.  Inline a temporary
9247         variable for the progress percentage.  Sort `setq' to reduce
9248         function call in the while-loop.
9249
9250         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
9251         into the conditional branch.
9252
9253 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
9254
9255         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
9256         Move a conditional out of the while-loop.
9257
9258 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9259
9260         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
9261         elmo-msgdb-overview-get-entity-by-number.
9262         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
9263         throw.
9264
9265 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
9266
9267         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
9268         the local variable for a packed number self descriptively.
9269
9270 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9271
9272         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
9273         * elmo-localdir.el (elmo-localdir-pack-number): Use
9274         `elmo-msgdb-overview-get-entity' instead of
9275         `elmo-msgdb-overview-get-entity-by-number'.
9276         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
9277         (elmo-msgdb-search-overview-entity): Removed.
9278         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
9279         by message-id or number.
9280         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
9281         instead of `elmo-msgdb-overview-get-entity-by-number'.
9282
9283 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9284
9285         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
9286         non-nil, use hash table for overview.
9287         (elmo-hash-maximum-size): New variable.
9288         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
9289         (elmo-msgdb-make-overview-hashtb): New function.
9290         (elmo-msgdb-clear-overview-hashtb): New function.
9291         (elmo-clear-hash-val): New macro.
9292         All other related modules are changed.
9293
9294 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
9295
9296         * elmo2.el (elmo-move-msgs): If there's other message with
9297         same message-id, don't use cache.
9298
9299 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
9300
9301         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
9302         number is already packed.
9303
9304 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
9305
9306         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
9307
9308 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9309
9310         * elmo-vars.el (elmo-display-progress-threshold): New variable.
9311         All other related modules are changed.
9312
9313 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
9314
9315         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
9316         of refiling failure on Maildir.
9317
9318 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9319
9320         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
9321         decoded mime-charset with cache.
9322         (elmo-msgdb-overview-entity-get-from): Ditto.
9323         (elmo-msgdb-overview-entity-get-subject): Ditto.
9324         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9325
9326 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9327
9328         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9329         (elmo-remove-passwd): Fill password with 0 before erase.
9330         * elmo-vars.el (elmo-passwd-life-time): New variable.
9331
9332 \f
9333 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9334
9335         * elmo-cache.el (elmo-buffer-cache-add):
9336         Set message cache buffer as unibyte.
9337
9338 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9339
9340         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9341         become nil.
9342
9343 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9344
9345         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9346         when display is finished.
9347         (elmo-nntp-msgdb-create): Ditto.
9348         (elmo-nntp-groups-read-response): Ditto.
9349         (elmo-nntp-retrieve-headers): Ditto.
9350         (elmo-nntp-msgdb-create-message): Ditto.
9351         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9352         (elmo-pop3-msgdb-create-message): Ditto.
9353
9354 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9355
9356         * elmo-maildir.el (elmo-maildir-msgdb-create):
9357         Use `elmo-msgdb-sort-by-date'.
9358
9359 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9360
9361         * elmo2.el (elmo-read-msg-no-cache):
9362         Eliminated arguments after `outbuf'.
9363         Don't use cache even if it exists.
9364         (elmo-read-msg): Don't pass arguments after `outbuf' to
9365         `elmo-read-msg-no-cache'.
9366
9367 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9368
9369         * elmo-archive.el (elmo-archive-list-folders):
9370         Use `file-name-directory' if base folder does not exist.
9371
9372 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9373
9374         * elmo-archive.el (elmo-archive-list-folders): Don't use
9375         `file-name-directory'.
9376
9377 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9378
9379         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9380         If `force' is non-nil, try flushing all operation queues.
9381
9382 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9383
9384         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9385         as-binary-process.
9386
9387 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9388
9389         * elmo-util.el (elmo-display-progress): Fixed.
9390
9391 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9392
9393         * elmo-util.el (elmo-display-progress): New function.
9394         All other related modules are changed.