* elmo-util.el (elmo-add-name-to-file, elmo-field-body): Use
[elisp/wanderlust.git] / elmo / ChangeLog
1 2008-02-20  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2
3         * elmo-util.el (elmo-add-name-to-file, elmo-field-body): Use
4         `eval-and-compile' for suppress compile warnings.
5
6         * elmo-vars.el (dynamic-link, dynamic-call): Use `defalias-maybe'
7         instead of `defun-maybe'
8
9         * elmo-util.el: Add (eval-when-compile (require 'static)).
10
11 2008-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
12
13         * mmimap.el: Remove (require 'static).
14         * acap.el: Ditto.
15
16         * elmo-flag.el: Move ';;; Code:' comment.
17         * elmo-imap4.el: Ditto.
18         * elmo-net.el: Ditto.
19
20         * elmo-version.el (product-provide): Fix comment.
21
22 2008-02-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
23
24         * slp.el: Add (eval-when-compile (require 'cl)).
25         * elmo-date.el: Ditto.
26         * elmo-pop3.el: Ditto.
27         * elmo-mime.el: Add (eval-when-compile (require 'elmo)).
28
29 2008-02-17  TAKAHASHI Kaoru  <kaoru@kaisei.org>
30
31         * modb.el (elmo-msgdb-match-condition-primitive): Use
32         `string-to-number' instead of `string-to-int'.
33
34         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer)
35         (elmo-msgdb-message-match-condition)
36         (elmo-msgdb-create-message-entity-from-buffer): Use
37         `string-to-number' instead of `string-to-int'.
38
39         * elmo.el (elmo-folder-confirm-appends): Use `string-to-number'
40         instead of `string-to-int'.
41
42         * elmo-util.el (elmo-cache-expire-by-age): Use `string-to-number'
43         instead of `string-to-int'.
44
45         * elmo-pop3.el (elmo-pop3-list-by-list, elmo-folder-status): Use
46         `string-to-number' instead of `string-to-int'.
47
48         * elmo-nntp.el (elmo-nntp-make-msglist)
49         (elmo-folder-list-messages-plugged, elmo-nntp-folder-status)
50         (elmo-nntp-create-msgdb-from-overview-string)
51         (elmo-nntp-parse-xhdr-response, elmo-nntp-msgdb-create-message)
52         (elmo-nntp-search-primitive): Use `string-to-number' instead of
53         `string-to-int'.
54
55         * elmo-net.el (elmo-net-folder-set-parameters): Use
56         `string-to-number' instead of `string-to-int'.
57
58         * elmo-localdir.el (elmo-localdir-list-subr): Use
59         `string-to-number' instead of `string-to-int'.
60
61         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Use
62         `string-to-number' instead of `string-to-int'.
63
64         * elmo-date.el (elmo-date-get-datevec): Use `string-to-number'
65         instead of `string-to-int'.
66
67         * elmo-archive.el (elmo-archive-list-folder-subr): Use
68         `string-to-number' instead of `string-to-int'.
69
70 2008-02-16  TAKAHASHI Kaoru  <kaoru@kaisei.org>
71
72         * elmo-util.el (elmo-get-passwd): Fix typo.
73
74         * elmo-nntp.el (elmo-nntp-get-server-command)
75         (elmo-nntp-set-server-command, elmo-nntp-xover-p)
76         (elmo-nntp-listgroup-p, elmo-nntp-set-listgroup)
77         (elmo-nntp-list-active-p, elmo-nntp-set-list-active)
78         (elmo-nntp-xhdr-p, elmo-nntp-set-xhdr): New backquote style.
79
80         * elmo-imap4.el (elmo-imap4-debug)
81         (elmo-imap4-response-continue-req-p, elmo-imap4-response-ok-p)
82         (elmo-imap4-response-bye-p, elmo-imap4-response-garbage-p)
83         (elmo-imap4-response-value, elmo-imap4-response-error-text)
84         (elmo-imap4-response-bodydetail-text, elmo-imap4-value)
85         (elmo-imap4-nth, elmo-imap4-detect-search-charset)
86         (elmo-imap4-identical-system-p): New backquote style.
87
88 2008-02-15  TAKAHASHI Kaoru  <kaoru@kaisei.org>
89
90         * elmo-dop.el (elmo-make-dop-queue): New backquote style.
91         (elmo-dop-queue-fname, elmo-dop-queue-method): Ditto.
92         (elmo-dop-queue-arguments): Ditto.
93
94         * elmo-date.el (elmo-match-substring): New backquote style.
95         (elmo-match-string, elmo-match-buffer): Ditto.
96         (elmo-date-make-sortable-string): Ditto.
97
98         * elmo-archive.el (elmo-archive-get-method):New backquote style.
99         (elmo-archive-get-suffix, elmo-archive-get-regexp): Ditto.
100
101         * elmo-multi.el (elmo-multi-real-folder-number): New backquote
102         style.
103
104         * elmo-net.el (elmo-network-stream-type-spec-string): New
105         backquote style.
106         (elmo-network-stream-type-symbol): Ditto.
107         (elmo-network-stream-type-feature): Ditto.
108         (elmo-network-stream-type-function): Ditto.
109         (elmo-network-session-buffer): Ditto.
110
111         * elmo-util.el (elmo-file-cache-expand-path): New backquote style.
112         (elmo-file-cache-status, elmo-file-cache-path): Ditto.
113         (elmo-make-file-cache, elmo-string, elmo-get-passwd): Ditto.
114         (elmo-bind-directory, elmo-set-work-buf): Ditto.
115
116         * elmo.el (elmo-folder-send): New backquote style.
117
118 2008-02-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
119
120         * pldap.el (ldap-static-if): New backquote style.
121         (ldap/ldif-safe-string-p): Ditto.
122         (ldap/ldif-insert-field): Ditto.
123
124         * elmo-version.el (elmo-version): Up to 2.15.6.
125
126 2008-01-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
127
128         * elmo-imap4.el (elmo-folder-list-messages-plugged): Don't include
129         messages with \Deleted flag.
130         (elmo-folder-delete-messages-plugged): Ask before sending expunge
131         command if there are messages with \Deleted flag.
132
133 2007-04-24  Yoichi NAKAYAMA  <yoichi@geiin.org>
134
135         * elmo-pop3.el (elmo-pop3-auth-apop): Use more strict regexp.
136         http://seclists.org/bugtraq/2007/Apr/0018.html
137         (Suggested by Tatsuya Kinoshita)
138
139 2007-04-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
140
141         * elmo-imap4.el (elmo-folder-delete): Don't call close for mailbox
142         with \Noselect attribute.
143
144 2007-04-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
145
146         * elmo-imap4.el (elmo-folder-list-subfolders): Fix handling of
147         hierarchical folder structure with UW-imapd.
148
149 2007-02-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
150
151         * elmo-imap4.el (elmo-imap4-clear-login): Don't send LOGIN command
152         when the LOGINDISABLED capability is advertised.
153
154 2007-01-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
155
156         * elmo-msgdb.el (elmo-msgdb-extra-fields): Make it non-destructive.
157
158 2007-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
159
160         * elmo-shimbun.el (elmo-shimbun-update-overview): Add argnument
161         `entity'.
162         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview' only
163         if the message entity is exists.
164
165 2007-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
166
167         * elmo-util.el (elmo-msgdb-insert-file-header): Call
168         `elmo-delete-cr-buffer'.
169
170         * elmo-localdir.el (elmo-message-fetch-internal): Use
171         `insert-file-contents-as-raw-text' instead of
172         `insert-file-contents-as-binary'.
173
174         * elmo-maildir.el (elmo-map-message-fetch): Ditto.
175
176 2006-12-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
177
178         * elmo-imap4.el (elmo-network-initialize-session): Check to
179         retrieve a whole greeting message.
180
181 2006-11-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
182
183         * elmo-flag.el (elmo-folder-commit): Encode `.minfo' at save.
184
185 2006-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
186
187         * elmo-util.el (elmo-safe-plist-get): New alias or macro.
188         (elmo-progress-notify): Use it instead of `plist-get'.
189
190 2006-11-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
191
192         * elmo.el (elmo-generic-folder-append-messages): Remove unused
193         variable `table'.
194
195 2006-11-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
196
197         * elmo-pipe.el (elmo-folder-set-plugged): Define.
198
199 2006-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
200
201         * elsp-bsfilter.el (elmo-spam-bsfilter-use-remote): New user option.
202         (elmo-spam-list-spam-messages): Check it option.
203
204 2006-11-08  Tetsurou Okazaki  <okazaki@be.to>
205
206         * elmo-util.el (elmo-with-progress-display): Return the value
207         of the last form in `body'.
208
209 2006-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
210
211         * elmo-util.el (elmo-progress-start): Accept nil for `total'.  Set
212         `elmo-progress-counter' as t when a query callback returns nil.
213         (elmo-progress-clear): New function.
214         (elmo-progress-done): Split into `elmo-progress-clear'.
215         (elmo-progress-notify): Update a total slot when it is nil.
216         (elmo-with-progress-display): Call `elmo-progress-clear' in
217         unwind-protect and move calling `elmo-progress-done' to outside.
218
219         * elmo-imap4.el (elmo-imap4-find-next-line): Call
220         `elmo-progress-notify' with :total parameter instead of
221         `elmo-progress-counter-set-total'.
222
223 2006-11-07  Tetsurou Okazaki  <okazaki@be.to>
224
225         * elmo-util.el (elmo-cache-expire-by-age): Add docstring.
226         Make it interactive.
227         (elmo-progress-start): Avoid updating `elmo-progress-counter'
228         when a query callback returns nil.  Return a progress counter
229         instead of t whenever a start callback was called.
230
231 2006-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
232
233         * elmo-imap4.el (elmo-imap4-session-capable-p): New macro.
234         (elmo-imap4-send-command): Use it.
235         (elmo-network-initialize-session): Ditto.
236         (elmo-network-setup-session): Ditto.
237         (elmo-folder-msgdb-create-plugged): Ditto.
238
239 2006-11-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
240
241         * elmo-util.el (elmo-progress-done): Fix a miss refer to
242         `elmo-progress-counter'.
243
244 2006-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
245
246         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Abolish.
247         (elsp-bsfilter-list-spam-filter): New function.
248         (elsp-bsfilter-start-list-spam): Ditto.
249         (elsp-bsfilter-read-list-spam): Ditto.
250         (elmo-spam-list-spam-messages): Use async process to display
251         progress message by each message.
252
253 2006-11-03  Yoichi NAKAYAMA  <yoichi@geiin.org>
254
255         * elmo-spam.el (elmo-spam-process-messages-as-mbox): Fix problem
256         of flushing previously inserted message contents.
257
258         * elmo-imap4.el (elmo-folder-search): Fix return value.
259
260 2006-11-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
261
262         * elmo-imap4.el (elmo-imap4-find-next-line): Check whether a label
263         of reporter is enable or not.
264
265 2006-10-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
266
267         * elmo-util.el (elmo-list-bigger-diff): Abolish.
268         (elmo-display-progress): Ditto.
269         (elmo-progress-counter-alist): Ditto.
270         (elmo-progress-set): Ditto.
271         (elmo-progress-clear): Ditto.
272         (elmo-progress-counter-all-value): Rename to
273         `elmo-progress-counter-total'.
274         (elmo-progress-counter-format): Rename to
275         `elmo-progress-counter-action'.
276         (elmo-progress-counter): New internal variable.
277         (elmo-progress-callback-function): Ditto.
278         (elmo-progress-counter-label): New function.
279         (elmo-progress-counter-set-total): Ditto.
280         (elmo-progress-counter-set-action): Ditto.
281         (elmo-progress-call-callback): Ditto.
282         (elmo-progress-start): Ditto.
283         (elmo-progress-done): Ditto.
284         (elmo-progress-notify): Rewrite.
285         (elmo-with-progress-display): Remove first argument
286         `condition'. Add optional argument `var' in `spec'.
287
288         * elmo-vars.el (elmo-display-progress-threshold): Abolish.
289         (elmo-display-retrieval-progress-threshold): Ditto.
290         (elmo-inhibit-display-retrieval-progress): Ditto.
291
292         * Replace all pair of `elmo-progress-set' and
293         `elmo-progress-clear' into `elmo-with-progress-display'.
294
295         * Replace to call `elmo-display-progress' into pair of
296         `elmo-progress-notify' and `elmo-with-progress-display'.
297
298         * elmo-version.el (elmo-version): Up to 2.15.5.
299
300 2006-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
301
302         * elmo-imap4.el (elmo-imap4-arrival-filter): Use `case' instead of
303         `cond'.
304
305 2006-10-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
306
307         * elmo-imap4.el (elmo-imap4-arrival-filter): Call delete-region in
308         cleanup-forms [wl:14027].
309
310 2006-10-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
311
312         * elmo-flag.el (elmo-global-flag-set-internal): Use
313         `elmo-copy-file' by priority when the message is a file.
314
315 2006-10-01  Yoichi NAKAYAMA  <yoichi@geiin.org>
316
317         * elmo.el: Fix typo: disptch -> dispatch.
318
319 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
320
321         * elmo.el (elmo-file-tag): New class.
322         (elmo-append-messages-disptch-table): New constant.
323         (elmo-folder-type-p): New function.
324         (elmo-folder-append-messages): Redefine as function.
325
326         * elmo-null.el (elmo-folder-append-messages): Renamed from
327         `elmo-folder-append-messages'.
328
329         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
330         (elmo-folder-append-messages-*-maildir): Renamed from
331         `elmo-folder-append-messages'.
332
333         * elmo-localdir.el (elmo-localdir-folder): Inherit
334         `elmo-file-tag'.
335         (elmo-folder-append-messages-*-localdir): Renamed from
336         `elmo-folder-append-messages'.
337
338         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
339         from `elmo-folder-append-messages'.
340
341         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
342         `elmo-folder-append-messages'.
343
344         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
345         function.
346         (elmo-folder-append-messages-*-filter): Ditto.
347
348         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
349
350         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
351         (elmo-folder-append-messages-*-pipe): Renamed from
352         `elmo-folder-append-messages'.
353
354         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
355
356         * elmo-file.el (elmo-file-folder): Ditto.
357
358         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
359
360         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
361         from `elmo-folder-append-messages'
362
363 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
364
365         * elmo-map.el (elmo-location-map-setup): Change an argument
366         `locations' to optional.
367         (elmo-location-map-clear): Abolish.
368         (elmo-folder-clear): Follow the API change.
369
370         * elmo-pop3.el (elmo-folder-clear): Ditto.
371
372         * elmo-pop3.el (toplevel): Require elmo-map.
373         (elmo-pop3-folder): Inherit elmo-location-map and abolish
374         location-alist slot (All other related portions are changed).
375         (elmo-pop3-folder-use-uidl): New function.
376         (elmo-folder-msgdb-create): Don't sort message entities.
377         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
378         (elmo-pop3-number-to-size): Convert return value to number.
379         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
380         working buffer.
381
382         * elmo-map.el: Use `location-map' as a variable name for instance
383         instead of `mapper'.
384         (elmo-location-map-setup): Return location alist.
385         (elmo-location-map-update): Ditto.
386
387 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
388
389         * elmo-map.el (elmo-location-map): New class; split location and
390         number mapping from elmo-map-folder (All other related portions
391         are changed).
392
393         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
394         change.
395
396         * elmo-version.el (elmo-version): Up to 2.15.4.
397
398 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
399
400         * elmo-vars.el (elmo-use-hardlink): New user option.
401
402         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
403         `elmo-use-hardlink'.
404
405         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
406         killed-list.
407         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
408         instead of `*-internal'. Use `elmo-with-progress-display'.
409
410 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
411
412         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
413         `elmo-spam-process-messages-as-mbox'.
414
415         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
416
417 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
418
419         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
420         argument BUFFER of `call-process'.
421
422 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
423
424         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
425         args.
426         (elsp-bsfilter-list-spam-files): Ditto.
427
428 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
429
430         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
431         (elmo-spam-bsfilter-max-messages-per-process): New use option.
432         (elmo-spam-bsfilter-debug): Fix a group.
433         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
434         `--homedir'.
435         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
436         (elsp-bsfilter-list-spam-files): New function.
437         (elmo-spam-list-spam-messages): Define.
438         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
439         (elmo-spam-bsfilter-register-messages): New function.
440         (elmo-spam-register-spam-messages): Define.
441         (elmo-spam-register-good-messages): Ditto.
442
443         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
444
445         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
446         `nconc' and `consp'.
447
448 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
449
450         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
451         hash table to test whether a location is exists.
452
453 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
454
455         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
456         even if some error occurred.
457
458         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
459         meaningless unwind-protect.
460
461         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
462         start-number correctly.
463         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
464         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
465
466 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
467
468         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
469         (elmo-folder-initialize): Use it.
470         (elmo-global-flag-replace-referrer): New function.
471
472         * elmo.el (toplevel): Added autoload setting for
473         `elmo-global-flag-replace-referrer'.
474         (elmo-folder-rename): Rewrite the last change use
475         `elmo-global-flag-replace-referrer'.
476
477         * elmo-pipe.el (elmo-folder-rename): Call
478         `elmo-global-flag-replace-referrer'.
479
480 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
481
482         * elmo.el (elmo-folder-rename): Set meta data for global flags
483         follow the rename.
484
485 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
486
487         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
488         as 'not-loaded.
489         (elmo-folder-close): Ditto.
490         (elmo-filter-folder-number-list-loaded-p): New function.
491         (elmo-filter-folder-number-list): Check whether loaded or not.
492         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
493         of `elmo-filter-folder-number-list-internal'.
494         (elmo-folder-delete-messages): Ditto.
495         (elmo-folder-length): Check whether number-list is loaded or not.
496
497 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
498
499         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
500         field `real field' into each element of list.
501         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
502         (elmo-msgdb-message-entity-field): Ditto.
503         (modb-entity-ml-info-real-fields): New function.
504
505         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
506
507         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
508         `elmo-msgdb-extra-fields'.
509
510 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
511
512         * elmo-util.el (elmo-passwd-alist-load): Move point to min
513         position before read.
514
515 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
516
517         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
518         (elmo-global-flags-initialize): Ditto.
519
520 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
521
522         * elmo-archive.el (toplevel): Don't require emu, std11
523         and elmo-localdir.
524
525         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
526         definition.
527
528 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
529
530         * elmo.el (elmo-folder-confirm-appends): Display folder name.
531
532 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
533
534         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
535         literals.
536
537 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
538
539         * elmo-maildir.el (elmo-maildir-list-location): Reduce
540         `elmo-get-last-modification-time' call.
541
542 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
543
544         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
545         expression.
546         (elmo-maildir-set-mark): Ditto.
547         (elmo-maildir-delete-mark): Ditto.
548
549 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
550
551         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
552         optional argument `separators'.
553
554 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
555
556         * elmo.el (cache-changed): Abolish.
557         (status-changed): New signal.
558         (elmo-message-killed-p): New generic function and define for
559         elmo-folder.
560         (elmo-folder-recover-messages): Ditto.
561         (elmo-message-set-cached): Emit signal `status-changed' instead of
562         `cache-changed'.
563         (elmo-message-status): New macro.
564         (elmo-message-status-folder): Ditto.
565         (elmo-message-status-number): Ditto.
566         (elmo-message-status-set-flags): Ditto.
567         (elmo-message-status-set-killed): Ditto.
568         (elmo-message-status-flags): New function.
569         (elmo-message-status-cached-p): Ditto.
570         (elmo-message-status-killed-p): Ditto.
571
572         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
573         `status-changed' instead of `cache-changed'.
574         (elmo-folder-recover-messages): Define.
575         (elmo-message-killed-p): Ditto.
576
577         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
578         `status-changed' instead of `cache-changed'.
579
580         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
581         (elmo-message-killed-p): Define.
582         (elmo-folder-recover-messages): Ditto.
583
584         * elmo-version.el (elmo-version): Up to 2.15.3.
585
586 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
587
588         * elmo-signal.el (elmo-signal-bindings): Use cons to append
589         element into list.
590         (elmo-define-signal-handler): Add docstring.
591         (elmo-define-signal-filter): Ditto.
592
593         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
594
595 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
596
597         * elmo-util.el (elmo-flatten): Don't use recursive call.
598
599         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
600         assignment.
601         (elmo-folder-message-make-temp-files): Use `number-to-string'
602         instead of `int-to-string'.
603
604 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
605
606         * elmo-search.el (elmo-folder-delete-messages): Define.
607
608 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
609
610         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
611         customization type.
612         (elmo-mailing-list-count-spec-list): Ditto.
613
614         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
615         for `list-id'.
616
617 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
618
619         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
620         handling.
621
622 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
623
624         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
625         (elmo-mailing-list-count-spec-list): Ditto.
626
627         * elmo-util.el (elmo-map-until-success): New function.
628         (elmo-string-match-substring): Ditto.
629         (elmo-find-list-match-value): Ditto.
630
631         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
632         Removed.
633         (modb-entity-extract-ml-info-from-subject): Ditto.
634         (modb-entity-extract-ml-info-from-return-path): Ditto.
635         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
636         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
637         (modb-entity-extract-ml-info-from-mailman): Ditto.
638         (modb-entity-extract-mailing-list-info-functions): Ditto.
639         (modb-entity-extract-mailing-list-info): Rewrite with
640         `elmo-find-list-match-value'.
641
642 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
643
644         * elmo-net.el (elmo-network-session-retry-count): New user option.
645         (elmo-network-session-buffer-name): New internal function.
646         (elmo-network-session-buffer-create): Ditto.
647         (elmo-network-open-session): Retry open network session
648         `elmo-network-session-retry-count' times.
649
650 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
651
652         * elmo-util.el (elmo-list-filter): Rewritten.
653
654 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
655
656         * elmo-util.el (elmo-string-member): Allow symbol element in list.
657
658 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
659
660         * elmo-search.el (elmo-make-search-engine): Use prefix
661         `elmo-search-' for require symbol instead of `else-'.
662         (elmo-search-engine-extprog): New class.
663         (elmo-search-engine-do-search): Remove nil from argument
664         list. Added argument pattern to evaluate element as function.
665         (elmo-search-engine-local-file): Derived from
666         `elmo-search-engine-extprog'.
667         (elmo-search-engine-create-message-entity): Check existance of file.
668         (elmo-search-engine-fetch-message): Ditto.
669         (elmo-search-namazu-index): Follow the API change.
670         (elmo-search-grep-target): Ditto.
671
672 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
673
674         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
675         characters of working buffer.
676
677         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
678         Does not bind `default-mime-charset'.
679         (elmo-msgdb-create-message-entity-from-buffer): Removed
680         unnecessary local bind.
681
682         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
683         function.
684         (modb-entity-extract-mailing-list-info-functions): Added it.
685
686 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
687
688         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
689         when number and message-id are non-nil.
690
691         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
692
693         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
694         conditional steatment.
695         (elmo-pop3-auth-apop): Likewise.
696         (elmo-network-authenticate-session): Likewise.
697
698 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
699
700         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
701         symbol `fill-column'.
702         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
703         decode field value.
704
705         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
706         (elmo-decoded-field-body): Ditto.
707
708 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
709
710         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
711         `tokens' to `params'.
712
713 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
714
715         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
716         working buffer.
717
718 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
719
720         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
721         decide index.
722
723 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
724
725         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
726         Set default value as nil.
727         (toplevel): Register search engines by
728         `elmo-search-register-engine' if there are not defined.
729
730         * elmo.el (autoload): Added autoload setting for
731         `elmo-search-register-engine'.
732
733 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
734
735         * elmo.el (toplevel): `[' is redefined as the prefix of the search
736         folder instead of nmz folder.
737         (elmo-nmz-default-index-path): Added obsolete variable setting.
738         (elmo-nmz-index-alias-alist): Ditto.
739         (elmo-nmz-use-drive-letter): Ditto.
740
741         * elmo-search.el (elmo-search-register-engine): New function.
742
743         * elmo-nmz.el: Removed.
744
745         * elmo-version.el (elmo-version): Up to 2.15.2.
746
747 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
748
749         * elmo-search.el: New file.
750
751 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
752
753         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
754         condition `larger' and `smaller'.
755
756 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
757
758         * elmo-util.el (elmo-safe-filename): Rewrite to replace
759         `"' (double quote) into "_Q_".
760
761 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
762
763         * elmo-net.el (elmo-net-quote-chars): Abolish.
764         (elmo-net-format-quoted): Ditto.
765
766 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
767
768         * elmo.el (elmo-get-folder-function): New variable.
769         (elmo-get-folder): New function.
770         (elmo-folder-rename): Call `elmo-make-folder' with specified
771         mime-charset.
772
773         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
774         `elmo-make-folder'.
775         (elmo-split-subr): Ditto.
776
777         * elmo-multi.el (elmo-folder-initialize): Ditto.
778
779         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
780
781         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
782         (elmo-flag-get-folder): Ditto.
783
784         * elmo-filter.el (elmo-folder-initialize): Ditto.
785
786         * elmo-access.el (elmo-folder-initialize): Ditto.
787         (elmo-access-folder-update-children): Ditto.
788
789         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
790         (elmo-dop-queue-flush): Ditto.
791         (elmo-folder-append-buffer-dop-delayed): Ditto.
792         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
793         mime-charset.
794
795         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
796         instead of `elmo-make-folder'.
797         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
798         destination folder instead of send `elmo-folder-rename-internal'.
799
800         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
801         slot of subfolder instead of create it.
802
803 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
804
805         * elmo-util.el (elmo-collect-separators): New function.
806         (elmo-collect-separators-internal): Ditto.
807         (elmo-collect-trail-separators): Ditto.
808         (elmo-parse-separated-tokens): Ditto.
809         (elmo-parse-separated-tokens-internal): Ditto.
810         (elmo-quote-syntactical-element): Ditto.
811
812         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
813         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
814
815         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
816         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
817         (elmo-nntp-folder-list-subfolders): Quote a user name.
818
819         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
820         (elmo-net-parse-network): Abolish.
821         (elmo-net-folder-set-parameters): New function.
822         (elmo-folder-initialize): Follow the above change.
823
824         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
825         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
826         (elmo-folder-list-subfolders): Use
827         `elmo-quote-syntactical-element' instead of
828         `elmo-net-format-quoted' to quote mailbox and user name.
829
830 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
831
832         * elmo-util.el (elmo-token-valid-p): New function.
833         (elmo-parse-token): Add optional argument `requirement'.
834         (elmo-parse-prefixed-element): Likewise.
835
836         * elmo-net.el (elmo-net-quote-chars): Renamed from
837         `elmo-net-quote-chars-regexp'.
838         (elmo-net-format-quoted): Add optional argument `extra-chars'.
839
840         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
841         by info document. Check token `uidl' is started an alphabet.
842
843         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
844         by info document. Check token `user' is started an alphabet.
845
846         * elmo-imap4.el (elmo-folder-initialize): Ditto.
847         (elmo-folder-list-subfolders): Quote user.
848
849 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
850
851         * elmo-util.el (elmo-quoted-specials-list): New constant.
852         (elmo-quoted-token): New function.
853
854         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
855         (elmo-net-format-quoted): New function.
856         (elmo-net-parse-network): Ditto.
857         (elmo-folder-initialize): Use it.
858
859         * elmo-nntp.el (elmo-folder-initialize): Use
860         `elmo-net-parse-network' to parse network specification instead of
861         `elmo-folder-initialize#elmo-net'.
862
863         * elmo-pop3.el (elmo-folder-initialize): Ditto.
864
865         * elmo-imap4.el (elmo-folder-initialize): Ditto.
866         (elmo-folder-list-subfolders): Quote folder name by
867         `elmo-net-format-quoted'.
868
869 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
870
871         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
872         (elmo-folder-search): Use it.
873
874 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
875
876         * modb-standard.el (modb-standard-loaded-message-id): Use
877         `elmo-msgdb-message-entity-field'.
878
879 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
880
881         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
882         without filename.
883
884 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
885
886         * elmo-util.el (elmo-set-auto-coding): New function.
887         (elmo-object-load): Use it.
888
889 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
890
891         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
892         (elmo-time<): Define as alias of `elmo-time-less-p'.
893         (elmo-time-to-datevec): New function.
894
895         * elmo-date.el (elmo-time-to-days): New function.
896
897 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
898
899         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
900         is not cons cell.
901
902 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
903
904         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
905         parenthesis.
906
907         * elmo-util.el (elmo-map-recursive): New function.
908
909         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
910         (modb-entity-encode-string-recursive): Ditto.
911
912 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
913
914         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
915         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
916         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
917         compare sequence number when last modified time is nil.
918
919 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
920
921         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
922
923         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
924
925 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
926
927         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
928         modification time of the file.
929
930 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
931
932         * elmo-util.el (elmo-condition-optimize): Discriminated against
933         preserved fields, extra fields and the other weight.
934
935 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
936
937         * modb-entity.el (initialize-instance): Define.
938         (modb-entity-handler-mime-charset): New internal function.
939         (modb-standard-entity-set-field): Use it.
940         (elmo-msgdb-message-entity-field): Ditto.
941         (elmo-msgdb-message-entity-field): Ditto.
942
943         * modb.el (elmo-msgdb-match-condition): Rewrite with
944         `elmo-condition-match'.
945         (elmo-msgdb-match-condition-primitive): New function.
946
947         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
948         arguments `flags' and `numbers'.
949         (elmo-msgdb-match-condition-primitive): Abolished (merged to
950         `elmo-msgdb-message-match-condition').
951         (modb-buffer-entity-handler): New class.
952
953         * elmo.el (elmo-folder-search): Optimize condition to use
954         `elmo-condition-optimize'.
955         (elmo-message-buffer-match-condition): New function.
956         (elmo-message-match-condition): Use
957         `elmo-message-buffer-match-condition' instead of
958         `elmo-buffer-field-condition-match'.
959
960         * elmo-util.el (elmo-condition-match): New function.
961         (elmo-condition-optimize): Ditto.
962         (elmo-buffer-field-primitive-condition-match): Abolish.
963         (elmo-buffer-field-condition-match): Ditto.
964
965         * elmo-archive.el (elmo-archive-field-condition-match): Use
966         `elmo-message-buffer-match-condition' instead of
967         `elmo-buffer-field-condition-match'.
968
969 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
970
971         * elmo-flag.el (elmo-global-flags-initialize): Check the
972         existence of the flag directory.
973
974 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
975
976         * elmo-access.el (elmo-folder-initialize): Call
977         `elmo-multi-connect-signals'.
978
979         * elmo-pipe.el (elmo-folder-close): Define.
980
981         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
982         children folders.
983
984         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
985         with target folder.
986
987         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
988         `number'.
989
990         * elmo-multi.el (elmo-message-entity): Don't use return value of
991         `elmo-message-entity-set-number'.
992
993 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
994
995         * modb.el (modb-generic): Added slot `mime-charset'.
996
997         * modb-standard.el (modb-standard): Added slot `overview-handler'.
998         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
999         and `modb-entity-handler-dump-parameters'.
1000         (modb-standard-default-entity-handler): Abolish.
1001         (elmo-msgdb-message-entity-handler): Save created handler by
1002         instance slot.
1003
1004         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
1005         (modb-entity-handler-list-parameters): New method.
1006         (modb-entity-handler-equal-p): New function.
1007         (modb-entity-handler-dump-parameters): Ditto.
1008         (modb-entity-parse-address-string): Encode return value.
1009         (modb-entity-make-address-string): Decode argument value.
1010         (modb-entity-decode-string-recursive): New function.
1011         (modb-entity-encode-string-recursive): Ditto.
1012         (modb-standard-entity-normalizer): Set to encode field value.
1013         (modb-standard-entity-specializer): Follow the above change.
1014         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
1015         mime-charset of handler.
1016         (elmo-msgdb-message-entity-field): Ditto.
1017         (elmo-msgdb-copy-message-entity): Fixed reference to internal
1018         structure.
1019         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
1020
1021         * elmo.el (elmo-folder): Added slot `mime-charset'.
1022         (elmo-make-folder): Added argument `mime-charset'.
1023         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
1024         `mime-charest'.
1025
1026         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
1027         (elmo-make-msgdb): Likewise.
1028
1029         * elmo-internal.el (elmo-internal-folder-initialize): Call
1030         `luna-make-entity' with :mime-charset parameter.
1031
1032 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
1033
1034         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
1035         encoded words in `from' and `subject' field.
1036
1037 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1038
1039         * modb.el (elmo-msgdb-message-field): Add argument `type'.
1040         (elmo-msgdb-match-condition): Get handler from entity instead of
1041         msgdb.
1042
1043         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
1044         (modb-standard-load-entity): Treat new file format.
1045         (modb-standard-save-entity-1): Save as new file format.
1046         (modb-standard-save-entity): Split messages into section here.
1047         (elmo-msgdb-message-field): Follow the API change.
1048         (modb-standard-default-entity-handler): New internal variable.
1049         (elmo-msgdb-message-entity-handler): Define.
1050
1051         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1052         to `elmo-vars.el'.
1053         (modb-entity-field-extractor-alist): New user option.
1054         (elmo-msgdb-message-entity-field): Removed argument `decode' and
1055         added argument `type'.
1056         (elmo-msgdb-copy-message-entity): Add optional argument
1057         `make-handler'.
1058         (modb-set-field-converter): New function.
1059         (modb-convert-field-value): Ditto.
1060         (modb-entity-string-decoder): Ditto.
1061         (modb-entity-string-encoder): Ditto.
1062         (modb-entity-parse-date-string): Ditto.
1063         (modb-entity-make-date-string): Ditto.
1064         (modb-entity-mime-decoder): Ditto.
1065         (modb-entity-mime-encoder): Ditto.
1066         (modb-entity-address-list-decoder): Ditto.
1067         (modb-entity-address-list-encoder): Ditto.
1068         (modb-entity-parse-address-string): Ditto.
1069         (modb-entity-make-address-string): Ditto.
1070         (modb-entity-create-field-indices): Ditto.
1071         (modb-legacy-entity-field-slots): New constant.
1072         (modb-legacy-entity-field-indices): Ditto.
1073         (modb-legacy-entity-normalizer): New variable.
1074         (modb-legacy-entity-specializer): Ditto.
1075         (modb-legacy-entity-field-index): New macro.
1076         (modb-legacy-entity-set-field): New function.
1077         (modb-legacy-make-message-entity): Rewrite.
1078         (elmo-msgdb-create-message-entity-from-buffer): Use
1079         `elmo-msgdb-get-references-from-buffer'. Use
1080         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
1081         Use `modb-legacy-entity-set-field' instead of
1082         `elmo-msgdb-message-entity-set-field'.
1083         (elmo-msgdb-message-entity-field): Rewrite.
1084         (elmo-msgdb-message-entity-set-field): Ditto.
1085         (elmo-msgdb-copy-message-entity): Make new entity by
1086         `make-handler' if it specified.
1087         (elmo-msgdb-message-match-condition): Define a method of
1088         `modb-entity-handler' and follow the API change.
1089         (modb-standard-entity-handler): New class.
1090         (modb-entity-extract-ml-info-from-x-sequence): New function.
1091         (modb-entity-extract-ml-info-from-subject): Ditto.
1092         (modb-entity-extract-ml-info-from-return-path): Ditto.
1093         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
1094         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
1095         (modb-entity-extract-mailing-list-info): Ditto.
1096         (modb-entity-extract-mailing-list-info-functions): New variable.
1097
1098         * elmo.el (elmo-message-field): Add optional argument `type'.
1099
1100         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1101         from `modb-entity.el'.
1102
1103         * elmo-util.el (elmo-object-load): Decode by coding-system from
1104         `set-auto-coding-function'.
1105         (elmo-object-save): Use `detect-mime-charset-region' and add
1106         coding cookie if encode.
1107         (elmo-msgdb-get-references-from-buffer): New function.
1108         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
1109
1110         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
1111
1112         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
1113         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
1114         instead of `shimbun-make-header' and follow the API change.
1115         (elmo-shimbun-update-overview): Follow the API change.
1116         (elmo-map-folder-list-message-locations): Ditto.
1117
1118         * elmo-pipe.el (elmo-message-field): Ditto.
1119
1120         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
1121         Ditto.
1122
1123         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1124
1125         * elmo-multi.el (elmo-message-field): Ditto.
1126
1127         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
1128         (elmo-msgdb-sort-by-date): Ditto.
1129         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
1130         `elmo-message-entity-field'.
1131         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
1132         change.
1133         (elmo-msgdb-overview-entity-get-from): Ditto.
1134         (elmo-msgdb-overview-entity-get-subject): Ditto.
1135         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1136         (elmo-msgdb-overview-entity-get-date): Ditto.
1137         (elmo-msgdb-overview-entity-get-to): Ditto.
1138         (elmo-msgdb-overview-entity-get-cc): Ditto.
1139
1140         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1141         (elmo-mime-collect-message/partial-pieces): Ditto.
1142
1143         * elmo-filter.el (elmo-message-field): Ditto.
1144
1145         * elmo-date.el (elmo-datevec-to-time): New function.
1146         (elmo-time-parse-date-string): Ditto.
1147         (elmo-time-make-date-string): Ditto.
1148         (elmo-time<): Ditto.
1149
1150         * elmo-version.el (elmo-version): Up to 2.15.1.
1151
1152 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
1153
1154         * elmo-flag.el (elmo-global-flags-initialize): Don't include
1155         member of elmo-local-flags.
1156
1157 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
1158
1159         * elmo-version.el (elmo-version): Up to 2.15.0.
1160
1161 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1162
1163         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
1164         `ignore-msgdb' is non-nil.
1165
1166 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1167
1168         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
1169         (elmo-condition-in-msgdb-p): Ditto.
1170         (elmo-file-field-primitive-condition-match): Ditto.
1171         (elmo-file-field-condition-match): Ditto.
1172
1173         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
1174
1175 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1176
1177         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
1178         subdirectories here.
1179         (elmo-global-flags-initialize): New function.
1180
1181         * elmo.el (toplevel): Added autoload setting for
1182         `elmo-global-flags-initialize'.
1183
1184 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
1185
1186         * elmo.el (message-number-changed): Define new signal.
1187         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
1188         message-number-changed signal.
1189         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1190         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1191         Respect `elmo-pack-number-check-strict'.
1192
1193 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1194
1195         * elmo-signal.el (elmo-connect-signal): Document.
1196         (elmo-emit-signal): Ditto.
1197         (elmo-emit-signal): It should pass source argument to filter and
1198         handler, not slot-source.
1199
1200 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1201
1202         * modb.el (elmo-msgdb-update-entity): New API and define generic
1203         implement.
1204
1205         * modb-standard.el (elmo-msgdb-update-entity): Define.
1206
1207         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
1208         API and define generic implement.
1209
1210         * elmo.el (update-overview): New singnal.
1211
1212         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
1213         `elmo-msgdb-update-entity' and emit signal `update-overview'.
1214         (elmo-message-entity-parent): Define.
1215
1216         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
1217         `update-overview'.
1218
1219         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
1220
1221         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
1222
1223 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
1224
1225         * elmo.el (elmo-folder-synchronize): Sort the return value of
1226         `elmo-list-diff'.
1227
1228         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
1229         list.
1230
1231 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1232
1233         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
1234         `default-enable-multibyte-characters'.
1235         (elmo-object-load): Use `with-temp-buffer' instead of
1236         `elmo-set-work-buf'.
1237         (elmo-object-save): Ditto.
1238         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
1239         `elmo-set-work-buf'.
1240         (elmo-decoded-field-body): Ditto.
1241
1242         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
1243
1244         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
1245         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
1246
1247         * elmo-version.el (elmo-version): Up to 2.13.3.
1248
1249 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
1250
1251         * elmo-util.el (elmo-list-diff): Fix the last change.
1252         Reverse order of result lists.
1253
1254 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
1255
1256         * modb-standard.el (elmo-msgdb-set-flag): Use
1257         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
1258         (elmo-msgdb-unset-flag): Ditto.
1259
1260         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
1261         `elmo-list-diff'.
1262
1263         * elmo-util.el (elmo-list-diff): Rewrite.
1264         (elmo-list-diff-nonsortable): New function.
1265
1266 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
1267
1268         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
1269         `elmo-multibypte-buffer-name'.  All referers are updated.
1270
1271 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1272
1273         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
1274         (elmo-mime-entity-fragment-p): New function.
1275         (mime-elmo-buffer-entity): Added slot `reassembled'.
1276         (elmo-message-mime-entity): Added 4th argument `reassemble'.
1277         (elmo-message-mime-entity-internal): New function (renamed from
1278         `elmo-message-mime-entity').
1279         (elmo-mime-inherit-field-list-from-enclosed): New constant.
1280         (elmo-mime-make-reassembled-mime-entity): New function.
1281         (elmo-message-reassembled-mime-entity): Ditto.
1282         (elmo-mime-collect-message/partial-pieces): Ditto.
1283
1284 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1285
1286         * elmo.el (elmo-message-fetch-string): Disable multibyte.
1287
1288         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
1289         (elmo-with-enable-multibyte): New macro.
1290
1291         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
1292
1293 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1294
1295         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
1296         argument `number'.
1297         (elmo-filter-connect-signals): Follow the above change.
1298
1299 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
1300
1301         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
1302
1303         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
1304         that only the first flag is used.
1305
1306 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1307
1308         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
1309         if available.
1310
1311 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1312
1313         * elmo-signal.el: New file.
1314
1315         * elmo.el (toplevel): Require elmo-signal.
1316         (flag-changing, flag-changed, cache-changed): New signal.
1317         (elmo-folder): Remove slog `handlers'.
1318         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1319         `elmo-folder-notify-event'.
1320         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1321         (elmo-folder-unset-flag): Ditto.
1322         (elmo-event-handler): Abolish.
1323         (elmo-event-handler-flag-changed): Ditto.
1324         (elmo-event-handler-cache-changed): Ditto.
1325         (elmo-folder-add-handler): Ditto.
1326         (elmo-folder-remove-handler): Ditto.
1327         (elmo-folder-notify-event): Ditto.
1328
1329         * elmo-pipe.el (toplevel): Require elmo-signal.
1330         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1331         (elmo-pipe-connect-signals): New function.
1332         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1333         (elmo-folder-set-flag): Ditto.
1334         (elmo-folder-unset-flag): Ditto.
1335         (elmo-message-set-cached): Ditto.
1336
1337         * elmo-multi.el (toplevel): Require elmo-signal.
1338         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1339         (elmo-multi-connect-signals): New function.
1340         (elmo-multi-map-numbers): Ditto.
1341         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1342         (elmo-message-fetch): Ditto.
1343         (elmo-folder-set-flag): Ditto.
1344         (elmo-folder-unset-flag): Ditto.
1345
1346         * elmo-filter.el (toplevel): Require elmo-signal.
1347         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1348         (elmo-filter-connect-signals): New function.
1349         (elmo-filter-add-flag-count): Ditto.
1350         (elmo-message-fetch): Does not call
1351         `elmo-filter-folder-countup-message-flags' and
1352         `elmo-folder-notify-event'.
1353         (elmo-message-set-cached): Ditto.
1354         (elmo-folder-set-flag): Ditto.
1355         (elmo-folder-unset-flag): Ditto.
1356
1357         * elmo-version.el (elmo-version): Up to 2.13.2.
1358
1359 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1360
1361         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1362         `flags'.
1363
1364 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1365
1366         * elmo-filter.el (elmo-message-set-cached): Call
1367         `elmo-folder-notify-event' with event `cache-changed'.
1368
1369         * elmo-multi.el (elmo-message-set-cached): Ditto.
1370
1371         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1372
1373 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1374
1375         * elmo.el (elmo-folder-encache): Abolish.
1376
1377 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1378
1379         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1380         (elmo-folder-next-message-number-dop): Return appropriate negative
1381         integer.
1382
1383 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1384
1385         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1386         clearing pending operations.
1387         (elmo-folder-next-message-number-dop): Return appropriate negative
1388         integer.
1389
1390 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1391
1392         * elmo.el (toplevel): Added autoload setting for `md5'.
1393         (elmo-msgdb-path-encode-threshold): New user option.
1394         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1395         longer than `elmo-msgdb-path-encode-threshold'.
1396
1397         * elmo-flag.el (elmo-global-mark-migrate): Use
1398         `elmo-folder-expand-msgdb-path' instead of
1399         `elmo-folder-msgdb-path'.
1400
1401 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1402
1403         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1404         element of the difference is nil.
1405
1406 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1407
1408         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1409         to the check logic of file systems which are weak in colon character.
1410
1411 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1412
1413         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1414
1415 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1416
1417         * elmo-maildir.el (elmo-maildir-move-file): New function.
1418         (elmo-folder-append-buffer): Use it.
1419         (elmo-folder-append-messages): Ditto.
1420         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1421
1422         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1423         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1424
1425         * elmo-maildir.el (elmo-maildir-separator): New user option.
1426         (elmo-maildir-adjust-separator): New macro.
1427         (elmo-maildir-list-location): Use it.
1428         (elmo-maildir-update-current): Ditto.
1429         (elmo-maildir-set-mark): Ditto.
1430         (elmo-maildir-delete-mark): Ditto.
1431         (These changes are based on Hiroya Murata's patch [wl: 13437])
1432
1433 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1434
1435         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1436
1437 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1438
1439         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1440         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1441         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1442
1443 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1444
1445         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1446         Use `with-temp-buffer'.
1447
1448 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1449
1450         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1451
1452         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1453         `wl-read-search-condition').
1454         (elmo-read-search-condition-internal): Likewise.
1455
1456         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1457         (elmo-flag-valid-p): New function.
1458         (elmo-folder-initialize): Check flag name is valid.
1459
1460 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1461
1462         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1463         delimiter to obtain root mailbox itself.
1464
1465 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1466
1467         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1468         type mismatch.
1469
1470 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1471
1472         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1473         as t.
1474
1475 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1476
1477         * elmo-shimbun.el (toplevel): Require cl at compile.
1478
1479         * elmo-nntp.el (toplevel): Ditto.
1480
1481         * elmo-nmz.el (toplevel): Ditto.
1482
1483         * elmo-multi.el (toplevel): Ditto.
1484
1485         * elmo-file.el (toplevel): Ditto.
1486
1487         * elmo-dop.el (toplevel): Ditto.
1488
1489         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1490
1491 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1492
1493         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1494         as nil.
1495
1496         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1497         size of elmo-message-fetch-internal is 0 byte.
1498
1499 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1500
1501         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1502
1503 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1504
1505         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1506         always plugged.
1507
1508 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1509
1510         * elmo-maildir.el (elmo-map-message-fetch): Call
1511         `elmo-map-folder-set-flag'.
1512
1513         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1514         (elmo-message-fetch): Merge from
1515         `elmo-message-fetch-with-cache-process'.
1516
1517         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1518         (elmo-message-fetch): Define.
1519
1520         * elmo-nntp.el (elmo-message-fetch): Renamed from
1521         `elmo-message-fetch-with-cache-process'.
1522
1523         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1524         (elmo-message-fetch): Define.
1525
1526         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1527         search-key.
1528
1529         * elmo-shimbun.el (shimbun-mua-search-id): Use
1530         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1531         (elmo-shimbun-folder-shimbun-header): Ditto.
1532         (elmo-shimbun-get-headers): Ditto.
1533         (elmo-shimbun-update-overview): Ditto.
1534
1535         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1536
1537         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1538         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1539
1540 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1541
1542         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1543         message is cached.
1544         (elmo-message-fetch-string): Fixed argument.
1545
1546 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1547
1548         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1549         exchange order of arguments `section' and `unread'.
1550         (elmo-message-encache): Follow the API change.
1551         (elmo-message-match-condition): Ditto.
1552         (elmo-generic-folder-append-messages): Ditto.
1553         (elmo-message-fetch-string): New function.
1554
1555         * elmo-split.el (elmo-split-subr): Ditto.
1556
1557         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1558
1559         * elmo-pipe.el (elmo-message-fetch): Ditto.
1560
1561         * elmo-multi.el (elmo-message-fetch): Ditto.
1562
1563         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1564
1565         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1566
1567         * elmo-filter.el (elmo-message-fetch): Ditto.
1568
1569         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1570
1571         * elmo-imap4.el (mime-imap-location-section-body): Use
1572         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1573         follow the API change.
1574
1575 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1576
1577         * elmo-access.el: New file.
1578
1579         * elmo-null.el: Ditto.
1580
1581         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1582
1583 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1584
1585         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1586         (elmo-network-session): New attribute `last-accessed'.
1587         (elmo-network-get-session): Discard network cache if elapsed time
1588         since last-accessed is larger than elmo-network-session-idle-timeout.
1589
1590 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1591
1592         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1593         and added `number', `require-entireness'.
1594         (elmo-find-fetch-strategy): Rewrite.
1595         (elmo-message-fetch): Unset `unread' flag when argument unread is
1596         non-nil.
1597
1598         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1599
1600         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1601         (elmo-message-fetch): Notify event `flag-changed'.
1602
1603         * elmo-pipe.el: Likewise.
1604
1605         * elmo-mime.el (elmo-mime-entity): New class.
1606         (elmo-mime-entity-display-p): New generic function.
1607         (elmo-mime-entity-display): Ditto.
1608         (elmo-mime-entity-display-as-is): Ditto.
1609         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1610         elmo-mime-entity.
1611         (elmo-make-mime-message-location): Removed.
1612         (elmo-mime-message-display): Ditto.
1613         (elmo-mime-display-as-is): Ditto.
1614         (elmo-message-mime-entity): New function.
1615
1616         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1617
1618         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1619         change.
1620         (elmo-message-fetch): Re-count flagged message number and notify
1621         event `flag-changed'.
1622
1623         * elmo-version.el (elmo-version): Up to 2.13.1.
1624
1625 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1626
1627         * elmo-filter.el (elmo-message-field): Define.
1628         (elmo-message-set-field): Ditto.
1629
1630 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1631
1632         * elmo.el (elmo-message-set-cached): Call
1633         `elmo-folder-notify-event' with cache-changed.
1634         (elmo-event-handler-cache-changed): New generic function.
1635
1636 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1637
1638         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1639         instead of elmo-add-name-to-file.
1640         (elmo-folder-append-messages): Ditto.
1641
1642 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1643
1644         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1645
1646 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1647
1648         * elmo-version.el (elmo-version): Up to 2.13.0.
1649
1650         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1651         `auto'.
1652
1653         * modb-standard.el (modb-standard-economize-entity-size): Changed
1654         default value to `t'.
1655
1656         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1657         `standard'.
1658
1659         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1660         after parsing greeting string.
1661
1662 2004-11-23  Daishi Kato <daishi@axlight.com>
1663
1664         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1665         New user option.
1666         (elmo-spam-spamoracle-call): Use it.
1667
1668 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1669
1670         * elmo.el (elmo-message-accessible-p): Message in dop spool
1671         is accessible.
1672
1673 2004-11-23  Daishi Kato <daishi@axlight.com>
1674
1675         * elsp-spamoracle.el: New file.
1676
1677 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1678
1679         * elmo.el (elmo-message-flags-for-append): New function.
1680         (elmo-generic-folder-append-messages): Use it.
1681
1682         * elmo-split.el (elmo-split-subr): Ditto.
1683
1684         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1685         `flags' and use elmo-folder-append-buffer instead of
1686         write-region-as-binary.
1687         (elmo-dop-filter-pending-messages): New function.
1688         (elmo-folder-append-buffer-dop): Call
1689         elmo-dop-spool-folder-append-buffer with `flag'.
1690         (elmo-folder-set-flag-dop): Filter messages by
1691         elmo-dop-filter-pending-messages.
1692         (elmo-folder-unset-flag-dop): Ditto.
1693         (elmo-folder-append-buffer-dop-delayed): Use
1694         elmo-message-flags-for-append to get flags of the message and
1695         simplify.
1696
1697 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1698
1699         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1700
1701 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1702
1703         * elmo.el (elmo-folder): Added handlers slot.
1704         (elmo-event-handler): New class.
1705         (elmo-event-handler-flag-changed): New API.
1706         (elmo-folder-add-handler): New function.
1707         (elmo-folder-remove-handler): Ditto.
1708         (elmo-folder-notify-event): Ditto.
1709         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1710         `flag-changed'.
1711         (elmo-folder-unset-flag): Ditto.
1712
1713         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1714         (elmo-folder-unset-flag): Ditto.
1715
1716         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1717         (elmo-folder-unset-flag): Ditto.
1718
1719         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1720         (elmo-folder-unset-flag): Ditto.
1721
1722         * elmo-version.el (elmo-version): Up to 2.11.33.
1723
1724 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1725
1726         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1727
1728 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1729
1730         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1731
1732         * elmo-flag.el (elmo-folder-unset-flag): Define.
1733         (elmo-global-flag-detach): Do process when the flag is not target
1734         flag.
1735
1736 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1737
1738         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1739         variable.
1740         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1741
1742 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1743
1744         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1745         function.
1746         (elmo-folder-delete-messages): Detach messages before delete
1747         messages from target folder.
1748         (elmo-folder-detach-messages): Set updated number-list to slot.
1749
1750 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1751
1752         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1753
1754 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1755
1756         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1757
1758 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1759
1760         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1761         internal use only).
1762         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1763         not modified.
1764         (elmo-folder-delete-messages): Define.
1765         (elmo-folder-move-messages): Don't call
1766         `elmo-folder-detach-messages'.
1767         (elmo-folder-synchronize): Rewrite.
1768         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1769
1770         * elmo-util.el (elmo-last): New function.
1771         (elmo-set-list): Ditto.
1772         (elmo-number-set-delete-list): Ditto.
1773         (elmo-number-set-delete): Ditto.
1774
1775         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1776
1777         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1778         `elmo-folder-delete-messages' and don't delete location map.
1779         (elmo-folder-detach-messages): Define.
1780
1781         * elmo-imap4.el (elmo-folder-delete): Use
1782         `elmo-folder-delete-messages-internal' instead of
1783         `elmo-folder-delete-messages'.
1784
1785         * elmo-filter.el (elmo-folder-delete-messages): Call
1786         `elmo-folder-detach-messages'.
1787         (elmo-folder-detach-messages): Don't call
1788         `elmo-folder-detach-messages' for target folder.
1789
1790         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1791         message deletion is succeeded.
1792
1793         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1794
1795         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1796         from `elmo-folder-delete-messages'.
1797
1798         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1799
1800         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1801
1802         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1803
1804         * elmo-version.el (elmo-version): Up to 2.11.32.
1805
1806 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1807
1808         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1809         (elmo-global-flag-list): Added obsolete variable setting.
1810
1811         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1812
1813         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1814         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1815         `elmo-mime-display-header-analysis' is nil.
1816
1817         * elmo-flag.el (elmo-global-flags): Renamed from
1818         `elmo-global-flag-list' (All other related portions are changed).
1819         (elmo-local-flags): New variable.
1820         (elmo-local-flag-p): New function.
1821         (elmo-global-flag-set-internal): Cause an error when flag is not
1822         global.
1823
1824 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1825
1826         * elmo-util.el (elmo-concat-path): Treat empty path.
1827
1828 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1829
1830         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1831         field-or-fields).
1832         (elmo-split-address-match): Ditto.
1833         (elmo-split-equal): Ditto.
1834         (elmo-split-match): Ditto.
1835
1836 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1837
1838         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1839         (elmo-generic-folder-append-messages): If src message exists but
1840         has no flag, pass (read) for the FLAG argument of
1841         `elmo-folder-append-buffer'. Otherwise, pass nil.
1842
1843         * elmo-split.el (elmo-split-subr): Likewise.
1844
1845         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1846
1847         * elmo-multi.el (elmo-message-flags): Ditto.
1848
1849         * elmo-filter.el (elmo-message-flags): Ditto.
1850
1851         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1852         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1853         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1854         
1855 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1856
1857         * elmo-split.el (elmo-split-rule): Update comment.
1858         (elmo-split-address-equal): Allow 2nd argument to be a list.
1859         (elmo-split-address-match): Ditto.
1860         (elmo-split-equal): Ditto.
1861         (elmo-split-match): Ditto.
1862
1863 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1864
1865         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1866         (elmo-folder-append-msgdb): Don't treat `read'.
1867         (elmo-message-flags): Don't return `read'.
1868
1869         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1870         (elmo-folder-unset-read-delayed): Ditto.
1871
1872         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1873
1874 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1875
1876         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1877         deletion.
1878
1879 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1880
1881         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1882         header.
1883
1884 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1885
1886         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1887         here.
1888         (elmo-msgdb-save): Bind inhibit-quit.
1889         (modb-standard-message-entity): Ditto.
1890
1891 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1892
1893         * elmo-database.el: No need to require elmo-msgdb.
1894
1895 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1896
1897         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1898         instead of `elmo-list-subdirectories'.
1899
1900 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1901
1902         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1903         group entry.
1904         (elmo-folder-exists-p): "[" is empty.
1905         (elmo-folder-list-subfolders): Define.
1906         (elmo-folder-have-subfolder-p): Ditto.
1907
1908 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1909
1910         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1911
1912 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1913
1914         * elmo-filter.el (elmo-folder-local-p): Define.
1915
1916 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1917
1918         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1919         when entity is garbaged.
1920         (modb-standard-save-entity-1): Don't modify the original entity.
1921
1922 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1923
1924         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1925
1926 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1927
1928         * elmo.el (elmo-strict-folder-diff): Use
1929         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1930
1931 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1932
1933         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1934         (elmo-msgdb-message-number): Ditto.
1935         (elmo-msgdb-message-field): Ditto.
1936
1937         * modb-standard.el (modb-standard-economize-entity-size): New user
1938         option.
1939         (modb-standard-loaded-message-id): New inline function.
1940         (modb-standard-load-entity): Use it.
1941         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1942         throw message-id string away.
1943         (elmo-msgdb-flag-available-p): Define.
1944         (elmo-msgdb-message-number): Ditto.
1945         (elmo-msgdb-message-field): Ditto.
1946
1947         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1948         (suppoted -> supported).
1949         (modb-legacy-supported-flag-p): Ditto.
1950         (elmo-msgdb-set-flag): Ditto.
1951         (elmo-msgdb-unset-flag): Ditto.
1952         (elmo-msgdb-flag-available-p): Define.
1953
1954         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1955         is `t', treat it as legacy entity.
1956         
1957         * elmo.el (elmo-message-flag-available-p): New generic function.
1958         (elmo-message-number): Ditto.
1959         (elmo-message-field): Use `elmo-msgdb-message-field'.
1960
1961         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1962
1963         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1964         (elmo-message-number): Ditto.
1965
1966         * elmo-multi.el (elmo-message-number): Define.
1967         (elmo-message-flag-available-p): Ditto.
1968
1969         * elmo-filter.el (elmo-message-flag-available-p): Define.
1970         (elmo-message-number): Ditto.
1971
1972         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1973         (elmo-folder-initialize): Load `max-number'.
1974         (elmo-folder-commit): Save it.
1975         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1976         (elmo-global-flag-set-internal): Set up max-number slot.
1977
1978 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1979
1980         * elmo-version.el (elmo-version): Up to 2.11.31.
1981
1982 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1983
1984         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1985         unibyte string of the current buffer for the argument of `md5'
1986         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1987
1988 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1989
1990         * modb-legacy.el (modb-legacy-flag-list): New constant.
1991         (modb-legacy-suppoted-flag-p): New internal function.
1992         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1993         (elmo-msgdb-unset-flag): Ditto.
1994
1995 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1996
1997         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1998
1999         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
2000         from msgdb.
2001
2002 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2003
2004         * elmo-multi.el (elmo-folder-count-flags): Changed return value
2005         (follow the API change).
2006
2007         * elmo-filter.el (elmo-folder-count-flags): Ditto.
2008
2009 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
2010
2011         * modb-standard.el (modb-standard-digest-flags): Abolish.
2012         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
2013
2014         * elmo-vars.el (elmo-digest-flags): New variable.
2015         (elmo-preserved-flags): Moved from elmo-flag.el.
2016
2017         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
2018         (elmo-imap4-flag-to-imap-criteria): Ditto.
2019         (elmo-imap4-folder-list-flagged): Use it.
2020
2021         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
2022
2023         * elmo.el (elmo-folder-count-flags): Changed return value.
2024
2025         * elmo-flag.el (elmo-preserved-flags): New variable.
2026         (elmo-get-global-flags): Use it.
2027
2028         * modb-standard.el (modb-standard-digest-flags): New variable.
2029         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
2030         Changed behavior of `any'.
2031
2032         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
2033         which are defined the Internet draft
2034         (draft-melnikov-imap-keywords-03.txt).
2035         (elmo-imap4-flags-to-imap): New function.
2036         (elmo-folder-append-buffer): Use it.
2037
2038         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
2039         in the docstring.
2040
2041         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
2042         avoid the bug of Emacs 21.3.
2043
2044 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
2045
2046         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
2047         function find-coding-system does not exist.
2048
2049 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2050
2051         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
2052         parsing.
2053
2054 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2055
2056         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
2057         response codes.
2058
2059 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2060
2061         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
2062         (elmo-network-close-session): Follow the changes in
2063         `elmo-pop3-read-response'.
2064         (elmo-pop3-auth-user): Ditto.
2065         (elmo-pop3-auth-apop): Ditto.
2066         (elmo-network-initialize-session): Ditto.
2067         (elmo-network-authenticate-session): Ditto.
2068         (elmo-network-setup-session): Ditto.
2069         (elmo-folder-status): Ditto.
2070         (elmo-message-fetch-plugged): Ditto.
2071         (elmo-pop3-delete-msg): Ditto.
2072
2073 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
2074
2075         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
2076         on failure.
2077
2078 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2079
2080         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
2081         style.
2082         (elmo-bind-directory): Ditto.
2083
2084 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2085
2086         * elmo.el (elmo-folder-append-messages): Note on return value.
2087         * elmo-archive.el (elmo-folder-append-messages): Don't return
2088         message numbers which could not be appended.
2089
2090 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2091
2092         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
2093
2094 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2095
2096         * elmo-version.el (elmo-version): Up to 2.11.30.
2097
2098 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2099
2100         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
2101         `mask'.
2102
2103         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
2104
2105         * elmo-multi.el (elmo-folder-synchronize): Likewise.
2106         (elmo-multi-split-numbers): Add elmo-folder object into each
2107         element of return value at first.
2108         (elmo-folder-delete-messages): Follow the above change.
2109         (elmo-folder-detach-messages): Ditto.
2110
2111         * elmo-filter.el (elmo-folder-synchronize): Minimize message
2112         number which is synchronized in target folder.
2113
2114 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2115
2116         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
2117         Change default value to symbol `all'.
2118         (elmo-map-message-fetch): Change condition to update overview
2119         follow the above.
2120
2121 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2122
2123         * elmo-shimbun.el (elmo-map-message-fetch): Change default
2124         behavior to update overview.
2125         (elmo-shimbun-update-overview-folder-list): Note it.
2126
2127 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2128
2129         * modb-standard.el (modb-standard-message-entity): Avoid infinite
2130         recursive call.
2131
2132 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2133
2134         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
2135         buffer-disable-undo, it is unnecessary.
2136         (elmo-spam-register-good-messages): Ditto.
2137
2138         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2139         Ditto.
2140
2141         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
2142
2143 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2144
2145         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
2146         (elmo-set-work-buf): Use set-buffer-multibyte instead of
2147         elmo-set-buffer-multibyte.
2148         (elmo-object-load): Ditto.
2149         (elmo-save-buffer): Ditto.
2150         (elmo-delete-char): Ditto.
2151         (elmo-file-field-primitive-condition-match): Ditto.
2152         (elmo-mime-string): Ditto.
2153
2154         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
2155         (elmo-archive-field-condition-match): Ditto.
2156
2157         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
2158
2159         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
2160
2161         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
2162         (elmo-nntp-msgdb-create-message): Ditto.
2163
2164         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2165
2166         * elmo.el (elmo-message-match-condition): Ditto.
2167         (elmo-message-match-condition): Ditto.
2168
2169         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2170         Ditto.
2171
2172         * elmo-version.el (elmo-version): Up to 2.11.29.
2173
2174         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
2175         (elsp-header): New backend.
2176
2177         * elmo-util.el (elmo-decoded-field-body): New function.
2178
2179 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2180
2181         * elmo-version.el (elmo-version): Up to 2.11.28.
2182
2183 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2184
2185         * elmo-filter.el: Rewrite.
2186
2187         * elmo-version.el (elmo-version): Up to 2.11.27.
2188
2189 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
2190
2191         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
2192         msgdb path for the localdir folder with absolute path.
2193
2194         * utf7.el: Synch up with latest gnus/utf7.el;
2195         Modified for latest Emacs.
2196
2197 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2198
2199         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
2200         shimbun backend couldn't open.
2201
2202 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
2203
2204         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
2205         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
2206         when a destination folder is a filter folder.
2207
2208 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2209
2210         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
2211         (elmo-generic-folder-append-messages): Call elmo-message-flags
2212         with argument `msgid'.
2213
2214         * elmo-split.el (elmo-split-subr): Ditto.
2215
2216         * elmo-pipe.el (elmo-message-flags): Follow the API change.
2217
2218         * elmo-multi.el (elmo-message-flags): Ditto.
2219
2220 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2221
2222         * elmo.el (elmo-folder): Add new slot `flag-table'.
2223         (elmo-folder-flag-table): New API.
2224         (elmo-folder-close-flag-table): Ditto.
2225         (elmo-folder-preserve-flags): New function.
2226         (elmo-generic-folder-append-messages): Use
2227         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
2228         Flag of a non-registered message, it sets to nil.
2229         Does not set flag to flag-table.
2230
2231         * elmo-maildir.el (elmo-folder-append-buffer): Use
2232         `elmo-folder-preserve-flags'.
2233         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2234         `elmo-folder-close-flag-table'.
2235
2236         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
2237         (elmo-archive-folder-append-buffer): Use
2238         `elmo-folder-preserve-flags'.
2239
2240         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
2241
2242         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
2243
2244         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2245         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2246         `elmo-folder-close-flag-table'.
2247
2248         * elmo-version.el (elmo-version): Up to 2.11.26.
2249
2250 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2251
2252         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
2253
2254         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
2255         md5's 4th and 5th argument (non-existent in flim one).
2256
2257 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2258
2259         * elmo-split.el (elmo-split-subr): Flag of a non-registered
2260         message, It sets to nil.
2261
2262 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2263
2264         * elmo.el (elmo-folder-list-messages): Merge lists only if both
2265         list is non-nil.
2266
2267 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
2268
2269         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
2270
2271         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
2272
2273         * elmo-util.el (elmo-uniq-sorted-list): New function.
2274         (elmo-make-number-list): Ditto.
2275         (elmo-number-set-to-number-list): Use elmo-make-number-list
2276         and don't use nreverse.
2277
2278 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2279
2280         * elmo-version.el (elmo-version): Up to 2.11.25.
2281
2282 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2283
2284         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
2285         field not exists in message, Use md5 message digest of header.
2286
2287 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2288
2289         * elmo.el (elmo-folder-append-buffer): Add note on return value.
2290         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
2291         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2292         * elmo-split.el (elmo-split-subr): Check return value of
2293         elmo-folder-append-buffer.
2294
2295         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
2296         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2297
2298         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
2299         message-id.
2300
2301 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
2302
2303         * elmo-split.el (elmo-split-subr): Append message with flag.
2304
2305         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
2306         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
2307         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2308
2309 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
2310
2311         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
2312         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
2313         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2314
2315 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
2316
2317         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2318         with a function call of `process-buffer'.  All callers are updated.
2319         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2320         Remove redundant `set-buffer' in a while loop.
2321
2322 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2323
2324         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2325         calls.
2326
2327 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2328
2329         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2330         elsp-spamfilter-register-buffer-internal with current buffer.
2331         (elmo-spam-register-spam-buffer): Ditto.
2332         (elmo-spam-register-good-buffer): Ditto.
2333
2334 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2335
2336         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2337         if it is not contained in the response(A workaround for courier-imap).
2338
2339 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2340
2341         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2342         parenthesis.
2343
2344 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2345
2346         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2347         range.
2348
2349 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2350
2351         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2352         of nconc.
2353
2354         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2355         argument handler.
2356         (elmo-msgdb-message-match-condition): Follow the change above.
2357
2358 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2359
2360         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2361         folder name.
2362
2363 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2364
2365         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2366
2367 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2368
2369         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2370
2371 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2372
2373         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2374         not found.
2375
2376 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2377
2378         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2379         value.
2380         (elmo-file-command-argument): Undo last change for cygwin.
2381         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2382         Don't return nil.
2383         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2384
2385 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2386
2387         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2388         value returned from elmo-file-find is nil.
2389
2390 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2391
2392         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2393         to elmo-vars.el.
2394
2395         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2396         instead of insert-file-contents-as-binary.
2397         (elmo-message-set-field): New generic function.
2398
2399         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2400         behavior change on `split-string'.
2401
2402         * elmo-file.el (elmo-file-find): New function.
2403         (elmo-file-command): New user option.
2404         (elmo-file-command-argument): Ditto.
2405         (elmo-file-fetch-max-size): Ditto.
2406         (elmo-file-detect-format): New function.
2407         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2408         Use elmo-file-detect-format.
2409         (elmo-map-folder-list-message-locations): Don't treat directories.
2410
2411 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2412
2413         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2414         (elmo-passwd-alist-clear): Shred password before clear.
2415         (elmo-remove-passwd): Remove all mached pair.
2416
2417 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2418
2419         * elmo.el (elmo-folder-synchronize): Fix description of the return
2420         value.
2421
2422 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2423
2424         * elmo.el (elmo-message-fetch-bodystructure): New method.
2425         (elmo-message-fetch-bodystructure): Define default.
2426
2427         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2428         elmo-message-fetch-bodystructure.
2429         (elmo-message-fetch-bodystructure): Define.
2430
2431         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2432
2433 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2434
2435         * elmo-filter.el (elmo-message-folder): Define.
2436
2437 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2438
2439         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2440         elmo-delete-cr-buffer.
2441
2442         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2443
2444         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2445
2446         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2447
2448         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2449         type seems to be a text.
2450
2451 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2452
2453         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2454         (elmo-spam-register-good-buffer): Ditto.
2455         (elmo-spam-spamassassin-register-messages): Ditto.
2456
2457         * elmo-util.el (elmo-string-member-ignore-case): Define with
2458         static-cond.
2459
2460 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2461
2462         * elmo.el (elmo-folder-type): Undo last change.
2463
2464         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2465
2466         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2467         warnings.
2468
2469         * elmo-file.el: New file.
2470         
2471         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2472
2473         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2474         variable.
2475         (elmo-spam-spamassassin-register-messages): New inline function.
2476         (elmo-spam-register-spam-messages): Define.
2477         (elmo-spam-register-good-messages): Ditto.
2478
2479         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2480         Fixed typo.
2481
2482         * elmo.el (toplevel): Added autoload setting for
2483         `elmo-get-global-flags'.
2484         (elmo-message-has-global-flag-p): New function.
2485         (elmo-message-set-global-flags): Ditto.
2486         (elmo-folder-type): Improvement for name: format.
2487
2488         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2489         availability of keyword flags.
2490         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2491         (elmo-folder-list-flagged-plugged): Renamed from
2492         elmo-folder-list-flagged-unplugged.
2493         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2494         accept any flag as keyword flag.
2495         (elmo-folder-set-flag-plugged): Accept keyword flags.
2496         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2497
2498         * elmo-flag.el (elmo-get-global-flags): New function.
2499
2500         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2501         folders.
2502
2503         * elmo-version.el (elmo-version): Up to 2.11.24.
2504
2505 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2506
2507         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2508         elmo-multiple-field-body instead of std11-field-body to check all
2509         headers.
2510
2511 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2512
2513         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2514         or "size".
2515
2516 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2517
2518         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2519         unintern is unbound.
2520
2521 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2522
2523         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2524         Protect from infinite loop.
2525
2526 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2527
2528         * elsp-bogofilter.el
2529         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2530         (elmo-spam-bogofilter-register-messages): New internal function.
2531         (elmo-spam-register-spam-messages): Define.
2532         (elmo-spam-register-good-messages): Ditto.
2533
2534 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2535
2536         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2537         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2538         (elmo-spam-bogofilter-call): Fixed the last change.
2539         (elmo-spam-bogofilter-arguments): Ditto.
2540
2541         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2542         Follow the options change of latest bogofilter.
2543
2544         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2545         (elmo-spam-bogofilter-good-switch): Ditto.
2546         (elmo-spam-bogofilter-arguments-alist): New user option.
2547         (elmo-spam-bogofilter-debug): Ditto.
2548         (elmo-spam-bogofilter-call): Renamed from
2549         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2550         is non-nil, insert output in buffer for debug.
2551         (elmo-spam-bogofilter-arguments): New macro.
2552         (elmo-spam-buffer-spam-p): Use it.
2553         (elsp-bogofilter-register-buffer): Ditto.
2554
2555 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2556
2557         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2558         regexp.
2559
2560 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2561
2562         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2563         value as "ruby".
2564         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2565         (elmo-spam-bsfilter-program): Set default value as full path for
2566         `bsfilter'.
2567         (elmo-spam-bsfilter-debug): New user option.
2568         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2569         non-nil, insert output in buffer for debug. Fix treating of
2570         argument.
2571
2572 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2573
2574         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2575         `elmo-maildir-flag-specs' element instead of one.
2576         (elmo-map-folder-unset-flag): Ditto.
2577         (Reported by Ken Makimura <macky@astem.or.jp>)
2578
2579         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2580         (elmo-folder-unset-flag-plugged): Ditto.
2581
2582 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2583
2584         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2585         to `reads' slot only if `in-msgdb' is nil.
2586
2587 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2588
2589         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2590         and complement argument list.
2591
2592 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2593
2594         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2595         instead of elmo-folder-list-flagged.
2596
2597 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2598
2599         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2600
2601         * elsp-bsfilter.el: New file.
2602
2603         * elmo-pipe.el (elmo-folder-list-unreads,
2604         elmo-folder-list-answereds,
2605         elmo-folder-list-importants,
2606         elmo-folder-flag-as-important,
2607         elmo-folder-unflag-important,
2608         elmo-folder-flag-as-read,
2609         elmo-folder-unflag-read,
2610         elmo-folder-flag-as-answered,
2611         elmo-folder-unflag-answered): Remove.
2612         (elmo-folder-set-flag): Define.
2613         (elmo-folder-unset-flag): Ditto.
2614
2615         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2616         (elmo-folder-set-flag): Define.
2617         (elmo-folder-unset-flag): Ditto.
2618         (elmo-folder-list-unreads): Remove.
2619         (elmo-folder-list-flagged): Define.
2620
2621         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2622         (elmo-folder-list-unreads,
2623         elmo-folder-list-importants,
2624         elmo-folder-list-answereds,
2625         elmo-folder-list-unreads-plugged,
2626         elmo-folder-list-importants-plugged,
2627         elmo-folder-list-answereds-plugged): Remove.
2628         (elmo-folder-list-flagged-plugged): New method.
2629         (elmo-folder-unflag-important,
2630         elmo-folder-flag-as-important,
2631         elmo-folder-unflag-read,
2632         elmo-folder-flag-as-read,
2633         elmo-folder-unflag-answered,
2634         elmo-folder-flag-as-answered,
2635         elmo-folder-flag-as-read-unplugged,
2636         elmo-folder-unflag-read-unplugged,
2637         elmo-folder-flag-as-important-unplugged,
2638         elmo-folder-unflag-important-unplugged,
2639         elmo-folder-flag-as-answered-unplugged,
2640         elmo-folder-unflag-answered-unplugged): Remove.
2641         (elmo-folder-set-flag): Define.
2642         (elmo-folder-unset-flag): Ditto.
2643         (elmo-folder-set-flag-unplugged): Ditto.
2644         (elmo-folder-unset-flag-unplugged): Ditto.
2645
2646         * elmo-multi.el (elmo-folder-list-unreads,
2647         elmo-folder-list-answereds,
2648         elmo-folder-list-importants,
2649         elmo-folder-flag-as-important,
2650         elmo-folder-unflag-important,
2651         elmo-folder-flag-as-read,
2652         elmo-folder-unflag-read,
2653         elmo-folder-flag-as-answered,
2654         elmo-folder-unflag-answered): Remove.
2655         (elmo-folder-set-flag): Define.
2656         (elmo-folder-unset-flag): Ditto.
2657
2658         * elmo-map.el (elmo-map-folder-unflag-important,
2659         elmo-map-folder-flag-as-important,
2660         elmo-map-folder-unflag-read,
2661         elmo-map-folder-flag-as-read,
2662         elmo-map-folder-unflag-answered,
2663         elmo-map-folder-flag-as-answered): Remove.
2664         (elmo-map-folder-set-flag): New method.
2665         (elmo-map-folder-unset-flag): Ditto.
2666         (elmo-map-folder-list-unreads,
2667         elmo-map-folder-list-importants,
2668         elmo-map-folder-list-answereds): Remove.
2669         (elmo-folder-list-flagged-internal): Define.
2670         (elmo-map-folder-list-flagged): New method.
2671
2672         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2673         (elmo-map-folder-list-unreads,
2674         elmo-map-folder-list-importants,
2675         elmo-map-folder-list-flagged): Remove.
2676         (elmo-map-folder-list-flagged): Define.
2677         (elmo-map-folder-flag-as-important,
2678         elmo-map-folder-unflag-important,
2679         elmo-map-folder-flag-as-read,
2680         elmo-map-folder-unflag-read,
2681         elmo-map-folder-flag-as-answered,
2682         elmo-map-folder-unflag-answered): Remove.
2683         (elmo-maildir-set-mark-messages): New internal function.
2684         (elmo-map-folder-set-flag): Define.
2685         (elmo-map-folder-unset-flag): Ditto.
2686
2687         * elmo.el (toplevel): Added autoload setting for
2688         `elmo-folder-list-global-flag-messages'.
2689         (elmo-folder-list-unreads,
2690         elmo-folder-list-importants,
2691         elmo-folder-list-answereds): Remove.
2692         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2693         Return a list whitch merged with messages have global flag.
2694         (elmo-folder-list-flagged-internal): New method.
2695         (elmo-folder-unflag-important,
2696         elmo-folder-flag-as-important,
2697         elmo-folder-unflag-read,
2698         elmo-folder-flag-as-read,
2699         elmo-folder-unflag-answered,
2700         elmo-folder-flag-as-answered): Remove.
2701         (elmo-folder-set-flag): New method.
2702         (elmo-folder-unset-flag): Ditto.
2703         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2704         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2705
2706         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2707         (elmo-folder-list-unreads-plugged,
2708         elmo-folder-list-importants-plugged,
2709         elmo-folder-list-answereds-plugged,
2710         elmo-folder-list-flagged-unplugged,
2711         elmo-folder-unflag-important-plugged,
2712         elmo-folder-flag-as-important-plugged,
2713         elmo-folder-unflag-read-plugged,
2714         elmo-folder-flag-as-read-plugged,
2715         elmo-folder-unflag-answered-plugged,
2716         elmo-folder-flag-as-answered-plugged): Remove.
2717         (elmo-folder-set-flag-plugged,
2718         elmo-folder-unset-flag-plugged): Define.
2719
2720         * elmo-flag.el (elmo-folder-initialize): Register to
2721         `elmo-global-flag-list' if flag is not global.
2722         (elmo-folder-append-messages): Set flag to source messages.
2723
2724         * elmo-filter.el (elmo-filter-folder-list-unreads,
2725         elmo-folder-list-unreads,
2726         elmo-filter-folder-list-importants,
2727         elmo-folder-list-importants,
2728         elmo-folder-flag-as-read,
2729         elmo-folder-unflag-read,
2730         elmo-folder-flag-as-important,
2731         elmo-folder-unflag-important,
2732         elmo-folder-flag-as-answered,
2733         elmo-folder-unflag-answered): Remove.
2734         (elmo-folder-set-flag): Define.
2735         (elmo-folder-unset-flag): Ditto.
2736
2737         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2738         elmo-folder-unflag-read-dop,
2739         elmo-folder-flag-as-important-dop,
2740         elmo-folder-unflag-important-dop,
2741         elmo-folder-flag-as-answered-dop,
2742         elmo-folder-unflag-answered-dop): Remove.
2743         (elmo-folder-set-flag-dop,
2744         elmo-folder-unset-flag-dop,
2745         elmo-folder-set-important-delayed,
2746         elmo-folder-unset-important-delayed,
2747         elmo-folder-set-read-delayed,
2748         elmo-folder-unset-read-delayed,
2749         elmo-folder-set-answered-delayed,
2750         elmo-folder-unset-answered-delayed): New function.
2751         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2752         (elmo-dop-queue-method-name-alist): Ditto.
2753
2754         * elmo-version.el (elmo-version): Up to 2.11.23.
2755
2756 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2757
2758         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2759
2760         * elsp-sa.el: New file.
2761
2762 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2763
2764         * modb-standard.el (modb-standard-message-entity): New function.
2765         (elmo-msgdb-message-entity): Use it.
2766
2767 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2768
2769         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2770         behavior when one-level is nil.
2771
2772         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2773
2774         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2775
2776 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2777
2778         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2779         get max number.
2780         (elmo-generic-folder-diff): Ditto.
2781
2782         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2783         (elmo-folder-update-number): Ditto.
2784
2785         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2786         (elmo-folder-next-message-number-dop): Ditto.
2787
2788 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2789
2790         * elmo-filter.el (elmo-folder-msgdb-create): Use
2791         `elmo-message-entity' and `elmo-message-flags' instead of
2792         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2793
2794 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2795
2796         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2797         `if-exists'.
2798
2799 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2800
2801         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2802
2803         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2804
2805         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2806
2807 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2808
2809         * elmo-version.el (elmo-version): Up to 2.11.22.
2810
2811 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2812
2813         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2814
2815 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2816
2817         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2818         if the message dose not exist.
2819
2820 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2821
2822         * elmo-version.el (elmo-version): Up to 2.11.21.
2823
2824 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2825
2826         * modb-standard.el (toplevel): Don't require mime.
2827
2828 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2829
2830         * elsp-bogofilter.el (toplevel): Don't require path-util.
2831         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2832         (elmo-spam-bogofilter-header): Abolish.
2833         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2834         (elmo-spam-bogofilter-args): New user option.
2835         (elsp-bogofilter-call-bogofilter): New internal function.
2836         (elmo-spam-buffer-spam-p): Use it.
2837         (elsp-bogofilter-register-buffer): Renamed from
2838         `elmo-spam-bogofilter-register-buffer';
2839         Use `elsp-bogofilter-call-bogofilter'.
2840         (elmo-spam-register-spam-buffer): Follow the change above.
2841         (elmo-spam-register-good-buffer): Ditto.
2842
2843 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2844
2845         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2846         message-id is nil do nothing.
2847
2848 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2849
2850         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2851         Revival.
2852         (elmo-imap4-session): Removed use-flag slot.
2853         (elmo-imap4-session-select-mailbox): Undo last change.
2854         (elmo-folder-use-flag-p): Use
2855         elmo-imap4-disuse-server-flag-mailbox-regexp.
2856
2857 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2858
2859         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2860         (elmo-imap4-session-select-mailbox): Set it up.
2861         (elmo-folder-use-flag-p): Return value of use-flag slot.
2862
2863 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2864
2865         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2866         message-id is nil.
2867         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2868
2869         * modb-entity.el (elmo-message-entity-handler): Likewise.
2870
2871 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2872
2873         * elmo.el (toplevel): Remove setting of autoloding for
2874         elmo-global-flag-initialize.
2875         (elmo-init): Don't call elmo-global-flag-initialize.
2876         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2877
2878         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2879         (elmo-global-mark-migrate): Don't call it.
2880         (elmo-global-mark-upgrade): Ditto.
2881
2882 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2883
2884         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2885         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2886
2887         * elmo-vars.el (elmo-init-hook): New user option.
2888
2889         * elmo.el (elmo-init): Run the elmo-init-hook.
2890
2891         * elmo-flag.el (elmo-global-mark-migrate): New function.
2892
2893 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2894
2895         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2896         Undo last change (move to elmo-msgdb-unset-flag).
2897         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2898         flag is unset.
2899
2900 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2901
2902         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2903         read flag is set.
2904         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2905         (elmo-msgdb-unset-flag): Ditto.
2906
2907 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2908
2909         * elmo-split.el (elmo-split): Return split message count.
2910
2911 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2912
2913         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2914         is nil.
2915
2916 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2917
2918         * elmo.el (elmo-folder-unflag-important): Call
2919         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2920         a symbol `always'.
2921
2922         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2923         before unset flag.
2924         (elmo-global-flag-detach): Delete the message from flag folder, if
2925         `delete-if-none' is a symbol `always'.
2926
2927 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2928
2929         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2930         `elmo-spam-spamfilter-decode-buffer'.
2931         (elsp-spamfilter-register-buffer-internal): New internal function.
2932         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2933         (elmo-spam-register-spam-buffer): Ditto.
2934         (elmo-spam-register-good-buffer): Ditto.
2935
2936         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2937         change.
2938         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2939         (elmo-spam-register-spam-buffer): Follow the API change.
2940         (elmo-spam-register-good-buffer): Ditto.
2941
2942         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2943         (elmo-split-spam-p): Added argument plist; Call
2944         `elmo-spam-buffer-spam-p' with new argument register.
2945
2946         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2947         `register'.
2948         (elmo-spam-message-spam-p): Ditto.
2949         (elmo-spam-register-spam-buffer): Added optional argument
2950         `restore'.
2951         (elmo-spam-register-good-buffer): Ditto.
2952         (elmo-spam-register-spam-messages): Ditto.
2953         (elmo-spam-register-good-messages): Ditto.
2954
2955 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2956
2957         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2958         register into good corpus.
2959         (elmo-spam-register-good-buffer): Fixed to register into bad
2960         corpus.
2961
2962 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2963
2964         * elmo-version.el (elmo-version): Up to 2.11.20.
2965
2966         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2967         change.
2968
2969         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2970         flag without depending on \Recent flag.
2971
2972 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2973
2974         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2975         (elmo-spam-modified-p): Defined.
2976         (elmo-spam-save-status): Set `modified' slot to nil.
2977         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2978         (elmo-spam-register-good-buffer): Ditto.
2979
2980         * elmo-spam.el (elmo-spam-modified-p): New API.
2981
2982 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2983
2984         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2985         duplicate definition.
2986
2987         * elmo-util.el (elmo-unfold-field-body): New function.
2988         (elmo-msgdb-get-message-id-from-buffer): Use it.
2989
2990         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2991         Fixed the last change; Use elmo-unfold-field-body.
2992
2993 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2994
2995         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2996         Unfold date value.
2997
2998 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2999
3000         * elmo-spam.el (elmo-spam-save-status): New API.
3001
3002         * elsp-spamfilter.el: New file.
3003
3004 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3005
3006         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
3007
3008 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3009
3010         * elmo-split.el (elmo-split-spam-p): New function.
3011
3012         * elmo-spam.el: New file.
3013
3014         * elsp-bogofilter.el: Ditto.
3015
3016 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
3017
3018         * elmo.el (elmo-folder-next-message-number): New API.
3019         (elmo-folder-next-message-number): Define.
3020         (elmo-message-field): Don't check folder length.
3021
3022         * elmo-net.el (elmo-folder-next-message-number): Define.
3023         (elmo-folder-next-message-number-unplugged): Define.
3024
3025         * elmo-map.el (elmo-folder-next-message-number): Define.
3026         (elmo-folder-delete-messages): Clear hash value.
3027
3028         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
3029
3030         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
3031         (elmo-folder-delete-messages-dop-delayed): Always return t.
3032
3033         * elmo-version.el (elmo-version): Up to 2.11.19.
3034
3035 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3036
3037         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
3038         change.
3039
3040         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
3041         identical cons cell into the mark-alist and the hash table.
3042
3043 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
3044
3045         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
3046         elmo-folder-list-messages with argument `visible-only' as t.
3047
3048         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
3049         (elmo-folder-msgdb-create): Check the target folder.
3050
3051 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
3052
3053         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
3054         `permanentflag' instead of `flags'.
3055         (elmo-folder-open): Ditto.
3056         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
3057         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
3058         (elmo-folder-use-flag-p): Always return t.
3059         (elmo-imap4-session-select-mailbox): Use value of `flags' if
3060         `permanentflags' does not exist.
3061         (elmo-folder-open): Ditto.
3062
3063 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
3064
3065         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
3066         is nil.
3067         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
3068
3069         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
3070         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
3071         response.
3072         (elmo-folder-open): Ditto.
3073         (elmo-imap4-set-flag): Send store flag command only when the `flags'
3074         slot of the session includes the flag.
3075         (elmo-imap4-session-flag-available-p): New function.
3076         (elmo-imap4-folder-list-flagged): Ditto.
3077         (elmo-folder-list-unreads-plugged): Use it.
3078         (elmo-folder-list-importants-plugged): Ditto.
3079         (elmo-folder-list-answereds-plugged): Ditto.
3080         (elmo-imap4-search-internal-primitive): Ditto.
3081         (elmo-imap4-folder-list-any-plugged,
3082         elmo-imap4-folder-list-digest-plugged): Abolish.
3083
3084         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
3085         if numbers is nil.
3086
3087 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3088
3089         * elmo-util.el (toplevel): Require emu for char-list-to-string.
3090
3091 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
3092
3093         * elmo-util.el (elmo-get-hash-val): Simplify.
3094         (elmo-set-hash-val): Rewrite.
3095
3096 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3097
3098         * elmo.el (elmo-folder-list-messages): Append killed messages into
3099         result if `visible-only' is nil and `in-msgdb' is non-nil.
3100
3101         * elmo-util.el (elmo-uniq-list): Added optional argument
3102         `delete-function'.
3103
3104         * modb.el (elmo-msgdb-flag-count): New API.
3105
3106         * modb-standard.el (modb-standard): Added slot flag-count.
3107         (modb-standard-countup-flags): New function.
3108         (modb-standard-load-flag): Call it.
3109         (elmo-msgdb-append): Ditto.
3110         (elmo-msgdb-clear): Clear slot flag-count.
3111         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
3112         (elmo-msgdb-unset-flag): Treat `all' flag and call
3113         modb-standard-countup-flags.
3114         (elmo-msgdb-flag-count): Define.
3115         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
3116         (elmo-msgdb-delete-messages): Ditto.
3117
3118         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
3119         (elmo-msgdb-flag-count): Define.
3120
3121         * elmo.el (elmo-folder-list-messages): Undo last change.
3122         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
3123         (elmo-folder-kill-messages): Unset all flags to numbers.
3124
3125         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
3126         elmo-folder-kill-messages.
3127
3128         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
3129         (elmo-nntp-folder-delete-messages): Abolish.
3130
3131         * elmo-version.el (elmo-version): Up to 2.11.18.
3132
3133 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3134
3135         * elmo.el (elmo-folder-kill-messages-before): Abolish.
3136         (elmo-folder-kill-messages-range): New function.
3137         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
3138         instead of elmo-folder-kill-messages-before.
3139
3140 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
3141
3142         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
3143         elmo-imap4-current-msgdb to decide entity handler.
3144
3145 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3146
3147         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
3148
3149         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
3150         inline function.
3151         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
3152         (elmo-msgdb-overview-entity-set-number,
3153         elmo-msgdb-overview-entity-get-references,
3154         elmo-msgdb-overview-entity-set-references,
3155         elmo-msgdb-overview-entity-get-from-no-decode,
3156         elmo-msgdb-overview-entity-get-from,
3157         elmo-msgdb-overview-entity-set-from,
3158         elmo-msgdb-overview-entity-get-subject,
3159         elmo-msgdb-overview-entity-get-subject-no-decode,
3160         elmo-msgdb-overview-entity-set-subject,
3161         elmo-msgdb-overview-entity-get-date,
3162         elmo-msgdb-overview-entity-set-date,
3163         elmo-msgdb-overview-entity-get-to,
3164         elmo-msgdb-overview-entity-get-cc,
3165         elmo-msgdb-overview-entity-get-size,
3166         elmo-msgdb-overview-entity-set-size,
3167         elmo-msgdb-overview-entity-get-extra,
3168         elmo-msgdb-overview-entity-set-extra,
3169         elmo-msgdb-overview-entity-get-extra-field,
3170         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
3171         (elmo-msgdb-make-index): Use
3172         `elmo-msgdb-overview-entity-get-number-internal'.
3173         (elmo-msgdb-clear-index): Ditto.
3174         (elmo-msgdb-append-entity): Ditto;
3175         Use `elmo-msgdb-overview-entity-get-id-internal'.
3176
3177         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
3178         elmo-msgdb-overview-entity-set-number,
3179         elmo-msgdb-overview-entity-get-references,
3180         elmo-msgdb-overview-entity-set-references,
3181         elmo-msgdb-overview-entity-get-from-no-decode,
3182         elmo-msgdb-overview-entity-get-from,
3183         elmo-msgdb-overview-entity-set-from,
3184         elmo-msgdb-overview-entity-get-subject,
3185         elmo-msgdb-overview-entity-get-subject-no-decode,
3186         elmo-msgdb-overview-entity-set-subject,
3187         elmo-msgdb-overview-entity-get-date,
3188         elmo-msgdb-overview-entity-set-date,
3189         elmo-msgdb-overview-entity-get-to,
3190         elmo-msgdb-overview-entity-get-cc,
3191         elmo-msgdb-overview-entity-get-size,
3192         elmo-msgdb-overview-entity-set-size,
3193         elmo-msgdb-overview-entity-get-extra,
3194         elmo-msgdb-overview-entity-set-extra,
3195         elmo-msgdb-overview-entity-get-extra-field,
3196         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
3197         and rewrote for backward compatibility.
3198
3199 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3200
3201         * elmo.el (elmo-message-entity-number,
3202         elmo-message-entity-set-number,
3203         elmo-message-entity-field,
3204         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
3205
3206         * elmo-msgdb.el (elmo-message-entity-number,
3207         elmo-message-entity-set-number,
3208         elmo-message-entity-field,
3209         elmo-message-entity-set-field): Moved from elmo.el.
3210
3211 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3212
3213         * elmo.el (toplevel): Changed definition orders.
3214
3215 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3216
3217         * modb.el (elmo-msgdb-search): New API .
3218         (elmo-msgdb-match-condition): Ditto.
3219
3220         * modb-standard.el (elmo-msgdb-search): Define.
3221
3222         * modb-legacy.el (elmo-msgdb-search): Ditto.
3223
3224         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
3225         from elmo-msgdb-match-condition-internal.
3226
3227         * elmo.el (elmo-folder-search-fast): Abolish.
3228         (elmo-folder-search): Use elmo-msgdb-search and
3229         elmo-with-progress-display.
3230
3231         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
3232         as msgdb API.
3233
3234         * elmo.el (elmo-folder): Remove slot message-modified and
3235         flag-modified.
3236         (elmo-folder-set-message-modified): Abolish.
3237         (elmo-generic-folder-commit): Follow the change above.
3238         (elmo-folder-synchronize): Ditto.
3239
3240         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
3241
3242         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3243
3244         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
3245
3246 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3247
3248         * modb-standard.el (modb-standard-make-message-entity,
3249         elmo-msgdb-make-message-entity,
3250         elmo-msgdb-create-message-entity-from-buffer,
3251         elmo-msgdb-message-entity-number,
3252         elmo-msgdb-message-entity-set-number,
3253         elmo-msgdb-message-entity-field,
3254         elmo-msgdb-message-entity-set-field,
3255         elmo-msgdb-copy-message-entity,
3256         elmo-msgdb-match-condition-internal): Remove.
3257
3258         * modb-entity.el: New file (again).
3259
3260         * modb.el (toplevel): Require modb-entity.
3261         (elmo-msgdb-message-entity-handler): New method.
3262
3263         * modb-standard.el (modb-standard-entity-id): Use
3264         elmo-message-entity-handler.
3265         (modb-standard-load-entity): Ditto.
3266         (elmo-msgdb-append-entity): Ditto.
3267         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3268
3269         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
3270         elmo-msgdb-decoded-cache-hashtb,
3271         (modb-legacy-make-message-entity,
3272         elmo-msgdb-make-message-entity,
3273         elmo-msgdb-create-message-entity-from-buffer,
3274         elmo-msgdb-message-entity-number,
3275         elmo-msgdb-message-entity-set-number,
3276         elmo-msgdb-message-entity-field,
3277         elmo-msgdb-message-entity-set-field,
3278         elmo-msgdb-copy-message-entity,
3279         elmo-msgdb-match-condition-internal,
3280         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
3281
3282         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
3283         (elmo-message-entity-set-number): Ditto.
3284         (elmo-message-entity-field): Ditto.
3285         (elmo-message-entity-set-field): Ditto.
3286
3287         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
3288
3289         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3290
3291         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3292
3293         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3294         (elmo-nntp-msgdb-create-message): Ditto.
3295
3296         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
3297         (elmo-folder-msgdb-create): Add unread flag.
3298
3299         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3300
3301         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
3302
3303         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
3304
3305         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3306
3307         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
3308         elmo-msgdb-messge-entity-handler.
3309         * elmo-version.el (elmo-version): Up to 2.11.17.
3310
3311 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3312
3313         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
3314         change.
3315
3316 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3317
3318         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3319
3320         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3321         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3322         (elmo-msgdb-flag-table): Ditto.
3323         (elmo-msgdb-sort-by-date): Ditto.
3324
3325         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3326
3327         * modb-standard.el (toplevel): Require mime.
3328         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3329         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3330         elmo-msgdb-message-entity-number.
3331         (elmo-msgdb-append-entity): Ditto.
3332         (elmo-msgdb-create-message-entity-from-file): Remove.
3333         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3334         corresponds to the entity.
3335         (elmo-msgdb-message-entity-number): Do nothing currently.
3336         (elmo-msgdb-message-entity-field): Ditto.
3337         (elmo-msgdb-message-entity-set-field): Ditto.
3338         (elmo-msgdb-copy-message-entity): Ditto.
3339         (elmo-msgdb-match-condition-internal): Ditto.
3340
3341         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3342         elmo-util.el.
3343         (elmo-msgdb-create-message-entity-from-file): Remove.
3344
3345         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3346         modb-legacy.el.
3347         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3348
3349         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3350
3351 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3352
3353         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3354         (elmo-msgdb-message-entity-field): Ditto.
3355         (elmo-msgdb-message-entity-number): Ditto.
3356
3357 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3358
3359         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3360         Fixed how to set extra field into entity.
3361         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3362         symbol.
3363
3364         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3365         Fixed how to set extra field into entity.
3366         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3367         symbol.
3368
3369 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3370
3371         * modb.el (elmo-message-entity-db): New function.
3372         (elmo-msgdb-make-message-entity): New API.
3373         (elmo-msgdb-message-entity-number): Ditto.
3374         (elmo-msgdb-message-entity-set-number): Ditto.
3375         (elmo-msgdb-message-entity-field): Ditto.
3376         (elmo-msgdb-message-entity-set-field): Ditto.
3377         (elmo-msgdb-copy-message-entity): Ditto.
3378         (elmo-msgdb-create-message-entity-from-file): Ditto.
3379         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3380         (elmo-msgdb-match-condition-internal): Ditto.
3381
3382         * modb-standard.el (modb-legacy): Require modb-legacy.
3383         (modb-standard-make-message-entity): New inline function.
3384         (elmo-msgdb-make-message-entity): Define.
3385         (elmo-msgdb-create-message-entity-from-file): Ditto.
3386         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3387         (elmo-msgdb-message-entity-field): Ditto.
3388         (elmo-msgdb-message-entity-set-field): Ditto.
3389         (elmo-msgdb-copy-message-entity): Ditto.
3390         (elmo-msgdb-match-condition-internal): Ditto.
3391
3392         * modb-legacy.el: Don't require modb-entity.
3393         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3394         (elmo-msgdb-match-condition-primitive): Ditto.
3395         (elmo-msgdb-get-decoded-cache): Ditto.
3396         (elmo-msgdb-overview-entity-get-id): Ditto.
3397         (elmo-msgdb-overview-entity-get-number): Ditto.
3398         (elmo-msgdb-overview-entity-set-number): Ditto.
3399         (elmo-msgdb-overview-entity-get-references): Ditto.
3400         (elmo-msgdb-overview-entity-set-references): Ditto.
3401         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3402         (elmo-msgdb-overview-entity-get-from): Ditto.
3403         (elmo-msgdb-overview-entity-set-from): Ditto.
3404         (elmo-msgdb-overview-entity-get-subject): Ditto.
3405         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3406         (elmo-msgdb-overview-entity-set-subject): Ditto.
3407         (elmo-msgdb-overview-entity-get-date): Ditto.
3408         (elmo-msgdb-overview-entity-set-date): Ditto.
3409         (elmo-msgdb-overview-entity-get-to): Ditto.
3410         (elmo-msgdb-overview-entity-get-cc): Ditto.
3411         (elmo-msgdb-overview-entity-get-size): Ditto.
3412         (elmo-msgdb-overview-entity-set-size): Ditto.
3413         (elmo-msgdb-overview-entity-get-extra): Ditto.
3414         (elmo-msgdb-overview-entity-set-extra): Ditto.
3415         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3416         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3417         (elmo-msgdb-number-load): Ditto.
3418         (elmo-msgdb-overview-load): Ditto.
3419         (elmo-msgdb-mark-load): Ditto.
3420         (elmo-msgdb-number-save): Ditto.
3421         (elmo-msgdb-mark-save): Ditto.
3422         (elmo-msgdb-overview-save): Ditto.
3423         (modb-legacy-make-message-entity): New inline function.
3424         (elmo-msgdb-insert-file-header): Ditto.
3425         (elmo-msgdb-make-message-entity): Define.
3426         (elmo-msgdb-create-message-entity-from-file): Ditto.
3427         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3428         (elmo-msgdb-message-entity-number): Ditto.
3429         (elmo-msgdb-message-entity-set-number): Ditto.
3430         (elmo-msgdb-message-entity-field): Ditto.
3431         (elmo-msgdb-message-entity-set-field): Ditto.
3432         (elmo-msgdb-copy-message-entity): Ditto.
3433         (elmo-msgdb-match-condition-internal): Ditto.
3434
3435         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3436         (elmo-message-copy-entity): Rewrite.
3437         (elmo-message-entity-number): Ditto.
3438         (elmo-message-entity-set-number): Ditto.
3439         (elmo-message-entity-field): Use elmo-message-entity-db.
3440         (elmo-message-entity-set-field): Ditto.
3441         (elmo-message-field): Rewrite.
3442
3443         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3444         elmo-msgdb.el
3445         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3446
3447         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3448         elmo-message-entity-field.
3449         (elmo-shimbun-folder-shimbun-header): Ditto.
3450         (elmo-shimbun-entity-to-header): Ditto.
3451         (elmo-folder-msgdb-create): Ditto.
3452         (elmo-shimbun-msgdb-create-entity): Ditto;
3453         Use elmo-msgdb-create-message-entity-from-buffer.
3454         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3455         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3456
3457         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3458         elmo-msgdb-create-message-entity-from-file and 
3459         elmo-message-entity-field.
3460
3461         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3462         elmo-message-entity-number.
3463         (elmo-pop3-msgdb-create-message): Use
3464         elmo-msgdb-create-message-entity-from-buffer,
3465         elmo-message-entity-set-field, elmo-message-entity-number and
3466         elmo-message-entity-set-number.
3467
3468         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3469         the API change in elmo-msgdb-make-message-entity.
3470         (elmo-nntp-msgdb-create-message): Use
3471         elmo-msgdb-create-message-entity-from-buffer.
3472
3473         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3474         elmo-message-entity-field and
3475         elmo-msgdb-create-message-entity-from-file.
3476
3477         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3478         (elmo-msgdb-get-field): Abolish.
3479         (elmo-msgdb-get-number): Rewrite.
3480         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3481         (elmo-msgdb-flag-table): Ditto.
3482         (elmo-msgdb-get-last-message-id,
3483         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3484         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3485         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3486         (elmo-msgdb-create-overview-from-buffer,
3487         elmo-msgdb-overview-get-parent-entity): Abolish.
3488
3489         * elmo-mime.el (elmo-mime-display-as-is): Use
3490         elmo-message-entity-field.
3491
3492         * elmo-map.el (elmo-folder-pack-numbers): Use
3493         elmo-message-entity-set-number.
3494
3495         * elmo-maildir.el (elmo-folder-msgdb-create): 
3496         elmo-msgdb-create-message-entity-from-file instead of
3497         elmo-msgdb-create-overview-entity-from-file.
3498
3499         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3500         msgdb.
3501         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3502         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3503
3504         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3505         elmo-messge-entity-field and elmo-message-entity-number.
3506         (elmo-imap4-fetch-callback-1): Call
3507         elmo-msgdb-create-message-entity-from-buffer instead of
3508         elmo-msgdb-create-overview-from-buffer. 
3509         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3510         (elmo-find-fetch-strategy): Likewise.
3511
3512         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3513         elmo-localdir-msgdb-create-entity with argument msgdb.
3514
3515         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3516         and elmo-message-entity-set-number.
3517
3518         * elmo-cache.el (elmo-folder-msgdb-create): Use
3519         elmo-message-entity-field.
3520         (elmo-folder-msgdb-create): Call
3521         elmo-msgdb-create-message-entity-from-file instead of
3522         elmo-msgdb-create-overview-entity-from-file.
3523
3524         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3525         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3526         instead of elmo-msgdb-create-overview-from-buffer.
3527         (elmo-archive-msgdb-create-entity): Ditto.
3528         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3529         elmo-message-entity-field.
3530         (elmo-archive-parse-mmdf): Ditto.
3531
3532         * modb-entity.el: Removed.
3533
3534         * elmo-version.el (elmo-version): Up to 2.11.16.
3535
3536 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3537
3538         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3539         `is-local'.
3540         (elmo-folder-flag-as-answered): Ditto.
3541
3542 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3543
3544         * modb-standard.el: New file.
3545
3546         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3547         elmo-msgdb-convert-type is `sync'.
3548
3549         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3550         (elmo-msgdb-convert-type): New user option.
3551
3552         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3553         (elmo-load-msgdb): Auto detect saved type.
3554
3555         * elmo-version.el (elmo-version): Up to 2.11.15.
3556
3557 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3558
3559         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3560
3561         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3562         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3563         with argument `delete-if-none' when dst-folder is 'null.
3564
3565         * elmo-flag.el (elmo-folder-append-messages): Defined.
3566         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3567
3568 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3569
3570         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3571
3572 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3573
3574         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3575         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3576         (elmo-folder-commit): Ditto.
3577
3578 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3579
3580         * elmo-flag.el: New file.
3581
3582         * elmo-mark.el: Removed.
3583
3584         * modb-legacy.el (modb-legacy-new-mark,
3585         modb-legacy-unread-uncached-mark,
3586         modb-legacy-unread-cached-mark,
3587         modb-legacy-read-uncached-mark,
3588         modb-legacy-answered-cached-mark,
3589         modb-legacy-answered-uncached-mark,
3590         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3591         All other related portions are changed.
3592
3593         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3594         (elmo-folder-list-messages-with-global-mark): Abolish.
3595         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3596         (elmo-folder-flag-as-important): Ditto.
3597         (elmo-folder-unflag-read): Ditto.
3598         (elmo-folder-flag-as-read): Ditto.
3599         (elmo-folder-unflag-answered): Ditto.
3600         (elmo-folder-flag-as-answered): Ditto.
3601         (elmo-message-encache): Return the cache path.
3602         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3603         (elmo-message-set-flag): Transitional implementation.
3604         (elmo-message-unset-flag): Ditto.
3605         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3606         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3607         (elmo-init): Call elmo-global-flag-initialize.
3608         (toplevel): Added autoload settings for elmo-flag.
3609
3610         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3611
3612         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3613         (elmo-file-cache-delete): Don't treat global-mark.
3614
3615         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3616
3617         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3618
3619         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3620         `elmo-global-flags-set'.
3621
3622         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3623         `flag'.
3624         (elmo-folder-unflag-read): Ditto.
3625         (elmo-folder-unflag-important): Ditto.
3626         (elmo-folder-flag-as-important): Ditto.
3627         (elmo-folder-unflag-answered): Ditto.
3628         (elmo-folder-flag-as-answered): Ditto.
3629
3630         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3631         `elmo-global-flags-set'.
3632         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3633
3634         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3635
3636         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3637         `flag'.
3638         (elmo-folder-flag-as-important): Ditto.
3639         (elmo-folder-unflag-important): Ditto.
3640         (elmo-folder-flag-as-important): Ditto.
3641         (elmo-folder-unflag-read): Ditto.
3642         (elmo-folder-flag-as-read): Ditto.
3643         (elmo-folder-unflag-answered): Ditto.
3644         (elmo-folder-flag-as-answered): Ditto.
3645
3646         * elmo-multi.el (elmo-folder-list-importants): Don't call
3647         elmo-folder-list-messages-with-global-mark.
3648         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3649         (elmo-folder-unflag-important): Ditto.
3650         (elmo-folder-flag-as-read): Ditto.
3651         (elmo-folder-unflag-read): Ditto.
3652         (elmo-folder-flag-as-answered): Ditto.
3653         (elmo-folder-unflag-answered): Ditto.
3654
3655         * elmo-msgdb.el (elmo-msgdb-new-mark,
3656         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3657         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3658         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3659         (Moved to modb-legacy.el).
3660         (elmo-flag-table-get): Treat important flag too.
3661
3662         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3663         `mark' to `flag'.
3664         (elmo-map-folder-flag-as-important): Ditto.
3665         (elmo-map-folder-unflag-read): Ditto.
3666         (elmo-map-folder-flag-as-read): Ditto.
3667         (elmo-map-folder-unflag-answered): Ditto.
3668         (elmo-map-folder-flag-as-answered): Ditto.
3669         (elmo-folder-unflag-important): Ditto.
3670         (elmo-folder-flag-as-important): Ditto.
3671         (elmo-folder-unflag-read): Ditto.
3672         (elmo-folder-flag-as-read): Ditto.
3673         (elmo-folder-unflag-answered): Ditto.
3674         (elmo-folder-flag-as-answered): Ditto.
3675
3676         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3677         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3678         `flag'.
3679         (elmo-map-folder-unflag-important): Ditto.
3680         (elmo-map-folder-flag-as-read): Ditto.
3681         (elmo-map-folder-unflag-read): Ditto.
3682         (elmo-map-folder-flag-as-answered): Ditto.
3683         (elmo-map-folder-unflag-answered): Ditto.
3684
3685         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3686         `elmo-global-flags-set'.
3687         (elmo-global-flags-set): Added autoload setting.
3688
3689         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3690         `flag'.
3691
3692         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3693         `elmo-msgdb-global-mark-set'.
3694         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3695         Call `elmo-global-flags-set'.
3696         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3697         `flag'.
3698         (elmo-folder-flag-as-important-plugged): Ditto.
3699         (elmo-folder-unflag-read-plugged): Ditto.
3700         (elmo-folder-flag-as-read-plugged): Ditto.
3701         (elmo-folder-unflag-answered-plugged): Ditto.
3702         (elmo-folder-flag-as-answered-plugged): Ditto.
3703         (elmo-global-flags-set): Added autoload setting.
3704
3705         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3706         `flag'.
3707         (elmo-folder-unflag-read): Ditto.
3708         (elmo-folder-flag-as-important): Ditto.
3709         (elmo-folder-unflag-important): Ditto.
3710         (elmo-folder-flag-as-answered): Ditto.
3711         (elmo-folder-unflag-answered): Ditto.
3712
3713         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3714         change of `mark'->`flag'.
3715         (elmo-dop-queue-method-name-alist): Ditto.
3716         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3717         (elmo-folder-unflag-read-dop): Ditto.
3718         (elmo-folder-flag-as-important-dop): Ditto.
3719         (elmo-folder-unflag-important-dop): Ditto.
3720         (elmo-folder-flag-as-answered-dop): Ditto.
3721         (elmo-folder-unflag-answered-dop): Ditto.
3722
3723         * elmo-cache.el (elmo-folder-msgdb-create): Call
3724         `elmo-global-flags-set'.
3725
3726         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3727         Call `elmo-global-flags-set'.
3728         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3729         elmo-archive-parse-mmdf with argument `folder'.
3730         (elmo-archive-parse-mmdf): Added argument `folder';
3731         Call `elmo-global-flags-set'.
3732
3733         * elmo-version.el (elmo-version): Up to 2.11.14.
3734
3735 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3736
3737         * modb.el (elmo-msgdb-length): Define.
3738
3739         * elmo.el (elmo-make-folder): Fixed.
3740         (elmo-generic-folder-append-messages): Follow the API change.
3741
3742         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3743         API change.
3744
3745 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3746
3747         * modb.el: New file.
3748
3749         * modb-entity.el: Ditto.
3750
3751         * modb-legacy.el: Ditto.
3752
3753         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3754         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3755         of `elmo-msgdb-overview-get-entity'.
3756         (elmo-msgdb-get-field): Ditto.
3757         (elmo-msgdb-merge): Moved to `elmo.el'.
3758         (elmo-msgdb-length): Removed; redefine as modb method.
3759         (elmo-msgdb-change-mark): Abolish.
3760         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3761         (elmo-msgdb-match-condition): Don't use mark.
3762         (elmo-msgdb-overview-get-entity): Abolish.
3763         Split modb part into `modb*.el'.
3764
3765         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3766
3767         * elmo-shimbun.el (shimbun-mua-search-id): Use
3768         `elmo-msgdb-message-entity' instead of
3769         `elmo-msgdb-overview-get-entity'.
3770         (elmo-shimbun-folder-shimbun-header): Ditto.
3771         (elmo-shimbun-get-headers): Ditto.
3772         (elmo-shimbun-update-overview): Ditto.
3773
3774         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3775
3776         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3777
3778         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3779         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3780
3781         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3782         `elmo-msgdb-mark-to-flags'.
3783
3784         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3785         `elmo-msgdb-set-path'.
3786
3787         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3788  
3789         * elmo-version.el (elmo-version): Up to 2.11.13.
3790
3791         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3792
3793         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3794         of mark.
3795
3796 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3797
3798         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3799         mismatch.
3800
3801 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3802
3803         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3804         instead of `elmo-msgdb-get-cached'.
3805         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3806
3807         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3808         (elmo-msgdb-set-cached): Ditto.
3809         (elmo-msgdb-set-flag): Rewrite.
3810         (elmo-msgdb-unset-flag): Ditto.
3811
3812         * elmo-msgdb.el: Rewrite with luna.
3813
3814         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3815         (elmo-folder-msgdb): Follow the change above.
3816         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3817         (elmo-folder-unmark-important): Follow the API change.
3818         (elmo-folder-mark-as-important): Ditto.
3819         (elmo-folder-unmark-read): Ditto.
3820         (elmo-folder-mark-as-read): Ditto.
3821         (elmo-folder-unmark-answered): Ditto.
3822         (elmo-folder-mark-as-answered): Ditto.
3823         (elmo-folder-clear): Likewise.
3824
3825         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3826         instead of `elmo-msgdb-load' (renamed).
3827
3828         * elmo-version.el (elmo-version): Up to 2.11.12.
3829
3830 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3831
3832         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3833         change.
3834         (elmo-message-mark): Abolish.
3835         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3836         instead of `elmo-msgdb-change-mark'.
3837
3838         * elmo-pipe.el (elmo-message-mark): Abolish.
3839
3840         * elmo-multi.el (elmo-message-mark): Ditto.
3841
3842         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3843         (elmo-msgdb-unread-uncached-mark): Ditto.
3844         (elmo-msgdb-unread-cached-mark): Ditto.
3845         (elmo-msgdb-read-uncached-mark): Ditto.
3846         (elmo-msgdb-answered-cached-mark): Ditto.
3847         (elmo-msgdb-answered-uncached-mark): Ditto.
3848         (elmo-msgdb-important-mark): Ditto.
3849         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3850         `use-cache'.
3851         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3852         `flags'.
3853         (elmo-flag-table-load): Changed flag to list of flag.
3854         (elmo-flag-table-set): If flags is nil, set read flag.
3855         (elmo-flag-table-get): Return derived flags from global mark,
3856         cache status and saved flags.
3857         (elmo-msgdb-flag-table): Follow the change above.
3858         (elmo-msgdb-out-of-date-messages): New function.
3859
3860         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3861
3862         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3863
3864         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3865
3866         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3867         (elmo-nntp-msgdb-create-message): Ditto.
3868
3869         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3870
3871         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3872         independent.
3873         (elmo-folder-msgdb-create): Follow the API change.
3874
3875         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3876         (elmo-folder-append-messages): Ditto.
3877
3878         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3879         (elmo-folder-append-buffer): Ditto.
3880
3881         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3882
3883         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3884
3885         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3886         (elmo-archive-parse-mmdf): Ditto.
3887
3888         * elmo-version.el (elmo-version): Up to 2.11.11.
3889
3890 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3891
3892         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3893         `elmo-msgdb-mark'.
3894
3895         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3896
3897         * elmo-pipe.el (elmo-message-flags): Defined.
3898
3899         * elmo-multi.el (elmo-message-flags): Ditto.
3900
3901 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3902
3903         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3904         `elmo-msgdb-delete-msgs'.
3905
3906         * elmo.el (elmo-folder-count-flags): Don't use
3907         `elmo-msgdb-get-mark-alist'.
3908         (elmo-folder-detach-messages): Follow the API change.
3909
3910         * elmo.el (elmo-folder-list-messages): Append killed messages into
3911         result if `visible-only' is nil.
3912
3913         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3914         canceled messages.
3915         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3916         (elmo-folder-update-number): Likewise.
3917
3918         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3919         (elmo-pop3-sort-msgdb-by-original-number): Use
3920         `elmo-msgdb-sort-entities'.
3921
3922         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3923         (elmo-msgdb-sort-by-date): Use it.
3924         (elmo-msgdb-overview-sort-by-date): Abolish.
3925
3926         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3927
3928         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3929         (elmo-msgdb-flags): New function.
3930         (elmo-msgdb-merge): Use elmo-msgdb-append.
3931
3932         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3933         change.
3934
3935         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3936
3937         * elmo-dop.el (elmo-folder-status-dop): Use
3938         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3939
3940 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3941
3942         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3943
3944         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3945
3946         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3947
3948         * elmo-util.el (elmo-with-progress-display): New macro.
3949
3950         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3951
3952 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3953
3954         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3955         `elmo-folder-list-message-entities' instead of
3956         `elmo-msgdb-get-overview'.
3957         (elmo-map-folder-list-message-locations): Ditto.
3958
3959         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3960         methods instead of treat directly).
3961         (elmo-msgdb-clear): Ditto.
3962         (elmo-msgdb-delete-msgs): Ditto.
3963         (elmo-msgdb-sort-by-date): Ditto.
3964
3965         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3966         local variables.
3967         (elmo-nntp-folder-msgdb-create): Follow the API change.
3968
3969         * elmo-version.el (elmo-version): Up to 2.11.10.
3970
3971 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3972
3973         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3974         (elmo-msgdb-flags-to-mark): Ditto.
3975         (elmo-msgdb-append-entity): Ditto.
3976
3977         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3978         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3979         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3980         (elmo-archive-parse-mmdf): Ditto.
3981
3982         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3983
3984         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3985
3986         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3987
3988         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3989
3990         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3991
3992         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3993
3994         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3995
3996         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3997
3998         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3999         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
4000         to empty msgdb.
4001
4002         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
4003         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
4004         instead of directly construction.
4005         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
4006         instead of construct msgdb.
4007
4008         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
4009         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
4010         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
4011         instead of construct msgdb.
4012
4013 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4014
4015         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
4016         when field is from or subject.
4017
4018 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
4019
4020         * elmo-multi.el (elmo-message-entity-parent): Define.
4021         (elmo-folder-search): Rewrite.
4022
4023 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4024
4025         * elmo-multi.el (elmo-message-cached-p): Define.
4026
4027         * elmo.el (elmo-message-cached-p): New method.
4028         (elmo-message-accessible-p): Use it instead of msgdb API directly.
4029         (elmo-message-flags): New method.
4030         (elmo-message-flagged-p): New function.
4031
4032         * elmo-version.el (elmo-version): Up to 2.11.9.
4033
4034 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4035
4036         * elmo-version.el (elmo-version): Up to 2.11.8.
4037
4038         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
4039
4040         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
4041
4042 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
4043
4044         * elmo.el (elmo-folder-detach-messages): Undo last change.
4045
4046 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
4047
4048         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
4049
4050         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
4051         only when src folder type is pop3.
4052
4053 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
4054
4055         * elmo-msgdb.el (elmo-msgdb-make-index): Use
4056         elmo-msgdb-overview-entity-get-number instead of
4057         elmo-message-entity-number.
4058
4059 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4060
4061         * elmo-version.el (elmo-version): Up to 2.11.7.
4062
4063 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
4064
4065         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
4066         function.
4067
4068         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
4069         (elmo-msgdb-merge): New function.
4070         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
4071         (elmo-msgdb-make-index): Rewrite.
4072
4073         * elmo-version.el (elmo-version): Up to 2.11.6.
4074
4075         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
4076         use it as a the path for loading message entities.
4077
4078         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
4079
4080 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
4081
4082         * elmo-filter.el (elmo-folder-set-message-modified): Set 
4083         message-modified slot of itself if it does not require target msgdb.
4084
4085         * elmo-mime.el (elmo-mime-message-display): Display message entirely
4086         if folder length is zero.
4087         (elmo-mime-display-as-is): Ditto.
4088
4089         * elmo-filter.el (elmo-folder-set-message-modified): Define.
4090
4091         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
4092
4093 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4094
4095         * elmo.el (elmo-folder-set-message-modified): New method.
4096         (elmo-generic-folder-commit): Use it.
4097         (elmo-folder-synchronize): Ditto.
4098
4099         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
4100         (elmo-folder-commit): Remove duplicate definition.
4101
4102 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4103
4104         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
4105
4106 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4107
4108         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
4109         (elmo-strict-folder-diff): Ditto.
4110         (elmo-folder-set-info-max-by-numdb): Simplify.
4111
4112         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
4113         elmo-msgdb-list-messages.
4114
4115         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
4116         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
4117
4118 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4119
4120         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
4121         visible-only is non-nil.
4122         (elmo-folder-confirm-appends): Changed message.
4123         (elmo-folder-synchronize): Added argument disable-killed.
4124
4125         * elmo-multi.el (elmo-folder-synchronize): Added argument
4126         disable-killed.
4127
4128         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
4129
4130         * elmo-version.el (elmo-version): Up to 2.11.5.
4131
4132         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
4133         elmo-list-filter.
4134
4135         * elmo-util.el (elmo-list-filter): Simplify.
4136
4137         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
4138         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
4139         (elmo-generic-folder-diff): Abolish argument.
4140         (elmo-msgdb-load): Don't use number-alist.
4141
4142         * elmo-filter.el (elmo-folder-diff): Abolish argument.
4143
4144         * elmo-pipe.el (elmo-folder-diff): Ditto.
4145
4146         * elmo-nmz.el (elmo-folder-diff): Ditto.
4147
4148         * elmo-net.el (elmo-folder-diff): Ditto.
4149
4150         * elmo-maildir.el (elmo-folder-diff): Ditto.
4151
4152         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
4153
4154         * elmo-multi.el (elmo-folder-diff): Ditto
4155         (elmo-multi-folder-diff): Rewrite.
4156
4157 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4158
4159         * elmo-pipe.el (elmo-folder-msgdb): Define.
4160
4161 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
4162
4163         * elmo.el (elmo-message-set-cached): Define as a method.
4164
4165         * elmo-pipe.el (elmo-message-set-cached): Define.
4166         (elmo-find-fetch-strategy): Ditto.
4167
4168         * elmo-multi.el (elmo-message-set-cached): Define.
4169         (elmo-find-fetch-strategy): Rewrite.
4170
4171         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
4172
4173         * elmo-pipe.el (elmo-message-folder): Fixed definition.
4174
4175 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4176
4177         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
4178         instead of number-alist.
4179
4180         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
4181         mark nor message-id when msgdb of source folder is not loaded.
4182
4183         * elmo.el (elmo-generic-folder-append-messages): Ditto.
4184
4185         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4186
4187 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
4188
4189         * elmo.el (elmo-folder-length): Don't require msgdb.
4190
4191 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
4192
4193         * elmo.el (elmo-message-mark): Cause an error when empty folder.
4194         (elmo-message-field): Ditto.
4195
4196         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
4197         (elmo-map-folder-list-message-locations): Setup `answered-locations'
4198         slot.
4199         (elmo-map-folder-list-answereds): Define.
4200         (elmo-maildir-list-location): Treat 'R' info.
4201         (elmo-folder-msgdb-create): Treat flag-table.
4202         (elmo-folder-append-messages): Save flag-table.
4203
4204 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
4205
4206         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
4207         Use SELECT when elmo-imap4-use-select-to-update-status is t.
4208
4209 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4210
4211         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
4212
4213         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
4214         'read when mark is null.
4215
4216 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
4217
4218         * elmo-version.el (elmo-version): Up to 2.11.4.
4219
4220 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4221
4222         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
4223         (elmo-folder-mark-as-answered): Ditto.
4224
4225 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
4226
4227         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
4228         (elmo-pop3-get-session): Make msgdb directory after session.
4229         (elmo-folder-exists-p): Check exactly at the first time even when the
4230         elmo-pop3-exists-exactly is nil.
4231
4232         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
4233         (elmo-folder-list-messages): Define instead of
4234         elmo-folder-list-messages-internal.
4235         (elmo-folder-check): Check destination folder.
4236         (elmo-folder-synchronize): Drain the pipe.
4237
4238         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
4239         when msgdb is not loaded.
4240
4241         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
4242
4243         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
4244         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
4245         messages.
4246
4247         * elmo.el (elmo-folder-kill-messages-before): New function.
4248         (elmo-folder-kill-messages): Ditto.
4249         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
4250
4251         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
4252         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
4253         killed not by synchronize (e.g. scoring).
4254
4255 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4256
4257         * elmo.el (elmo-folder-search-fast): Return t if condition is not
4258         treated.
4259         (elmo-folder-search): Follow the change above.
4260
4261         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
4262         into the candidates of search field.
4263
4264 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
4265
4266         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
4267         (elmo-msgdb-unset-flag): Ditto.
4268
4269         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
4270
4271 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
4272
4273         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
4274         (elmo-folder-commit): Define.
4275         (elmo-folder-synchronize): Ditto.
4276         (elmo-folder-list-flagged): Ditto.
4277         (elmo-folder-commit): Ditto.
4278         (elmo-folder-length): Ditto.
4279         (elmo-folder-count-flags): Ditto.
4280         (elmo-message-mark): Ditto.
4281         (elmo-message-field): Ditto.
4282         (elmo-message-entity): Ditto.
4283         (elmo-message-folder): Ditto.
4284
4285 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
4286
4287         * elmo.el (elmo-message-field): Define as a method.
4288
4289         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
4290         (elmo-message-field): Define.
4291
4292         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
4293         (elmo-folder-list-importants): Ditto.
4294         (elmo-folder-list-answereds): Ditto.
4295
4296         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
4297         qualifier.
4298         (elmo-folder-mark-as-read): Ditto.
4299         (elmo-folder-unmark-read): Ditto.
4300         (elmo-folder-mark-as-answered): Ditto.
4301         (elmo-folder-unmark-answered): Ditto.
4302         (elmo-folder-list-flagged): Define.
4303         (elmo-folder-commit): Ditto.
4304         (elmo-folder-length): Ditto.
4305         (elmo-folder-count-flags): Ditto.
4306
4307 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4308
4309         * elmo.el (elmo-folder-detach-messages): New method.
4310         (elmo-folder-move-messages): Use it.
4311         (elmo-folder-synchronize): Ditto.
4312
4313         * elmo-multi.el (elmo-folder-detach-messages): Define.
4314
4315         * elmo.el (elmo-message-copy-entity): New function.
4316         (elmo-message-entity-set-number): Ditto.
4317         (elmo-message-mark): Define as method.
4318
4319         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4320         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4321         (elmo-message-entity): Fixed last change.
4322         (elmo-message-mark): Define.
4323         (elmo-folder-msgdb-create): Abolish.
4324         (elmo-multi-folder-append-msgdb): Ditto.
4325         (elmo-multi-folder-diff): Fixed.
4326         (elmo-multi-split-number-alist): Removed.
4327         (elmo-multi-split-mark-alist): Removed.
4328         (elmo-folder-list-messages): Define.
4329         (elmo-folder-list-messages-internal): Removed.
4330
4331         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4332         local file messages.
4333         (elmo-folder-msgdb-create): Fixed read mark.
4334
4335 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4336
4337         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4338         if mark is nil.
4339
4340 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4341
4342         * elmo.el (elmo-folder-list-message-entities): Define as inline
4343         function.
4344         (elmo-folder-messages): Abolish.
4345
4346         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4347         folder.
4348         (elmo-folder-synchronize): Define.
4349         (elmo-message-entity): Define.
4350
4351 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4352
4353         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4354         elmo-imap4-session-select-mailbox.
4355
4356         * elmo.el (elmo-folder-move-messages): Don't display any message.
4357
4358         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4359         parsing.
4360         (elmo-imap4-session-check): Don't wait CHECK response.
4361         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4362
4363 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4364
4365         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4366
4367 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4368
4369         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4370         API.
4371         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4372
4373
4374         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4375         (elmo-folder-list-message-entities): Added argument in-msgdb and
4376         numbers.
4377         (elmo-folder-synchronize): Define as a method.
4378
4379         * elmo-nntp.el (elmo-folder-initialize): Don't use
4380         elmo-nntp-default-user if zero-length username is specified
4381         explicitly.
4382
4383 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4384
4385         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4386         server name in case with username.
4387         (XXX: this is ad-hoc fix against username includes "@", it
4388         should be solved fundamentally)
4389
4390 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4391
4392         * elmo-nntp.el (elmo-nntp-debug): New function.
4393         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4394         (elmo-network-authenticate-session): Hide auth-info from the log.
4395
4396         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4397         user name if it is equal to elmo-nntp-default-user.
4398
4399 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4400
4401         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4402         instead of shimbun-server-internal;
4403         Use shimbun-current-group instead of shimbun-current-group-internal.
4404         (elmo-folder-plugged-p): Use shimbun-server instead of
4405         shimbun-server-internal.
4406         (elmo-folder-set-plugged): Ditto.
4407         (elmo-net-port-info): Ditto.
4408         (elmo-folder-check): Ditto.
4409         (elmo-folder-expand-msgdb-path): Ditto.
4410         (elmo-folder-list-subfolders): Ditto.
4411
4412 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4413
4414         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4415         Convert field-name to lower case.
4416         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4417
4418 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4419
4420         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4421         `message' and `error' take format string.
4422
4423 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4424
4425         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4426
4427 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4428
4429         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4430         recursive call (can't byte compile on emacs 20.7).
4431
4432 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4433
4434         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4435         (elmo-folder-list-message-entities): New API.
4436         (elmo-message-entity): Ditto.
4437         (elmo-message-entity-parent): Ditto.
4438         (elmo-folder-do-each-message-entity): Ditto.
4439         (elmo-message-entity-number): Ditto.
4440         (elmo-message-entity-field): Ditto.
4441         (elmo-message-entity-set-field): Ditto.
4442         (elmo-folder-count-flags): Ditto.
4443         (elmo-folder-length): Ditto.
4444
4445         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4446         not.
4447
4448         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4449         (elmo-msgdb-count-marks): Abolish.
4450         (elmo-msgdb-make-entity): Ditto.
4451         (elmo-msgdb-do-each-entity): Ditto.
4452         (elmo-msgdb-message-entity): New inline function.
4453         (elmo-msgdb-message-entity-field): Ditto.
4454         (elmo-msgdb-message-entity-set-field): Ditto.
4455         (elmo-msgdb-make-message-entity): New function.
4456
4457 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4458
4459         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4460         to flag. (All other related portions are changed.)
4461         (elmo-folder-msgdb-create): Likewise.
4462         (elmo-generic-folder-append-messages): Use flag-table instead of
4463         seen-list.
4464         (elmo-folder-move-messages): Removed redundant process.
4465         (elmo-folder-synchronize): Likewise.
4466
4467         * elmo-msgdb.el (elmo-flag-table-get): New function.
4468         (elmo-flag-table-save): Fixed.
4469         (elmo-msgdb-length): New inline function.
4470         (elmo-msgdb-flag-table): New function.
4471         (elmo-msgdb-mark): Add optional argument new.
4472         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4473         (elmo-msgdb-seen-list): Ditto.
4474         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4475
4476
4477 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4478
4479         * elmo.el (elmo-message-set-mark): Abolish.
4480         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4481         (All related portions are changed.)
4482
4483         * elmo-msgdb.el (toplevel): Added comment.
4484         (elmo-load-msgdb): Added 4th element `path'.
4485         (elmo-msgdb-append): Follow the change above.
4486         (elmo-msgdb-clear): Ditto.
4487         (elmo-msgdb-delete-msgs): Ditto.
4488         (elmo-msgdb-get-path): New inline function.
4489         (elmo-msgdb-set-path): Ditto.
4490         (elmo-flag-table-filename): New variable.
4491         (elmo-flag-table-load): New function.
4492         (elmo-flag-table-set): Ditto.
4493         (elmo-flag-table-save): Ditto.
4494         (elmo-msgdb-get-field-value): Abolish.
4495         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4496
4497 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4498
4499         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4500         the folder has been deleted successfully.
4501         * elmo-imap4.el (elmo-folder-delete): Ditto.
4502         * elmo-archive.el (elmo-folder-delete): Ditto.
4503         * elmo-localdir.el (elmo-folder-delete): Ditto.
4504         * elmo-maildir.el (elmo-folder-delete): Ditto.
4505
4506 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4507
4508         * elmo-util.el (elmo-string-member-ignore-case): New function.
4509         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4510         (elmo-imap4-fetch-callback-1-subr): Likewise.
4511
4512 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4513
4514         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4515         the case of the name attribute "\Noselect".
4516
4517 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4518
4519         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4520
4521         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4522         flist, is not always a member of onum-alist.
4523
4524 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4525
4526         * elmo-version.el (elmo-version): Up to 2.11.3.
4527
4528 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4529
4530         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4531         copied from localdir's one.
4532
4533         * elmo-pipe.el (elmo-folder-rename): New method, rename
4534         destination folder with leaving source folder as it is.
4535
4536 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4537
4538         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4539         replace-regexp.
4540
4541 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4542
4543         * elmo-version.el (elmo-version): Up to 2.11.2.
4544
4545 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4546
4547         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4548         shimbun-open in case of "@".
4549         (elmo-folder-open-internal): Cope with shimbun = nil case.
4550         (elmo-folder-plugged-p): Ditto.
4551         (elmo-folder-list-subfolders): Make list for "@/" group.
4552
4553 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4554
4555         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4556         mailbox (e.g. for %~/something).
4557
4558 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4559
4560         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4561         Replace nested conditional with guard clauses.
4562
4563 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4564
4565         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4566         error [wl:11327].
4567
4568         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4569         print-depth.
4570
4571 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4572
4573         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4574         Replace nested conditional with guard clauses.
4575
4576 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4577
4578         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4579         (elmo-passwd-alist-save): Ditto.
4580         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4581
4582 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4583
4584         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4585         dir-name only if it is absolute path.
4586         (TODO: distinguish +/something and +something)
4587
4588 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4589
4590         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4591         path for "+~/something".
4592
4593 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4594
4595         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4596         as non-directory, cause error before rename-file.
4597         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4598         apropriately, mimic localdir's one.
4599         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4600
4601 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4602
4603         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4604
4605 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4606
4607         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4608
4609         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4610         
4611         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4612         is included in the global-mark or not.
4613
4614 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4615
4616         * utf7.el (toplevel): Avoid error when the function
4617         find-coding-system does not exist.
4618
4619 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4620
4621         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4622         cache even if the folder is plugged.
4623         (elmo-nntp-search-primitive): Do nothing when body search is
4624         invoked (although it is not used by the change above).
4625         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4626
4627 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4628
4629         * elmo-version.el (elmo-version): Up to 2.11.1.
4630
4631 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4632
4633         * elmo-archive.el: Specify charset.
4634
4635 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4636
4637         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4638         process buffer lives or not.
4639
4640         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4641         while flushing queues (It causes infinite loop).
4642
4643 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4644
4645         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4646
4647 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4648
4649         * utf7.el (toplevel): Check the ucs features dynamically.
4650         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4651
4652         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4653         folder is creatabe or not if it already exists.
4654
4655 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4656
4657         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4658
4659         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4660
4661         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4662         (elmo-imap4-read-response): Take care of garbage response.
4663
4664 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4665
4666         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4667         just return nil instead of error.
4668
4669 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4670
4671         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4672         search-key is "body".
4673
4674 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4675
4676         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4677         of elmo-string-matched-assoc to use match-data.
4678         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4679
4680 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4681
4682         * elmo-split.el (elmo-split->): New function.
4683         (elmo-split-<): Ditto.
4684
4685 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4686
4687         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4688         workaround for invalid message-id.
4689
4690 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4691
4692         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4693         return normal pop3 session or pop3 biff session.
4694
4695 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4696
4697         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4698         info part to the cur files when the new files already have it.
4699         (Adviced by Jared Rhine <jared@wordzoo.com>)
4700
4701 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4702
4703         * elmo-split.el (elmo-split-default-action): New variable.
4704         (elmo-split-subr): Use it if all other conditions are passed.
4705         Extend `fname' and rename it as `action'. (implemented
4706         Teranishi-san's idea in [wl:10800])
4707
4708 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4709
4710         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4711         * elmo-util.el: Ditto.
4712
4713 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4714
4715         * elmo.el (elmo-message-accessible-p): Renamed from
4716         elmo-message-cached-p and rewritten.
4717
4718 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4719
4720         * elmo.el (elmo-folder-list-flagged): New generic function.
4721         (elmo-folder-list-importants): New implementation.
4722         (elmo-folder-list-answereds): Ditto.
4723         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4724         Added 'digest'.
4725         (elmo-message-cached-p): New function.
4726         (elmo-message-set-flag): Ditto (no content).
4727         (elmo-message-unset-flag): Ditto.
4728         (elmo-folder-list-messages-mark-match): Abolish.
4729
4730         * elmo-util.el (elmo-regexp-opt): New function.
4731
4732         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4733         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4734         Added 'digest'.
4735         (elmo-msgdb-list-flagged): New function.
4736
4737         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4738         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4739         Added 'digest'.
4740
4741         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4742
4743 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4744
4745         * elmo-version.el (elmo-version): Up to 2.11.0.
4746
4747 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4748
4749         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4750         `elmo-file-cache-exists-p'; use proper mark that depends on
4751         `use-cache'.
4752         (elmo-msgdb-unset-flag): Ditto.
4753         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4754
4755         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4756         with 4th argument `use-cache'.
4757
4758 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4759
4760         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4761         (elmo-folder-mark-as-important): Ditto.
4762         (elmo-folder-unmark-read): Ditto.
4763         (elmo-folder-mark-as-read): Ditto.
4764         (elmo-folder-unmark-answered): Ditto.
4765         (elmo-folder-mark-as-answered): Ditto.
4766
4767         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4768         message status.
4769         (elmo-msgdb-mark): Likewise.
4770         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4771         (elmo-msgdb-unset-flag): Likewise.
4772
4773         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4774
4775 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4776
4777         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4778         `last:' filter.
4779
4780 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4781
4782         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4783         set spool-length to 0.
4784
4785 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4786
4787         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4788         (elmo-dop-queue-flush): Fixed last change.
4789
4790 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4791
4792         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4793         if require-msgdb slot is nil.
4794         (elmo-folder-list-importants): Likewise.
4795
4796 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4797
4798         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4799         mark is changed.
4800
4801         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4802         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4803         is changed.
4804
4805 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4806
4807         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4808
4809 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4810
4811         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4812
4813         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4814
4815 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4816
4817         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4818         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4819
4820 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4821
4822         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4823         the problem reported by Sean Rima [wl-en:180].
4824
4825 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4826
4827         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4828
4829         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4830
4831         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4832
4833         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4834
4835         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4836
4837         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4838
4839         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4840
4841 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4842
4843         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4844         status number.
4845
4846 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4847
4848         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4849         (elmo-folder-mark-as-read): Follow the API change.
4850         (elmo-message-set-cached): New function.
4851
4852         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4853
4854         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4855
4856         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4857         (elmo-folder-mark-as-important): Ditto.
4858         (elmo-folder-unmark-read): Ditto.
4859         (elmo-folder-mark-as-read): Ditto.
4860         (elmo-folder-unmark-answered): Ditto.
4861         (elmo-folder-mark-as-answered): Ditto.
4862
4863         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4864         (elmo-folder-unmark-important): Ditto.
4865         (elmo-folder-mark-as-read): Ditto.
4866         (elmo-folder-unmark-read): Ditto.
4867         (elmo-folder-mark-as-answered): Ditto.
4868         (elmo-folder-unmark-answered): Ditto.
4869
4870         * elmo-mark.el (toplevel): Removed some mark method definitions.
4871
4872         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4873         (elmo-map-folder-mark-as-answered): Ditto.
4874         (elmo-folder-unmark-important): Add :before qualifier.
4875         (elmo-folder-mark-as-important): Ditto.
4876         (elmo-folder-unmark-read): Ditto.
4877         (elmo-folder-mark-as-read): Ditto.
4878         (elmo-folder-unmark-answered): Define.
4879         (elmo-folder-mark-as-answered): Ditto.
4880
4881         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4882         (elmo-map-folder-unmark-answered): Ditto.
4883
4884         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4885
4886         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4887         (elmo-folder-mark-as-important): Ditto.
4888         (elmo-folder-unmark-read): Ditto.
4889         (elmo-folder-mark-as-read): Ditto.
4890         (elmo-folder-unmark-answered): Ditto.
4891         (elmo-folder-mark-as-answered): Ditto.
4892
4893         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4894         `mark'; evaluate mark condition.
4895         (elmo-msgdb-match-condition-internal): New function.
4896         (elmo-msgdb-match-condition): Call it; changed argument.
4897
4898         * elmo.el (elmo-folder-search): Follow the API change on
4899         `elmo-msgdb-match-condition'.
4900
4901 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4902
4903         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4904         original mark is non-nil.
4905
4906 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4907
4908         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4909         (elmo-map-folder-list-answereds): New method.
4910         (elmo-folder-list-unreads): Add :around qualifier.
4911         (elmo-folder-list-importants): Ditto.
4912         (elmo-folder-list-answereds): Ditto.
4913
4914 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4915
4916         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4917
4918         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4919         method if msgdb is not required.
4920         (elmo-filter-folder-list-importants): Don't treat global-mark.
4921
4922         * elmo.el (elmo-folder-list-importants): Ditto.
4923
4924         * elmo-net.el (elmo-folder-list-importants): Ditto.
4925
4926         * elmo-map.el (elmo-folder-list-importants): Ditto.
4927
4928         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4929
4930         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4931         (elmo-imap4-folder-list-any-plugged): New function.
4932         (elmo-imap4-search-internal-primitive): Use it.
4933
4934         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4935         only when require-msgdb slot is non-nil.
4936         (elmo-folder-close): Clear target folder's msgdb.
4937
4938 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4939
4940         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4941         (elmo-pop3-msgdb-create-by-header): Ditto.
4942         (elmo-pop3-msgdb-create-message): Ditto.
4943
4944         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4945
4946         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4947
4948         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4949
4950         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4951         (elmo-folder-msgdb-create): Ditto.
4952         (elmo-nntp-folder-msgdb-create): Ditto.
4953         (elmo-nntp-msgdb-create-by-header): Ditto.
4954         (elmo-nntp-msgdb-create-message): Ditto.
4955         (elmo-folder-list-unreads): Define.
4956
4957         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4958         (elmo-folder-append-messages): Ditto.
4959         (elmo-folder-list-unreads): Define.
4960         (elmo-folder-list-importants): Ditto.
4961         (elmo-folder-list-answereds): Ditto.
4962
4963         * elmo-net.el (elmo-folder-list-unreads): Define.
4964         (elmo-folder-list-importants): Ditto.
4965         (elmo-folder-list-answereds): Ditto.
4966         (elmo-folder-list-answereds-plugged): Ditto.
4967         (elmo-folder-msgdb-create): Follow the API change.
4968         (elmo-folder-msgdb-create-unplugged): Ditto.
4969         (elmo-folder-unmark-answered): Define.
4970         (elmo-folder-mark-as-answered-unplugged): Ditto.
4971         (elmo-folder-unmark-answered-unplugged): Ditto.
4972
4973         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4974         (elmo-msgdb-unread-uncached-mark): Ditto.
4975         (elmo-msgdb-unread-cached-mark): Ditto.
4976         (elmo-msgdb-read-uncached-mark): Ditto.
4977         (elmo-msgdb-answered-cached-mark): Ditto.
4978         (elmo-msgdb-answered-uncached-mark): Ditto.
4979         (elmo-msgdb-important-mark): Ditto.
4980         (elmo-msgdb-set-mark): Rewrite.
4981         (elmo-msgdb-count-marks): Rewrite.
4982         (elmo-msgdb-mark-alist-set): Abolish.
4983         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4984         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4985
4986         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4987         (elmo-folder-close): Define.
4988         (elmo-folder-msgdb-create): Follow the API change.
4989         (elmo-folder-list-unreads): Rewrite.
4990         (elmo-folder-mark-as-important): Ditto.
4991         (elmo-folder-unmark-important): Ditto.
4992         (elmo-folder-mark-as-read): Ditto.
4993         (elmo-folder-unmark-read): Ditto.
4994         (elmo-folder-mark-as-answered): Define.
4995         (elmo-folder-unmark-answered): Ditto.
4996
4997         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4998         (elmo-folder-append-messages): Ditto.
4999
5000         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
5001
5002         * elmo-map.el (elmo-folder-list-unreads): Ditto.
5003         (elmo-folder-list-importants): Ditto.
5004
5005         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
5006         (elmo-folder-append-messages): Ditto.
5007
5008         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
5009         change.
5010         (elmo-folder-msgdb-create-plugged): Ditto.
5011         (elmo-folder-append-messages): Ditto.
5012         (elmo-folder-list-answereds-plugged): Define.
5013         (elmo-imap4-search-internal-primitive): Add `mark' processing.
5014         (elmo-folder-unmark-answered-plugged): Define.
5015         (elmo-folder-mark-as-answered-plugged): Ditto.
5016         (elmo-folder-search-requires-msgdb-p): Ditto.
5017
5018         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
5019         (elmo-folder-initialize): Set it.
5020         (elmo-folder-msgdb): Define.
5021         (elmo-folder-check): Call elmo-folder-synchronize.
5022         (elmo-folder-close): Define.
5023         (elmo-folder-commit): Ditto.
5024         (elmo-folder-msgdb-create): Rewrite.
5025         (elmo-folder-list-unreads): Ditto.
5026         (elmo-folder-list-importants): Ditto.
5027         (elmo-folder-mark-as-read): Ditto.
5028         (elmo-folder-unmark-read): Ditto.
5029         (elmo-folder-mark-as-important): Ditto.
5030         (elmo-folder-unmark-important): Ditto.
5031         (elmo-folder-mark-as-answered): Define.
5032         (elmo-folder-unmark-answered): Ditto.
5033
5034         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
5035         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
5036         (elmo-dop-queue-method-name-alist): Likewise.
5037         (elmo-folder-mark-as-answered-dop): New inline function.
5038         (elmo-folder-unmark-answered-dop): Ditto.
5039         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
5040
5041         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
5042         (elmo-folder-msgdb-create): Ditto.
5043         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
5044         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
5045         (elmo-archive-parse-mmdf): Ditto.
5046
5047         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
5048         (elmo-folder-list-unreads-internal): Ditto.
5049
5050         * elmo.el (elmo-folder-msgdb): Define as generic function.
5051         (elmo-folder-list-messages): Added argument `in-msgdb'.
5052         (elmo-folder-list-unreads): Define as generic function.
5053         (elmo-folder-list-importants): Ditto.
5054         (elmo-folder-list-answereds): Ditto.
5055         (elmo-folder-list-messages-with-global-mark): New function.
5056         (elmo-folder-msgdb-create): Removed mark arguments.
5057         (elmo-folder-unmark-answered): New generic function.
5058         (elmo-folder-mark-as-answered): Ditto.
5059         (elmo-folder-append-messages): Removed argunment `unread-marks'
5060         (elmo-folder-list-unreads-internal): Abolish.
5061         (elmo-folder-list-importants-internal): Ditto.
5062         (elmo-folder-search-requires-msgdb-p): New generic function.
5063         (elmo-folder-search-requires-msgdb-p-internal): New function.
5064         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
5065         elmo-msgdb-load.
5066         (elmo-folder-search-fast): Added key 'mark'.
5067         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
5068         instead of unread-marks argument.
5069         (elmo-folder-move-messages): Removed argunment `unread-marks'
5070         (elmo-folder-unmark-important): Define.
5071         (elmo-folder-mark-as-important): Ditto.
5072         (elmo-folder-unmark-read): Ditto.
5073         (elmo-folder-mark-as-read): Ditto.
5074         (elmo-folder-unmark-answered): Ditto.
5075         (elmo-folder-mark-as-answered): Ditto.
5076         (elmo-folder-replace-marks): Abolish.
5077         (elmo-generic-folder-append-msgdb): Append msgdb before checking
5078         duplicates.
5079         (elmo-folder-synchronize): Removed mark arguments;
5080         return crosspost only number.
5081
5082 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5083
5084         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
5085         Remove redundunt connectivity check.
5086
5087 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5088
5089         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
5090         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
5091
5092 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
5093
5094         * pldap.el (ldap-decode-string): Return string as-is if
5095         `ldap-coding-system' is nil.
5096         (ldap-encode-string): Ditto.
5097         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
5098         (ldap-default-host): Fixed docstring.
5099
5100 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
5101
5102         * elmo-util.el (elmo-warning): Define as a macro which uses
5103         `display-warning' if it is defined as a function.
5104
5105         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
5106         (elmo-split-equal): Use it.
5107         (elmo-split-match): Ditto.
5108         (elmo-split-message-entity): New buffer-local variable.
5109         (elmo-split-subr): Set it.
5110
5111         * elmo-version.el (elmo-version): Up to 2.9.15.
5112
5113 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
5114
5115         * elmo-imap4.el (elmo-network-initialize-session):
5116         Check capability after starttls.
5117
5118 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
5119
5120         * elmo-util.el (elmo-list-delete): Added optional argument
5121         DELETE-FUNCTION.
5122
5123         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
5124
5125         * elmo-util.el (elmo-warning): Ignore errors while recenter.
5126
5127         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
5128
5129         * elmo-imap4.el (elmo-folder-initialize): Don't use
5130         elmo-imap4-default-mailbox.
5131
5132 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5133
5134         * elmo-split.el (toplevel): Use `product-provide'.
5135         (elmo-split): Checkdoc.
5136
5137 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
5138
5139         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
5140         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
5141         the function `elmo-imap4-debug-1'.
5142
5143 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5144
5145         * elmo-split.el (elmo-split): Moved to run hooks and to show
5146         message from elmo-split-subr.
5147         (elmo-split-subr): Follow the change above.
5148
5149         * elmo-split.el (elmo-split-subr): New function (renamed from
5150         elmo-split-subr).
5151         (elmo-split): Changed to call elmo-split-subr by element of
5152         elmo-split-folder.
5153         (elmo-split-folder): Changed customization type to choice.
5154
5155 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5156
5157         * elmo-split.el (elmo-split-and): Fixed condition.
5158
5159 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5160
5161         * elmo-split.el: New file.
5162         (elmo-split): Fixed logic.
5163         Display "Test:" instead of "Folder:" when reharsal.
5164
5165         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
5166         explicitly.
5167
5168         * elmo-version.el (elmo-version): Up to 2.9.14.
5169
5170         * elmo-util.el (elmo-expand-newtext): New function (renamed from
5171         wl-expand-newtext).
5172
5173 2002-06-10  Kenichi Sato <ksato@sonycom.com>
5174
5175         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
5176         message with no message-id field.
5177
5178 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
5179
5180         * elmo-version.el (elmo-version): Up to 2.9.13.
5181
5182         * elmo-dop.el (elmo-folder-status-dop): Fix.
5183
5184 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
5185
5186         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
5187
5188         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
5189         changing default value of default-mime-charset.
5190         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
5191
5192         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
5193
5194         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
5195         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
5196         instead of elmo-dop-queue-method-name-alist to check merging queue.
5197         (elmo-folder-delete-messages-dop): Delete from queue if negative
5198         message number.
5199         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
5200         file is already removed.
5201
5202 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
5203
5204         * elmo-vars.el: Bind colon keywords for old Emacsen.
5205
5206 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5207
5208         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
5209         against non-exsisting charset.
5210
5211 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
5212
5213         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
5214         Use eword-decode-and-unfold-unstructured-field-body.
5215
5216         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
5217         (elmo-msgdb-create-overview-from-buffer): Use document charset if
5218         exists to decode raw subject string.
5219         (toplevel): Require 'mime.
5220
5221         * elmo-version.el (elmo-version): Up to 2.9.12.
5222
5223 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
5224
5225         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
5226         (elmo-msgdb-set-mark): Ditto.
5227
5228         * elmo-version.el (elmo-version): Up to 2.9.11.
5229
5230 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
5231
5232         * elmo-util.el (elmo-delete-match-files): New function.
5233
5234         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
5235         instead of elmo-delete-directory.
5236
5237         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
5238         elmo-hash-minimun-size as 63.
5239
5240         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
5241         elmo-diff-unread is nil.
5242
5243         * elmo-imap4.el (elmo-folder-open): Fix.
5244
5245         * elmo.el (elmo-message-mark): Rewrite.
5246         (elmo-message-field): Ditto.
5247         (elmo-message-set-mark): Ditto.
5248         (elmo-folder-replace-marks): New function.
5249         (elmo-generic-folder-append-msgdb): Removed third argument for
5250         elmo-msgdb-append.
5251         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
5252         (elmo-msgdb-load): New implementation.
5253
5254         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
5255
5256         * elmo-util.el (elmo-list-insert): New implementation.
5257
5258         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
5259         argument for elmo-msgdb-append.
5260         
5261
5262         * elmo-msgdb.el (elmo-load-msgdb): New function.
5263         (elmo-make-msgdb): Ditto.
5264         (elmo-msgdb-get-index): New inline function.
5265         (elmo-msgdb-set-index): Ditto.
5266         (elmo-msgdb-get-entity-hashtb): Ditto.
5267         (elmo-msgdb-get-mark-hashtb): Ditto.
5268         (elmo-msgdb-get-mark): Ditto.
5269         (elmo-msgdb-set-mark): Ditto.
5270         (elmo-msgdb-count-marks): Ditto.
5271         (elmo-msgdb-get-number): Ditto.
5272         (elmo-msgdb-get-field): Ditto.
5273         (elmo-msgdb-seen-list): Ditto.
5274         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
5275         (elmo-msgdb-delete-msgs): Follow the changes above.
5276         (elmo-msgdb-overview-get-entity): Ditto.
5277         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
5278         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
5279         and rewritten.
5280         (elmo-msgdb-make-index): Likewise.
5281         (elmo-msgdb-append): Removed third argument.
5282         (elmo-msgdb-clear): Clear index as nil.
5283         (elmo-folder-set-info-hashtb): Removed.
5284         (elmo-folder-set-info-max-by-numdb): Ditto.
5285         (elmo-folder-info-make-hashtb): Ditto.
5286
5287         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
5288
5289         * elmo-map.el (elmo-folder-pack-number): Ditto.
5290
5291 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
5292
5293         * elmo-version.el (elmo-version): Up to 2.9.10.
5294
5295         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
5296
5297         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
5298
5299 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
5300
5301         * elmo-utils.el (elmo-make-directory): Add option.
5302         Default file mode is 700.
5303
5304 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5305
5306         * elmo-shimbun.el (elmo-folder-local-p): Defined.
5307
5308 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
5309
5310         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
5311         mime-charset.
5312
5313         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
5314         and "smaller".
5315
5316 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5317
5318         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5319         (elmo-shimbun-folder-entity-hash): New function.
5320         (elmo-shimbun-folder-shimbun-header): Ditto.
5321         (elmo-shimbun-entity-to-header): Ditto.
5322         (elmo-shimbun-msgdb-to-headers): Removed.
5323         (elmo-shimbun-folder-setup): Ditto.
5324         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5325         for hash key.
5326         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5327         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5328         Removed useless local bind.
5329         (elmo-folder-open-internal): Don't call
5330         `elmo-shimbun-folder-setup'.
5331         (elmo-folder-close-internal): Clear entity-hash slot.
5332         (elmo-folder-clear): Ditto.
5333         (elmo-shimbun-msgdb-create-entity): Use
5334         `elmo-shimbun-folder-shimbun-header'.
5335         (elmo-map-message-fetch): Ditto.
5336         (elmo-shimbun-update-overview): Use overview entity instead of
5337         shimbun header to lookup id by references.
5338         (elmo-map-folder-list-message-locations): Use not only headers but
5339         also overviews to list locations.
5340
5341 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5342
5343         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5344         msgdb path.
5345
5346         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5347
5348 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5349
5350         * elmo-util.el (elmo-read-search-condition-internal): Give default
5351         value for date.
5352
5353 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5354
5355         * elmo-util.el (elmo-condition-parse-search-value): Accept
5356         YYYY-MM-DD format to search.
5357         * elmo-date.el (elmo-date-get-datevec): Likewise.
5358
5359 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5360
5361         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5362         debugging code.
5363
5364 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5365
5366         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5367         from t.
5368
5369         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5370
5371         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5372         case from `elmo-folder-exists-p'.
5373         (elmo-folder-exists-p): Removed.
5374         (elmo-folder-creatable-p) Ditto.
5375
5376         * elmo-net.el (elmo-folder-create): Defined.
5377         (elmo-folder-create-unplugged): New function.
5378         (elmo-folder-exists-p): Changed default value to nil from t.
5379
5380         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5381         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5382
5383         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5384         `elmo-create-folder-dop' and append queue
5385         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5386         (elmo-folder-create-dop-delayed): New function.
5387
5388         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5389
5390         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5391
5392         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5393         (elmo-folder-writable-p) : Ditto.
5394
5395         * elmo-version.el (elmo-version): Up to 2.9.9.
5396
5397 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5398
5399         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5400         `elmo-message-use-cache-p' returns nil.
5401         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5402         (ignore cache file and refer the substance in local folders)
5403
5404 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5405
5406         * elmo-version.el (elmo-version): Up to 2.9.8.
5407
5408 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5409
5410         * elmo-version.el (elmo-version): Up to 2.9.7.
5411
5412         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5413
5414 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5415
5416         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5417
5418 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5419
5420         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5421         from --early.
5422         (elmo-map-folder-list-message-locations): Reverse location list.
5423
5424 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5425
5426         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5427
5428 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5429
5430         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5431         as a key.
5432         (elmo-nntp-folder-list-subfolders): Follow the change above.
5433
5434 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5435
5436         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5437         name if authentication type is specified.
5438
5439 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5440
5441         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5442         variable.
5443         (elmo-default-nntp-stream-type): Ditto.
5444         (elmo-default-pop3-stream-type): Ditto.
5445
5446 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5447
5448         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5449
5450 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5451
5452         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5453         elmo-vars.el.
5454         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5455
5456         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5457         (elmo-maildir-folder-path): Ditto.
5458         (elmo-maildir-list): Ditto (abolished).
5459
5460 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5461
5462         * elmo-version.el (elmo-version): Up to 2.9.6.
5463
5464 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5465
5466         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5467         (elmo-maildir-folder-path): Ditto.
5468         (elmo-msgdb-directory): Ditto.
5469         (elmo-passwd-life-time): Ditto.
5470         (elmo-msgdb-extra-fields): Ditto.
5471         (elmo-enable-disconnected-operation): Ditto.
5472
5473 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5474
5475         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5476         other choices.
5477         (elmo-pop3-default-authenticate-type): Ditto.
5478
5479 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5480
5481         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5482         choices for custom.
5483         (elmo-pop3-default-authenticate-type): Ditto.
5484
5485 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5486
5487         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5488         mailbox to new-folder.
5489
5490 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5491
5492         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5493         less than new, set new as unread.
5494
5495         * elmo-util.el (elmo-string): Don't put text-property if nil.
5496
5497 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5498
5499         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5500         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5501
5502 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5503
5504         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5505         is nil on `completing-read'.
5506
5507 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5508
5509         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5510         for namespace part.
5511         (elmo-imap4-parse-namespace-subr): Ditto.
5512         (elmo-folder-list-subfolders): Append a delimiter when the specified
5513         folder path is a root with namespace and does not end with delimiter.
5514
5515 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5516
5517         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5518         was used.
5519
5520 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5521
5522         * elmo-util.el (elmo-save-buffer): The first argument of message
5523         is a format control string.
5524
5525 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5526
5527         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5528         `elmo-folder-diff').
5529         (elmo-diff-unread): Likewise.
5530
5531 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5532
5533         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5534         is t on `completing-read'.
5535
5536 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5537
5538         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5539         method of target folder with self mark-alist if MARK-ALIST is nil.
5540
5541 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5542
5543         * elmo-version.el (elmo-version): Up to 2.9.5.
5544
5545 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5546
5547         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5548         (elmo-dop-merge-funcs): Remove.
5549
5550 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5551
5552         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5553         Return t if PATH is directory, too.
5554         Use `dolist' instead of while loop.
5555
5556 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5557
5558         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5559         is deleted.
5560
5561 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5562
5563         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5564         return value to t.
5565         (elmo-folder-list-messages-unplugged): Return t if
5566         elmo-enable-disconnected-operation is nil.
5567
5568         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5569         `elmo-folder-list-messages-internal'.
5570
5571 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5572
5573         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5574         Change to looking-at `[23][0-9]+'.
5575         (elmo-network-initialize-session): Use 'error-msg'
5576         * elmo-net.el (elmo-network-open-session): Set unplugged
5577         if elmo-network-initialize-session returns 'elmo-open-err.
5578
5579 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5580
5581         * elmo-version.el (elmo-version): Up to 2.9.4.
5582
5583 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5584
5585         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5586         `elmo-folder-list-messages-internal'.
5587
5588 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5589
5590         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5591         (elmo-message-match-condition): New method.
5592         (elmo-folder-search-fast): New inline function.
5593         (elmo-msgdb-search): Removed.
5594
5595         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5596         target folder if it is unplugged.
5597         (elmo-folder-list-messages-internal): Return t if target folder is
5598         unplugged and itself is persistent; In this case, use list be
5599         searched already.
5600
5601         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5602         (elmo-msgdb-search-internal-primitive): Ditto.
5603         (elmo-msgdb-match-condition): New function.
5604         (elmo-msgdb-match-condition-primitive): Ditto.
5605
5606         * elmo-util.el (elmo-filter-condition-p): New macro.
5607
5608         * elmo-cache.el (elmo-folder-search): Removed.
5609
5610         * elmo-localdir.el (elmo-folder-search): Ditto.
5611
5612         * elmo-maildir.el (elmo-folder-search): Ditto.
5613
5614         * elmo-mark.el (elmo-folder-search): Ditto.
5615
5616         * elmo-nmz.el (elmo-folder-search): Ditto.
5617
5618         * elmo-sendlog.el (elmo-folder-search): Ditto.
5619
5620         * elmo-shimbun.el (elmo-folder-search): Ditto.
5621
5622         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5623         if folder is unplugged.
5624
5625         * elmo-nntp.el (elmo-folder-search): Likewise.
5626         (elmo-nntp-search-internal): New function.
5627
5628         * elmo-version.el (elmo-version): Up to 2.9.3.
5629
5630 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5631
5632         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5633
5634 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5635
5636         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5637
5638 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5639
5640         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5641
5642 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5643
5644         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5645         (elmo-map-folder-list-message-locations): Do drive letter conversion
5646         on Windows environment.
5647         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5648         (elmo-map-message-fetch): Ditto.
5649
5650 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5651
5652         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5653         (elmo-network-initialize-session): Ditto.
5654
5655 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5656
5657         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5658
5659         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5660
5661         * elmo-util.el (elmo-progress-clear): Ditto.
5662
5663         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5664         `DD-Mon-YYYY' type date.
5665
5666 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5667
5668         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5669         `elmo-date-make-sortable-string' instead of
5670         `timezone-make-date-sortable'.
5671
5672         * elmo-date.el (elmo-date-make-sortable-string): Use
5673         `timezone-make-time-string'.
5674
5675 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5676
5677         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5678
5679         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5680         `since'; Fix timezone.
5681
5682         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5683
5684         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5685
5686 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5687
5688         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5689
5690 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5691
5692         * elmo.el (elmo-generic-folder-append-messages): Make
5693         fetch-strategy with `use-cache' as 'maybe. Check return value of
5694         `elmo-message-fetch'.
5695         (elmo-message-fetch): Return return value of
5696         `elmo-message-fetch-with-cache-process'.
5697         (elmo-message-fetch-with-cache-process): Return non-nil if
5698         fetching was succeed. Load cache when fetching was failed and
5699         fetch-strategy-use-cache is 'maybe.
5700
5701         * elmo-util.el (elmo-file-cache-load): New function.
5702
5703         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5704         defun.
5705
5706         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5707         non-nil if fetching was succeed.
5708
5709         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5710
5711         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5712
5713         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5714         (elmo-message-fetch-with-cache-process): Likwise.
5715
5716         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5717
5718         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5719
5720         * elmo-version.el (elmo-version): Up to 2.9.2.
5721
5722 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5723
5724         * elmo.el (elmo-folder-delete): Delete msgdb path.
5725
5726         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5727
5728         * elmo-maildir.el (elmo-folder-delete): Ditto.
5729
5730         * elmo-localdir.el (elmo-folder-delete): Ditto.
5731
5732         * elmo-imap4.el (elmo-folder-delete): Ditto.
5733
5734 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5735
5736         * elmo.el (luna-define-class): Added `biff' slot.
5737
5738         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5739         (elmo-pop3-debug-inhibit-logging): Abolished.
5740         (elmo-network-close-session): Eliminated needless let.
5741         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5742         (elmo-pop3-send-command): Added `no-log' argument.
5743         (elmo-pop3-process-filter): Use `with-current-buffer'.
5744         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5745         if login failure.
5746         (elmo-pop3-auth-apop): Likewise.
5747         (elmo-network-authenticate-session): Likewise.
5748
5749         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5750         if biff folder.
5751
5752         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5753         string to determine protocol.
5754         (elmo-network-session-name-prefix): Abolished.
5755         (elmo-network-session-cache-key): Follow the change above.
5756         (elmo-network-open-session): Ditto.
5757
5758         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5759         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5760
5761         * elmo-version.el (elmo-version): Up to 2.9.1.
5762
5763         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5764         unmatch condition checking.
5765
5766         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5767         condition.
5768
5769 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5770
5771         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5772
5773 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5774
5775         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5776         test for while loop to execute at least one SEARCH command.
5777
5778 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5779
5780         * elmo-version.el (elmo-version): Up to 2.9.0.
5781
5782 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5783
5784         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5785         (elmo-archive-folder-path): Define.
5786         (elmo-folder-initialize): Setup `dir-name' slot.
5787         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5788         Use `dir-name' as prefix of each subfolders.
5789         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5790
5791 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5792
5793         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5794         (elmo-pipe-folder-list-target-messages): New internal function.
5795         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5796         `killed-list'.
5797         (elmo-pipe-folder-copied-list-load): New function.
5798         (elmo-pipe-folder-copied-list-save): Ditto.
5799         (elmo-folder-open-internal): Follow the change above.
5800         (elmo-folder-status): Fixed for copy.
5801
5802 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5803
5804         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5805
5806 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5807
5808         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5809         elmo-copy-file instead of elmo-add-name-to-file.
5810
5811         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5812
5813         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5814         "file://..." index.
5815
5816         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5817         of accept-process-output as 1.
5818         (elmo-pop3-read-contents): Ditto.
5819         (elmo-pop3-read-body): Ditto.
5820
5821 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5822
5823         * elmo-version.el (product-version-as-string): Remove define.
5824
5825 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5826
5827         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5828         (elmo-imap4-copy-messages): Chop number set using
5829         `elmo-imap4-number-set-chop-length'.
5830         (elmo-imap4-set-flag): Ditto.
5831         (elmo-imap4-search-internal-primitive): Ditto.
5832
5833 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5834
5835         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5836         `elmo-folder-make-temp-dir'
5837
5838         * elmo-vars.el (elmo-cache-directory): New variable.
5839         (elmo-cache-dir): Abolished.
5840         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5841
5842         * elmo-version.el (elmo-version): Up to 2.7.7.
5843
5844 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5845
5846         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5847         defcustom; Set default value as t.
5848
5849 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5850
5851         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5852         (ldap-search-program-arguments): Changed default value.
5853         (ldap-search-basic): Accept exit status 4.
5854         (ldap/field-body): Parse options.
5855         (ldap/collect-field): Ditto.
5856         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5857
5858         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5859         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5860         (elmo-imap4-accept-ok): Ditto.
5861         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5862         'notify-bye, only BYE error is reported.
5863         (elmo-folder-exists-p-plugged): Set no-error argument of
5864         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5865
5866         * elmo.el (elmo-imap4-bye-error): Changed message.
5867
5868         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5869         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5870         queues (It causes infinite loop).
5871
5872 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5873
5874         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5875         (RECENT UNSEEN MESSAGES) extension.
5876
5877 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5878
5879         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5880         Check number of overview fields.
5881
5882 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5883
5884         * elmo.el (elmo-folder-confirm-appends): Changed message.
5885         (elmo-folder-confirm-appends): Ditto.
5886
5887         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5888         `with-temp-buffer'.
5889         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5890
5891 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5892
5893         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5894         of elmo-folder-update-threshold is nil, which can be set by
5895         wl-summary-update-confirm-threshold.
5896
5897 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5898
5899         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5900         (elmo-nmz-index-alias-alist): Ditto.
5901         (elmo-map-folder-list-message-locations): Follow the change above.
5902
5903 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5904
5905         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5906
5907         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5908
5909         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5910
5911         * elmo-util.el (elmo-read): Ditto.
5912         (elmo-display-error): Ditto.
5913
5914         * elmo-vars.el (elmo-date-match): Ditto.
5915
5916         * pldap.el (ldap-coding-system): Ditto.
5917
5918         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5919         `elmo-inhibit-number-mapping' as nil.
5920
5921 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5922
5923         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5924         space delimiter for list response.
5925
5926 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5927
5928         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5929
5930 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5931
5932         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5933         (elmo-map-message-fetch): Fix.
5934         * elmo-map.el (elmo-folder-status): Fix for killed.
5935
5936 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5937
5938         * elmo-sendlog.el: New file.
5939         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5940
5941 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5942
5943         * acap.el (acap-logging-out): New buffer local variable.
5944         (acap-close): Set it.
5945         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5946         an error.
5947
5948 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5949
5950         * acap.el (acap-response-bye-p): New function.
5951         (acap-response-bye-message): Ditto.
5952         (acap-wait-for-response): If bye response is received, cause an error.
5953         (acap-parse-response): Make bye response when 'Bye' is received.
5954
5955 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5956
5957         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5958
5959 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5960
5961         * elmo-util.el (elmo-copy-file): Added argument
5962         `ok-if-already-exists'.
5963         (elmo-copy-file): Fixed typo.
5964
5965 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5966
5967         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5968
5969 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5970
5971         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5972
5973 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5974
5975         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5976         to killed-list.
5977
5978 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5979
5980         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5981         (elmo-folder-initialize): Fix for `copy'.
5982         (elmo-pipe-drain): Ditto.
5983         (elmo-folder-open-internal): Ditto.
5984         (elmo-folder-newsgroups): Fix.
5985
5986 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5987
5988         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5989         for each message.
5990
5991         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5992         recent value is returned from imap folder.
5993
5994         * elmo.el (elmo-folder-newsgroups): New generic function.
5995
5996         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5997         (elmo-folder-initialize): Set it.
5998         (elmo-folder-expand-msgdb-path): Use it.
5999         (elmo-folder-newsgroups): Define.
6000
6001         * elmo-filter.el (elmo-folder-newsgroups): Define.
6002
6003         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
6004
6005         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
6006
6007         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
6008
6009 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6010
6011         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
6012         user option.
6013         (elmo-shimbun-header-extra-field): New inline function.
6014         (elmo-shimbun-header-set-extra-field): Ditto.
6015         (elmo-shimbun-folder-header-hash-setup): Ditto.
6016         (elmo-shimbun-update-overview): Ditto.
6017         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
6018         (elmo-shimbun-folder-setup): Use
6019         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
6020         (elmo-shimbun-get-headers): Ditto.
6021         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
6022         Insert `X-Shimbun-Id:' header if extra field is set.
6023         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
6024         field's value instead of `shimbun-header-id'.
6025
6026         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
6027         inline function.
6028         (elmo-msgdb-overview-entity-set-date): Ditto.
6029         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
6030
6031 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
6032
6033         * mmimap.el (mmimap-entity-section): Changed body node number from
6034         "0" to "1".
6035
6036 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6037
6038         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
6039         `elmo-folder-delete-messages'.
6040
6041         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
6042         (elmo-folder-initialize): Changed to expand alias into index path.
6043
6044         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
6045         `elmo-mime-insert-header-from-buffer' with 6th arg
6046         `sorted-fields'.
6047
6048 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
6049
6050         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
6051
6052         * elmo.el (elmo-diff-new): New inline function.
6053         (elmo-diff-unread): Ditto.
6054         (elmo-diff-all): Ditto.
6055
6056         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
6057         value from responseb.
6058         (elmo-imap4-folder-diff-plugged): Ditto.
6059         (elmo-imap4-server-diff-async): Added recent argument.
6060         (elmo-server-diff-async): Ditto.
6061         (elmo-imap4-folder-diff-plugged): Ditto.
6062
6063         * elmo-version.el (elmo-version): Up to 2.7.6.
6064
6065 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6066
6067         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
6068         in quoted-stirng.
6069
6070 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
6071
6072         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
6073
6074         * elmo-imap4.el (elmo-folder-initialize): Ditto.
6075
6076         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6077
6078         * elmo-multi.el (elmo-folder-initialize): Ditto.
6079
6080         * elmo-util.el (elmo-parse-token): New function.
6081         (elmo-parse-prefixed-element): Ditto.
6082
6083 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6084
6085         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
6086         delete process.
6087         (elmo-imap4-accept-ok): Ditto.
6088
6089 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6090
6091         * mmimap.el (mime-imap-entity-header-string): Don't check first
6092         element of node-id is `0' (Follow last change).
6093
6094 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6095
6096         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
6097         assigned irregular node-id to nested multipart section.
6098         (initialize-instance): Followed above change.
6099
6100 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6101
6102         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
6103         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
6104         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
6105         `elmo-shimbun-get-headers');
6106         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
6107         visible article on summary exists in headers).
6108         (elmo-map-message-fetch): Cause an error when folder is unplugged.
6109
6110 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
6111
6112         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
6113         definition.
6114
6115 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
6116
6117         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
6118
6119 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6120
6121         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
6122         header separator into loop condition.
6123
6124 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6125
6126         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
6127         Return duplicate folder if it has subfolder.
6128
6129 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6130
6131         * elmo.el (elmo-make-folder): Add folder name error check.
6132
6133         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
6134         (elmo-nntp-encode-group-string): New inline function.
6135         (elmo-nntp-decode-group-string): Ditto.
6136         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
6137         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
6138         Use `not' instead of `null';
6139         Use elmo-nntp-decode-group-string.
6140
6141         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
6142
6143         * elmo-version.el (elmo-version): Up to 2.7.5.
6144
6145 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6146
6147         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
6148         Hide progress gauge if `elmo-folder-move-messages' exits
6149         nonlocally.
6150
6151 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6152
6153         * elmo-imap4.el (elmo-folder-initialize): Use
6154         `elmo-imap4-encode-folder-string' for folder name.
6155
6156 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6157
6158         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
6159         `done'.
6160
6161 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6162
6163         * elmo-util.el (elmo-progress-counter-alist): New internal
6164         variable.
6165         (elmo-progress-counter-value): New macro.
6166         (elmo-progress-counter-all-value): Ditto.
6167         (elmo-progress-counter-format): Ditto.
6168         (elmo-progress-counter-set-value): Ditto.
6169         (elmo-progress-set): New function.
6170         (elmo-progress-clear): Ditto.
6171         (elmo-progress-notify): Ditto.
6172
6173         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
6174         counter.
6175
6176         * elmo.el (elmo-generic-folder-append-messages): Call
6177         `elmo-progress-notify'.
6178         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
6179
6180         * elmo-archive.el (elmo-folder-append-messages): Call
6181         `elmo-progress-notify'.
6182
6183         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
6184
6185         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
6186
6187         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
6188
6189 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6190
6191         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
6192         'Create'.
6193         (elmo-message-encache-dop): Added argument `read'.
6194
6195         * elmo-shimbun.el (elmo-message-encache): Ditto.
6196
6197         * elmo-net.el (elmo-message-encache): Ditto.
6198
6199         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
6200         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
6201         elmo-imap4-seen-messages.
6202         (elmo-folder-msgdb-create-plugged): Initialize
6203         elmo-imap4-seen-messages;
6204         Set seen mark on elmo-imap4-seen-messages.
6205
6206         * elmo-pipe.el (elmo-folder-message-file-p): Define.
6207
6208         * elmo.el (elmo-generic-folder-append-messages): Check return value of
6209         elmo-folder-append-buffer.
6210         (elmo-folder-encache): Added optional argument `read'.
6211         (elmo-message-encache): Ditto.
6212
6213         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
6214
6215         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
6216
6217         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
6218         if append buffer content succeds.
6219
6220 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6221
6222         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
6223         elmo-display-progress.
6224
6225         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
6226         Set 4th argument of mime-display-message.
6227         (elmo-mime-display-as-is): Ditto.
6228
6229 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
6230
6231         * elmo-nmz.el (toplevel): Require 'mime-edit.
6232         (elmo-nmz-content-type-alist): Abolished.
6233         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
6234         content is not a message.
6235         (elmo-map-message-fetch): Changed behavior exept for message content;
6236         Detect mime-charset automatically, Use `mime-find-file-type' to detect
6237         content-type, Add From: and Subject: field.
6238
6239 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6240
6241         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
6242         (elmo-map-message-fetch): Add `Content-Type' field if contents is
6243         not a message.
6244
6245 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6246
6247         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
6248         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
6249
6250         * elmo-archive.el (elmo-folder-writable-p): Defined.
6251
6252         * elmo-cache.el (elmo-folder-writable-p): Ditto.
6253
6254         * elmo-filter.el (elmo-folder-writable-p): Ditto.
6255
6256         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
6257
6258         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
6259
6260         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
6261
6262         * elmo-mark.el (elmo-folder-writable-p): Ditto.
6263
6264         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
6265
6266         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
6267
6268 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
6269
6270         * elmo-util.el (elmo-address-quote-specials): New function;
6271         Renamed from `wl-address-quote-specials'.
6272
6273 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6274
6275         * elmo-version.el (elmo-version): Up to 2.7.4.
6276
6277 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
6278
6279         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
6280
6281 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6282
6283         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
6284         both compile-time and run-time to avoid byte-compile warning.
6285
6286 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
6287
6288         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
6289
6290 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6291
6292         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
6293         option.
6294         (elmo-mime-display-as-is-internal): Use it.
6295
6296         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
6297         if `read-passwd' is not defined.
6298
6299 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6300
6301         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
6302         by original number.
6303         (elmo-folder-status): Call `elmo-folder-open-internal';
6304         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
6305         (elmo-folder-close-internal): Set location-alist as nil.
6306         (elmo-folder-clear): Define.
6307         (elmo-folder-check): Don't set location-alist as nil.
6308
6309         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
6310
6311 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
6312
6313         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
6314         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
6315
6316         * mmimap.el (mime-imap-entity::requested): New slot.
6317         (mime-imap-location-fetch-entity-p): New generic function.
6318         (mime-decode-parameters): Define using `defun-maybe'.
6319         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6320         content-type structure.
6321         (mime-entity-body): Return empty body if
6322         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6323
6324         * elmo.el (elmo-message-displaying): New variable.
6325
6326         * elmo-mime.el (elmo-mime-message-display): Bind
6327         elmo-message-displaying as t.
6328
6329         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6330
6331 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6332
6333         * acap.el (acap-open): erase buffer before starting network process.
6334         (acap-store): Rewrite.
6335
6336 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6337
6338         * elmo-imap4.el (elmo-imap4-default-mailbox,
6339         elmo-imap4-default-server
6340         elmo-imap4-default-authenticate-type,
6341         elmo-imap4-default-user,
6342         elmo-imap4-default-port,
6343         elmo-imap4-default-stream-type,
6344         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6345
6346         * elmo-pop3.el (elmo-pop3-default-user,
6347         elmo-pop3-default-server,
6348         elmo-pop3-default-authenticate-type,
6349         elmo-pop3-default-port,
6350         elmo-pop3-default-stream-type,
6351         elmo-pop3-stream-type-alist): Ditto.
6352
6353         * elmo-nntp.el (elmo-nntp-default-server,
6354         elmo-nntp-default-user,
6355         elmo-nntp-default-port,
6356         elmo-nntp-default-stream-type,
6357         elmo-nntp-stream-type-alist): Ditto.
6358
6359         * elmo-vars.el: Follow changes above.
6360         (elmo-setting): New custom group; added 'elmo-setting group to
6361         above variables.
6362
6363         * elmo-version.el (elmo-version): Up to 2.7.3.
6364
6365         * acap.el (acap-parse-response): Don't delete process when BYE
6366         response (It causes hang-up on slow network environment).
6367         (toplevel): Added comment.
6368
6369 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6370
6371         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6372
6373         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6374         parsing NIL.
6375         (acap-parse-return-metadata): Ditto.
6376
6377         * slp.el: New file.
6378         (toplevel): Fixed typo.
6379
6380         * acap.el: New file.
6381         (acap-network-stream-open): Show "Connecting..." message.
6382         (acap-parse-response): Fixed problem for BYE untagged response.
6383         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6384         (toplevel): Added tiny comments.
6385
6386 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6387
6388         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6389         space delimiter for uidl response.
6390
6391 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6392
6393         * elmo-vars.el (elmo-use-semi): Eliminated.
6394
6395         * elmo-util.el (elmo-string-assoc-all): New function.
6396
6397 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6398
6399         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6400         property 'mime-preview-situation for `mime-preview-quit'.
6401
6402 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6403
6404         * elmo.el (elmo-message-fetch-with-cache-process): Call
6405         elmo-message-fetch-internal instead of causing an error when fetch
6406         strategy is 'entire but only 'section cache is available.
6407
6408 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6409
6410         * elmo-version.el (elmo-version): Up to 2.7.2.
6411
6412         * elmo.el (elmo-generic-folder-append-messages): Make
6413         fetch-strategy with `use-cache'.
6414
6415         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6416         (elmo-dop-queue-method-name): New macro.
6417
6418 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6419
6420         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6421         unbalanced parenthesis.
6422
6423 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6424
6425         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6426
6427 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6428
6429         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6430         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6431
6432 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6433
6434         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6435         local variables.
6436
6437 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6438
6439         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6440         (elmo-message-use-cache-p): Define.
6441         (elmo-folder-msgdb-create): Treat cache.
6442
6443 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6444
6445         * elmo-nntp.el (elmo-network-initialize-session): Call
6446         `elmo-nntp-send-mode-reader'.
6447         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6448
6449 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6450
6451         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6452         alist.
6453         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6454         assoc.
6455
6456         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6457         for `elmo-plugged-p'.
6458         (elmo-open-network-stream): Fixed stream-type argument.
6459
6460 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6461
6462         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6463         unknown archive type is specified.
6464
6465 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6466
6467         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6468
6469         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6470         while loading msgdb.
6471
6472         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6473         (elmo-folder-open-internal): Rewrite.
6474
6475 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6476
6477         * elmo-mime.el (elmo-mime-display-as-is-internal):
6478         Adjust buffer-multibyte status.
6479
6480 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6481
6482         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6483         of elmo-condition-find-key.
6484
6485         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6486         (elmo-condition-in-msgdb-p): Ditto.
6487         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6488         argument.
6489
6490 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6491
6492         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6493
6494 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6495
6496         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6497         label for elmo-display-progress.
6498
6499 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6500
6501         * elmo.el (elmo-folder-clear): New method.
6502         (elmo-folder-clear): Define.
6503         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6504
6505         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6506         (elmo-folder-clear): Define.
6507
6508         * elmo-map.el (elmo-folder-clear): Define.
6509
6510         * elmo-version.el (elmo-version): Up to 2.7.1.
6511
6512 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6513
6514         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6515         updates.
6516
6517 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6518
6519         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6520         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6521
6522 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6523
6524         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6525
6526         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6527         and re-written.
6528
6529         * elmo-imap4.el (elmo-folder-initialize): Use
6530         elmo-get-network-stream-type.
6531
6532         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6533
6534         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6535
6536 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6537
6538         * elmo.el (elmo-message-encache): Set unread argument for
6539         elmo-message-fetch.
6540
6541         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6542
6543         * elmo.el (elmo-net-port-info): New method.
6544
6545         * elmo-shimbun.el (elmo-net-port-info): Define.
6546         (elmo-message-encache): Ditto.
6547
6548         * elmo-net.el (elmo-net-port-info): Define as method.
6549
6550         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6551         unplugged status when elmo-enable-disconnected-operation is t.
6552
6553         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6554         of spool folder before checking new number.
6555
6556 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6557
6558         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6559         (elmo-network-setup-session): Ditto.
6560         (elmo-message-fetch-plugged): Ditto.
6561         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6562         (elmo-network-initialize-session): Ditto.
6563         (elmo-pop3-read-response): Abolish 3rd argument.
6564         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6565         (elmo-pop3-read-contents): Ditto.
6566         (elmo-pop3-read-body): Ditto.
6567         (elmo-folder-status): Call elmo-folder-close.
6568         (elmo-pop3-lock): Abolish.
6569         (elmo-pop3-unlock): Ditto.
6570         (elmo-pop3-locked-p): Ditto.
6571         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6572
6573 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6574
6575         * elmo-version.el (elmo-version): Up to 2.7.0.
6576
6577         * elmo-pop3.el (elmo-pop3-debug): New variable.
6578         (elmo-pop3-debug-inhibit-logging): Ditto.
6579         (elmo-pop3-debug): New function.
6580         (elmo-pop3-send-command): Call elmo-pop3-debug.
6581         (elmo-pop3-read-response): Added keep-lock optional argument;
6582         Don't unlock if keep-lock is non-nil.
6583         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6584         (elmo-network-authenticate-session): Bind
6585         elmo-pop3-debug-inhibit-logging as t.
6586         (elmo-network-setup-session): Call elmo-pop3-read-response with
6587         keep-lock argument.
6588         (elmo-pop3-read-msg): Ditto.
6589         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6590         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6591         (elmo-network-initialize-session): Call elmo-pop3-lock.
6592         (elmo-folder-close-internal): Don't clear location-alist slot.
6593         (elmo-folder-check): Clear location-alist slot.
6594
6595 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6596
6597         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6598         (elmo-pop3-send-command): Call elmo-pop3-lock.
6599         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6600         (elmo-pop3-read-contents): Ditto.
6601         (elmo-pop3-lock): New function.
6602         (elmo-pop3-unlock): Ditto.
6603         (elmo-pop3-locked-p): Ditto.
6604         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6605         returns t.
6606
6607 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6608
6609         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6610
6611         * elmo-util.el (elmo-file-field-primitive-condition-match):
6612         New inline function (Don't fetch file content if "first" or "last").
6613         (elmo-file-field-condition-match): Use
6614         elmo-file-field-primitive-condition-match.
6615
6616         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6617         "first".
6618
6619         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6620         (elmo-message-fetch-plugged): Fixed.
6621
6622         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6623
6624 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6625
6626         * elmo.el (elmo-folder-move-messages): Bind
6627         elmo-inhibit-display-retrieval-progress as t while moving messages.
6628
6629         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6630         New variable.
6631         (elmo-inhibit-display-retrieval-progress): Ditto.
6632
6633         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6634         for retrieval progress;
6635         Don't display progress when total buffer size is smaller than
6636         elmo-display-retrieval-progress-threshold.
6637         (elmo-message-fetch-plugged): Don't display progress when
6638         elmo-inhibit-display-retrieval-progress is non-nil.
6639
6640         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6641         for retrieval progress;
6642         Don't display progress when literal size is smaller than
6643         elmo-display-retrieval-progress-threshold.
6644         (elmo-imap4-message-fetch): Don't display progress when
6645         elmo-inhibit-display-retrieval-progress is non-nil.
6646
6647 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6648
6649         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6650         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6651         (elmo-imap4-message-fetch): Likewise.
6652
6653         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6654         (elmo-shimbun-index-range-alist): Ditto.
6655         (elmo-shimbun-use-entire-index): Abolish.
6656         (shimbun-mua-use-entire-index): Ditto.
6657         (elmo-shimbun-folder): Added new slot `range'.
6658         (elmo-folder-initialize): Setup slot `range'.
6659
6660 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6661
6662         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6663         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6664         (elmo-shimbun-get-headers): Use return value of
6665         `shimbun-article-expiration-days'.
6666         (elmo-folder-close-internal): Clean up last-check slot.
6667
6668         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6669         (elmo-pop3-total-size): New variable.
6670         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6671
6672         * elmo.el (elmo-folder-reserve-status-p): New method.
6673
6674         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6675         (elmo-shimbun-use-entire-index): New user option.
6676         (shimbun-elmo-mua): New class.
6677         (shimbun-mua-search-id): Define.
6678         (shimbun-mua-use-entire-index): Ditto.
6679         (elmo-shimbun-folder:last-check): New slot.
6680         (elmo-shimbun-headers-cache-header-list): Abolish.
6681         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6682         (elmo-shimbun-headers-cache-header-hash): Ditto.
6683         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6684         (elmo-shimbun-headers-cache-last-check): Ditto.
6685         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6686         (elmo-shimbun-headers-check-p): Rewrite.
6687         (elmo-shimbun-msgdb-to-headers): New function.
6688         (elmo-shimbun-get-headers): Rewrite.
6689         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6690         (elmo-folder-open-internal): Get headers only if
6691         `elmo-shimbun-headers-check-p' is non-nil.
6692         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6693         is non-nil.
6694         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6695         (elmo-quit): Removed.
6696
6697         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6698         function.
6699         (elmo-msgdb-overview-entity-set-extra): Ditto.
6700         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6701
6702         * elmo-map.el (elmo-folder-status): Don't call
6703         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6704         is non-nil.
6705
6706 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6707
6708         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6709         of `elmo-msgdb-search-internal-primitive' when condition's car is
6710         `and' or `or'.
6711
6712 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6713
6714         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6715
6716 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6717
6718         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6719         call `elmo-pipe-drain'.
6720
6721 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6722
6723         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6724         typo. (elmo-cache-folder -> elmo-mark-folder)
6725
6726 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6727
6728         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6729         `elmo-message-fetch'.
6730
6731 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6732
6733         * elmo-net.el (elmo-message-encache): Fixed typo.
6734         (elmo-message-fetch-unplugged): Changed call
6735         `elmo-message-fetch-internal' without argument `outbuf'.
6736
6737 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6738
6739         * elmo.el (elmo-message-encache): Define as generic function.
6740         (elmo-message-fetch-field): New generic function.
6741         (elmo-message-fetch-with-cache-process): Cause an error when
6742         fetch strategy is 'entire but only 'section cache is available.
6743         (toplevel): Fixed nmz folder definition.
6744
6745         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6746         (elmo-msgdb-resume-list-filename): Ditto.
6747         (elmo-queue-filename): Ditto.
6748         (elmo-enable-disconnected-operation): Changed default value to t.
6749
6750         * elmo-util.el (elmo-cache-path-section-p): New function.
6751         (elmo-file-cache-get): Use it.
6752         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6753         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6754         (elmo-dop-queue-save): Ditto.
6755
6756         * elmo-net.el (elmo-folder-status-unplugged): Call
6757         elmo-folder-status-dop.
6758         (elmo-folder-list-messages-unplugged): Implemented.
6759         (elmo-folder-delete-messages-unplugged): Define.
6760         (elmo-folder-msgdb-create): Define.
6761         (elmo-folder-msgdb-create-unplugged): Define.
6762         (elmo-folder-mark-as-read-unplugged): Ditto.
6763         (elmo-folder-unmark-read-unplugged): Ditto.
6764         (elmo-folder-mark-as-important-unplugged): Ditto.
6765         (elmo-folder-unmark-important-unplugged): Ditto.
6766         (elmo-message-encache): Ditto.
6767
6768         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6769         (elmo-dop-queue-save): Ditto.
6770
6771         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6772         `elmo-folder-msgdb-create'.
6773         (elmo-folder-append-buffer): Implemented unplugged operation.
6774         (elmo-folder-append-messages): Call parent method in unplugged status.
6775         (elmo-message-fetch-unplugged): Removed definition.
6776         (elmo-message-fetch-field): Implemented.
6777
6778         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6779         (elmo-dop-folder): Removed variable definition.
6780         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6781         (elmo-dop-queue-flush): Implemented.
6782         (elmo-dop-queue-merge): Removed definition (TODO).
6783         (elmo-dop-spool-folder): New function.
6784         (elmo-dop-spool-folder-append-buffer): Ditto.
6785         (elmo-dop-spool-folder-list-messages): Ditto.
6786         (elmo-dop-list-deleting-messages): Ditto.
6787         (elmo-folder-append-buffer-dop): Ditto.
6788         (elmo-folder-delete-messages-dop): Ditto.
6789         (elmo-message-encache-dop): New inline function.
6790         (elmo-create-folder-dop): Ditto.
6791         (elmo-folder-mark-as-read-dop): Ditto.
6792         (elmo-folder-unmark-read-dop): Ditto.
6793         (elmo-folder-mark-as-important-dop): Ditto.
6794         (elmo-folder-unmark-important-dop): Ditto.
6795         (elmo-folder-status-dop): Fixed.
6796         (elmo-folder-append-buffer-dop-delayed): New function.
6797         (elmo-folder-delete-messages-dop-delayed): Ditto.
6798         (elmo-dop-msgdb): Ditto.
6799
6800 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6801
6802         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6803
6804 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6805
6806         * elmo.el (elmo-folder-move-messages): Fixed problem when
6807         `dst-folder' is 'null.
6808
6809 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6810
6811         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6812         instead of current mark.
6813
6814         * elmo-multi.el (elmo-folder-list-importants-internal): No
6815         operation if importants is not list.
6816
6817         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6818         Return t if importants is not list.
6819
6820         * elmo-map.el (elmo-map-folder-list-importants): Define.
6821         (elmo-folder-list-importants-internal): Check return value of
6822         `elmo-map-folder-list-importants-internal'.
6823
6824         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6825
6826         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6827
6828         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6829
6830         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6831
6832 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6833
6834         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6835         (Patch is provided by <kita@coe.nttdata.co.jp>).
6836
6837 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6838
6839         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6840         mark folder.
6841
6842 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6843
6844         * elmo.el (elmo-message-fetch): Define.
6845         (elmo-message-fetch-with-cache-process): New generic method.
6846         (elmo-message-fetch-internal): New generic method.
6847         (elmo-folder-synchronize):
6848
6849         * elmo-archive.el (elmo-message-fetch-internal): Define.
6850         (elmo-message-fetch): Eliminated.
6851
6852         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6853         (elmo-message-fetch): Eliminated.
6854
6855         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6856         argument OUTBUF.
6857         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6858
6859         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6860         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6861
6862         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6863         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6864
6865         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6866
6867         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6868
6869         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6870
6871         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6872         (elmo-message-fetch-unplugged): New generic method.
6873         (elmo-message-fetch-internal): Remove cache process (Renamed from
6874         `elmo-message-fetch').
6875
6876         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6877         (elmo-message-fetch): Eliminated.
6878         (elmo-message-fetch-unplugged): Ditto.
6879
6880         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6881
6882 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6883
6884         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6885         of `to-be-deleted' from number-alist to number-list.
6886
6887 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6888
6889         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6890         (elmo-folder-mark-as-important): Ditto.
6891
6892 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6893
6894         * elmo.el (elmo-folder): Added process-duplicates slot.
6895
6896         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6897         (elmo-folder-unmark-read): Ditto.
6898         (elmo-folder-unmark-important): Ditto.
6899         (elmo-folder-mark-as-important): Ditto.
6900
6901         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6902         duplicated message processing.
6903
6904         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6905
6906 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6907
6908         * elmo-util.el (elmo-list-subdirectories-1): New function.
6909         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6910         (elmo-mapcar-list-of-list): New function.
6911
6912         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6913         `elmo-mapcar-list-of-list' instead of `mapcar'.
6914
6915         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6916
6917         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6918         `elmo-have-link-count'. Return the fully qualified folder name.
6919
6920 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6921
6922         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6923         (elmo-shimbun-headers-cache): New internal variable.
6924         (elmo-shimbun-headers-cache-header-list): New inline function.
6925         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6926         (elmo-shimbun-headers-cache-header-hash): Ditto.
6927         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6928         (elmo-shimbun-headers-cache-last-check): Ditto.
6929         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6930         (elmo-shimbun-lapse-seconds): Ditto.
6931         (elmo-shimbun-headers-cache-check-p): Ditto.
6932         (elmo-shimbun-get-headers): New function.
6933         (elmo-folder-open-internal): Call it.
6934         (elmo-quit): Define (Clear headers-cache).
6935
6936 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6937
6938         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6939
6940         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6941         (elmo-msgdb-flist-save): Ditto.
6942
6943         * elmo-shimbun.el (elmo-folder-list-subfolders):
6944         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6945         (elmo-folder-exists-p): Ditto.
6946
6947         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6948         argument for `shimbun-header-insert'.
6949
6950 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6951
6952         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6953         at first time.
6954
6955         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6956         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6957
6958 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6959
6960         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6961         (elmo-folder-plugged-p): Define.
6962         (elmo-folder-set-plugged): Ditto.
6963         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6964         (elmo-folder-list-messages-internal): Return t if unplugged.
6965         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6966
6967         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6968         when elmo-folder-list-messages-internal method of children returns t.
6969
6970         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6971         pair is nil.
6972         (elmo-folder-open-internal): Don't update if unplugged status.
6973
6974 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6975
6976         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6977         new message.
6978
6979 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6980
6981         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6982
6983         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6984         saving.
6985
6986 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6987
6988         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6989
6990         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6991         (elmo-folder-open-internal): Set up headers slot.
6992         (elmo-folder-check): Call elmo-folder-close-internal and
6993         elmo-folder-open-internal.
6994         (elmo-folder-close-internal): Clean up headers slot.
6995
6996 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6997
6998         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6999         exactly folder list.
7000         (elmo-folder-append-messages): Fixed append archive with prefix.
7001
7002         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
7003         make temp files with start-number.
7004
7005         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
7006
7007 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7008
7009         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
7010         argument `visible-only'.
7011         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
7012         instead of `if'.
7013
7014         * elmo-pop3.el (elmo-folder-open-internal): Check
7015         `elmo-inhibit-number-mapping' is non-nil.
7016
7017         * elmo-pipe.el (elmo-folder-status): Fixed.
7018
7019 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
7020
7021         * elmo.el (elmo-dop-queue-flush): Added autload setting.
7022
7023         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
7024         (elmo-folder-open-internal): Setup `header-hash' slot.
7025         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
7026         information.
7027         (elmo-map-message-fetch): Ditto.
7028
7029 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
7030
7031         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7032         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7033         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7034         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
7035
7036         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
7037
7038 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
7039
7040         * sb-airs.el: Added footer.
7041
7042         * shimbun.el (shimbun-article): Define as luna-method.
7043
7044         * sb-tcup.el: New file.
7045
7046         * sb-airs.el (toplevel): Require 'sb-mhonarc.
7047         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
7048
7049 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
7050
7051         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
7052         (shimbun-get-headers): Ditto.
7053
7054         * elmo.el: Moved obsolete variable definitions from
7055         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
7056
7057         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
7058         groups.
7059
7060         * shimbun.el: New file.
7061
7062         * elmo-shimbun.el: New file.
7063
7064         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7065         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7066         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7067         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
7068
7069 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
7070
7071         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
7072         hierarchy is t.
7073
7074 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
7075
7076         * elmo.el (elmo-folder-msgdb): Define as macro.
7077         (elmo-folder-open): Added argument `load-msgdb'.
7078         (elmo-generic-folder-open): Ditto.
7079         (elmo-folder-encache): New function.
7080
7081         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
7082
7083         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
7084
7085         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
7086         Eliminated argument FOLDER and added argument MSGDB.
7087         (elmo-dop-queue-load): Moved from elmo-dop.el.
7088         (elmo-dop-queue-save): Ditto.
7089
7090         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
7091
7092         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
7093
7094         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
7095         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
7096         (elmo-filter-folder-list-importants-internal): Ditto.
7097
7098         * elmo-map.el (elmo-folder-pack-number): Ditto.
7099
7100         * elmo-mime.el (elmo-mime-message-display): Ditto.
7101
7102         * elmo.el (elmo-generic-folder-commit): Ditto.
7103         (elmo-folder-list-unreads): Ditto.
7104         (elmo-folder-list-importants): Ditto.
7105         (elmo-generic-folder-commit): Ditto.
7106         (elmo-message-set-mark): Ditto.
7107         (elmo-generic-folder-append-msgdb): Ditto.
7108         (elmo-folder-synchronize): Ditto.
7109         (elmo-folder-messages): Ditto.
7110         (elmo-init): Call elmo-dop-queue-load.
7111         (elmo-folder-list-messages): Ditto.
7112
7113         * elmo-nntp.el (elmo-folder-update-number): Ditto.
7114         (elmo-nntp-folder-process-crosspost): Ditto.
7115         (elmo-folder-list-unreads-internal): Ditto.
7116
7117         * elmo-dop.el: Removed old functions.
7118
7119 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
7120
7121         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
7122         `folder' to `msgdb'.
7123
7124 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
7125
7126         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
7127         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
7128
7129         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
7130         case-fold-search.
7131
7132 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
7133
7134         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
7135         defined.
7136
7137         * mmimap.el (toplevel): Require 'mime-parse and 'static.
7138         (mmimap-parse-parameters-from-list): Define as alias for
7139         `mime-decode-parameter-plist' if it is defined as function.
7140         (mmimap-make-mime-entity): Added argument `number'.
7141         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
7142         as 0.
7143         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
7144
7145         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
7146
7147         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
7148
7149         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
7150
7151 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
7152
7153         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
7154
7155         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
7156         when elmo-imap4-default-authenticate-type is nil.
7157         (elmo-folder-list-subfolders): Ditto
7158         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
7159         (elmo-imap4-fetch-callback-1-subr): Renamed from
7160         `elmo-imap4-fetch-callback-1' and define as inline function.
7161         (elmo-imap4-fetch-callback-1):
7162         Renamed from `elmo-imap4-fetch-callback'.
7163         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
7164
7165         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
7166         msgdb path (To keep compatibility with main trunk).
7167
7168         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
7169
7170         * elmo-util.el (elmo-make-file-cache): Moved position of
7171         some macros.
7172
7173         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
7174         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
7175         instead of `elmo-pop3-inhibit-uidl'.
7176         (elmo-folder-exists-p): Ditto.
7177         (elmo-pop3-folder-list-messages): Ditto.
7178
7179         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
7180         instead of `elmo-pop3-inhibit-uidl'.
7181         (elmo-folder-status): Ditto.
7182
7183         * elmo-dop.el (elmo-dop-folder): New variable.
7184         (elmo-dop-lock-message): Eliminated.
7185         (elmo-dop-unlock-message): Ditto.
7186         (elmo-dop-lock-list-load): Ditto.
7187         (elmo-dop-lock-list-save): Ditto.
7188         (elmo-dop-delete-folder): Ditto.
7189         (elmo-dop-rename-folder): Ditto.
7190
7191         * elmo.el: Removed incomplete commentary.
7192
7193 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7194
7195         * elmo.el (toplevel): Require 'elmo-version first;
7196         for little `recursive-load-depth' settings.
7197         Fix "ends here" comment.
7198
7199 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
7200
7201         * elmo-util.el (toplevel): Require 'poem;
7202         Some functions are moved from elmo-cache.el.
7203
7204         * elmo-net.el (toplevel): Require 'elmo-cache.
7205
7206         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
7207
7208         * elmo.el (toplevel): Ditto.
7209
7210         * elmo-cache.el: Rewrite with luna;
7211         Some functions are moved to elmo-util.el.
7212
7213         * elmo-internal.el (elmo-internal-folder-list): New variable.
7214         (elmo-internal-folder-initialize): Rewrite.
7215         (elmo-folder-list-subfolders): Ditto.
7216
7217         * elmo-cache.el (elmo-cache-search-all): Eliminated.
7218         (elmo-cache-collect-sub-directories): Ditto.
7219
7220 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
7221
7222         * elmo-version.el (elmo-version): Up to 2.5.8.
7223
7224         * elmo.el (elmo-folder-list-messages-mark-match): New function.
7225
7226         * elmo-util.el (elmo-list-insert): New function.
7227
7228 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
7229
7230         * elmo.el (elmo-init): New function.
7231         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
7232
7233         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
7234         (Renamed from `elmo-localdir-header-chop-length').
7235
7236         * elmo-pop3.el (elmo-pop3-use-cache,
7237         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
7238
7239         * elmo-nntp.el (elmo-message-fetch): Define.
7240         (elmo-message-fetch-unplugged): Ditto.
7241         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
7242         (elmo-nntp-use-cache): Ditto.
7243         (elmo-nntp-max-number-precedes-list-active): Ditto.
7244
7245         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
7246
7247         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
7248         `elmo-msgdb-insert-file-header'.
7249         Use `elmo-msgdb-file-header-chop-length'.
7250
7251         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
7252         `elmo-vars.el'.
7253
7254         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
7255         (elmo-cache-msgdb-create-overview-entity-from-file): Use
7256         `elmo-msgdb-insert-file-header'.
7257
7258         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
7259         Use new variable;
7260         Define obsolete variables with `elmo-define-obsolete-variable',
7261
7262         * elmo-util.el (elmo-warning-buffer-name): New constant.
7263         (elmo-warning): New function.
7264         (elmo-obsolete-variable-alist): New variable.
7265         (elmo-obsolete-variable-show-warnings): New variable.
7266         (elmo-define-obsolete-variable): New function.
7267         (elmo-resque-obsolete-variable): Ditto.
7268         (elmo-resque-obsolete-variables): Ditto.
7269
7270 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7271
7272         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
7273         Eliminated.
7274
7275         * elmo-pop3.el, elmo-nntp.el: Use custom.
7276
7277 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7278
7279         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
7280         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
7281
7282 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7283
7284         * Luna-fy Kenichi OKADA's following changes.
7285         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
7286         `nohide'.
7287         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
7288
7289 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
7290
7291         * elmo-util.el (elmo-display-progress): Prefer
7292         `progress-feedback-with-label' to `lprogress-display'.
7293
7294 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7295
7296         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
7297
7298 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
7299
7300         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
7301         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
7302         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7303         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7304         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
7305         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
7306         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7307         * elmo-filter.el (elmo-filter-list-folder): Ditto.
7308         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7309         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7310         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7311         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7312         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7313
7314 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7315
7316         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
7317         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7318
7319 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7320
7321         * elmo.el (elmo-folder-process-crosspost): New generic method.
7322         (elmo-folder-writable-p): Ditto.
7323         (elmo-folder-message-appendable-p): Eliminated.
7324         (elmo-generic-folder-append-msgdb): Rewrite.
7325         (elmo-newsgroups-hashtb): New internal variable.
7326         (elmo-crosspost-message-set): Eliminated.
7327         (elmo-crosspost-message-delete): Ditto.
7328         (elmo-setup-subscribed-newsgroups): New function.
7329         (elmo-crosspost-message-alist-modified): New internal variable.
7330         (elmo-crosspost-message-alist-load): New function (Renamed from
7331         `wl-crosspost-alist-load').
7332         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7333         `wl-crosspost-alist-save').
7334
7335         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7336
7337         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7338         `unreads'.
7339         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7340         elmo-newsgroups-hashtb).
7341         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7342         `elmo-nntp-folder-update-crosspost-message-alist'.
7343         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7344         `elmo-nntp-groups-hashtb'.
7345         (elmo-nntp-make-groups-hashtb): Eliminated.
7346         (elmo-nntp-parse-newsgroups): New function (Renamed from
7347         `wl-parse-newsgroups').
7348         (elmo-folder-creatable-p, elmo-folder-writable-p,
7349         elmo-folder-close-internal, elmo-folder-mark-as-read,
7350         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7351         Define.
7352         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7353
7354         * elmo-net.el (elmo-message-fetch): Check buffer size.
7355
7356         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7357
7358         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7359
7360         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7361         before `close' command.
7362
7363         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7364         `mark-alist' (All other related portions are changed).
7365
7366 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7367
7368         * elmo-util.el (elmo-create-hash-size): Eliminated.
7369         (elmo-make-hash) Make a hash with `one less than a power of two'
7370         length.
7371
7372         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7373         (elmo-hash-maximum-size): Changed value.
7374
7375 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7376
7377         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7378         (elmo-mime-message-display-as-is): Ditto.
7379
7380 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7381
7382         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7383         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7384
7385 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7386
7387         * elmo-mark.el: New file.
7388
7389         * elmo-internal.el: Rewrite (Almost empty).
7390
7391 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7392
7393         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7394         (mime-imap-entity-header-string): Ditto.
7395         (mmimap-entity-section): Rewrite.
7396
7397 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7398
7399         * elmo-nmz.el: New file.
7400
7401         * elmo-pipe.el: Rewrite with luna.
7402
7403 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7404
7405         * elmo-archive.el: Rewrite with luna.
7406
7407         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7408         (elmo-folder-list-importants-internal): Ditto.
7409
7410 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7411
7412         * elmo-archive.el (elmo-archive-version): Abolish.
7413         (toplevel) Removed `boso' comment.
7414
7415 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7416
7417         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7418         elmo-msgdb-add-msgs-to-seen-list-subr;
7419         Changed argument seen-marks to unread-marks.
7420
7421         * elmo-nntp.el: Rewrite with luna.
7422
7423 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7424
7425         * elmo-filter.el: Rewrite with luna.
7426
7427 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7428
7429         * elmo-pop3.el: Rewrite with luna.
7430
7431 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7432
7433         * elmo-multi.el: Rewrite with luna.
7434
7435         * elmo-vars.el (elmo-use-killed-list): Abolish.
7436         All other related portions are changed.
7437         (elmo-filename-replace-string-alist): Renamed from
7438         elmo-msgid-replace-string-alist.
7439
7440 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7441
7442         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7443
7444         * elmo-map.el: New file.
7445         * elmo-maildir.el: Rewrite with luna.
7446
7447 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7448
7449         * elmo.el: Changed meaning of `elmo-folder-commit'.
7450         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7451
7452 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7453
7454         * elmo.el (elmo-folder-append-buffer): New function.
7455         (Renamed from `elmo-append-msg')
7456
7457 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7458
7459         * elmo-mime.el: New file.
7460
7461 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7462
7463         * elmo-cache.el: Rewrite.
7464
7465 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7466
7467         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7468
7469 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7470
7471         * elmo-vars.el (elmo): New group.
7472         (elmo-strict-diff-folder-regexp): New variable.
7473
7474         * elmo-util.el (elmo-call-func): Abolish.
7475         (elmo-folder-get-type): Ditto.
7476         (elmo-*-get-spec): Ditto.
7477         (elmo-*-spec-*): Ditto.
7478         (elmo-imap4-identical-name-space-p): Ditto.
7479         (elmo-folder-identical-system-p): Ditto.
7480         (elmo-folder-direct-copy-alist): Ditto.
7481         (elmo-folder-direct-copy-p): Ditto.
7482
7483         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7484         (elmo-folder-initialize): Define.
7485         (elmo-folder-get-primitive-list): Ditto.
7486
7487         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7488         (elmo-folder-initialize): Define.
7489         Renamed `elmo-network-session-host-internal' to
7490         `elmo-network-session-server-internal'.
7491
7492         * elmo-multi.el (elmo-multi-folder): New luna class.
7493         (elmo-folder-initialize): Define.
7494         (elmo-folder-get-primitive-list): Ditto.
7495         (elmo-folder-contains-type): Ditto.
7496         (elmo-message-use-cache-p): Ditto.
7497
7498         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7499         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7500
7501         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7502         (elmo-folder-initialize): Define.
7503
7504         * elmo-filter.el (elmo-filter-folder): New luna class.
7505         (elmo-folder-initialize): Define.
7506         (elmo-folder-get-primitive-list): Ditto.
7507         (elmo-folder-contains-type): Ditto.
7508
7509 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7510
7511         * elmo-imap4.el: Rewrite with luna.
7512
7513         * mmimap.el: New file.
7514
7515         * mmelmo.el, mmelmo-imap4.el: Removed.
7516
7517         * elmo-net.el: Ditto.
7518
7519         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7520         (elmo-folder-initialize): Define.
7521
7522         * elmo-archive.el (elmo-archive-folder): New luna class.
7523         (elmo-folder-initialize): Define.
7524
7525         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7526         `elmo-folder-msgdb-path'.
7527         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7528         `elmo-make-folder'.
7529
7530 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7531
7532         * elmo.el: New file.
7533
7534         * elmo2.el: Renamed to elmo.el.
7535
7536 \f
7537 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7538
7539         * elmo-cache.el (elmo-cache-expire-by-size): Count
7540         a disk usage for a cache file entry in KB even when
7541         its kind is a directory.
7542
7543 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7544
7545         * elmo-version.el (elmo-version): Up to 2.5.7.
7546
7547 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7548
7549         * elmo-version.el (elmo-version): Up to 2.5.6.
7550
7551 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7552
7553         * elmo-version.el (elmo-version): Up to 2.5.5.
7554
7555 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7556
7557         * elmo-imap4.el (elmo-network-authenticate-session):
7558         Fixed a logic for response checking.
7559
7560 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7561
7562         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7563         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7564         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7565         `sasl-mechanisms'.
7566
7567         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7568         for `starttls-open-stream' and `starttls-negotiate'.
7569
7570         * elmo-nntp.el: Remove autoload settings for
7571         `starttls-open-stream' and `starttls-negotiate'.
7572
7573         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7574         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7575         `luna-define-class' with `eval-and-compile'.
7576
7577 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7578
7579         * elmo-util.el (elmo-read-search-condition-internal):
7580         Require an element of table for searching field.
7581
7582 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7583
7584         * elmo-version.el (elmo-version): Up to 2.5.4.
7585
7586 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7587
7588         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7589
7590 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7591
7592         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7593
7594 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7595
7596         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7597         before greeting.
7598
7599 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7600
7601         * elmo-imap4.el (elmo-imap4-delete-folder):
7602         Send "close" before "delete" (Use commented out line).
7603         (elmo-imap4-rename-folder): Ditto.
7604
7605         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7606         folder string itself.
7607         (elmo-dop-list-deleted): New function.
7608         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7609         killed.
7610
7611         * elmo-util.el (elmo-string-rassoc-all): New function.
7612
7613 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7614
7615         * elmo-version.el (elmo-version): Up to 2.5.3.
7616
7617         * elmo-net.el (elmo-network-get-session): Changed logic for
7618         checking process status.
7619
7620         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7621         process is nil;
7622         Changed logic for checking process status.
7623
7624 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7625
7626         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7627         before greeting.
7628         (elmo-network-setup-session): Set UIDL hash size according to
7629         the length of list response.
7630         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7631         according to the length of list response;
7632         Return the length of list response.
7633         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7634
7635 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7636
7637         * elmo-imap4.el (toplevel): Require 'ssl.
7638         Add autoload 'starttls.
7639         * elmo-pop3.el (toplevel): Ditto.
7640         * elmo-nntp.el (toplevel): Ditto.
7641
7642 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7643
7644         * elmo-imap4.el (toplevel): defun at compile time.
7645         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7646         sasl-next-step, sasl-step-data, sasl-step-set-data.
7647         * elmo-pop3.el (toplevel): Ditto.
7648
7649 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7650
7651         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7652
7653 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7654
7655         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7656         if error.
7657         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7658         and `elmo-pop-auth-apop'.
7659
7660 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7661
7662         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7663
7664 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7665
7666         * elmo-pop3.el (elmo-network-authenticate-session): Split
7667         encoded response value.
7668
7669 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7670
7671         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7672         `elmo-pop3-force-login'.
7673         Redefine `sasl-mechanisms'.
7674         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7675
7676 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7677
7678         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7679         Delete `elmo-imap4-authenticator-alist'.
7680         (elmo-imap4-auth-cram-md5): Delete.
7681         (elmo-imap4-auth-digest-md5): Delete.
7682
7683 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7684
7685         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7686         (elmo-pop3-auth-scram-md5): Ditto.
7687         (elmo-pop3-auth-cram-md5): Ditto.
7688
7689 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7690
7691         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7692         Delete `elmo-pop3-authenticator-alist'.
7693
7694 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7695
7696         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7697         new SASL API.
7698         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7699
7700 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7701
7702         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7703
7704 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7705
7706         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7707         Fixed problem when `elmo-pop3-use-uidl' is nil.
7708         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7709
7710 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7711
7712         * elmo-version.el (elmo-version): Up to 2.5.2.
7713
7714 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7715
7716         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7717         New function.
7718         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7719         (elmo-pop3-msgdb-create-as-numlist): Use it.
7720
7721         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7722         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7723
7724         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7725         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7726
7727 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7728
7729         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7730         when elmo-mark-as-read is called with second argument nil.
7731
7732 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7733
7734         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7735         Moved to elmo-util.el.
7736
7737         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7738         Moved from elmo-pipe.el
7739
7740         * elmo-archive.el (elmo-archive-call-process): Enclose with
7741         static-if.
7742
7743         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7744         "RFC822" (because RFC822.PEEK is obsolete).
7745         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7746
7747 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7748
7749         * elmo-archive.el (elmo-archive-call-process): Don't check for
7750         the exit status when Nemacs is running.
7751
7752 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7753
7754         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7755         'plain.
7756
7757         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7758         (elmo-pop3-get-spec): Set default of auth to 'user.
7759
7760         * elmo-imap4.el (elmo-imap4-session-check):
7761         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7762         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7763         (elmo-imap4-auth-login): New function; Revival.
7764         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7765         `elmo-imap4-auth-login'.
7766
7767 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7768
7769         * elmo2.el (toplevel): Move `product-provide' declare.
7770         * mmelmo.el (toplevel): Ditto.
7771
7772 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7773
7774         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7775
7776 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7777
7778         * elmo-util.el (elmo-folder-get-store-type): New function.
7779         (elmo-folder-direct-copy-p): Use it.
7780
7781 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7782
7783         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7784         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7785         and result of `elmo-imap4-use-flag-p'.
7786         (elmo-imap4-fetch-callback-1): Set mark according to
7787         the result of `elmo-imap4-use-flag-p'.
7788
7789 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7790
7791         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7792         (elmo-generic-list-folder-unread): Ditto.
7793         (elmo-folder-get-info): Ditto.
7794         (elmo-folder-set-info-max-by-numdb): Ditto.
7795         (elmo-folder-get-info-max): Ditto.
7796         (elmo-folder-get-info-length): Ditto.
7797         (elmo-folder-get-info-unread): Ditto.
7798         (elmo-folder-info-make-hashtb): Ditto.
7799
7800         * elmo2.el: Removed above functions.
7801
7802 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7803
7804         * elmo-imap4.el (toplevel): Require 'ssl.
7805         Add autoload 'starttls.
7806         * elmo-pop3.el (toplevel): Ditto.
7807         * elmo-nntp.el (toplevel): Ditto.
7808
7809 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7810
7811         * elmo-imap4.el (toplevel): defun at compile time.
7812         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7813         sasl-next-step, sasl-step-data, sasl-step-set-data.
7814         * elmo-pop3.el (toplevel): Ditto.
7815
7816 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7817
7818         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7819
7820 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7821
7822         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7823         if error.
7824         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7825         and `elmo-pop-auth-apop'.
7826
7827 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7828
7829         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7830
7831 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7832
7833         * elmo-pop3.el (elmo-network-authenticate-session): Split
7834         encoded response value.
7835
7836 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7837
7838         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7839         `elmo-pop3-force-login'.
7840         Redefine `sasl-mechanisms'.
7841         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7842
7843 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7844
7845         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7846         Delete `elmo-imap4-authenticator-alist'.
7847         (elmo-imap4-auth-cram-md5): Delete.
7848         (elmo-imap4-auth-digest-md5): Delete.
7849
7850 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7851
7852         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7853         (elmo-pop3-auth-scram-md5): Ditto.
7854         (elmo-pop3-auth-cram-md5): Ditto.
7855
7856 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7857
7858         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7859         Delete `elmo-pop3-authenticator-alist'.
7860
7861 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7862
7863         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7864         new SASL API.
7865         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7866
7867 \f
7868 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7869
7870         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7871
7872 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7873
7874         * elmo-nntp.el (elmo-nntp-get-folders-info):
7875         Fixed problem when '\' character is contained in user-id.
7876         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7877
7878 \f
7879 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7880
7881         * elmo-imap4.el (elmo-imap4-delete-folder):
7882         Send "close" before "delete" (Use commented out line).
7883         (elmo-imap4-rename-folder): Ditto.
7884
7885         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7886         folder string itself.
7887         (elmo-dop-list-deleted): New function.
7888         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7889         killed.
7890
7891         * elmo-util.el (elmo-string-rassoc-all): New function.
7892
7893         * elmo-version.el (elmo-version): Up to 2.5.1.
7894
7895 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7896
7897         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7898
7899         * elmo-internal.el (elmo-internal-search): Fix last change.
7900
7901 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7902
7903         * elmo-internal.el (elmo-internal-search): Rewrite.
7904         (Fixed problem which is pointed out by Akihiro MOTOKI
7905         <motoki@da.jp.nec.com>)
7906
7907         * elmo-version.el (elmo-version): Up to 2.5.0.
7908
7909 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7910
7911         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7912
7913 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7914
7915         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7916         non-nil, make hierarchy.
7917
7918 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7919
7920         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7921         `elmo-pop3-use-uidl' must be bound to nil.
7922         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7923
7924 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7925
7926         * elmo-util.el (elmo-copy-file): Don't cause an error after
7927         `add-name-to-file' failed.
7928
7929         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7930         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7931
7932 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7933
7934         * elmo-version.el (elmo-version): Up to 2.3.93.
7935
7936 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7937
7938         * elmo-util.el (elmo-flatten): New function.
7939
7940 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7941
7942         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7943         sync Author header.
7944         * elmo-cache.el (toplevel): Ditto.
7945         * elmo-database.el (toplevel): Ditto.
7946         * elmo-date.el (toplevel): Ditto.
7947         * elmo-dop.el (toplevel): Ditto.
7948         * elmo-filter.el (toplevel): Ditto.
7949         * elmo-imap4.el (toplevel): Ditto.
7950         * elmo-internal.el (toplevel): Ditto.
7951         * elmo-localdir.el (toplevel): Ditto.
7952         * elmo-localnews.el (toplevel): Ditto.
7953         * elmo-maildir.el (toplevel): Ditto.
7954         * elmo-msgdb.el (toplevel): Ditto.
7955         * elmo-multi.el (toplevel): Ditto.
7956         * elmo-net.el (toplevel): Ditto.
7957         * elmo-nntp.el (toplevel): Ditto.
7958         * elmo-pipe.el (toplevel): Ditto.
7959         * elmo-pop3.el (toplevel): Ditto.
7960         * elmo-util.el (toplevel): Ditto.
7961         * elmo-vars.el (toplevel): Ditto.
7962         * elmo2.el (toplevel): Ditto.
7963         * mmelmo-imap4.el (toplevel): Ditto.
7964         * mmelmo.el (toplevel): Ditto.
7965
7966         * elmo-version.el (elmo-version): Move to top.
7967
7968         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7969         * elmo-imap4.el (toplevel): Ditto.
7970         * elmo-localdir.el (toplevel): Ditto.
7971         * elmo-msgdb.el (toplevel): Ditto.
7972         * elmo-nntp.el (toplevel): Ditto.
7973         * elmo-pop3.el (toplevel): Ditto.
7974         * elmo-version.el (toplevel): Ditto.
7975
7976         * elmo-localnews.el (toplevel): Added Keyword header.
7977
7978 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7979
7980         * elmo-version.el (product-version-as-string): Defined using
7981         `defun-maybe'.
7982         (toplevel): Use it.
7983
7984         * elmo-localdir.el (toplevel): Updated copyright notice.
7985         * elmo-version.el (toplevel): Ditto.
7986         * elmo-msgdb.el (toplevel): Ditto.
7987         * elmo-imap4.el (toplevel): Ditto.
7988         * elmo-nntp.el (toplevel): Ditto.
7989         * elmo-pop3.el (toplevel): Ditto.
7990
7991 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7992
7993         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7994         messages.
7995
7996         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7997         parameter value (It sometimes contains raw kanji).
7998
7999 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8000
8001         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
8002         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
8003
8004 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8005
8006         * elmo-imap4.el (elmo-network-initialize-session): Fix.
8007
8008 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8009
8010         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
8011         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
8012
8013 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
8014
8015         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
8016         value if selecting folder succceeded.
8017         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
8018
8019 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8020
8021         * elmo-util.el (elmo-make-directory): Fixed permission lateral
8022         representation.
8023
8024         * elmo-util.el (elmo-string-matched-member): New function.
8025
8026 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
8027
8028         * elmo-util.el (elmo-unintern): New macro.
8029         (elmo-number-set-member): Fixed docstring.
8030
8031         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
8032         tag token.
8033
8034 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
8035
8036         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
8037         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
8038
8039 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
8040
8041         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
8042         `no-error'.
8043         Added docstring.
8044         Return non-nil if selecting folder succeeded.
8045         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
8046
8047 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
8048
8049         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
8050         `file-name-completion' returns t.
8051         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
8052         (elmo-maildir-set-mark): Put `info' part to the files in the cur
8053         directory if it does not exist.
8054         (elmo-maildir-update-current): Use `while' instead of `mapcar'
8055         for iteration.
8056
8057 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
8058
8059         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
8060         enclosure (It's harmful in unplugged status).
8061
8062         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
8063
8064         * mmelmo-1.el: Removed.
8065
8066         * mmelmo-2.el: Ditto.
8067
8068         * mmelmo-imap4-1.el: Ditto.
8069
8070         * mmelmo-imap4-2.el: Ditto.
8071
8072         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
8073
8074         * mmelmo.el: Merged mmelmo-2.el.
8075
8076         * elmo-version.el (elmo-version): Up to 2.3.92.
8077
8078 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8079
8080         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
8081         elmo-update-number): Remove last period in "...done." message.
8082         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
8083         Ditto.
8084         * elmo-cache.el (elmo-cache-expire-by-size,
8085         elmo-cache-get-sorted-cache-file-list,
8086         elmo-cache-msgdb-create-as-numlist): Ditto.
8087         * elmo-dop.el (elmo-dop-save-pending-messages,
8088         (elmo-dop-flush-pending-append-operations): Ditto.
8089         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
8090         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
8091         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
8092         (elmo-localdir-pack-number): Ditto.
8093         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
8094         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
8095         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
8096         mime-write-entity-content): Ditto.
8097         * pldap.el (ldap-search-basic): Ditto.
8098
8099 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
8100
8101         * elmo-version.el (elmo-version): Up to 2.3.91.
8102
8103         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
8104         Only when filter is 'last'.
8105
8106         * elmo-util.el (elmo-condition-atom-regexp): New constant.
8107         (elmo-condition-parse-search-value): Use it.
8108         (elmo-read-search-condition-internal): Quote value only when
8109         it is not an atom.
8110
8111 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
8112
8113         * elmo2.el (elmo-generic-folder-diff): Fix.
8114
8115 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
8116
8117         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
8118         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
8119         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
8120         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8121         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
8122         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
8123
8124 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
8125
8126         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
8127         extra-fields.
8128
8129 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
8130
8131         * elmo-version.el (elmo-version): Up to 2.3.90.
8132
8133         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
8134         (elmo-imap4-list-folder-important): Ditto.
8135
8136 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8137
8138         * elmo-nntp.el (elmo-network-initialize-session): Fix.
8139
8140 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8141
8142         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
8143
8144 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
8145
8146         * elmo-nntp.el (elmo-network-initialize-session):
8147         Add starttls negotiation.
8148
8149 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8150
8151         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
8152         response.
8153         (elmo-network-setup-session): Define.
8154         Call `elmo-nntp-send-mode-reader' when session opened.
8155
8156 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8157
8158         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
8159
8160 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
8161
8162         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
8163         an invalid SPACE character ahead of `SEARCH' command.  Move
8164         a valid SPACE character following `SEARCH' from conditional
8165         `format' arguments to control-strings.
8166
8167 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8168
8169         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
8170         was succeeded.
8171
8172         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
8173
8174 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
8175
8176         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
8177         `w32-get-true-file-link-count' as t.
8178
8179         * elmo-imap4.el (elmo-imap4-read): Abolished.
8180         (Renamed to `elmo-read' and moved to elmo-util.el)
8181         All other related portions are changed.
8182
8183         * elmo-util.el (elmo-read): New function.
8184         (elmo-condition-parse-search-value): Use it.
8185
8186 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
8187
8188         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
8189
8190         * elmo-nntp.el (elmo-nntp-session): Define.
8191         (elmo-nntp-setting): Abolished.
8192         All other related portions are changed.
8193         (elmo-nntp-get-server-command): Changed argument.
8194         (elmo-nntp-set-server-command): Ditto.
8195         (elmo-nntp-xover-p): Ditto.
8196         (elmo-nntp-set-xover): Ditto.
8197         (elmo-nntp-listgroup-p): Ditto.
8198         (elmo-nntp-set-listgroup): Ditto.
8199         (elmo-nntp-list-active-p): Ditto.
8200         (elmo-nntp-set-list-active): Ditto.
8201         (elmo-nntp-xhdr-p): Ditto.
8202         (elmo-nntp-set-xhdr): Ditto.
8203         (elmo-nntp-flush-connection): Abolished.
8204         (elmo-nntp-get-connection): Abolished.
8205         (elmo-nntp-get-session): New function.
8206         (elmo-network-initialize-session): Defined.
8207         (elmo-network-authenticate-session): Ditto.
8208         (elmo-nntp-send-mode-reader): Changed argument.
8209         (elmo-nntp-send-command): Changed argument.
8210         All other related portions are changed.
8211         (elmo-nntp-read-response): Ditto.
8212         (elmo-nntp-read-raw-response): Ditto.
8213         (elmo-nntp-read-contents): Ditto.
8214         (elmo-nntp-read-body): Ditto.
8215         (elmo-nntp-goto-folder): Abolished.
8216         (elmo-nntp-select-group): New function.
8217         All other related portions are changed.
8218         (This function substitutes `elmo-nntp-goto-folder')
8219         (elmo-nntp-msgdb-create-by-header): Rewrite.
8220         (elmo-nntp-get-overview): Eliminated.
8221         (elmo-nntp-get-message): Ditto.
8222         (elmo-nntp-open-connection) Abolished.
8223         (elmo-nntp-read-msg): Rewrite.
8224         (elmo-nntp-post): Ditto.
8225         (elmo-nntp-send-data): Abolished.
8226         (elmo-nntp-send-buffer): New function.
8227         (elmo-nntp-send-data-line): Define as inline function.
8228         (elmo-nntp-get-folders-info-prepare): Use session as key.
8229         (elmo-nntp-groups-read-response): Changed argument.
8230         (elmo-nntp-retrieve-headers): Ditto.
8231         (elmo-nntp-msgdb-create-message): Ditto.
8232
8233         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
8234         when searching by 'since' or 'before'.
8235
8236 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8237
8238         * elmo-version.el (toplevel): Use product-version-as-string for set
8239         verstion-string, if defined.
8240
8241 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
8242
8243         * elmo-util.el: Doc fixes.
8244
8245 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8246
8247         * elmo-archive.el (toplevel): Use product-provide.
8248         * elmo-cache.el (toplevel): Ditto.
8249         * elmo-database.el (toplevel): Ditto.
8250         * elmo-date.el (toplevel): Ditto.
8251         * elmo-dop.el (toplevel): Ditto.
8252         * elmo-filter.el (toplevel): Ditto.
8253         * elmo-imap4.el (toplevel): Ditto.
8254         * elmo-internal.el (toplevel): Ditto.
8255         * elmo-localdir.el (toplevel): Ditto.
8256         * elmo-localnews.el (toplevel): Ditto.
8257         * elmo-maildir.el (toplevel): Ditto.
8258         * elmo-msgdb.el (toplevel): Ditto.
8259         * elmo-multi.el (toplevel): Ditto.
8260         * elmo-net.el (toplevel): Ditto.
8261         * elmo-nntp.el (toplevel): Ditto.
8262         * elmo-pipe.el (toplevel): Ditto.
8263         * elmo-pop3.el (toplevel): Ditto.
8264         * elmo-util.el (toplevel): Ditto.
8265         * elmo-vars.el (toplevel): Ditto.
8266         * elmo2.el (toplevel): Ditto.
8267         * mmelmo-1.el (toplevel): Ditto.
8268         * mmelmo-2.el (toplevel): Ditto.
8269         * mmelmo-imap4-1.el (toplevel): Ditto.
8270         * mmelmo-imap4-2.el (toplevel): Ditto.
8271         * mmelmo-imap4.el (toplevel): Ditto.
8272         * mmelmo.el (toplevel): Ditto.
8273
8274 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
8275
8276         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
8277         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
8278
8279 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
8280
8281         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
8282         before splitting.
8283         (elmo-multi-split-number-alist): Ditto.
8284
8285 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8286
8287         * elmo-version.el: New file.  Use product.el.
8288         * elmo2.el: Add (require 'elmo-version).
8289         * elmo-vars.el (elmo-appname, elmo-version): Move to
8290         elmo-version.el
8291
8292 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
8293
8294         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
8295         `elmo-msgdb-expand-path'.
8296         (elmo-msgdb-load): Ditto.
8297         Abolished 2nd argument. If 1st argument is not string, treat as spec.
8298         (elmo-generic-list-folder-unread): Rewrite.
8299         (elmo-generic-list-folder-important): Changed argument.
8300         (elmo-list-folder-unread): Ditto.
8301         (elmo-list-folder-important): Ditto.
8302         (elmo-folder-diff): Rewrite.
8303         (elmo-generic-folder-diff): New function.
8304         (elmo-multi-get-number-alist-list): Abolished
8305         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
8306         (elmo-multi-folder-diff): Moved to elmo-multi.el
8307         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
8308
8309         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
8310         `elmo-msgdb-expand-path'.
8311         (elmo-pop3-msgdb-create-as-numlist): Ditto.
8312         (elmo-pop3-read-msg): Ditto.
8313         (elmo-pop3-delete-msgs): Ditto.
8314         (elmo-pop3-folder-diff): New alias.
8315
8316         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
8317         `elmo-msgdb-expand-path'.
8318         (elmo-pipe-list-folder-unread): Changed arguments.
8319         (elmo-pipe-list-folder-important): Ditto.
8320         (elmo-pipe-folder-diff): New alias.
8321
8322         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8323         `elmo-msgdb-expand-path'.
8324         (elmo-nntp-max-of-folder): Ditto.
8325         (elmo-nntp-msgdb-create): Ditto.
8326         (elmo-nntp-delete-msgs): Ditto.
8327         (elmo-nntp-folder-diff): New alias.
8328
8329         * elmo-multi.el (elmo-multi-folder-diff): New function.
8330         (elmo-multi-split-mark-alist): Ditto.
8331         (elmo-multi-split-number-alist): Ditto.
8332         (elmo-multi-mark-alist-list): Abolished (Renamed to
8333         elmo-multi-split-mark-alist).
8334         (elmo-multi-list-folder-unread): Rewrite.
8335         (elmo-multi-list-folder-important): Ditto.
8336         (elmo-multi-list-folder): Set `spec' as 1st argument for
8337         `elmo-msgdb-expand-path'.
8338         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8339         instead of `elmo-multi-get-number-alist-list'.
8340
8341         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8342         If 1st argument is not string, treat as spec.
8343         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8344         `elmo-msgdb-expand-path'.
8345         (elmo-msgdb-flist-load): Ditto.
8346         (elmo-msgdb-flist-save): Ditto.
8347         (elmo-msgdb-delete-path): Ditto.
8348         (elmo-msgdb-rename-path): Ditto.
8349
8350         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8351         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8352         (elmo-maildir-delete-mark-msgs): Ditto.
8353         (elmo-maildir-msgdb-create): Ditto.
8354         (elmo-maildir-read-msg): Ditto.
8355         (elmo-maildir-delete-msgs): Ditto.
8356         (elmo-maildir-list-folder-subr): Ditto.
8357         (elmo-maildir-search): Ditto.
8358         (elmo-maildir-get-msg-filename): Ditto.
8359         (elmo-maildir-pack-number): Ditto.
8360         (elmo-maildir-folder-diff): New alias.
8361
8362         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8363
8364         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8365         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8366         (elmo-localdir-folder-diff): New alias.
8367
8368         * elmo-internal.el (elmo-internal-list-folder-subr):
8369         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8370         (elmo-internal-list-folder-by-location): Ditto.
8371         (elmo-internal-msgdb-create): Ditto.
8372         (elmo-internal-delete-msgs): Ditto.
8373         (elmo-internal-read-msg): Ditto.
8374         (elmo-internal-folder-diff): New alias.
8375
8376         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8377         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8378         `elmo-msgdb-expand-path'.
8379         (elmo-imap4-list-folder-unread): Changed arguments.
8380         (elmo-imap4-list-folder-important): Ditto.
8381
8382         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8383         (elmo-filter-list-folder-important): Ditto.
8384         (elmo-filter-folder-diff): New function.
8385
8386         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8387
8388         * elmo-cache.el (elmo-cache-list-folder):
8389         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8390         (elmo-cache-copy-msgs): Ditto.
8391         (elmo-cache-folder-diff): New alias.
8392
8393         * elmo-archive.el (elmo-archive-list-folder-subr):
8394         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8395         (elmo-archive-get-archive-name): Ditto.
8396         (elmo-archive-create-file): Ditto.
8397         (elmo-archive-append-msg): Ditto.
8398         (elmo-archive-copy-msgs): Ditto.
8399         (elmo-archive-copy-msgs-froms): Ditto.
8400         (elmo-archive-get-msg-filename): Ditto.
8401         (elmo-archive-folder-diff): New alias.
8402
8403 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8404
8405         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8406         (elmo-pop3-stream-type-alist): New variable.
8407         (elmo-nntp-stream-type-alist): New variable.
8408
8409         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8410         (elmo-kill-buffer): Ditto.
8411         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8412         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8413         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8414         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8415         (elmo-imap4-get-spec): Take into account
8416         `elmo-imap4-stream-type-alist'.
8417
8418 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8419
8420         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8421         (elmo-nntp-list-folders-get-cache): Ditto.
8422
8423 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8424
8425         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8426         character before 'uid'.
8427
8428 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8429
8430         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8431
8432         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8433
8434         * elmo-util.el (elmo-number-set-member): New function.
8435         (elmo-number-set-append-list): Ditto.
8436         (elmo-number-set-append): Ditto.
8437
8438         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8439         Use `elmo-number-set-member'.
8440         (elmo-living-messages): Ditto.
8441         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8442         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8443
8444         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8445         (elmo-imap4-add-to-cont-list): Abolished.
8446         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8447         instead of elmo-imap4-add-to-cont-list.
8448
8449         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8450         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8451
8452         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8453
8454 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8455
8456         * elmo-util.el (elmo-condition-parse-search-value):
8457         Fixed date parsing.
8458
8459 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8460
8461         * elmo-util.el (elmo-condition-find-key-internal): New function.
8462         (elmo-condition-find-key): Ditto.
8463
8464         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8465         (elmo-msgdb-search-internal): Ditto.
8466         (elmo-msgdb-search): Ditto.
8467
8468 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8469
8470         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8471         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8472
8473         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8474         (elmo-nntp-search-primitive): Fixed problem when condition is
8475         'unmatch'.
8476
8477         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8478
8479         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8480         (elmo-nntp-xhdr-p): New macro.
8481         (elmo-nntp-set-xhdr): Ditto.
8482         (elmo-nntp-parse-xhdr-response): New function.
8483         (elmo-nntp-retrieve-field): Ditto.
8484         (elmo-nntp-search-primitive): Ditto.
8485         (elmo-nntp-search): Implemented.
8486
8487         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8488
8489         * elmo-archive.el (elmo-archive-search): Set all number list to
8490         `elmo-archive-field-condition-match'
8491
8492         * elmo-localdir.el (elmo-localdir-search): Likewise.
8493
8494         * elmo-maildir.el (elmo-maildir-search): Likewise.
8495
8496 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8497
8498         * elmo-msgdb.el (elmo-living-messages): New function.
8499         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8500         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8501         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8502         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8503         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8504         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8505         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8506         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8507         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8508         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8509         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8510
8511 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8512
8513         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8514
8515         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8516
8517         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8518
8519         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8520         arguments for `SEARCH' command.
8521         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8522         All other related portions are changed.
8523
8524         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8525
8526         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8527         (elmo-list-folder-unread): Rewrite.
8528         (elmo-list-folder-important): Ditto.
8529
8530         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8531         (elmo-condition-parse-error): New inline function.
8532         (elmo-read-search-condition): New function.
8533         (elmo-read-search-condition-internal): Ditto.
8534         (elmo-parse-search-condition): Rewrite.
8535         (elmo-condition-parse): New function.
8536         (elmo-condition-parse-or-expr): Ditto.
8537         (elmo-condition-parse-and-expr): Ditto.
8538         (elmo-condition-parse-primitive): Ditto.
8539         (elmo-condition-parse-search-value): Ditto.
8540         (elmo-buffer-field-primitive-condition-match): Ditto.
8541         (elmo-buffer-field-condition-match): Rewrite.
8542         (elmo-file-field-condition-match): Ditto.
8543
8544         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8545         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8546
8547         * elmo-internal.el (elmo-internal-search): Set `number' and
8548         `number-list' argument of `elmo-file-field-condition-match'.
8549
8550         * elmo-maildir.el (elmo-maildir-search): Ditto.
8551
8552         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8553         `msgdb' as argument instead of `mark-alist'.
8554         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8555         `overview'.
8556
8557         * elmo-multi.el: Likewise.
8558
8559         * elmo-pipe.el: Likewise.
8560
8561         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8562         (elmo-imap4-search-internal): Rewrite.
8563         (elmo-imap4-search): Ditto.
8564
8565         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8566         (elmo-filter-list-folder-unread): Ditto.
8567         (elmo-filter-list-folder-important): Ditto.
8568         (elmo-filter-search): Rewrite.
8569
8570         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8571         `number-list' argument of `elmo-file-field-condition-match'.
8572         (elmo-cache-search): Ditto.
8573
8574         * elmo-localdir.el: Likewise.
8575
8576         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8577         number-list and pass it to `elmo-buffer-field-condition-match'.
8578         (elmo-archive-field-condition-match): Pass `number-list' to
8579         `elmo-archive-field-condition-match'
8580
8581 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8582
8583         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8584         `listgroup'.
8585
8586         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8587         (elmo-folder-diff-async-callback-data): Ditto.
8588         (elmo-folder-diff-async): New function.
8589
8590         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8591         (elmo-network-session-cache-key): Use it as a prefix of the session
8592         name.
8593         (elmo-network-open-session): Ditto.
8594
8595         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8596         (elmo-imap4-status-callback-data): Ditto.
8597         (elmo-imap4-server-diff-async-callback): New variable.
8598         (elmo-imap4-server-diff-async-callback-data): Ditto.
8599         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8600         `elmo-imap4-status-callback-data'.
8601         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8602         `elmo-imap4-status-callback-data' as nil.
8603         (elmo-imap4-server-diff): Ditto.
8604         (elmo-imap4-server-diff-async-callback-1): New function.
8605         (elmo-imap4-server-diff-async): Ditto.
8606         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8607
8608 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8609
8610         * elmo-util.el (elmo-list-delete): Doc fix.
8611         (elmo-delete-lists): Abolish.
8612         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8613         instead of `elmo-delete-lists'.
8614
8615 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8616
8617         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8618         before `sort'.
8619
8620 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8621
8622         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8623         `elmo-imap4-literal-subr'.
8624         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8625         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8626
8627 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8628
8629         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8630         (elmo-archive-list-folder): Fix.
8631         (elmo-archive-max-of-folder): Fix.
8632
8633 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8634
8635         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8636          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8637         (elmo-localdir-append-msg): Ditto.
8638         (elmo-localdir-list-folder): Fix for `nonsort'.
8639         (elmo-localdir-list-folder-subr): Fix for `killed'.
8640         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8641         (elmo-maildir-list-folder-subr): Ditto.
8642         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8643         (elmo-archive-list-folder-subr): Ditto.
8644         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8645         (elmo-internal-list-folder-subr): Ditto.
8646
8647 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8648
8649         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8650
8651 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8652
8653         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8654
8655 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8656
8657         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8658         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8659
8660         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8661         before greeting.
8662         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8663         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8664
8665 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8666
8667         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8668
8669         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8670         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8671         before STORE command.
8672
8673 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8674
8675         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8676
8677         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8678         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8679         of `response'.
8680         (elmo-imap4-list-folders): Removed unused local variable.
8681         (elmo-network-initialize-session): Ditto.
8682         (elmo-imap4-delete-msg-by-id): Ditto.
8683         (elmo-imap4-parse-fetch): Ditto.
8684         (elmo-imap4-copy-msgs): Ditto.
8685         Use `dst-spec' instead of `dst-folder'.
8686         (elmo-network-authenticate-session): Check authenticate type `plain'.
8687
8688 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8689
8690         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8691         garbage checking.
8692         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8693         `elmo-imap4-response-value'.
8694         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8695
8696 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8697
8698         * elmo-imap4.el (elmo-imap4-send-command):
8699         Cause elmo-imap4-bye-error when current response is BYE.
8700         (elmo-imap4-arrival-filter): Changed greeting response value.
8701
8702         * elmo2.el (elmo-imap4-bye-error): Define.
8703
8704         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8705         (elmo-imap4-server-diff): Ditto.
8706         (elmo-imap4-response-bye-p): New macro.
8707         (elmo-imap4-response-error-text): Get text from BYE response.
8708         (elmo-imap4-read-response): Return if BYE response.
8709         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8710         (elmo-imap4-folder-exists-p): Ditto.
8711         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8712         (elmo-imap4-parse-bye): New function.
8713         (elmo-imap4-parse-response): Remove needless let.
8714         Call `elmo-imap4-parse-bye'.
8715
8716 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8717
8718         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8719         the mailbox does not exist.
8720         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8721
8722 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8723
8724         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8725
8726 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8727
8728         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8729
8730         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8731         (elmo-network-initialize-session-buffer): Defined.
8732
8733         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8734         Abolished.
8735         (mmelmo-imap4-get-mime-entity): Rewrite.
8736
8737         * elmo2.el (elmo-error): Capitalize error message.
8738
8739         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8740         (elmo-network-session-buffer): New macro.
8741         (elmo-network-open-session): Use it.
8742
8743         * elmo-imap4.el: Rewrite.
8744
8745 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8746
8747         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8748
8749 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8750
8751         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8752         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8753         (elmo-imap4-create-msgdb-from-overview-string): Use
8754         `elmo-msgdb-create-overview-from-buffer'.
8755
8756 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8757
8758         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8759         (elmo-imap4-default-hierarchy-delimiter): New variable.
8760         (elmo-imap4-list-folders): Use it.
8761
8762 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8763
8764         * elmo-net.el (elmo-network-open-session): Add user and
8765         stream-type for process-buffer name.
8766
8767         * elmo-pop3.el (elmo-network-initialize-session): Call
8768         buffer-disable-undo.
8769
8770         * elmo-imap4.el (elmo-network-initialize-session):
8771         Set current-buffer as an argument for `buffer-disable-undo'.
8772
8773         * elmo-pop3.el (elmo-network-close-session): Don't use
8774         `process-live-p'.
8775
8776         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8777         Set default as 'user.
8778
8779         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8780
8781         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8782         and `elmo-imap4-flush-connection'.
8783
8784         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8785         (elmo-pop3-get-spec): Assume auth as symbol.
8786         (elmo-open-network-stream): Moved to `elmo-net'.
8787
8788         * elmo-pop3.el (toplevel): Require 'elmo-net.
8789         Define `sasl-cram-md5' to silence byte compilier.
8790         (elmo-pop3-connection-cache) Abolished.
8791         (elmo-pop3-authenticator-alist) New variable.
8792         (elmo-pop3-session): Define.
8793         (elmo-pop3-connection-get-process): Abolished.
8794         (elmo-pop3-connection-get-buffer): Ditto.
8795         (elmo-pop3-close-connection): Ditto.
8796         (elmo-pop3-flush-connection): Ditto.
8797         (elmo-pop3-get-connection): Ditto.
8798         (elmo-pop3-get-session): New function.
8799         (Replacement for `elmo-pop3-get-connection').
8800         All other related modules are changed.
8801         (elmo-network-close-session): Define.
8802         (elmo-pop3-send-command): Abolished argument `buffer'.
8803         All other related modules are changed.
8804         (elmo-pop3-read-response): Likewise.
8805         (elmo-pop3-open-connection): Abolished.
8806         (elmo-pop3-auth-user): New function.
8807         (elmo-pop3-auth-apop): Ditto.
8808         (elmo-pop3-auth-cram-md5): Ditto.
8809         (elmo-pop3-auth-scram-md5): Ditto.
8810         (elmo-pop3-auth-digest-md5): Ditto.
8811         (elmo-network-initialize-session): Define.
8812         (elmo-network-authenticate-session): Ditto.
8813         (elmo-network-setup-session): Ditto.
8814
8815         * elmo-imap4.el (toplevel): Require 'elmo-net.
8816         (elmo-imap4-session): Define.
8817         (elmo-imap4-connection-cache): Abolished.
8818         (elmo-imap4-password-key): Ditto.
8819         (elmo-imap4-flush-connection): Ditto.
8820         (elmo-imap4-get-connection): Ditto.
8821         All other related modules are changed.
8822         (elmo-imap4-get-session): New function
8823         (Replacement for `elmo-imap4-get-connection').
8824         (elmo-imap4-read-response): Abolished argument `buffer'.
8825         All other related modules are changed.
8826         (elmo-imap4-send-command): Likewise.
8827         (elmo-imap4-select-folder): Abolished.
8828         All other related modules are changed.
8829         (elmo-imap4-select-mailbox): New function.
8830         (Replacement for `elmo-imap4-select-folder').
8831         (elmo-imap4-auth-login): Simplify.
8832         (Assume current buffer as process buffer)
8833         (elmo-imap4-auth-cram-md5): Ditto.
8834         (elmo-imap4-auth-digest-md5): Ditto.
8835         (elmo-imap4-login): Ditto.
8836         (elmo-imap4-open-connection): Abolished.
8837         (elmo-imap4-open-connection-1): Abolished.
8838         (elmo-network-initialize-sessoin): Define.
8839         (elmo-network-authenticate-session): Ditto.
8840         (elmo-network-setup-session): Ditto.
8841
8842         * elmo-net.el: New module.
8843
8844 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8845
8846         * elmo-util.el (elmo-define-error): New function.
8847
8848         * elmo2.el (elmo-error): Define.
8849         (elmo-open-error): Define.
8850         (elmo-authenticate-error): Define.
8851
8852         * elmo-imap4.el (elmo-imap4-error): Abolish.
8853         (elmo-imap4-error-type): Abolish.
8854         (elmo-imap4-error-process): Abolish.
8855         (elmo-imap4-error-message): Abolish
8856         (elmo-imap4-list-folders): Don't quote lambda.
8857         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8858         (elmo-imap4-parse-namespace): Ditto.
8859         (elmo-imap4-open-connection): Rewrite.
8860         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8861         (elmo-imap4-get-connection): Abolish local variable `result'.
8862
8863 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8864
8865         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8866         wrong-type-argument error when auth is nil.
8867
8868 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8869
8870         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8871         (elmo-default-nntp-stream-type): Ditto.
8872         (elmo-default-pop3-stream-type): Ditto.
8873         (elmo-network-stream-type-alist): Ditto.
8874         (elmo-default-imap4-ssl): Abolished.
8875         (elmo-default-nntp-ssl): Ditto.
8876         (elmo-default-pop3-ssl): Ditto.
8877
8878         * elmo-util.el: (toplevel): Removed needless requires.
8879         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8880         (elmo-open-network-stream): Open network stream according to
8881         the value of `elmo-network-stream-type-alist'.
8882         (elmo-get-network-stream-type): New function.
8883         (elmo-network-stream-type-spec-string): New macro.
8884         (elmo-network-stream-type-symbol): Ditto.
8885         (elmo-network-stream-type-function): Ditto.
8886
8887         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8888         network-stream-type. All other related portions are changed.
8889         (elmo-pop3-open-connection): Ditto.
8890
8891         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8892         network-stream-type. All other related portions are changed.
8893
8894         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8895         network-stream-type.All other related portions are changed.
8896         (elmo-imap4-error): New macro.
8897         (elmo-imap4-error-type): Ditto.
8898         (elmo-imap4-error-process): Ditto.
8899         (elmo-imap4-error-message): Ditto.
8900         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8901         (elmo-imap4-auth-cram-md5): Ditto.
8902         (elmo-imap4-auth-digest-md5): Ditto.
8903         (elmo-imap4-login): Ditto.
8904         (elmo-imap4-open-connection): Remove password entry if authentication
8905         was in vain.
8906         (elmo-imap4-user-at-host): Abolished.
8907         (elmo-imap4-password-key): New buffer local variable.
8908         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8909         using protocol, port, auth and stream-type.
8910
8911         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8912
8913 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8914
8915         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8916
8917         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8918
8919         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8920         (elmo-imap4-authenticator-alist): New variable.
8921         (elmo-imap4-open-connection-1): Rename from
8922         elmo-imap4-open-connection.
8923         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8924         only wraps elmo-imap4-open-connection-1.
8925         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8926         user-at-host.
8927         (elmo-imap4-auth-login): New function.
8928         (elmo-imap4-auth-cram-md5): New function.
8929         (elmo-imap4-auth-digest-md5): New function.
8930         (elmo-imap4-login): New function.
8931
8932 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8933
8934         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8935         function `error'.
8936
8937 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8938
8939         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8940
8941 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8942
8943         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8944
8945 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8946
8947         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8948         for server responses, quote `*' regardless of where it appears.
8949
8950 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8951
8952         * elmo-maildir.el (elmo-maildir-commit): New alias.
8953
8954 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8955
8956         * elmo-util.el (elmo-display-progress):
8957                 Use `progress-feedback-with-label'.
8958
8959 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8960
8961         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8962         (elmo-imap4-non-atom-char-regex): Ditto.
8963         (elmo-imap4-non-text-char-regex): Ditto.
8964         (elmo-imap4-literal-threshold): Ditto.
8965         (elmo-imap4-atom-p): New function.
8966         (elmo-imap4-quotable-p): Ditto.
8967         (elmo-imap4-nil): Ditto.
8968         (elmo-imap4-atom): Ditto.
8969         (elmo-imap4-quoted): Ditto.
8970         (elmo-imap4-literal-subr): Ditto.
8971         (elmo-imap4-literal): Ditto.
8972         (elmo-imap4-buffer-literal): Ditto.
8973         (elmo-imap4-string-subr): Ditto.
8974         (elmo-imap4-string): Ditto.
8975         (elmo-imap4-buffer-string): Ditto.
8976         (elmo-imap4-astring-subr): Ditto.
8977         (elmo-imap4-astring): Ditto.
8978         (elmo-imap4-buffer-astring): Ditto.
8979         (elmo-imap4-nstring): Ditto.
8980         (elmo-imap4-buffer-nstring): Ditto.
8981         (elmo-imap4-mailbox): New alias.
8982         (elmo-imap4-field-body): Ditto.
8983         (elmo-imap4-userid): Ditto.
8984         (elmo-imap4-password): Ditto.
8985         (elmo-imap4-format-quoted): New function.
8986         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8987         arguments and handle "atom", "quoted" and "literal" string here.
8988         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8989         `elmo-imap4-send-command'.
8990         (elmo-imap4-folder-exists-p): Likewise.
8991         (elmo-imap4-create-folder): Likewise.
8992         (elmo-imap4-delete-folder): Likewise.
8993         (elmo-imap4-rename-folder): Likewise.
8994         (elmo-imap4-max-of-folder): Likewise.
8995         (elmo-imap4-check-validity): Likewise.
8996         (elmo-imap4-sync-validity): Likewise.
8997         (elmo-imap4-server-diff): Likewise.
8998         (elmo-imap4-select-folder): Likewise.
8999         (elmo-imap4-copy-msgs): Likewise.
9000         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
9001         (elmo-imap4-mark-set-on-msgs): Likewise.
9002         (elmo-imap4-read-part): Likewise.
9003         (elmo-imap4-read-msg): Likewise.
9004         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
9005         `elmo-imap4-password' for `elmo-imap4-send-command'.
9006         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
9007         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
9008         `elmo-imap4-buffer-literal'.
9009         (elmo-imap4-append-msg): Likewise.
9010
9011         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
9012         `delete' for removing dead connection from the connection cache.
9013         Move deletion of the process buffer after that.
9014         (elmo-imap4-list): Change `defsubst' to `defun'.
9015         (elmo-imap4-commit): Make error message verbose.
9016         (elmo-imap4-search): Ditto.
9017         (elmo-imap4-list): Ditto.
9018         (elmo-imap4-select-folder): Ditto.
9019         (elmo-imap4-copy-msgs): Ditto.
9020         (elmo-imap4-delete-msg-by-id): Ditto.
9021         (elmo-imap4-append-msg-by-id): Ditto.
9022         (elmo-imap4-append-msg): Ditto.
9023
9024 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
9025
9026         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
9027         when dired is used on XEmacs.
9028
9029 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
9030
9031         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
9032         instead of `append'.
9033         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
9034         `elmo-plugged-p' directly.
9035         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
9036         of `elmo-plugged-p' directly.
9037
9038         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
9039         Eliminate unused variable.  Use `memq' for checking a process status.
9040         Use `cons' instead of `append' for updating the connection cache.
9041         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
9042         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
9043
9044 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
9045
9046         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
9047         `elmo-imap4-read-point' exactly.
9048
9049         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
9050         the local variable `folder' to `mailbox'.
9051         Rename the argument `fld' to `folder'.
9052
9053 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
9054
9055         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
9056         * elmo-imap4.el (elmo-imap4-commit): Ditto.
9057
9058 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
9059
9060         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
9061         (elmo-pop3-number-uidl-hash): New buffer-local variable.
9062         (elmo-pop3-uidl-number-hash): Ditto.
9063         (elmo-pop3-size-hash): Ditto.
9064         (elmo-pop3-uidl-done): Ditto.
9065         (elmo-pop3-list-done): Ditto.
9066         (elmo-pop3-connection-get-process): New defmacro.
9067         (elmo-pop3-connection-get-buffer): Ditto.
9068         (elmo-pop3-close-connection): Delete buffer and process.
9069         (elmo-pop3-flush-connection): Don't delete buffer and process.
9070         (elmo-pop3-get-connection): Added optional argument `if-exists'.
9071         Setup UIDL and size hash.
9072         (elmo-pop3-send-command-no-erase): Deleted
9073         (elmo-pop3-send-command): Added optional argument `no-erase'.
9074         (elmo-pop3-parse-uidl-response): New function.
9075         (elmo-pop3-parse-list-response): Set size hash.
9076         (elmo-pop3-list-location): New function.
9077         (elmo-pop3-list-by-uidl-subr): Ditto.
9078         (elmo-pop3-list-by-list): Ditto.
9079         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
9080         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
9081         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
9082         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
9083         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
9084         Use uidl.
9085         (elmo-pop3-uidl-to-number): New function.
9086         (elmo-pop3-number-to-uidl): Ditto.
9087         (elmo-pop3-number-to-size): Ditto.
9088         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
9089         Set number by use of uidl.
9090         (elmo-pop3-msgdb-create-message): Likewise.
9091         Set size, loc-alist in msgdb.
9092         (elmo-pop3-read-msg): Set number by use of uidl.
9093         Added optional argument `msgdb'.
9094         (elmo-pop3-delete-msg): Ditto.
9095         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
9096         (elmo-pop3-commit): Close connection.
9097
9098         * elmo-pipe.el (elmo-pipe-max-of-folder):
9099         Bind `elmo-pop3-use-uidl' as nil.
9100         (elmo-pipe-drain): Ditto.
9101         Call `elmo-commit'.
9102
9103         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
9104         (elmo-msgdb-overview-entity-set-size): New defsubst.
9105
9106 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
9107
9108         * elmo-vars.el (elmo-use-killed-list): New variable
9109         (Renamed from `elmo-nntp-use-killed-list').
9110         (elmo-nntp-use-killed-list): Eliminated.
9111
9112         * elmo-msgdb.el (elmo-msgdb-expand-path):
9113         Changed expanding msgdb path for elmo-multi.
9114
9115         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
9116         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
9117         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
9118         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
9119         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
9120         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
9121         (toplevel): Deleted time-stamp line.
9122
9123         * elmo2.el (elmo-clear-killed ): Defined as function
9124         (Abolished defining as a backend function).
9125         All other related modules are changed.
9126
9127 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
9128
9129         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
9130
9131 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
9132
9133         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
9134
9135 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
9136
9137         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
9138
9139 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
9140
9141         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
9142         asynchronous folder check.
9143
9144         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
9145
9146         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
9147         `elmo-nntp-use-killed-list'.
9148         (elmo-nntp-list-folder): Use killed list.
9149         (elmo-nntp-max-of-folder): Ditto.
9150         (elmo-nntp-msgdb-create): Set killed list.
9151
9152         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
9153
9154         * elmo2.el (elmo-clear-killed): New backend function.
9155         All other related modules are changed.
9156
9157 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
9158
9159         * elmo-util.el (elmo-imap4-spec-folder): Use
9160         `elmo-imap4-spec-mailbox'; Mark as obsolete.
9161         All callers changed.
9162
9163 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
9164
9165         * mmelmo-2.el (initialize-instance):
9166         Use `mime-buffer-entity-buffer-internal' instead of
9167         `mime-entity-buffer'.
9168
9169         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
9170         (mime-entity-body): Implemented.
9171         (mime-goto-header-start-point): Deleted.
9172         (mime-goto-body-end-point): Ditto.
9173         (mime-entity-point-min): Ditto.
9174         (mime-entity-point-max): Ditto.
9175         (mime-entity-children): Ditto.
9176         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
9177         instead of `mime-entity-buffer'.
9178         (mime-entity-header-buffer): Ditto.
9179         (mime-entity-body-buffer): Ditto.
9180         (mime-write-entity-content): Ditto.
9181
9182         * pldap.el (ldap-static-if): New macro.
9183         (toplevel): Use it instead of `static-if'.
9184
9185 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
9186
9187         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
9188         included in `attrs' argument.
9189
9190 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
9191
9192         * elmo-util.el (elmo-get-passwd): Use old backquote style.
9193
9194         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
9195         (ldap-ldif-safe-init-char-regexp): Ditto.
9196         (ldap-ldif-safe-string-regexp): Ditto.
9197         (ldap/ldif-safe-string-p): New macro.
9198         (ldap/ldif-insert-field): Ditto.
9199         (ldap-modify): Use it.
9200         (ldap-add): Ditto.
9201         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
9202         (ldap-decode-attribute): Decode only when `attr' is consp.
9203         (ldap-delete): Bind `ret'.
9204         (toplevel): Require 'cl at compile time.
9205         Removed (require 'poe) and (require 'std11).
9206         (pldap-version): Eliminated.
9207         (ldap-search-basic): Removed auth and dn binding.
9208         (ldap-ldif-field-name-regexp): New constant.
9209         (ldap-ldif-field-head-regexp): Ditto.
9210         (ldap-ldif-next-field-head-regexp): Ditto.
9211         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
9212         (ldap/field-end): New function.
9213         (ldap/field-body): Use it.
9214         (ldap/collect-field): Ditto.
9215         (ldap-search-basic): Use `ldap/field-body'.
9216
9217 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
9218
9219         * pldap.el (ldap-default-attribute-encoder): New user option.
9220         (ldap/field-body): Decode base64 string.
9221         (ldap/collect-field): Ditto.
9222         (ldap-encode-attribute): New function.
9223         (ldap-add-entries): Use it.
9224         (ldap-modify-entries): Ditto.
9225         (ldap-search-entries): Enclosed decoding function with
9226         `with-temp-buffer' and set as unibyte.
9227         (ldap-search-basic): Set process buffer as unibyte.
9228
9229         * elmo-util.el (elmo-folder-identical-system-p):
9230         Eliminated name space checking.
9231
9232         * pldap.el: New module.
9233         toplevel: Changed condition to detect built-in ldap feature.
9234         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
9235         (ldap-add): Added error handling.
9236         (ldap-modify): Ditto.
9237         (ldap-delete): Ditto.
9238
9239 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
9240
9241         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
9242         Initialize local variables with `let'.  Inline a temporary
9243         variable for the progress percentage.  Sort `setq' to reduce
9244         function call in the while-loop.
9245
9246         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
9247         into the conditional branch.
9248
9249 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
9250
9251         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
9252         Move a conditional out of the while-loop.
9253
9254 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9255
9256         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
9257         elmo-msgdb-overview-get-entity-by-number.
9258         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
9259         throw.
9260
9261 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
9262
9263         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
9264         the local variable for a packed number self descriptively.
9265
9266 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9267
9268         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
9269         * elmo-localdir.el (elmo-localdir-pack-number): Use
9270         `elmo-msgdb-overview-get-entity' instead of
9271         `elmo-msgdb-overview-get-entity-by-number'.
9272         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
9273         (elmo-msgdb-search-overview-entity): Removed.
9274         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
9275         by message-id or number.
9276         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
9277         instead of `elmo-msgdb-overview-get-entity-by-number'.
9278
9279 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9280
9281         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
9282         non-nil, use hash table for overview.
9283         (elmo-hash-maximum-size): New variable.
9284         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
9285         (elmo-msgdb-make-overview-hashtb): New function.
9286         (elmo-msgdb-clear-overview-hashtb): New function.
9287         (elmo-clear-hash-val): New macro.
9288         All other related modules are changed.
9289
9290 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
9291
9292         * elmo2.el (elmo-move-msgs): If there's other message with
9293         same message-id, don't use cache.
9294
9295 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
9296
9297         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
9298         number is already packed.
9299
9300 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
9301
9302         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
9303
9304 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9305
9306         * elmo-vars.el (elmo-display-progress-threshold): New variable.
9307         All other related modules are changed.
9308
9309 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
9310
9311         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
9312         of refiling failure on Maildir.
9313
9314 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9315
9316         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
9317         decoded mime-charset with cache.
9318         (elmo-msgdb-overview-entity-get-from): Ditto.
9319         (elmo-msgdb-overview-entity-get-subject): Ditto.
9320         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9321
9322 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9323
9324         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9325         (elmo-remove-passwd): Fill password with 0 before erase.
9326         * elmo-vars.el (elmo-passwd-life-time): New variable.
9327
9328 \f
9329 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9330
9331         * elmo-cache.el (elmo-buffer-cache-add):
9332         Set message cache buffer as unibyte.
9333
9334 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9335
9336         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9337         become nil.
9338
9339 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9340
9341         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9342         when display is finished.
9343         (elmo-nntp-msgdb-create): Ditto.
9344         (elmo-nntp-groups-read-response): Ditto.
9345         (elmo-nntp-retrieve-headers): Ditto.
9346         (elmo-nntp-msgdb-create-message): Ditto.
9347         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9348         (elmo-pop3-msgdb-create-message): Ditto.
9349
9350 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9351
9352         * elmo-maildir.el (elmo-maildir-msgdb-create):
9353         Use `elmo-msgdb-sort-by-date'.
9354
9355 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9356
9357         * elmo2.el (elmo-read-msg-no-cache):
9358         Eliminated arguments after `outbuf'.
9359         Don't use cache even if it exists.
9360         (elmo-read-msg): Don't pass arguments after `outbuf' to
9361         `elmo-read-msg-no-cache'.
9362
9363 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9364
9365         * elmo-archive.el (elmo-archive-list-folders):
9366         Use `file-name-directory' if base folder does not exist.
9367
9368 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9369
9370         * elmo-archive.el (elmo-archive-list-folders): Don't use
9371         `file-name-directory'.
9372
9373 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9374
9375         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9376         If `force' is non-nil, try flushing all operation queues.
9377
9378 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9379
9380         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9381         as-binary-process.
9382
9383 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9384
9385         * elmo-util.el (elmo-display-progress): Fixed.
9386
9387 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9388
9389         * elmo-util.el (elmo-display-progress): New function.
9390         All other related modules are changed.