2008-06-30 Tetsurou Okazaki <okazaki@be.to>
[elisp/wanderlust.git] / elmo / ChangeLog
1 2008-06-30  Tetsurou Okazaki  <okazaki@be.to>
2
3         * elmo-imap4.el (elmo-imap4-parse-status): Use `case' instead of `cond'.
4
5 2008-06-30  Don Bashford  <Don.Bashford@stjude.org>
6
7         * elmo-imap4.el (elmo-imap4-parse-status): Accept IMAP4 tokens in a
8         case-insensitive fashion.
9
10 2008-03-30  Tetsurou Okazaki  <okazaki@be.to>
11
12         * elmo-imap4.el (elmo-imap4-send-command): Combine `process-send-string' calls.
13
14 2008-02-20  TAKAHASHI Kaoru  <kaoru@kaisei.org>
15
16         * elmo-util.el (elmo-add-name-to-file, elmo-field-body): Use
17         `eval-and-compile' for suppress compile warnings.
18
19         * elmo-vars.el (dynamic-link, dynamic-call): Use `defalias-maybe'
20         instead of `defun-maybe'
21
22         * elmo-util.el: Add (eval-when-compile (require 'static)).
23
24 2008-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
25
26         * mmimap.el: Remove (require 'static).
27         * acap.el: Ditto.
28
29         * elmo-flag.el: Move ';;; Code:' comment.
30         * elmo-imap4.el: Ditto.
31         * elmo-net.el: Ditto.
32
33         * elmo-version.el (product-provide): Fix comment.
34
35 2008-02-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
36
37         * slp.el: Add (eval-when-compile (require 'cl)).
38         * elmo-date.el: Ditto.
39         * elmo-pop3.el: Ditto.
40         * elmo-mime.el: Add (eval-when-compile (require 'elmo)).
41
42 2008-02-17  TAKAHASHI Kaoru  <kaoru@kaisei.org>
43
44         * modb.el (elmo-msgdb-match-condition-primitive): Use
45         `string-to-number' instead of `string-to-int'.
46
47         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer)
48         (elmo-msgdb-message-match-condition)
49         (elmo-msgdb-create-message-entity-from-buffer): Use
50         `string-to-number' instead of `string-to-int'.
51
52         * elmo.el (elmo-folder-confirm-appends): Use `string-to-number'
53         instead of `string-to-int'.
54
55         * elmo-util.el (elmo-cache-expire-by-age): Use `string-to-number'
56         instead of `string-to-int'.
57
58         * elmo-pop3.el (elmo-pop3-list-by-list, elmo-folder-status): Use
59         `string-to-number' instead of `string-to-int'.
60
61         * elmo-nntp.el (elmo-nntp-make-msglist)
62         (elmo-folder-list-messages-plugged, elmo-nntp-folder-status)
63         (elmo-nntp-create-msgdb-from-overview-string)
64         (elmo-nntp-parse-xhdr-response, elmo-nntp-msgdb-create-message)
65         (elmo-nntp-search-primitive): Use `string-to-number' instead of
66         `string-to-int'.
67
68         * elmo-net.el (elmo-net-folder-set-parameters): Use
69         `string-to-number' instead of `string-to-int'.
70
71         * elmo-localdir.el (elmo-localdir-list-subr): Use
72         `string-to-number' instead of `string-to-int'.
73
74         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Use
75         `string-to-number' instead of `string-to-int'.
76
77         * elmo-date.el (elmo-date-get-datevec): Use `string-to-number'
78         instead of `string-to-int'.
79
80         * elmo-archive.el (elmo-archive-list-folder-subr): Use
81         `string-to-number' instead of `string-to-int'.
82
83 2008-02-16  TAKAHASHI Kaoru  <kaoru@kaisei.org>
84
85         * elmo-util.el (elmo-get-passwd): Fix typo.
86
87         * elmo-nntp.el (elmo-nntp-get-server-command)
88         (elmo-nntp-set-server-command, elmo-nntp-xover-p)
89         (elmo-nntp-listgroup-p, elmo-nntp-set-listgroup)
90         (elmo-nntp-list-active-p, elmo-nntp-set-list-active)
91         (elmo-nntp-xhdr-p, elmo-nntp-set-xhdr): New backquote style.
92
93         * elmo-imap4.el (elmo-imap4-debug)
94         (elmo-imap4-response-continue-req-p, elmo-imap4-response-ok-p)
95         (elmo-imap4-response-bye-p, elmo-imap4-response-garbage-p)
96         (elmo-imap4-response-value, elmo-imap4-response-error-text)
97         (elmo-imap4-response-bodydetail-text, elmo-imap4-value)
98         (elmo-imap4-nth, elmo-imap4-detect-search-charset)
99         (elmo-imap4-identical-system-p): New backquote style.
100
101 2008-02-15  TAKAHASHI Kaoru  <kaoru@kaisei.org>
102
103         * elmo-dop.el (elmo-make-dop-queue): New backquote style.
104         (elmo-dop-queue-fname, elmo-dop-queue-method): Ditto.
105         (elmo-dop-queue-arguments): Ditto.
106
107         * elmo-date.el (elmo-match-substring): New backquote style.
108         (elmo-match-string, elmo-match-buffer): Ditto.
109         (elmo-date-make-sortable-string): Ditto.
110
111         * elmo-archive.el (elmo-archive-get-method):New backquote style.
112         (elmo-archive-get-suffix, elmo-archive-get-regexp): Ditto.
113
114         * elmo-multi.el (elmo-multi-real-folder-number): New backquote
115         style.
116
117         * elmo-net.el (elmo-network-stream-type-spec-string): New
118         backquote style.
119         (elmo-network-stream-type-symbol): Ditto.
120         (elmo-network-stream-type-feature): Ditto.
121         (elmo-network-stream-type-function): Ditto.
122         (elmo-network-session-buffer): Ditto.
123
124         * elmo-util.el (elmo-file-cache-expand-path): New backquote style.
125         (elmo-file-cache-status, elmo-file-cache-path): Ditto.
126         (elmo-make-file-cache, elmo-string, elmo-get-passwd): Ditto.
127         (elmo-bind-directory, elmo-set-work-buf): Ditto.
128
129         * elmo.el (elmo-folder-send): New backquote style.
130
131 2008-02-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
132
133         * pldap.el (ldap-static-if): New backquote style.
134         (ldap/ldif-safe-string-p): Ditto.
135         (ldap/ldif-insert-field): Ditto.
136
137         * elmo-version.el (elmo-version): Up to 2.15.6.
138
139 2008-01-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
140
141         * elmo-imap4.el (elmo-folder-list-messages-plugged): Don't include
142         messages with \Deleted flag.
143         (elmo-folder-delete-messages-plugged): Ask before sending expunge
144         command if there are messages with \Deleted flag.
145
146 2007-04-24  Yoichi NAKAYAMA  <yoichi@geiin.org>
147
148         * elmo-pop3.el (elmo-pop3-auth-apop): Use more strict regexp.
149         http://seclists.org/bugtraq/2007/Apr/0018.html
150         (Suggested by Tatsuya Kinoshita)
151
152 2007-04-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
153
154         * elmo-imap4.el (elmo-folder-delete): Don't call close for mailbox
155         with \Noselect attribute.
156
157 2007-04-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
158
159         * elmo-imap4.el (elmo-folder-list-subfolders): Fix handling of
160         hierarchical folder structure with UW-imapd.
161
162 2007-02-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
163
164         * elmo-imap4.el (elmo-imap4-clear-login): Don't send LOGIN command
165         when the LOGINDISABLED capability is advertised.
166
167 2007-01-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
168
169         * elmo-msgdb.el (elmo-msgdb-extra-fields): Make it non-destructive.
170
171 2007-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
172
173         * elmo-shimbun.el (elmo-shimbun-update-overview): Add argnument
174         `entity'.
175         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview' only
176         if the message entity is exists.
177
178 2007-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
179
180         * elmo-util.el (elmo-msgdb-insert-file-header): Call
181         `elmo-delete-cr-buffer'.
182
183         * elmo-localdir.el (elmo-message-fetch-internal): Use
184         `insert-file-contents-as-raw-text' instead of
185         `insert-file-contents-as-binary'.
186
187         * elmo-maildir.el (elmo-map-message-fetch): Ditto.
188
189 2006-12-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
190
191         * elmo-imap4.el (elmo-network-initialize-session): Check to
192         retrieve a whole greeting message.
193
194 2006-11-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
195
196         * elmo-flag.el (elmo-folder-commit): Encode `.minfo' at save.
197
198 2006-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
199
200         * elmo-util.el (elmo-safe-plist-get): New alias or macro.
201         (elmo-progress-notify): Use it instead of `plist-get'.
202
203 2006-11-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
204
205         * elmo.el (elmo-generic-folder-append-messages): Remove unused
206         variable `table'.
207
208 2006-11-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
209
210         * elmo-pipe.el (elmo-folder-set-plugged): Define.
211
212 2006-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
213
214         * elsp-bsfilter.el (elmo-spam-bsfilter-use-remote): New user option.
215         (elmo-spam-list-spam-messages): Check it option.
216
217 2006-11-08  Tetsurou Okazaki  <okazaki@be.to>
218
219         * elmo-util.el (elmo-with-progress-display): Return the value
220         of the last form in `body'.
221
222 2006-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
223
224         * elmo-util.el (elmo-progress-start): Accept nil for `total'.  Set
225         `elmo-progress-counter' as t when a query callback returns nil.
226         (elmo-progress-clear): New function.
227         (elmo-progress-done): Split into `elmo-progress-clear'.
228         (elmo-progress-notify): Update a total slot when it is nil.
229         (elmo-with-progress-display): Call `elmo-progress-clear' in
230         unwind-protect and move calling `elmo-progress-done' to outside.
231
232         * elmo-imap4.el (elmo-imap4-find-next-line): Call
233         `elmo-progress-notify' with :total parameter instead of
234         `elmo-progress-counter-set-total'.
235
236 2006-11-07  Tetsurou Okazaki  <okazaki@be.to>
237
238         * elmo-util.el (elmo-cache-expire-by-age): Add docstring.
239         Make it interactive.
240         (elmo-progress-start): Avoid updating `elmo-progress-counter'
241         when a query callback returns nil.  Return a progress counter
242         instead of t whenever a start callback was called.
243
244 2006-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
245
246         * elmo-imap4.el (elmo-imap4-session-capable-p): New macro.
247         (elmo-imap4-send-command): Use it.
248         (elmo-network-initialize-session): Ditto.
249         (elmo-network-setup-session): Ditto.
250         (elmo-folder-msgdb-create-plugged): Ditto.
251
252 2006-11-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
253
254         * elmo-util.el (elmo-progress-done): Fix a miss refer to
255         `elmo-progress-counter'.
256
257 2006-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
258
259         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Abolish.
260         (elsp-bsfilter-list-spam-filter): New function.
261         (elsp-bsfilter-start-list-spam): Ditto.
262         (elsp-bsfilter-read-list-spam): Ditto.
263         (elmo-spam-list-spam-messages): Use async process to display
264         progress message by each message.
265
266 2006-11-03  Yoichi NAKAYAMA  <yoichi@geiin.org>
267
268         * elmo-spam.el (elmo-spam-process-messages-as-mbox): Fix problem
269         of flushing previously inserted message contents.
270
271         * elmo-imap4.el (elmo-folder-search): Fix return value.
272
273 2006-11-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
274
275         * elmo-imap4.el (elmo-imap4-find-next-line): Check whether a label
276         of reporter is enable or not.
277
278 2006-10-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
279
280         * elmo-util.el (elmo-list-bigger-diff): Abolish.
281         (elmo-display-progress): Ditto.
282         (elmo-progress-counter-alist): Ditto.
283         (elmo-progress-set): Ditto.
284         (elmo-progress-clear): Ditto.
285         (elmo-progress-counter-all-value): Rename to
286         `elmo-progress-counter-total'.
287         (elmo-progress-counter-format): Rename to
288         `elmo-progress-counter-action'.
289         (elmo-progress-counter): New internal variable.
290         (elmo-progress-callback-function): Ditto.
291         (elmo-progress-counter-label): New function.
292         (elmo-progress-counter-set-total): Ditto.
293         (elmo-progress-counter-set-action): Ditto.
294         (elmo-progress-call-callback): Ditto.
295         (elmo-progress-start): Ditto.
296         (elmo-progress-done): Ditto.
297         (elmo-progress-notify): Rewrite.
298         (elmo-with-progress-display): Remove first argument
299         `condition'. Add optional argument `var' in `spec'.
300
301         * elmo-vars.el (elmo-display-progress-threshold): Abolish.
302         (elmo-display-retrieval-progress-threshold): Ditto.
303         (elmo-inhibit-display-retrieval-progress): Ditto.
304
305         * Replace all pair of `elmo-progress-set' and
306         `elmo-progress-clear' into `elmo-with-progress-display'.
307
308         * Replace to call `elmo-display-progress' into pair of
309         `elmo-progress-notify' and `elmo-with-progress-display'.
310
311         * elmo-version.el (elmo-version): Up to 2.15.5.
312
313 2006-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
314
315         * elmo-imap4.el (elmo-imap4-arrival-filter): Use `case' instead of
316         `cond'.
317
318 2006-10-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
319
320         * elmo-imap4.el (elmo-imap4-arrival-filter): Call delete-region in
321         cleanup-forms [wl:14027].
322
323 2006-10-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
324
325         * elmo-flag.el (elmo-global-flag-set-internal): Use
326         `elmo-copy-file' by priority when the message is a file.
327
328 2006-10-01  Yoichi NAKAYAMA  <yoichi@geiin.org>
329
330         * elmo.el: Fix typo: disptch -> dispatch.
331
332 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
333
334         * elmo.el (elmo-file-tag): New class.
335         (elmo-append-messages-disptch-table): New constant.
336         (elmo-folder-type-p): New function.
337         (elmo-folder-append-messages): Redefine as function.
338
339         * elmo-null.el (elmo-folder-append-messages): Renamed from
340         `elmo-folder-append-messages'.
341
342         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
343         (elmo-folder-append-messages-*-maildir): Renamed from
344         `elmo-folder-append-messages'.
345
346         * elmo-localdir.el (elmo-localdir-folder): Inherit
347         `elmo-file-tag'.
348         (elmo-folder-append-messages-*-localdir): Renamed from
349         `elmo-folder-append-messages'.
350
351         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
352         from `elmo-folder-append-messages'.
353
354         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
355         `elmo-folder-append-messages'.
356
357         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
358         function.
359         (elmo-folder-append-messages-*-filter): Ditto.
360
361         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
362
363         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
364         (elmo-folder-append-messages-*-pipe): Renamed from
365         `elmo-folder-append-messages'.
366
367         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
368
369         * elmo-file.el (elmo-file-folder): Ditto.
370
371         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
372
373         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
374         from `elmo-folder-append-messages'
375
376 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
377
378         * elmo-map.el (elmo-location-map-setup): Change an argument
379         `locations' to optional.
380         (elmo-location-map-clear): Abolish.
381         (elmo-folder-clear): Follow the API change.
382
383         * elmo-pop3.el (elmo-folder-clear): Ditto.
384
385         * elmo-pop3.el (toplevel): Require elmo-map.
386         (elmo-pop3-folder): Inherit elmo-location-map and abolish
387         location-alist slot (All other related portions are changed).
388         (elmo-pop3-folder-use-uidl): New function.
389         (elmo-folder-msgdb-create): Don't sort message entities.
390         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
391         (elmo-pop3-number-to-size): Convert return value to number.
392         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
393         working buffer.
394
395         * elmo-map.el: Use `location-map' as a variable name for instance
396         instead of `mapper'.
397         (elmo-location-map-setup): Return location alist.
398         (elmo-location-map-update): Ditto.
399
400 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
401
402         * elmo-map.el (elmo-location-map): New class; split location and
403         number mapping from elmo-map-folder (All other related portions
404         are changed).
405
406         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
407         change.
408
409         * elmo-version.el (elmo-version): Up to 2.15.4.
410
411 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
412
413         * elmo-vars.el (elmo-use-hardlink): New user option.
414
415         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
416         `elmo-use-hardlink'.
417
418         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
419         killed-list.
420         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
421         instead of `*-internal'. Use `elmo-with-progress-display'.
422
423 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
424
425         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
426         `elmo-spam-process-messages-as-mbox'.
427
428         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
429
430 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
431
432         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
433         argument BUFFER of `call-process'.
434
435 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
436
437         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
438         args.
439         (elsp-bsfilter-list-spam-files): Ditto.
440
441 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
442
443         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
444         (elmo-spam-bsfilter-max-messages-per-process): New use option.
445         (elmo-spam-bsfilter-debug): Fix a group.
446         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
447         `--homedir'.
448         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
449         (elsp-bsfilter-list-spam-files): New function.
450         (elmo-spam-list-spam-messages): Define.
451         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
452         (elmo-spam-bsfilter-register-messages): New function.
453         (elmo-spam-register-spam-messages): Define.
454         (elmo-spam-register-good-messages): Ditto.
455
456         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
457
458         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
459         `nconc' and `consp'.
460
461 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
462
463         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
464         hash table to test whether a location is exists.
465
466 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
467
468         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
469         even if some error occurred.
470
471         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
472         meaningless unwind-protect.
473
474         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
475         start-number correctly.
476         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
477         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
478
479 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
480
481         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
482         (elmo-folder-initialize): Use it.
483         (elmo-global-flag-replace-referrer): New function.
484
485         * elmo.el (toplevel): Added autoload setting for
486         `elmo-global-flag-replace-referrer'.
487         (elmo-folder-rename): Rewrite the last change use
488         `elmo-global-flag-replace-referrer'.
489
490         * elmo-pipe.el (elmo-folder-rename): Call
491         `elmo-global-flag-replace-referrer'.
492
493 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
494
495         * elmo.el (elmo-folder-rename): Set meta data for global flags
496         follow the rename.
497
498 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
499
500         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
501         as 'not-loaded.
502         (elmo-folder-close): Ditto.
503         (elmo-filter-folder-number-list-loaded-p): New function.
504         (elmo-filter-folder-number-list): Check whether loaded or not.
505         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
506         of `elmo-filter-folder-number-list-internal'.
507         (elmo-folder-delete-messages): Ditto.
508         (elmo-folder-length): Check whether number-list is loaded or not.
509
510 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
511
512         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
513         field `real field' into each element of list.
514         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
515         (elmo-msgdb-message-entity-field): Ditto.
516         (modb-entity-ml-info-real-fields): New function.
517
518         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
519
520         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
521         `elmo-msgdb-extra-fields'.
522
523 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
524
525         * elmo-util.el (elmo-passwd-alist-load): Move point to min
526         position before read.
527
528 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
529
530         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
531         (elmo-global-flags-initialize): Ditto.
532
533 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
534
535         * elmo-archive.el (toplevel): Don't require emu, std11
536         and elmo-localdir.
537
538         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
539         definition.
540
541 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
542
543         * elmo.el (elmo-folder-confirm-appends): Display folder name.
544
545 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
546
547         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
548         literals.
549
550 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
551
552         * elmo-maildir.el (elmo-maildir-list-location): Reduce
553         `elmo-get-last-modification-time' call.
554
555 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
556
557         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
558         expression.
559         (elmo-maildir-set-mark): Ditto.
560         (elmo-maildir-delete-mark): Ditto.
561
562 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
563
564         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
565         optional argument `separators'.
566
567 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
568
569         * elmo.el (cache-changed): Abolish.
570         (status-changed): New signal.
571         (elmo-message-killed-p): New generic function and define for
572         elmo-folder.
573         (elmo-folder-recover-messages): Ditto.
574         (elmo-message-set-cached): Emit signal `status-changed' instead of
575         `cache-changed'.
576         (elmo-message-status): New macro.
577         (elmo-message-status-folder): Ditto.
578         (elmo-message-status-number): Ditto.
579         (elmo-message-status-set-flags): Ditto.
580         (elmo-message-status-set-killed): Ditto.
581         (elmo-message-status-flags): New function.
582         (elmo-message-status-cached-p): Ditto.
583         (elmo-message-status-killed-p): Ditto.
584
585         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
586         `status-changed' instead of `cache-changed'.
587         (elmo-folder-recover-messages): Define.
588         (elmo-message-killed-p): Ditto.
589
590         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
591         `status-changed' instead of `cache-changed'.
592
593         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
594         (elmo-message-killed-p): Define.
595         (elmo-folder-recover-messages): Ditto.
596
597         * elmo-version.el (elmo-version): Up to 2.15.3.
598
599 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
600
601         * elmo-signal.el (elmo-signal-bindings): Use cons to append
602         element into list.
603         (elmo-define-signal-handler): Add docstring.
604         (elmo-define-signal-filter): Ditto.
605
606         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
607
608 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
609
610         * elmo-util.el (elmo-flatten): Don't use recursive call.
611
612         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
613         assignment.
614         (elmo-folder-message-make-temp-files): Use `number-to-string'
615         instead of `int-to-string'.
616
617 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
618
619         * elmo-search.el (elmo-folder-delete-messages): Define.
620
621 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
622
623         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
624         customization type.
625         (elmo-mailing-list-count-spec-list): Ditto.
626
627         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
628         for `list-id'.
629
630 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
631
632         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
633         handling.
634
635 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
636
637         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
638         (elmo-mailing-list-count-spec-list): Ditto.
639
640         * elmo-util.el (elmo-map-until-success): New function.
641         (elmo-string-match-substring): Ditto.
642         (elmo-find-list-match-value): Ditto.
643
644         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
645         Removed.
646         (modb-entity-extract-ml-info-from-subject): Ditto.
647         (modb-entity-extract-ml-info-from-return-path): Ditto.
648         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
649         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
650         (modb-entity-extract-ml-info-from-mailman): Ditto.
651         (modb-entity-extract-mailing-list-info-functions): Ditto.
652         (modb-entity-extract-mailing-list-info): Rewrite with
653         `elmo-find-list-match-value'.
654
655 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
656
657         * elmo-net.el (elmo-network-session-retry-count): New user option.
658         (elmo-network-session-buffer-name): New internal function.
659         (elmo-network-session-buffer-create): Ditto.
660         (elmo-network-open-session): Retry open network session
661         `elmo-network-session-retry-count' times.
662
663 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
664
665         * elmo-util.el (elmo-list-filter): Rewritten.
666
667 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
668
669         * elmo-util.el (elmo-string-member): Allow symbol element in list.
670
671 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
672
673         * elmo-search.el (elmo-make-search-engine): Use prefix
674         `elmo-search-' for require symbol instead of `else-'.
675         (elmo-search-engine-extprog): New class.
676         (elmo-search-engine-do-search): Remove nil from argument
677         list. Added argument pattern to evaluate element as function.
678         (elmo-search-engine-local-file): Derived from
679         `elmo-search-engine-extprog'.
680         (elmo-search-engine-create-message-entity): Check existance of file.
681         (elmo-search-engine-fetch-message): Ditto.
682         (elmo-search-namazu-index): Follow the API change.
683         (elmo-search-grep-target): Ditto.
684
685 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
686
687         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
688         characters of working buffer.
689
690         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
691         Does not bind `default-mime-charset'.
692         (elmo-msgdb-create-message-entity-from-buffer): Removed
693         unnecessary local bind.
694
695         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
696         function.
697         (modb-entity-extract-mailing-list-info-functions): Added it.
698
699 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
700
701         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
702         when number and message-id are non-nil.
703
704         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
705
706         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
707         conditional steatment.
708         (elmo-pop3-auth-apop): Likewise.
709         (elmo-network-authenticate-session): Likewise.
710
711 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
712
713         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
714         symbol `fill-column'.
715         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
716         decode field value.
717
718         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
719         (elmo-decoded-field-body): Ditto.
720
721 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
722
723         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
724         `tokens' to `params'.
725
726 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
727
728         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
729         working buffer.
730
731 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
732
733         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
734         decide index.
735
736 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
737
738         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
739         Set default value as nil.
740         (toplevel): Register search engines by
741         `elmo-search-register-engine' if there are not defined.
742
743         * elmo.el (autoload): Added autoload setting for
744         `elmo-search-register-engine'.
745
746 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
747
748         * elmo.el (toplevel): `[' is redefined as the prefix of the search
749         folder instead of nmz folder.
750         (elmo-nmz-default-index-path): Added obsolete variable setting.
751         (elmo-nmz-index-alias-alist): Ditto.
752         (elmo-nmz-use-drive-letter): Ditto.
753
754         * elmo-search.el (elmo-search-register-engine): New function.
755
756         * elmo-nmz.el: Removed.
757
758         * elmo-version.el (elmo-version): Up to 2.15.2.
759
760 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
761
762         * elmo-search.el: New file.
763
764 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
765
766         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
767         condition `larger' and `smaller'.
768
769 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
770
771         * elmo-util.el (elmo-safe-filename): Rewrite to replace
772         `"' (double quote) into "_Q_".
773
774 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
775
776         * elmo-net.el (elmo-net-quote-chars): Abolish.
777         (elmo-net-format-quoted): Ditto.
778
779 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
780
781         * elmo.el (elmo-get-folder-function): New variable.
782         (elmo-get-folder): New function.
783         (elmo-folder-rename): Call `elmo-make-folder' with specified
784         mime-charset.
785
786         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
787         `elmo-make-folder'.
788         (elmo-split-subr): Ditto.
789
790         * elmo-multi.el (elmo-folder-initialize): Ditto.
791
792         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
793
794         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
795         (elmo-flag-get-folder): Ditto.
796
797         * elmo-filter.el (elmo-folder-initialize): Ditto.
798
799         * elmo-access.el (elmo-folder-initialize): Ditto.
800         (elmo-access-folder-update-children): Ditto.
801
802         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
803         (elmo-dop-queue-flush): Ditto.
804         (elmo-folder-append-buffer-dop-delayed): Ditto.
805         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
806         mime-charset.
807
808         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
809         instead of `elmo-make-folder'.
810         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
811         destination folder instead of send `elmo-folder-rename-internal'.
812
813         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
814         slot of subfolder instead of create it.
815
816 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
817
818         * elmo-util.el (elmo-collect-separators): New function.
819         (elmo-collect-separators-internal): Ditto.
820         (elmo-collect-trail-separators): Ditto.
821         (elmo-parse-separated-tokens): Ditto.
822         (elmo-parse-separated-tokens-internal): Ditto.
823         (elmo-quote-syntactical-element): Ditto.
824
825         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
826         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
827
828         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
829         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
830         (elmo-nntp-folder-list-subfolders): Quote a user name.
831
832         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
833         (elmo-net-parse-network): Abolish.
834         (elmo-net-folder-set-parameters): New function.
835         (elmo-folder-initialize): Follow the above change.
836
837         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
838         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
839         (elmo-folder-list-subfolders): Use
840         `elmo-quote-syntactical-element' instead of
841         `elmo-net-format-quoted' to quote mailbox and user name.
842
843 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
844
845         * elmo-util.el (elmo-token-valid-p): New function.
846         (elmo-parse-token): Add optional argument `requirement'.
847         (elmo-parse-prefixed-element): Likewise.
848
849         * elmo-net.el (elmo-net-quote-chars): Renamed from
850         `elmo-net-quote-chars-regexp'.
851         (elmo-net-format-quoted): Add optional argument `extra-chars'.
852
853         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
854         by info document. Check token `uidl' is started an alphabet.
855
856         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
857         by info document. Check token `user' is started an alphabet.
858
859         * elmo-imap4.el (elmo-folder-initialize): Ditto.
860         (elmo-folder-list-subfolders): Quote user.
861
862 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
863
864         * elmo-util.el (elmo-quoted-specials-list): New constant.
865         (elmo-quoted-token): New function.
866
867         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
868         (elmo-net-format-quoted): New function.
869         (elmo-net-parse-network): Ditto.
870         (elmo-folder-initialize): Use it.
871
872         * elmo-nntp.el (elmo-folder-initialize): Use
873         `elmo-net-parse-network' to parse network specification instead of
874         `elmo-folder-initialize#elmo-net'.
875
876         * elmo-pop3.el (elmo-folder-initialize): Ditto.
877
878         * elmo-imap4.el (elmo-folder-initialize): Ditto.
879         (elmo-folder-list-subfolders): Quote folder name by
880         `elmo-net-format-quoted'.
881
882 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
883
884         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
885         (elmo-folder-search): Use it.
886
887 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
888
889         * modb-standard.el (modb-standard-loaded-message-id): Use
890         `elmo-msgdb-message-entity-field'.
891
892 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
893
894         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
895         without filename.
896
897 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
898
899         * elmo-util.el (elmo-set-auto-coding): New function.
900         (elmo-object-load): Use it.
901
902 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
903
904         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
905         (elmo-time<): Define as alias of `elmo-time-less-p'.
906         (elmo-time-to-datevec): New function.
907
908         * elmo-date.el (elmo-time-to-days): New function.
909
910 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
911
912         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
913         is not cons cell.
914
915 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
916
917         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
918         parenthesis.
919
920         * elmo-util.el (elmo-map-recursive): New function.
921
922         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
923         (modb-entity-encode-string-recursive): Ditto.
924
925 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
926
927         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
928         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
929         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
930         compare sequence number when last modified time is nil.
931
932 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
933
934         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
935
936         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
937
938 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
939
940         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
941         modification time of the file.
942
943 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
944
945         * elmo-util.el (elmo-condition-optimize): Discriminated against
946         preserved fields, extra fields and the other weight.
947
948 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
949
950         * modb-entity.el (initialize-instance): Define.
951         (modb-entity-handler-mime-charset): New internal function.
952         (modb-standard-entity-set-field): Use it.
953         (elmo-msgdb-message-entity-field): Ditto.
954         (elmo-msgdb-message-entity-field): Ditto.
955
956         * modb.el (elmo-msgdb-match-condition): Rewrite with
957         `elmo-condition-match'.
958         (elmo-msgdb-match-condition-primitive): New function.
959
960         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
961         arguments `flags' and `numbers'.
962         (elmo-msgdb-match-condition-primitive): Abolished (merged to
963         `elmo-msgdb-message-match-condition').
964         (modb-buffer-entity-handler): New class.
965
966         * elmo.el (elmo-folder-search): Optimize condition to use
967         `elmo-condition-optimize'.
968         (elmo-message-buffer-match-condition): New function.
969         (elmo-message-match-condition): Use
970         `elmo-message-buffer-match-condition' instead of
971         `elmo-buffer-field-condition-match'.
972
973         * elmo-util.el (elmo-condition-match): New function.
974         (elmo-condition-optimize): Ditto.
975         (elmo-buffer-field-primitive-condition-match): Abolish.
976         (elmo-buffer-field-condition-match): Ditto.
977
978         * elmo-archive.el (elmo-archive-field-condition-match): Use
979         `elmo-message-buffer-match-condition' instead of
980         `elmo-buffer-field-condition-match'.
981
982 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
983
984         * elmo-flag.el (elmo-global-flags-initialize): Check the
985         existence of the flag directory.
986
987 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
988
989         * elmo-access.el (elmo-folder-initialize): Call
990         `elmo-multi-connect-signals'.
991
992         * elmo-pipe.el (elmo-folder-close): Define.
993
994         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
995         children folders.
996
997         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
998         with target folder.
999
1000         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
1001         `number'.
1002
1003         * elmo-multi.el (elmo-message-entity): Don't use return value of
1004         `elmo-message-entity-set-number'.
1005
1006 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1007
1008         * modb.el (modb-generic): Added slot `mime-charset'.
1009
1010         * modb-standard.el (modb-standard): Added slot `overview-handler'.
1011         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
1012         and `modb-entity-handler-dump-parameters'.
1013         (modb-standard-default-entity-handler): Abolish.
1014         (elmo-msgdb-message-entity-handler): Save created handler by
1015         instance slot.
1016
1017         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
1018         (modb-entity-handler-list-parameters): New method.
1019         (modb-entity-handler-equal-p): New function.
1020         (modb-entity-handler-dump-parameters): Ditto.
1021         (modb-entity-parse-address-string): Encode return value.
1022         (modb-entity-make-address-string): Decode argument value.
1023         (modb-entity-decode-string-recursive): New function.
1024         (modb-entity-encode-string-recursive): Ditto.
1025         (modb-standard-entity-normalizer): Set to encode field value.
1026         (modb-standard-entity-specializer): Follow the above change.
1027         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
1028         mime-charset of handler.
1029         (elmo-msgdb-message-entity-field): Ditto.
1030         (elmo-msgdb-copy-message-entity): Fixed reference to internal
1031         structure.
1032         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
1033
1034         * elmo.el (elmo-folder): Added slot `mime-charset'.
1035         (elmo-make-folder): Added argument `mime-charset'.
1036         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
1037         `mime-charest'.
1038
1039         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
1040         (elmo-make-msgdb): Likewise.
1041
1042         * elmo-internal.el (elmo-internal-folder-initialize): Call
1043         `luna-make-entity' with :mime-charset parameter.
1044
1045 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
1046
1047         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
1048         encoded words in `from' and `subject' field.
1049
1050 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1051
1052         * modb.el (elmo-msgdb-message-field): Add argument `type'.
1053         (elmo-msgdb-match-condition): Get handler from entity instead of
1054         msgdb.
1055
1056         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
1057         (modb-standard-load-entity): Treat new file format.
1058         (modb-standard-save-entity-1): Save as new file format.
1059         (modb-standard-save-entity): Split messages into section here.
1060         (elmo-msgdb-message-field): Follow the API change.
1061         (modb-standard-default-entity-handler): New internal variable.
1062         (elmo-msgdb-message-entity-handler): Define.
1063
1064         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1065         to `elmo-vars.el'.
1066         (modb-entity-field-extractor-alist): New user option.
1067         (elmo-msgdb-message-entity-field): Removed argument `decode' and
1068         added argument `type'.
1069         (elmo-msgdb-copy-message-entity): Add optional argument
1070         `make-handler'.
1071         (modb-set-field-converter): New function.
1072         (modb-convert-field-value): Ditto.
1073         (modb-entity-string-decoder): Ditto.
1074         (modb-entity-string-encoder): Ditto.
1075         (modb-entity-parse-date-string): Ditto.
1076         (modb-entity-make-date-string): Ditto.
1077         (modb-entity-mime-decoder): Ditto.
1078         (modb-entity-mime-encoder): Ditto.
1079         (modb-entity-address-list-decoder): Ditto.
1080         (modb-entity-address-list-encoder): Ditto.
1081         (modb-entity-parse-address-string): Ditto.
1082         (modb-entity-make-address-string): Ditto.
1083         (modb-entity-create-field-indices): Ditto.
1084         (modb-legacy-entity-field-slots): New constant.
1085         (modb-legacy-entity-field-indices): Ditto.
1086         (modb-legacy-entity-normalizer): New variable.
1087         (modb-legacy-entity-specializer): Ditto.
1088         (modb-legacy-entity-field-index): New macro.
1089         (modb-legacy-entity-set-field): New function.
1090         (modb-legacy-make-message-entity): Rewrite.
1091         (elmo-msgdb-create-message-entity-from-buffer): Use
1092         `elmo-msgdb-get-references-from-buffer'. Use
1093         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
1094         Use `modb-legacy-entity-set-field' instead of
1095         `elmo-msgdb-message-entity-set-field'.
1096         (elmo-msgdb-message-entity-field): Rewrite.
1097         (elmo-msgdb-message-entity-set-field): Ditto.
1098         (elmo-msgdb-copy-message-entity): Make new entity by
1099         `make-handler' if it specified.
1100         (elmo-msgdb-message-match-condition): Define a method of
1101         `modb-entity-handler' and follow the API change.
1102         (modb-standard-entity-handler): New class.
1103         (modb-entity-extract-ml-info-from-x-sequence): New function.
1104         (modb-entity-extract-ml-info-from-subject): Ditto.
1105         (modb-entity-extract-ml-info-from-return-path): Ditto.
1106         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
1107         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
1108         (modb-entity-extract-mailing-list-info): Ditto.
1109         (modb-entity-extract-mailing-list-info-functions): New variable.
1110
1111         * elmo.el (elmo-message-field): Add optional argument `type'.
1112
1113         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1114         from `modb-entity.el'.
1115
1116         * elmo-util.el (elmo-object-load): Decode by coding-system from
1117         `set-auto-coding-function'.
1118         (elmo-object-save): Use `detect-mime-charset-region' and add
1119         coding cookie if encode.
1120         (elmo-msgdb-get-references-from-buffer): New function.
1121         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
1122
1123         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
1124
1125         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
1126         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
1127         instead of `shimbun-make-header' and follow the API change.
1128         (elmo-shimbun-update-overview): Follow the API change.
1129         (elmo-map-folder-list-message-locations): Ditto.
1130
1131         * elmo-pipe.el (elmo-message-field): Ditto.
1132
1133         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
1134         Ditto.
1135
1136         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1137
1138         * elmo-multi.el (elmo-message-field): Ditto.
1139
1140         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
1141         (elmo-msgdb-sort-by-date): Ditto.
1142         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
1143         `elmo-message-entity-field'.
1144         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
1145         change.
1146         (elmo-msgdb-overview-entity-get-from): Ditto.
1147         (elmo-msgdb-overview-entity-get-subject): Ditto.
1148         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1149         (elmo-msgdb-overview-entity-get-date): Ditto.
1150         (elmo-msgdb-overview-entity-get-to): Ditto.
1151         (elmo-msgdb-overview-entity-get-cc): Ditto.
1152
1153         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1154         (elmo-mime-collect-message/partial-pieces): Ditto.
1155
1156         * elmo-filter.el (elmo-message-field): Ditto.
1157
1158         * elmo-date.el (elmo-datevec-to-time): New function.
1159         (elmo-time-parse-date-string): Ditto.
1160         (elmo-time-make-date-string): Ditto.
1161         (elmo-time<): Ditto.
1162
1163         * elmo-version.el (elmo-version): Up to 2.15.1.
1164
1165 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
1166
1167         * elmo-flag.el (elmo-global-flags-initialize): Don't include
1168         member of elmo-local-flags.
1169
1170 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
1171
1172         * elmo-version.el (elmo-version): Up to 2.15.0.
1173
1174 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1175
1176         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
1177         `ignore-msgdb' is non-nil.
1178
1179 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1180
1181         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
1182         (elmo-condition-in-msgdb-p): Ditto.
1183         (elmo-file-field-primitive-condition-match): Ditto.
1184         (elmo-file-field-condition-match): Ditto.
1185
1186         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
1187
1188 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1189
1190         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
1191         subdirectories here.
1192         (elmo-global-flags-initialize): New function.
1193
1194         * elmo.el (toplevel): Added autoload setting for
1195         `elmo-global-flags-initialize'.
1196
1197 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
1198
1199         * elmo.el (message-number-changed): Define new signal.
1200         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
1201         message-number-changed signal.
1202         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1203         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1204         Respect `elmo-pack-number-check-strict'.
1205
1206 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1207
1208         * elmo-signal.el (elmo-connect-signal): Document.
1209         (elmo-emit-signal): Ditto.
1210         (elmo-emit-signal): It should pass source argument to filter and
1211         handler, not slot-source.
1212
1213 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1214
1215         * modb.el (elmo-msgdb-update-entity): New API and define generic
1216         implement.
1217
1218         * modb-standard.el (elmo-msgdb-update-entity): Define.
1219
1220         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
1221         API and define generic implement.
1222
1223         * elmo.el (update-overview): New singnal.
1224
1225         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
1226         `elmo-msgdb-update-entity' and emit signal `update-overview'.
1227         (elmo-message-entity-parent): Define.
1228
1229         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
1230         `update-overview'.
1231
1232         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
1233
1234         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
1235
1236 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
1237
1238         * elmo.el (elmo-folder-synchronize): Sort the return value of
1239         `elmo-list-diff'.
1240
1241         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
1242         list.
1243
1244 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1245
1246         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
1247         `default-enable-multibyte-characters'.
1248         (elmo-object-load): Use `with-temp-buffer' instead of
1249         `elmo-set-work-buf'.
1250         (elmo-object-save): Ditto.
1251         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
1252         `elmo-set-work-buf'.
1253         (elmo-decoded-field-body): Ditto.
1254
1255         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
1256
1257         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
1258         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
1259
1260         * elmo-version.el (elmo-version): Up to 2.13.3.
1261
1262 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
1263
1264         * elmo-util.el (elmo-list-diff): Fix the last change.
1265         Reverse order of result lists.
1266
1267 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
1268
1269         * modb-standard.el (elmo-msgdb-set-flag): Use
1270         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
1271         (elmo-msgdb-unset-flag): Ditto.
1272
1273         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
1274         `elmo-list-diff'.
1275
1276         * elmo-util.el (elmo-list-diff): Rewrite.
1277         (elmo-list-diff-nonsortable): New function.
1278
1279 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
1280
1281         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
1282         `elmo-multibypte-buffer-name'.  All referers are updated.
1283
1284 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1285
1286         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
1287         (elmo-mime-entity-fragment-p): New function.
1288         (mime-elmo-buffer-entity): Added slot `reassembled'.
1289         (elmo-message-mime-entity): Added 4th argument `reassemble'.
1290         (elmo-message-mime-entity-internal): New function (renamed from
1291         `elmo-message-mime-entity').
1292         (elmo-mime-inherit-field-list-from-enclosed): New constant.
1293         (elmo-mime-make-reassembled-mime-entity): New function.
1294         (elmo-message-reassembled-mime-entity): Ditto.
1295         (elmo-mime-collect-message/partial-pieces): Ditto.
1296
1297 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1298
1299         * elmo.el (elmo-message-fetch-string): Disable multibyte.
1300
1301         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
1302         (elmo-with-enable-multibyte): New macro.
1303
1304         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
1305
1306 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1307
1308         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
1309         argument `number'.
1310         (elmo-filter-connect-signals): Follow the above change.
1311
1312 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
1313
1314         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
1315
1316         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
1317         that only the first flag is used.
1318
1319 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1320
1321         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
1322         if available.
1323
1324 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1325
1326         * elmo-signal.el: New file.
1327
1328         * elmo.el (toplevel): Require elmo-signal.
1329         (flag-changing, flag-changed, cache-changed): New signal.
1330         (elmo-folder): Remove slog `handlers'.
1331         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1332         `elmo-folder-notify-event'.
1333         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1334         (elmo-folder-unset-flag): Ditto.
1335         (elmo-event-handler): Abolish.
1336         (elmo-event-handler-flag-changed): Ditto.
1337         (elmo-event-handler-cache-changed): Ditto.
1338         (elmo-folder-add-handler): Ditto.
1339         (elmo-folder-remove-handler): Ditto.
1340         (elmo-folder-notify-event): Ditto.
1341
1342         * elmo-pipe.el (toplevel): Require elmo-signal.
1343         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1344         (elmo-pipe-connect-signals): New function.
1345         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1346         (elmo-folder-set-flag): Ditto.
1347         (elmo-folder-unset-flag): Ditto.
1348         (elmo-message-set-cached): Ditto.
1349
1350         * elmo-multi.el (toplevel): Require elmo-signal.
1351         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1352         (elmo-multi-connect-signals): New function.
1353         (elmo-multi-map-numbers): Ditto.
1354         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1355         (elmo-message-fetch): Ditto.
1356         (elmo-folder-set-flag): Ditto.
1357         (elmo-folder-unset-flag): Ditto.
1358
1359         * elmo-filter.el (toplevel): Require elmo-signal.
1360         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1361         (elmo-filter-connect-signals): New function.
1362         (elmo-filter-add-flag-count): Ditto.
1363         (elmo-message-fetch): Does not call
1364         `elmo-filter-folder-countup-message-flags' and
1365         `elmo-folder-notify-event'.
1366         (elmo-message-set-cached): Ditto.
1367         (elmo-folder-set-flag): Ditto.
1368         (elmo-folder-unset-flag): Ditto.
1369
1370         * elmo-version.el (elmo-version): Up to 2.13.2.
1371
1372 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1373
1374         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1375         `flags'.
1376
1377 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1378
1379         * elmo-filter.el (elmo-message-set-cached): Call
1380         `elmo-folder-notify-event' with event `cache-changed'.
1381
1382         * elmo-multi.el (elmo-message-set-cached): Ditto.
1383
1384         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1385
1386 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1387
1388         * elmo.el (elmo-folder-encache): Abolish.
1389
1390 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1391
1392         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1393         (elmo-folder-next-message-number-dop): Return appropriate negative
1394         integer.
1395
1396 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1397
1398         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1399         clearing pending operations.
1400         (elmo-folder-next-message-number-dop): Return appropriate negative
1401         integer.
1402
1403 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1404
1405         * elmo.el (toplevel): Added autoload setting for `md5'.
1406         (elmo-msgdb-path-encode-threshold): New user option.
1407         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1408         longer than `elmo-msgdb-path-encode-threshold'.
1409
1410         * elmo-flag.el (elmo-global-mark-migrate): Use
1411         `elmo-folder-expand-msgdb-path' instead of
1412         `elmo-folder-msgdb-path'.
1413
1414 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1415
1416         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1417         element of the difference is nil.
1418
1419 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1420
1421         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1422         to the check logic of file systems which are weak in colon character.
1423
1424 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1425
1426         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1427
1428 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1429
1430         * elmo-maildir.el (elmo-maildir-move-file): New function.
1431         (elmo-folder-append-buffer): Use it.
1432         (elmo-folder-append-messages): Ditto.
1433         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1434
1435         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1436         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1437
1438         * elmo-maildir.el (elmo-maildir-separator): New user option.
1439         (elmo-maildir-adjust-separator): New macro.
1440         (elmo-maildir-list-location): Use it.
1441         (elmo-maildir-update-current): Ditto.
1442         (elmo-maildir-set-mark): Ditto.
1443         (elmo-maildir-delete-mark): Ditto.
1444         (These changes are based on Hiroya Murata's patch [wl: 13437])
1445
1446 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1447
1448         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1449
1450 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1451
1452         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1453         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1454         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1455
1456 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1457
1458         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1459         Use `with-temp-buffer'.
1460
1461 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1462
1463         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1464
1465         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1466         `wl-read-search-condition').
1467         (elmo-read-search-condition-internal): Likewise.
1468
1469         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1470         (elmo-flag-valid-p): New function.
1471         (elmo-folder-initialize): Check flag name is valid.
1472
1473 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1474
1475         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1476         delimiter to obtain root mailbox itself.
1477
1478 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1479
1480         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1481         type mismatch.
1482
1483 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1484
1485         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1486         as t.
1487
1488 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1489
1490         * elmo-shimbun.el (toplevel): Require cl at compile.
1491
1492         * elmo-nntp.el (toplevel): Ditto.
1493
1494         * elmo-nmz.el (toplevel): Ditto.
1495
1496         * elmo-multi.el (toplevel): Ditto.
1497
1498         * elmo-file.el (toplevel): Ditto.
1499
1500         * elmo-dop.el (toplevel): Ditto.
1501
1502         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1503
1504 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1505
1506         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1507         as nil.
1508
1509         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1510         size of elmo-message-fetch-internal is 0 byte.
1511
1512 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1513
1514         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1515
1516 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1517
1518         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1519         always plugged.
1520
1521 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1522
1523         * elmo-maildir.el (elmo-map-message-fetch): Call
1524         `elmo-map-folder-set-flag'.
1525
1526         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1527         (elmo-message-fetch): Merge from
1528         `elmo-message-fetch-with-cache-process'.
1529
1530         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1531         (elmo-message-fetch): Define.
1532
1533         * elmo-nntp.el (elmo-message-fetch): Renamed from
1534         `elmo-message-fetch-with-cache-process'.
1535
1536         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1537         (elmo-message-fetch): Define.
1538
1539         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1540         search-key.
1541
1542         * elmo-shimbun.el (shimbun-mua-search-id): Use
1543         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1544         (elmo-shimbun-folder-shimbun-header): Ditto.
1545         (elmo-shimbun-get-headers): Ditto.
1546         (elmo-shimbun-update-overview): Ditto.
1547
1548         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1549
1550         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1551         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1552
1553 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1554
1555         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1556         message is cached.
1557         (elmo-message-fetch-string): Fixed argument.
1558
1559 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1560
1561         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1562         exchange order of arguments `section' and `unread'.
1563         (elmo-message-encache): Follow the API change.
1564         (elmo-message-match-condition): Ditto.
1565         (elmo-generic-folder-append-messages): Ditto.
1566         (elmo-message-fetch-string): New function.
1567
1568         * elmo-split.el (elmo-split-subr): Ditto.
1569
1570         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1571
1572         * elmo-pipe.el (elmo-message-fetch): Ditto.
1573
1574         * elmo-multi.el (elmo-message-fetch): Ditto.
1575
1576         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1577
1578         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1579
1580         * elmo-filter.el (elmo-message-fetch): Ditto.
1581
1582         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1583
1584         * elmo-imap4.el (mime-imap-location-section-body): Use
1585         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1586         follow the API change.
1587
1588 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1589
1590         * elmo-access.el: New file.
1591
1592         * elmo-null.el: Ditto.
1593
1594         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1595
1596 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1597
1598         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1599         (elmo-network-session): New attribute `last-accessed'.
1600         (elmo-network-get-session): Discard network cache if elapsed time
1601         since last-accessed is larger than elmo-network-session-idle-timeout.
1602
1603 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1604
1605         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1606         and added `number', `require-entireness'.
1607         (elmo-find-fetch-strategy): Rewrite.
1608         (elmo-message-fetch): Unset `unread' flag when argument unread is
1609         non-nil.
1610
1611         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1612
1613         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1614         (elmo-message-fetch): Notify event `flag-changed'.
1615
1616         * elmo-pipe.el: Likewise.
1617
1618         * elmo-mime.el (elmo-mime-entity): New class.
1619         (elmo-mime-entity-display-p): New generic function.
1620         (elmo-mime-entity-display): Ditto.
1621         (elmo-mime-entity-display-as-is): Ditto.
1622         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1623         elmo-mime-entity.
1624         (elmo-make-mime-message-location): Removed.
1625         (elmo-mime-message-display): Ditto.
1626         (elmo-mime-display-as-is): Ditto.
1627         (elmo-message-mime-entity): New function.
1628
1629         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1630
1631         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1632         change.
1633         (elmo-message-fetch): Re-count flagged message number and notify
1634         event `flag-changed'.
1635
1636         * elmo-version.el (elmo-version): Up to 2.13.1.
1637
1638 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1639
1640         * elmo-filter.el (elmo-message-field): Define.
1641         (elmo-message-set-field): Ditto.
1642
1643 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1644
1645         * elmo.el (elmo-message-set-cached): Call
1646         `elmo-folder-notify-event' with cache-changed.
1647         (elmo-event-handler-cache-changed): New generic function.
1648
1649 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1650
1651         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1652         instead of elmo-add-name-to-file.
1653         (elmo-folder-append-messages): Ditto.
1654
1655 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1656
1657         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1658
1659 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1660
1661         * elmo-version.el (elmo-version): Up to 2.13.0.
1662
1663         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1664         `auto'.
1665
1666         * modb-standard.el (modb-standard-economize-entity-size): Changed
1667         default value to `t'.
1668
1669         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1670         `standard'.
1671
1672         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1673         after parsing greeting string.
1674
1675 2004-11-23  Daishi Kato <daishi@axlight.com>
1676
1677         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1678         New user option.
1679         (elmo-spam-spamoracle-call): Use it.
1680
1681 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1682
1683         * elmo.el (elmo-message-accessible-p): Message in dop spool
1684         is accessible.
1685
1686 2004-11-23  Daishi Kato <daishi@axlight.com>
1687
1688         * elsp-spamoracle.el: New file.
1689
1690 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1691
1692         * elmo.el (elmo-message-flags-for-append): New function.
1693         (elmo-generic-folder-append-messages): Use it.
1694
1695         * elmo-split.el (elmo-split-subr): Ditto.
1696
1697         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1698         `flags' and use elmo-folder-append-buffer instead of
1699         write-region-as-binary.
1700         (elmo-dop-filter-pending-messages): New function.
1701         (elmo-folder-append-buffer-dop): Call
1702         elmo-dop-spool-folder-append-buffer with `flag'.
1703         (elmo-folder-set-flag-dop): Filter messages by
1704         elmo-dop-filter-pending-messages.
1705         (elmo-folder-unset-flag-dop): Ditto.
1706         (elmo-folder-append-buffer-dop-delayed): Use
1707         elmo-message-flags-for-append to get flags of the message and
1708         simplify.
1709
1710 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1711
1712         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1713
1714 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1715
1716         * elmo.el (elmo-folder): Added handlers slot.
1717         (elmo-event-handler): New class.
1718         (elmo-event-handler-flag-changed): New API.
1719         (elmo-folder-add-handler): New function.
1720         (elmo-folder-remove-handler): Ditto.
1721         (elmo-folder-notify-event): Ditto.
1722         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1723         `flag-changed'.
1724         (elmo-folder-unset-flag): Ditto.
1725
1726         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1727         (elmo-folder-unset-flag): Ditto.
1728
1729         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1730         (elmo-folder-unset-flag): Ditto.
1731
1732         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1733         (elmo-folder-unset-flag): Ditto.
1734
1735         * elmo-version.el (elmo-version): Up to 2.11.33.
1736
1737 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1738
1739         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1740
1741 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1742
1743         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1744
1745         * elmo-flag.el (elmo-folder-unset-flag): Define.
1746         (elmo-global-flag-detach): Do process when the flag is not target
1747         flag.
1748
1749 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1750
1751         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1752         variable.
1753         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1754
1755 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1756
1757         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1758         function.
1759         (elmo-folder-delete-messages): Detach messages before delete
1760         messages from target folder.
1761         (elmo-folder-detach-messages): Set updated number-list to slot.
1762
1763 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1764
1765         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1766
1767 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1768
1769         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1770
1771 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1772
1773         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1774         internal use only).
1775         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1776         not modified.
1777         (elmo-folder-delete-messages): Define.
1778         (elmo-folder-move-messages): Don't call
1779         `elmo-folder-detach-messages'.
1780         (elmo-folder-synchronize): Rewrite.
1781         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1782
1783         * elmo-util.el (elmo-last): New function.
1784         (elmo-set-list): Ditto.
1785         (elmo-number-set-delete-list): Ditto.
1786         (elmo-number-set-delete): Ditto.
1787
1788         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1789
1790         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1791         `elmo-folder-delete-messages' and don't delete location map.
1792         (elmo-folder-detach-messages): Define.
1793
1794         * elmo-imap4.el (elmo-folder-delete): Use
1795         `elmo-folder-delete-messages-internal' instead of
1796         `elmo-folder-delete-messages'.
1797
1798         * elmo-filter.el (elmo-folder-delete-messages): Call
1799         `elmo-folder-detach-messages'.
1800         (elmo-folder-detach-messages): Don't call
1801         `elmo-folder-detach-messages' for target folder.
1802
1803         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1804         message deletion is succeeded.
1805
1806         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1807
1808         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1809         from `elmo-folder-delete-messages'.
1810
1811         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1812
1813         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1814
1815         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1816
1817         * elmo-version.el (elmo-version): Up to 2.11.32.
1818
1819 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1820
1821         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1822         (elmo-global-flag-list): Added obsolete variable setting.
1823
1824         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1825
1826         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1827         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1828         `elmo-mime-display-header-analysis' is nil.
1829
1830         * elmo-flag.el (elmo-global-flags): Renamed from
1831         `elmo-global-flag-list' (All other related portions are changed).
1832         (elmo-local-flags): New variable.
1833         (elmo-local-flag-p): New function.
1834         (elmo-global-flag-set-internal): Cause an error when flag is not
1835         global.
1836
1837 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1838
1839         * elmo-util.el (elmo-concat-path): Treat empty path.
1840
1841 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1842
1843         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1844         field-or-fields).
1845         (elmo-split-address-match): Ditto.
1846         (elmo-split-equal): Ditto.
1847         (elmo-split-match): Ditto.
1848
1849 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1850
1851         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1852         (elmo-generic-folder-append-messages): If src message exists but
1853         has no flag, pass (read) for the FLAG argument of
1854         `elmo-folder-append-buffer'. Otherwise, pass nil.
1855
1856         * elmo-split.el (elmo-split-subr): Likewise.
1857
1858         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1859
1860         * elmo-multi.el (elmo-message-flags): Ditto.
1861
1862         * elmo-filter.el (elmo-message-flags): Ditto.
1863
1864         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1865         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1866         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1867         
1868 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1869
1870         * elmo-split.el (elmo-split-rule): Update comment.
1871         (elmo-split-address-equal): Allow 2nd argument to be a list.
1872         (elmo-split-address-match): Ditto.
1873         (elmo-split-equal): Ditto.
1874         (elmo-split-match): Ditto.
1875
1876 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1877
1878         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1879         (elmo-folder-append-msgdb): Don't treat `read'.
1880         (elmo-message-flags): Don't return `read'.
1881
1882         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1883         (elmo-folder-unset-read-delayed): Ditto.
1884
1885         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1886
1887 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1888
1889         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1890         deletion.
1891
1892 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1893
1894         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1895         header.
1896
1897 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1898
1899         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1900         here.
1901         (elmo-msgdb-save): Bind inhibit-quit.
1902         (modb-standard-message-entity): Ditto.
1903
1904 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1905
1906         * elmo-database.el: No need to require elmo-msgdb.
1907
1908 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1909
1910         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1911         instead of `elmo-list-subdirectories'.
1912
1913 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1914
1915         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1916         group entry.
1917         (elmo-folder-exists-p): "[" is empty.
1918         (elmo-folder-list-subfolders): Define.
1919         (elmo-folder-have-subfolder-p): Ditto.
1920
1921 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1922
1923         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1924
1925 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1926
1927         * elmo-filter.el (elmo-folder-local-p): Define.
1928
1929 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1930
1931         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1932         when entity is garbaged.
1933         (modb-standard-save-entity-1): Don't modify the original entity.
1934
1935 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1936
1937         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1938
1939 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1940
1941         * elmo.el (elmo-strict-folder-diff): Use
1942         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1943
1944 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1945
1946         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1947         (elmo-msgdb-message-number): Ditto.
1948         (elmo-msgdb-message-field): Ditto.
1949
1950         * modb-standard.el (modb-standard-economize-entity-size): New user
1951         option.
1952         (modb-standard-loaded-message-id): New inline function.
1953         (modb-standard-load-entity): Use it.
1954         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1955         throw message-id string away.
1956         (elmo-msgdb-flag-available-p): Define.
1957         (elmo-msgdb-message-number): Ditto.
1958         (elmo-msgdb-message-field): Ditto.
1959
1960         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1961         (suppoted -> supported).
1962         (modb-legacy-supported-flag-p): Ditto.
1963         (elmo-msgdb-set-flag): Ditto.
1964         (elmo-msgdb-unset-flag): Ditto.
1965         (elmo-msgdb-flag-available-p): Define.
1966
1967         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1968         is `t', treat it as legacy entity.
1969         
1970         * elmo.el (elmo-message-flag-available-p): New generic function.
1971         (elmo-message-number): Ditto.
1972         (elmo-message-field): Use `elmo-msgdb-message-field'.
1973
1974         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1975
1976         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1977         (elmo-message-number): Ditto.
1978
1979         * elmo-multi.el (elmo-message-number): Define.
1980         (elmo-message-flag-available-p): Ditto.
1981
1982         * elmo-filter.el (elmo-message-flag-available-p): Define.
1983         (elmo-message-number): Ditto.
1984
1985         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1986         (elmo-folder-initialize): Load `max-number'.
1987         (elmo-folder-commit): Save it.
1988         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1989         (elmo-global-flag-set-internal): Set up max-number slot.
1990
1991 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1992
1993         * elmo-version.el (elmo-version): Up to 2.11.31.
1994
1995 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1996
1997         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1998         unibyte string of the current buffer for the argument of `md5'
1999         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
2000
2001 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2002
2003         * modb-legacy.el (modb-legacy-flag-list): New constant.
2004         (modb-legacy-suppoted-flag-p): New internal function.
2005         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
2006         (elmo-msgdb-unset-flag): Ditto.
2007
2008 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
2009
2010         * elmo.el (elmo-make-folder): Remove text properties for prefix.
2011
2012         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
2013         from msgdb.
2014
2015 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2016
2017         * elmo-multi.el (elmo-folder-count-flags): Changed return value
2018         (follow the API change).
2019
2020         * elmo-filter.el (elmo-folder-count-flags): Ditto.
2021
2022 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
2023
2024         * modb-standard.el (modb-standard-digest-flags): Abolish.
2025         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
2026
2027         * elmo-vars.el (elmo-digest-flags): New variable.
2028         (elmo-preserved-flags): Moved from elmo-flag.el.
2029
2030         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
2031         (elmo-imap4-flag-to-imap-criteria): Ditto.
2032         (elmo-imap4-folder-list-flagged): Use it.
2033
2034         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
2035
2036         * elmo.el (elmo-folder-count-flags): Changed return value.
2037
2038         * elmo-flag.el (elmo-preserved-flags): New variable.
2039         (elmo-get-global-flags): Use it.
2040
2041         * modb-standard.el (modb-standard-digest-flags): New variable.
2042         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
2043         Changed behavior of `any'.
2044
2045         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
2046         which are defined the Internet draft
2047         (draft-melnikov-imap-keywords-03.txt).
2048         (elmo-imap4-flags-to-imap): New function.
2049         (elmo-folder-append-buffer): Use it.
2050
2051         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
2052         in the docstring.
2053
2054         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
2055         avoid the bug of Emacs 21.3.
2056
2057 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
2058
2059         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
2060         function find-coding-system does not exist.
2061
2062 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2063
2064         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
2065         parsing.
2066
2067 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2068
2069         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
2070         response codes.
2071
2072 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2073
2074         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
2075         (elmo-network-close-session): Follow the changes in
2076         `elmo-pop3-read-response'.
2077         (elmo-pop3-auth-user): Ditto.
2078         (elmo-pop3-auth-apop): Ditto.
2079         (elmo-network-initialize-session): Ditto.
2080         (elmo-network-authenticate-session): Ditto.
2081         (elmo-network-setup-session): Ditto.
2082         (elmo-folder-status): Ditto.
2083         (elmo-message-fetch-plugged): Ditto.
2084         (elmo-pop3-delete-msg): Ditto.
2085
2086 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
2087
2088         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
2089         on failure.
2090
2091 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2092
2093         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
2094         style.
2095         (elmo-bind-directory): Ditto.
2096
2097 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2098
2099         * elmo.el (elmo-folder-append-messages): Note on return value.
2100         * elmo-archive.el (elmo-folder-append-messages): Don't return
2101         message numbers which could not be appended.
2102
2103 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2104
2105         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
2106
2107 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2108
2109         * elmo-version.el (elmo-version): Up to 2.11.30.
2110
2111 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2112
2113         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
2114         `mask'.
2115
2116         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
2117
2118         * elmo-multi.el (elmo-folder-synchronize): Likewise.
2119         (elmo-multi-split-numbers): Add elmo-folder object into each
2120         element of return value at first.
2121         (elmo-folder-delete-messages): Follow the above change.
2122         (elmo-folder-detach-messages): Ditto.
2123
2124         * elmo-filter.el (elmo-folder-synchronize): Minimize message
2125         number which is synchronized in target folder.
2126
2127 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2128
2129         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
2130         Change default value to symbol `all'.
2131         (elmo-map-message-fetch): Change condition to update overview
2132         follow the above.
2133
2134 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2135
2136         * elmo-shimbun.el (elmo-map-message-fetch): Change default
2137         behavior to update overview.
2138         (elmo-shimbun-update-overview-folder-list): Note it.
2139
2140 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2141
2142         * modb-standard.el (modb-standard-message-entity): Avoid infinite
2143         recursive call.
2144
2145 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2146
2147         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
2148         buffer-disable-undo, it is unnecessary.
2149         (elmo-spam-register-good-messages): Ditto.
2150
2151         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2152         Ditto.
2153
2154         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
2155
2156 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2157
2158         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
2159         (elmo-set-work-buf): Use set-buffer-multibyte instead of
2160         elmo-set-buffer-multibyte.
2161         (elmo-object-load): Ditto.
2162         (elmo-save-buffer): Ditto.
2163         (elmo-delete-char): Ditto.
2164         (elmo-file-field-primitive-condition-match): Ditto.
2165         (elmo-mime-string): Ditto.
2166
2167         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
2168         (elmo-archive-field-condition-match): Ditto.
2169
2170         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
2171
2172         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
2173
2174         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
2175         (elmo-nntp-msgdb-create-message): Ditto.
2176
2177         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2178
2179         * elmo.el (elmo-message-match-condition): Ditto.
2180         (elmo-message-match-condition): Ditto.
2181
2182         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2183         Ditto.
2184
2185         * elmo-version.el (elmo-version): Up to 2.11.29.
2186
2187         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
2188         (elsp-header): New backend.
2189
2190         * elmo-util.el (elmo-decoded-field-body): New function.
2191
2192 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2193
2194         * elmo-version.el (elmo-version): Up to 2.11.28.
2195
2196 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2197
2198         * elmo-filter.el: Rewrite.
2199
2200         * elmo-version.el (elmo-version): Up to 2.11.27.
2201
2202 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
2203
2204         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
2205         msgdb path for the localdir folder with absolute path.
2206
2207         * utf7.el: Synch up with latest gnus/utf7.el;
2208         Modified for latest Emacs.
2209
2210 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2211
2212         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
2213         shimbun backend couldn't open.
2214
2215 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
2216
2217         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
2218         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
2219         when a destination folder is a filter folder.
2220
2221 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2222
2223         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
2224         (elmo-generic-folder-append-messages): Call elmo-message-flags
2225         with argument `msgid'.
2226
2227         * elmo-split.el (elmo-split-subr): Ditto.
2228
2229         * elmo-pipe.el (elmo-message-flags): Follow the API change.
2230
2231         * elmo-multi.el (elmo-message-flags): Ditto.
2232
2233 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2234
2235         * elmo.el (elmo-folder): Add new slot `flag-table'.
2236         (elmo-folder-flag-table): New API.
2237         (elmo-folder-close-flag-table): Ditto.
2238         (elmo-folder-preserve-flags): New function.
2239         (elmo-generic-folder-append-messages): Use
2240         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
2241         Flag of a non-registered message, it sets to nil.
2242         Does not set flag to flag-table.
2243
2244         * elmo-maildir.el (elmo-folder-append-buffer): Use
2245         `elmo-folder-preserve-flags'.
2246         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2247         `elmo-folder-close-flag-table'.
2248
2249         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
2250         (elmo-archive-folder-append-buffer): Use
2251         `elmo-folder-preserve-flags'.
2252
2253         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
2254
2255         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
2256
2257         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2258         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2259         `elmo-folder-close-flag-table'.
2260
2261         * elmo-version.el (elmo-version): Up to 2.11.26.
2262
2263 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2264
2265         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
2266
2267         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
2268         md5's 4th and 5th argument (non-existent in flim one).
2269
2270 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2271
2272         * elmo-split.el (elmo-split-subr): Flag of a non-registered
2273         message, It sets to nil.
2274
2275 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2276
2277         * elmo.el (elmo-folder-list-messages): Merge lists only if both
2278         list is non-nil.
2279
2280 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
2281
2282         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
2283
2284         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
2285
2286         * elmo-util.el (elmo-uniq-sorted-list): New function.
2287         (elmo-make-number-list): Ditto.
2288         (elmo-number-set-to-number-list): Use elmo-make-number-list
2289         and don't use nreverse.
2290
2291 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2292
2293         * elmo-version.el (elmo-version): Up to 2.11.25.
2294
2295 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2296
2297         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
2298         field not exists in message, Use md5 message digest of header.
2299
2300 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2301
2302         * elmo.el (elmo-folder-append-buffer): Add note on return value.
2303         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
2304         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2305         * elmo-split.el (elmo-split-subr): Check return value of
2306         elmo-folder-append-buffer.
2307
2308         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
2309         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2310
2311         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
2312         message-id.
2313
2314 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
2315
2316         * elmo-split.el (elmo-split-subr): Append message with flag.
2317
2318         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
2319         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
2320         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2321
2322 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
2323
2324         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
2325         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
2326         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2327
2328 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
2329
2330         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2331         with a function call of `process-buffer'.  All callers are updated.
2332         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2333         Remove redundant `set-buffer' in a while loop.
2334
2335 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2336
2337         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2338         calls.
2339
2340 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2341
2342         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2343         elsp-spamfilter-register-buffer-internal with current buffer.
2344         (elmo-spam-register-spam-buffer): Ditto.
2345         (elmo-spam-register-good-buffer): Ditto.
2346
2347 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2348
2349         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2350         if it is not contained in the response(A workaround for courier-imap).
2351
2352 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2353
2354         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2355         parenthesis.
2356
2357 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2358
2359         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2360         range.
2361
2362 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2363
2364         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2365         of nconc.
2366
2367         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2368         argument handler.
2369         (elmo-msgdb-message-match-condition): Follow the change above.
2370
2371 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2372
2373         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2374         folder name.
2375
2376 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2377
2378         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2379
2380 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2381
2382         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2383
2384 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2385
2386         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2387         not found.
2388
2389 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2390
2391         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2392         value.
2393         (elmo-file-command-argument): Undo last change for cygwin.
2394         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2395         Don't return nil.
2396         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2397
2398 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2399
2400         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2401         value returned from elmo-file-find is nil.
2402
2403 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2404
2405         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2406         to elmo-vars.el.
2407
2408         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2409         instead of insert-file-contents-as-binary.
2410         (elmo-message-set-field): New generic function.
2411
2412         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2413         behavior change on `split-string'.
2414
2415         * elmo-file.el (elmo-file-find): New function.
2416         (elmo-file-command): New user option.
2417         (elmo-file-command-argument): Ditto.
2418         (elmo-file-fetch-max-size): Ditto.
2419         (elmo-file-detect-format): New function.
2420         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2421         Use elmo-file-detect-format.
2422         (elmo-map-folder-list-message-locations): Don't treat directories.
2423
2424 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2425
2426         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2427         (elmo-passwd-alist-clear): Shred password before clear.
2428         (elmo-remove-passwd): Remove all mached pair.
2429
2430 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2431
2432         * elmo.el (elmo-folder-synchronize): Fix description of the return
2433         value.
2434
2435 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2436
2437         * elmo.el (elmo-message-fetch-bodystructure): New method.
2438         (elmo-message-fetch-bodystructure): Define default.
2439
2440         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2441         elmo-message-fetch-bodystructure.
2442         (elmo-message-fetch-bodystructure): Define.
2443
2444         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2445
2446 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2447
2448         * elmo-filter.el (elmo-message-folder): Define.
2449
2450 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2451
2452         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2453         elmo-delete-cr-buffer.
2454
2455         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2456
2457         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2458
2459         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2460
2461         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2462         type seems to be a text.
2463
2464 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2465
2466         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2467         (elmo-spam-register-good-buffer): Ditto.
2468         (elmo-spam-spamassassin-register-messages): Ditto.
2469
2470         * elmo-util.el (elmo-string-member-ignore-case): Define with
2471         static-cond.
2472
2473 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2474
2475         * elmo.el (elmo-folder-type): Undo last change.
2476
2477         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2478
2479         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2480         warnings.
2481
2482         * elmo-file.el: New file.
2483         
2484         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2485
2486         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2487         variable.
2488         (elmo-spam-spamassassin-register-messages): New inline function.
2489         (elmo-spam-register-spam-messages): Define.
2490         (elmo-spam-register-good-messages): Ditto.
2491
2492         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2493         Fixed typo.
2494
2495         * elmo.el (toplevel): Added autoload setting for
2496         `elmo-get-global-flags'.
2497         (elmo-message-has-global-flag-p): New function.
2498         (elmo-message-set-global-flags): Ditto.
2499         (elmo-folder-type): Improvement for name: format.
2500
2501         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2502         availability of keyword flags.
2503         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2504         (elmo-folder-list-flagged-plugged): Renamed from
2505         elmo-folder-list-flagged-unplugged.
2506         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2507         accept any flag as keyword flag.
2508         (elmo-folder-set-flag-plugged): Accept keyword flags.
2509         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2510
2511         * elmo-flag.el (elmo-get-global-flags): New function.
2512
2513         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2514         folders.
2515
2516         * elmo-version.el (elmo-version): Up to 2.11.24.
2517
2518 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2519
2520         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2521         elmo-multiple-field-body instead of std11-field-body to check all
2522         headers.
2523
2524 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2525
2526         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2527         or "size".
2528
2529 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2530
2531         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2532         unintern is unbound.
2533
2534 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2535
2536         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2537         Protect from infinite loop.
2538
2539 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2540
2541         * elsp-bogofilter.el
2542         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2543         (elmo-spam-bogofilter-register-messages): New internal function.
2544         (elmo-spam-register-spam-messages): Define.
2545         (elmo-spam-register-good-messages): Ditto.
2546
2547 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2548
2549         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2550         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2551         (elmo-spam-bogofilter-call): Fixed the last change.
2552         (elmo-spam-bogofilter-arguments): Ditto.
2553
2554         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2555         Follow the options change of latest bogofilter.
2556
2557         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2558         (elmo-spam-bogofilter-good-switch): Ditto.
2559         (elmo-spam-bogofilter-arguments-alist): New user option.
2560         (elmo-spam-bogofilter-debug): Ditto.
2561         (elmo-spam-bogofilter-call): Renamed from
2562         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2563         is non-nil, insert output in buffer for debug.
2564         (elmo-spam-bogofilter-arguments): New macro.
2565         (elmo-spam-buffer-spam-p): Use it.
2566         (elsp-bogofilter-register-buffer): Ditto.
2567
2568 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2569
2570         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2571         regexp.
2572
2573 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2574
2575         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2576         value as "ruby".
2577         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2578         (elmo-spam-bsfilter-program): Set default value as full path for
2579         `bsfilter'.
2580         (elmo-spam-bsfilter-debug): New user option.
2581         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2582         non-nil, insert output in buffer for debug. Fix treating of
2583         argument.
2584
2585 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2586
2587         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2588         `elmo-maildir-flag-specs' element instead of one.
2589         (elmo-map-folder-unset-flag): Ditto.
2590         (Reported by Ken Makimura <macky@astem.or.jp>)
2591
2592         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2593         (elmo-folder-unset-flag-plugged): Ditto.
2594
2595 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2596
2597         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2598         to `reads' slot only if `in-msgdb' is nil.
2599
2600 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2601
2602         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2603         and complement argument list.
2604
2605 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2606
2607         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2608         instead of elmo-folder-list-flagged.
2609
2610 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2611
2612         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2613
2614         * elsp-bsfilter.el: New file.
2615
2616         * elmo-pipe.el (elmo-folder-list-unreads,
2617         elmo-folder-list-answereds,
2618         elmo-folder-list-importants,
2619         elmo-folder-flag-as-important,
2620         elmo-folder-unflag-important,
2621         elmo-folder-flag-as-read,
2622         elmo-folder-unflag-read,
2623         elmo-folder-flag-as-answered,
2624         elmo-folder-unflag-answered): Remove.
2625         (elmo-folder-set-flag): Define.
2626         (elmo-folder-unset-flag): Ditto.
2627
2628         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2629         (elmo-folder-set-flag): Define.
2630         (elmo-folder-unset-flag): Ditto.
2631         (elmo-folder-list-unreads): Remove.
2632         (elmo-folder-list-flagged): Define.
2633
2634         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2635         (elmo-folder-list-unreads,
2636         elmo-folder-list-importants,
2637         elmo-folder-list-answereds,
2638         elmo-folder-list-unreads-plugged,
2639         elmo-folder-list-importants-plugged,
2640         elmo-folder-list-answereds-plugged): Remove.
2641         (elmo-folder-list-flagged-plugged): New method.
2642         (elmo-folder-unflag-important,
2643         elmo-folder-flag-as-important,
2644         elmo-folder-unflag-read,
2645         elmo-folder-flag-as-read,
2646         elmo-folder-unflag-answered,
2647         elmo-folder-flag-as-answered,
2648         elmo-folder-flag-as-read-unplugged,
2649         elmo-folder-unflag-read-unplugged,
2650         elmo-folder-flag-as-important-unplugged,
2651         elmo-folder-unflag-important-unplugged,
2652         elmo-folder-flag-as-answered-unplugged,
2653         elmo-folder-unflag-answered-unplugged): Remove.
2654         (elmo-folder-set-flag): Define.
2655         (elmo-folder-unset-flag): Ditto.
2656         (elmo-folder-set-flag-unplugged): Ditto.
2657         (elmo-folder-unset-flag-unplugged): Ditto.
2658
2659         * elmo-multi.el (elmo-folder-list-unreads,
2660         elmo-folder-list-answereds,
2661         elmo-folder-list-importants,
2662         elmo-folder-flag-as-important,
2663         elmo-folder-unflag-important,
2664         elmo-folder-flag-as-read,
2665         elmo-folder-unflag-read,
2666         elmo-folder-flag-as-answered,
2667         elmo-folder-unflag-answered): Remove.
2668         (elmo-folder-set-flag): Define.
2669         (elmo-folder-unset-flag): Ditto.
2670
2671         * elmo-map.el (elmo-map-folder-unflag-important,
2672         elmo-map-folder-flag-as-important,
2673         elmo-map-folder-unflag-read,
2674         elmo-map-folder-flag-as-read,
2675         elmo-map-folder-unflag-answered,
2676         elmo-map-folder-flag-as-answered): Remove.
2677         (elmo-map-folder-set-flag): New method.
2678         (elmo-map-folder-unset-flag): Ditto.
2679         (elmo-map-folder-list-unreads,
2680         elmo-map-folder-list-importants,
2681         elmo-map-folder-list-answereds): Remove.
2682         (elmo-folder-list-flagged-internal): Define.
2683         (elmo-map-folder-list-flagged): New method.
2684
2685         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2686         (elmo-map-folder-list-unreads,
2687         elmo-map-folder-list-importants,
2688         elmo-map-folder-list-flagged): Remove.
2689         (elmo-map-folder-list-flagged): Define.
2690         (elmo-map-folder-flag-as-important,
2691         elmo-map-folder-unflag-important,
2692         elmo-map-folder-flag-as-read,
2693         elmo-map-folder-unflag-read,
2694         elmo-map-folder-flag-as-answered,
2695         elmo-map-folder-unflag-answered): Remove.
2696         (elmo-maildir-set-mark-messages): New internal function.
2697         (elmo-map-folder-set-flag): Define.
2698         (elmo-map-folder-unset-flag): Ditto.
2699
2700         * elmo.el (toplevel): Added autoload setting for
2701         `elmo-folder-list-global-flag-messages'.
2702         (elmo-folder-list-unreads,
2703         elmo-folder-list-importants,
2704         elmo-folder-list-answereds): Remove.
2705         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2706         Return a list whitch merged with messages have global flag.
2707         (elmo-folder-list-flagged-internal): New method.
2708         (elmo-folder-unflag-important,
2709         elmo-folder-flag-as-important,
2710         elmo-folder-unflag-read,
2711         elmo-folder-flag-as-read,
2712         elmo-folder-unflag-answered,
2713         elmo-folder-flag-as-answered): Remove.
2714         (elmo-folder-set-flag): New method.
2715         (elmo-folder-unset-flag): Ditto.
2716         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2717         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2718
2719         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2720         (elmo-folder-list-unreads-plugged,
2721         elmo-folder-list-importants-plugged,
2722         elmo-folder-list-answereds-plugged,
2723         elmo-folder-list-flagged-unplugged,
2724         elmo-folder-unflag-important-plugged,
2725         elmo-folder-flag-as-important-plugged,
2726         elmo-folder-unflag-read-plugged,
2727         elmo-folder-flag-as-read-plugged,
2728         elmo-folder-unflag-answered-plugged,
2729         elmo-folder-flag-as-answered-plugged): Remove.
2730         (elmo-folder-set-flag-plugged,
2731         elmo-folder-unset-flag-plugged): Define.
2732
2733         * elmo-flag.el (elmo-folder-initialize): Register to
2734         `elmo-global-flag-list' if flag is not global.
2735         (elmo-folder-append-messages): Set flag to source messages.
2736
2737         * elmo-filter.el (elmo-filter-folder-list-unreads,
2738         elmo-folder-list-unreads,
2739         elmo-filter-folder-list-importants,
2740         elmo-folder-list-importants,
2741         elmo-folder-flag-as-read,
2742         elmo-folder-unflag-read,
2743         elmo-folder-flag-as-important,
2744         elmo-folder-unflag-important,
2745         elmo-folder-flag-as-answered,
2746         elmo-folder-unflag-answered): Remove.
2747         (elmo-folder-set-flag): Define.
2748         (elmo-folder-unset-flag): Ditto.
2749
2750         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2751         elmo-folder-unflag-read-dop,
2752         elmo-folder-flag-as-important-dop,
2753         elmo-folder-unflag-important-dop,
2754         elmo-folder-flag-as-answered-dop,
2755         elmo-folder-unflag-answered-dop): Remove.
2756         (elmo-folder-set-flag-dop,
2757         elmo-folder-unset-flag-dop,
2758         elmo-folder-set-important-delayed,
2759         elmo-folder-unset-important-delayed,
2760         elmo-folder-set-read-delayed,
2761         elmo-folder-unset-read-delayed,
2762         elmo-folder-set-answered-delayed,
2763         elmo-folder-unset-answered-delayed): New function.
2764         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2765         (elmo-dop-queue-method-name-alist): Ditto.
2766
2767         * elmo-version.el (elmo-version): Up to 2.11.23.
2768
2769 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2770
2771         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2772
2773         * elsp-sa.el: New file.
2774
2775 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2776
2777         * modb-standard.el (modb-standard-message-entity): New function.
2778         (elmo-msgdb-message-entity): Use it.
2779
2780 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2781
2782         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2783         behavior when one-level is nil.
2784
2785         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2786
2787         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2788
2789 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2790
2791         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2792         get max number.
2793         (elmo-generic-folder-diff): Ditto.
2794
2795         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2796         (elmo-folder-update-number): Ditto.
2797
2798         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2799         (elmo-folder-next-message-number-dop): Ditto.
2800
2801 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2802
2803         * elmo-filter.el (elmo-folder-msgdb-create): Use
2804         `elmo-message-entity' and `elmo-message-flags' instead of
2805         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2806
2807 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2808
2809         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2810         `if-exists'.
2811
2812 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2813
2814         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2815
2816         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2817
2818         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2819
2820 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2821
2822         * elmo-version.el (elmo-version): Up to 2.11.22.
2823
2824 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2825
2826         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2827
2828 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2829
2830         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2831         if the message dose not exist.
2832
2833 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2834
2835         * elmo-version.el (elmo-version): Up to 2.11.21.
2836
2837 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2838
2839         * modb-standard.el (toplevel): Don't require mime.
2840
2841 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2842
2843         * elsp-bogofilter.el (toplevel): Don't require path-util.
2844         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2845         (elmo-spam-bogofilter-header): Abolish.
2846         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2847         (elmo-spam-bogofilter-args): New user option.
2848         (elsp-bogofilter-call-bogofilter): New internal function.
2849         (elmo-spam-buffer-spam-p): Use it.
2850         (elsp-bogofilter-register-buffer): Renamed from
2851         `elmo-spam-bogofilter-register-buffer';
2852         Use `elsp-bogofilter-call-bogofilter'.
2853         (elmo-spam-register-spam-buffer): Follow the change above.
2854         (elmo-spam-register-good-buffer): Ditto.
2855
2856 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2857
2858         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2859         message-id is nil do nothing.
2860
2861 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2862
2863         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2864         Revival.
2865         (elmo-imap4-session): Removed use-flag slot.
2866         (elmo-imap4-session-select-mailbox): Undo last change.
2867         (elmo-folder-use-flag-p): Use
2868         elmo-imap4-disuse-server-flag-mailbox-regexp.
2869
2870 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2871
2872         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2873         (elmo-imap4-session-select-mailbox): Set it up.
2874         (elmo-folder-use-flag-p): Return value of use-flag slot.
2875
2876 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2877
2878         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2879         message-id is nil.
2880         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2881
2882         * modb-entity.el (elmo-message-entity-handler): Likewise.
2883
2884 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2885
2886         * elmo.el (toplevel): Remove setting of autoloding for
2887         elmo-global-flag-initialize.
2888         (elmo-init): Don't call elmo-global-flag-initialize.
2889         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2890
2891         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2892         (elmo-global-mark-migrate): Don't call it.
2893         (elmo-global-mark-upgrade): Ditto.
2894
2895 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2896
2897         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2898         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2899
2900         * elmo-vars.el (elmo-init-hook): New user option.
2901
2902         * elmo.el (elmo-init): Run the elmo-init-hook.
2903
2904         * elmo-flag.el (elmo-global-mark-migrate): New function.
2905
2906 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2907
2908         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2909         Undo last change (move to elmo-msgdb-unset-flag).
2910         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2911         flag is unset.
2912
2913 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2914
2915         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2916         read flag is set.
2917         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2918         (elmo-msgdb-unset-flag): Ditto.
2919
2920 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2921
2922         * elmo-split.el (elmo-split): Return split message count.
2923
2924 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2925
2926         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2927         is nil.
2928
2929 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2930
2931         * elmo.el (elmo-folder-unflag-important): Call
2932         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2933         a symbol `always'.
2934
2935         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2936         before unset flag.
2937         (elmo-global-flag-detach): Delete the message from flag folder, if
2938         `delete-if-none' is a symbol `always'.
2939
2940 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2941
2942         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2943         `elmo-spam-spamfilter-decode-buffer'.
2944         (elsp-spamfilter-register-buffer-internal): New internal function.
2945         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2946         (elmo-spam-register-spam-buffer): Ditto.
2947         (elmo-spam-register-good-buffer): Ditto.
2948
2949         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2950         change.
2951         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2952         (elmo-spam-register-spam-buffer): Follow the API change.
2953         (elmo-spam-register-good-buffer): Ditto.
2954
2955         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2956         (elmo-split-spam-p): Added argument plist; Call
2957         `elmo-spam-buffer-spam-p' with new argument register.
2958
2959         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2960         `register'.
2961         (elmo-spam-message-spam-p): Ditto.
2962         (elmo-spam-register-spam-buffer): Added optional argument
2963         `restore'.
2964         (elmo-spam-register-good-buffer): Ditto.
2965         (elmo-spam-register-spam-messages): Ditto.
2966         (elmo-spam-register-good-messages): Ditto.
2967
2968 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2969
2970         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2971         register into good corpus.
2972         (elmo-spam-register-good-buffer): Fixed to register into bad
2973         corpus.
2974
2975 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2976
2977         * elmo-version.el (elmo-version): Up to 2.11.20.
2978
2979         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2980         change.
2981
2982         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2983         flag without depending on \Recent flag.
2984
2985 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2986
2987         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2988         (elmo-spam-modified-p): Defined.
2989         (elmo-spam-save-status): Set `modified' slot to nil.
2990         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2991         (elmo-spam-register-good-buffer): Ditto.
2992
2993         * elmo-spam.el (elmo-spam-modified-p): New API.
2994
2995 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2996
2997         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2998         duplicate definition.
2999
3000         * elmo-util.el (elmo-unfold-field-body): New function.
3001         (elmo-msgdb-get-message-id-from-buffer): Use it.
3002
3003         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3004         Fixed the last change; Use elmo-unfold-field-body.
3005
3006 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3007
3008         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3009         Unfold date value.
3010
3011 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3012
3013         * elmo-spam.el (elmo-spam-save-status): New API.
3014
3015         * elsp-spamfilter.el: New file.
3016
3017 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3018
3019         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
3020
3021 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3022
3023         * elmo-split.el (elmo-split-spam-p): New function.
3024
3025         * elmo-spam.el: New file.
3026
3027         * elsp-bogofilter.el: Ditto.
3028
3029 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
3030
3031         * elmo.el (elmo-folder-next-message-number): New API.
3032         (elmo-folder-next-message-number): Define.
3033         (elmo-message-field): Don't check folder length.
3034
3035         * elmo-net.el (elmo-folder-next-message-number): Define.
3036         (elmo-folder-next-message-number-unplugged): Define.
3037
3038         * elmo-map.el (elmo-folder-next-message-number): Define.
3039         (elmo-folder-delete-messages): Clear hash value.
3040
3041         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
3042
3043         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
3044         (elmo-folder-delete-messages-dop-delayed): Always return t.
3045
3046         * elmo-version.el (elmo-version): Up to 2.11.19.
3047
3048 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3049
3050         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
3051         change.
3052
3053         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
3054         identical cons cell into the mark-alist and the hash table.
3055
3056 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
3057
3058         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
3059         elmo-folder-list-messages with argument `visible-only' as t.
3060
3061         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
3062         (elmo-folder-msgdb-create): Check the target folder.
3063
3064 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
3065
3066         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
3067         `permanentflag' instead of `flags'.
3068         (elmo-folder-open): Ditto.
3069         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
3070         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
3071         (elmo-folder-use-flag-p): Always return t.
3072         (elmo-imap4-session-select-mailbox): Use value of `flags' if
3073         `permanentflags' does not exist.
3074         (elmo-folder-open): Ditto.
3075
3076 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
3077
3078         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
3079         is nil.
3080         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
3081
3082         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
3083         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
3084         response.
3085         (elmo-folder-open): Ditto.
3086         (elmo-imap4-set-flag): Send store flag command only when the `flags'
3087         slot of the session includes the flag.
3088         (elmo-imap4-session-flag-available-p): New function.
3089         (elmo-imap4-folder-list-flagged): Ditto.
3090         (elmo-folder-list-unreads-plugged): Use it.
3091         (elmo-folder-list-importants-plugged): Ditto.
3092         (elmo-folder-list-answereds-plugged): Ditto.
3093         (elmo-imap4-search-internal-primitive): Ditto.
3094         (elmo-imap4-folder-list-any-plugged,
3095         elmo-imap4-folder-list-digest-plugged): Abolish.
3096
3097         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
3098         if numbers is nil.
3099
3100 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3101
3102         * elmo-util.el (toplevel): Require emu for char-list-to-string.
3103
3104 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
3105
3106         * elmo-util.el (elmo-get-hash-val): Simplify.
3107         (elmo-set-hash-val): Rewrite.
3108
3109 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3110
3111         * elmo.el (elmo-folder-list-messages): Append killed messages into
3112         result if `visible-only' is nil and `in-msgdb' is non-nil.
3113
3114         * elmo-util.el (elmo-uniq-list): Added optional argument
3115         `delete-function'.
3116
3117         * modb.el (elmo-msgdb-flag-count): New API.
3118
3119         * modb-standard.el (modb-standard): Added slot flag-count.
3120         (modb-standard-countup-flags): New function.
3121         (modb-standard-load-flag): Call it.
3122         (elmo-msgdb-append): Ditto.
3123         (elmo-msgdb-clear): Clear slot flag-count.
3124         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
3125         (elmo-msgdb-unset-flag): Treat `all' flag and call
3126         modb-standard-countup-flags.
3127         (elmo-msgdb-flag-count): Define.
3128         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
3129         (elmo-msgdb-delete-messages): Ditto.
3130
3131         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
3132         (elmo-msgdb-flag-count): Define.
3133
3134         * elmo.el (elmo-folder-list-messages): Undo last change.
3135         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
3136         (elmo-folder-kill-messages): Unset all flags to numbers.
3137
3138         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
3139         elmo-folder-kill-messages.
3140
3141         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
3142         (elmo-nntp-folder-delete-messages): Abolish.
3143
3144         * elmo-version.el (elmo-version): Up to 2.11.18.
3145
3146 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3147
3148         * elmo.el (elmo-folder-kill-messages-before): Abolish.
3149         (elmo-folder-kill-messages-range): New function.
3150         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
3151         instead of elmo-folder-kill-messages-before.
3152
3153 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
3154
3155         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
3156         elmo-imap4-current-msgdb to decide entity handler.
3157
3158 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3159
3160         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
3161
3162         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
3163         inline function.
3164         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
3165         (elmo-msgdb-overview-entity-set-number,
3166         elmo-msgdb-overview-entity-get-references,
3167         elmo-msgdb-overview-entity-set-references,
3168         elmo-msgdb-overview-entity-get-from-no-decode,
3169         elmo-msgdb-overview-entity-get-from,
3170         elmo-msgdb-overview-entity-set-from,
3171         elmo-msgdb-overview-entity-get-subject,
3172         elmo-msgdb-overview-entity-get-subject-no-decode,
3173         elmo-msgdb-overview-entity-set-subject,
3174         elmo-msgdb-overview-entity-get-date,
3175         elmo-msgdb-overview-entity-set-date,
3176         elmo-msgdb-overview-entity-get-to,
3177         elmo-msgdb-overview-entity-get-cc,
3178         elmo-msgdb-overview-entity-get-size,
3179         elmo-msgdb-overview-entity-set-size,
3180         elmo-msgdb-overview-entity-get-extra,
3181         elmo-msgdb-overview-entity-set-extra,
3182         elmo-msgdb-overview-entity-get-extra-field,
3183         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
3184         (elmo-msgdb-make-index): Use
3185         `elmo-msgdb-overview-entity-get-number-internal'.
3186         (elmo-msgdb-clear-index): Ditto.
3187         (elmo-msgdb-append-entity): Ditto;
3188         Use `elmo-msgdb-overview-entity-get-id-internal'.
3189
3190         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
3191         elmo-msgdb-overview-entity-set-number,
3192         elmo-msgdb-overview-entity-get-references,
3193         elmo-msgdb-overview-entity-set-references,
3194         elmo-msgdb-overview-entity-get-from-no-decode,
3195         elmo-msgdb-overview-entity-get-from,
3196         elmo-msgdb-overview-entity-set-from,
3197         elmo-msgdb-overview-entity-get-subject,
3198         elmo-msgdb-overview-entity-get-subject-no-decode,
3199         elmo-msgdb-overview-entity-set-subject,
3200         elmo-msgdb-overview-entity-get-date,
3201         elmo-msgdb-overview-entity-set-date,
3202         elmo-msgdb-overview-entity-get-to,
3203         elmo-msgdb-overview-entity-get-cc,
3204         elmo-msgdb-overview-entity-get-size,
3205         elmo-msgdb-overview-entity-set-size,
3206         elmo-msgdb-overview-entity-get-extra,
3207         elmo-msgdb-overview-entity-set-extra,
3208         elmo-msgdb-overview-entity-get-extra-field,
3209         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
3210         and rewrote for backward compatibility.
3211
3212 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3213
3214         * elmo.el (elmo-message-entity-number,
3215         elmo-message-entity-set-number,
3216         elmo-message-entity-field,
3217         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
3218
3219         * elmo-msgdb.el (elmo-message-entity-number,
3220         elmo-message-entity-set-number,
3221         elmo-message-entity-field,
3222         elmo-message-entity-set-field): Moved from elmo.el.
3223
3224 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3225
3226         * elmo.el (toplevel): Changed definition orders.
3227
3228 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3229
3230         * modb.el (elmo-msgdb-search): New API .
3231         (elmo-msgdb-match-condition): Ditto.
3232
3233         * modb-standard.el (elmo-msgdb-search): Define.
3234
3235         * modb-legacy.el (elmo-msgdb-search): Ditto.
3236
3237         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
3238         from elmo-msgdb-match-condition-internal.
3239
3240         * elmo.el (elmo-folder-search-fast): Abolish.
3241         (elmo-folder-search): Use elmo-msgdb-search and
3242         elmo-with-progress-display.
3243
3244         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
3245         as msgdb API.
3246
3247         * elmo.el (elmo-folder): Remove slot message-modified and
3248         flag-modified.
3249         (elmo-folder-set-message-modified): Abolish.
3250         (elmo-generic-folder-commit): Follow the change above.
3251         (elmo-folder-synchronize): Ditto.
3252
3253         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
3254
3255         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3256
3257         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
3258
3259 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3260
3261         * modb-standard.el (modb-standard-make-message-entity,
3262         elmo-msgdb-make-message-entity,
3263         elmo-msgdb-create-message-entity-from-buffer,
3264         elmo-msgdb-message-entity-number,
3265         elmo-msgdb-message-entity-set-number,
3266         elmo-msgdb-message-entity-field,
3267         elmo-msgdb-message-entity-set-field,
3268         elmo-msgdb-copy-message-entity,
3269         elmo-msgdb-match-condition-internal): Remove.
3270
3271         * modb-entity.el: New file (again).
3272
3273         * modb.el (toplevel): Require modb-entity.
3274         (elmo-msgdb-message-entity-handler): New method.
3275
3276         * modb-standard.el (modb-standard-entity-id): Use
3277         elmo-message-entity-handler.
3278         (modb-standard-load-entity): Ditto.
3279         (elmo-msgdb-append-entity): Ditto.
3280         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3281
3282         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
3283         elmo-msgdb-decoded-cache-hashtb,
3284         (modb-legacy-make-message-entity,
3285         elmo-msgdb-make-message-entity,
3286         elmo-msgdb-create-message-entity-from-buffer,
3287         elmo-msgdb-message-entity-number,
3288         elmo-msgdb-message-entity-set-number,
3289         elmo-msgdb-message-entity-field,
3290         elmo-msgdb-message-entity-set-field,
3291         elmo-msgdb-copy-message-entity,
3292         elmo-msgdb-match-condition-internal,
3293         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
3294
3295         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
3296         (elmo-message-entity-set-number): Ditto.
3297         (elmo-message-entity-field): Ditto.
3298         (elmo-message-entity-set-field): Ditto.
3299
3300         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
3301
3302         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3303
3304         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3305
3306         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3307         (elmo-nntp-msgdb-create-message): Ditto.
3308
3309         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
3310         (elmo-folder-msgdb-create): Add unread flag.
3311
3312         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3313
3314         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
3315
3316         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
3317
3318         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3319
3320         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
3321         elmo-msgdb-messge-entity-handler.
3322         * elmo-version.el (elmo-version): Up to 2.11.17.
3323
3324 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3325
3326         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
3327         change.
3328
3329 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3330
3331         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3332
3333         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3334         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3335         (elmo-msgdb-flag-table): Ditto.
3336         (elmo-msgdb-sort-by-date): Ditto.
3337
3338         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3339
3340         * modb-standard.el (toplevel): Require mime.
3341         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3342         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3343         elmo-msgdb-message-entity-number.
3344         (elmo-msgdb-append-entity): Ditto.
3345         (elmo-msgdb-create-message-entity-from-file): Remove.
3346         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3347         corresponds to the entity.
3348         (elmo-msgdb-message-entity-number): Do nothing currently.
3349         (elmo-msgdb-message-entity-field): Ditto.
3350         (elmo-msgdb-message-entity-set-field): Ditto.
3351         (elmo-msgdb-copy-message-entity): Ditto.
3352         (elmo-msgdb-match-condition-internal): Ditto.
3353
3354         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3355         elmo-util.el.
3356         (elmo-msgdb-create-message-entity-from-file): Remove.
3357
3358         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3359         modb-legacy.el.
3360         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3361
3362         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3363
3364 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3365
3366         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3367         (elmo-msgdb-message-entity-field): Ditto.
3368         (elmo-msgdb-message-entity-number): Ditto.
3369
3370 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3371
3372         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3373         Fixed how to set extra field into entity.
3374         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3375         symbol.
3376
3377         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3378         Fixed how to set extra field into entity.
3379         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3380         symbol.
3381
3382 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3383
3384         * modb.el (elmo-message-entity-db): New function.
3385         (elmo-msgdb-make-message-entity): New API.
3386         (elmo-msgdb-message-entity-number): Ditto.
3387         (elmo-msgdb-message-entity-set-number): Ditto.
3388         (elmo-msgdb-message-entity-field): Ditto.
3389         (elmo-msgdb-message-entity-set-field): Ditto.
3390         (elmo-msgdb-copy-message-entity): Ditto.
3391         (elmo-msgdb-create-message-entity-from-file): Ditto.
3392         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3393         (elmo-msgdb-match-condition-internal): Ditto.
3394
3395         * modb-standard.el (modb-legacy): Require modb-legacy.
3396         (modb-standard-make-message-entity): New inline function.
3397         (elmo-msgdb-make-message-entity): Define.
3398         (elmo-msgdb-create-message-entity-from-file): Ditto.
3399         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3400         (elmo-msgdb-message-entity-field): Ditto.
3401         (elmo-msgdb-message-entity-set-field): Ditto.
3402         (elmo-msgdb-copy-message-entity): Ditto.
3403         (elmo-msgdb-match-condition-internal): Ditto.
3404
3405         * modb-legacy.el: Don't require modb-entity.
3406         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3407         (elmo-msgdb-match-condition-primitive): Ditto.
3408         (elmo-msgdb-get-decoded-cache): Ditto.
3409         (elmo-msgdb-overview-entity-get-id): Ditto.
3410         (elmo-msgdb-overview-entity-get-number): Ditto.
3411         (elmo-msgdb-overview-entity-set-number): Ditto.
3412         (elmo-msgdb-overview-entity-get-references): Ditto.
3413         (elmo-msgdb-overview-entity-set-references): Ditto.
3414         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3415         (elmo-msgdb-overview-entity-get-from): Ditto.
3416         (elmo-msgdb-overview-entity-set-from): Ditto.
3417         (elmo-msgdb-overview-entity-get-subject): Ditto.
3418         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3419         (elmo-msgdb-overview-entity-set-subject): Ditto.
3420         (elmo-msgdb-overview-entity-get-date): Ditto.
3421         (elmo-msgdb-overview-entity-set-date): Ditto.
3422         (elmo-msgdb-overview-entity-get-to): Ditto.
3423         (elmo-msgdb-overview-entity-get-cc): Ditto.
3424         (elmo-msgdb-overview-entity-get-size): Ditto.
3425         (elmo-msgdb-overview-entity-set-size): Ditto.
3426         (elmo-msgdb-overview-entity-get-extra): Ditto.
3427         (elmo-msgdb-overview-entity-set-extra): Ditto.
3428         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3429         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3430         (elmo-msgdb-number-load): Ditto.
3431         (elmo-msgdb-overview-load): Ditto.
3432         (elmo-msgdb-mark-load): Ditto.
3433         (elmo-msgdb-number-save): Ditto.
3434         (elmo-msgdb-mark-save): Ditto.
3435         (elmo-msgdb-overview-save): Ditto.
3436         (modb-legacy-make-message-entity): New inline function.
3437         (elmo-msgdb-insert-file-header): Ditto.
3438         (elmo-msgdb-make-message-entity): Define.
3439         (elmo-msgdb-create-message-entity-from-file): Ditto.
3440         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3441         (elmo-msgdb-message-entity-number): Ditto.
3442         (elmo-msgdb-message-entity-set-number): Ditto.
3443         (elmo-msgdb-message-entity-field): Ditto.
3444         (elmo-msgdb-message-entity-set-field): Ditto.
3445         (elmo-msgdb-copy-message-entity): Ditto.
3446         (elmo-msgdb-match-condition-internal): Ditto.
3447
3448         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3449         (elmo-message-copy-entity): Rewrite.
3450         (elmo-message-entity-number): Ditto.
3451         (elmo-message-entity-set-number): Ditto.
3452         (elmo-message-entity-field): Use elmo-message-entity-db.
3453         (elmo-message-entity-set-field): Ditto.
3454         (elmo-message-field): Rewrite.
3455
3456         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3457         elmo-msgdb.el
3458         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3459
3460         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3461         elmo-message-entity-field.
3462         (elmo-shimbun-folder-shimbun-header): Ditto.
3463         (elmo-shimbun-entity-to-header): Ditto.
3464         (elmo-folder-msgdb-create): Ditto.
3465         (elmo-shimbun-msgdb-create-entity): Ditto;
3466         Use elmo-msgdb-create-message-entity-from-buffer.
3467         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3468         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3469
3470         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3471         elmo-msgdb-create-message-entity-from-file and 
3472         elmo-message-entity-field.
3473
3474         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3475         elmo-message-entity-number.
3476         (elmo-pop3-msgdb-create-message): Use
3477         elmo-msgdb-create-message-entity-from-buffer,
3478         elmo-message-entity-set-field, elmo-message-entity-number and
3479         elmo-message-entity-set-number.
3480
3481         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3482         the API change in elmo-msgdb-make-message-entity.
3483         (elmo-nntp-msgdb-create-message): Use
3484         elmo-msgdb-create-message-entity-from-buffer.
3485
3486         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3487         elmo-message-entity-field and
3488         elmo-msgdb-create-message-entity-from-file.
3489
3490         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3491         (elmo-msgdb-get-field): Abolish.
3492         (elmo-msgdb-get-number): Rewrite.
3493         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3494         (elmo-msgdb-flag-table): Ditto.
3495         (elmo-msgdb-get-last-message-id,
3496         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3497         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3498         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3499         (elmo-msgdb-create-overview-from-buffer,
3500         elmo-msgdb-overview-get-parent-entity): Abolish.
3501
3502         * elmo-mime.el (elmo-mime-display-as-is): Use
3503         elmo-message-entity-field.
3504
3505         * elmo-map.el (elmo-folder-pack-numbers): Use
3506         elmo-message-entity-set-number.
3507
3508         * elmo-maildir.el (elmo-folder-msgdb-create): 
3509         elmo-msgdb-create-message-entity-from-file instead of
3510         elmo-msgdb-create-overview-entity-from-file.
3511
3512         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3513         msgdb.
3514         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3515         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3516
3517         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3518         elmo-messge-entity-field and elmo-message-entity-number.
3519         (elmo-imap4-fetch-callback-1): Call
3520         elmo-msgdb-create-message-entity-from-buffer instead of
3521         elmo-msgdb-create-overview-from-buffer. 
3522         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3523         (elmo-find-fetch-strategy): Likewise.
3524
3525         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3526         elmo-localdir-msgdb-create-entity with argument msgdb.
3527
3528         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3529         and elmo-message-entity-set-number.
3530
3531         * elmo-cache.el (elmo-folder-msgdb-create): Use
3532         elmo-message-entity-field.
3533         (elmo-folder-msgdb-create): Call
3534         elmo-msgdb-create-message-entity-from-file instead of
3535         elmo-msgdb-create-overview-entity-from-file.
3536
3537         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3538         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3539         instead of elmo-msgdb-create-overview-from-buffer.
3540         (elmo-archive-msgdb-create-entity): Ditto.
3541         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3542         elmo-message-entity-field.
3543         (elmo-archive-parse-mmdf): Ditto.
3544
3545         * modb-entity.el: Removed.
3546
3547         * elmo-version.el (elmo-version): Up to 2.11.16.
3548
3549 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3550
3551         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3552         `is-local'.
3553         (elmo-folder-flag-as-answered): Ditto.
3554
3555 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3556
3557         * modb-standard.el: New file.
3558
3559         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3560         elmo-msgdb-convert-type is `sync'.
3561
3562         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3563         (elmo-msgdb-convert-type): New user option.
3564
3565         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3566         (elmo-load-msgdb): Auto detect saved type.
3567
3568         * elmo-version.el (elmo-version): Up to 2.11.15.
3569
3570 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3571
3572         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3573
3574         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3575         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3576         with argument `delete-if-none' when dst-folder is 'null.
3577
3578         * elmo-flag.el (elmo-folder-append-messages): Defined.
3579         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3580
3581 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3582
3583         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3584
3585 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3586
3587         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3588         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3589         (elmo-folder-commit): Ditto.
3590
3591 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3592
3593         * elmo-flag.el: New file.
3594
3595         * elmo-mark.el: Removed.
3596
3597         * modb-legacy.el (modb-legacy-new-mark,
3598         modb-legacy-unread-uncached-mark,
3599         modb-legacy-unread-cached-mark,
3600         modb-legacy-read-uncached-mark,
3601         modb-legacy-answered-cached-mark,
3602         modb-legacy-answered-uncached-mark,
3603         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3604         All other related portions are changed.
3605
3606         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3607         (elmo-folder-list-messages-with-global-mark): Abolish.
3608         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3609         (elmo-folder-flag-as-important): Ditto.
3610         (elmo-folder-unflag-read): Ditto.
3611         (elmo-folder-flag-as-read): Ditto.
3612         (elmo-folder-unflag-answered): Ditto.
3613         (elmo-folder-flag-as-answered): Ditto.
3614         (elmo-message-encache): Return the cache path.
3615         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3616         (elmo-message-set-flag): Transitional implementation.
3617         (elmo-message-unset-flag): Ditto.
3618         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3619         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3620         (elmo-init): Call elmo-global-flag-initialize.
3621         (toplevel): Added autoload settings for elmo-flag.
3622
3623         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3624
3625         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3626         (elmo-file-cache-delete): Don't treat global-mark.
3627
3628         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3629
3630         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3631
3632         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3633         `elmo-global-flags-set'.
3634
3635         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3636         `flag'.
3637         (elmo-folder-unflag-read): Ditto.
3638         (elmo-folder-unflag-important): Ditto.
3639         (elmo-folder-flag-as-important): Ditto.
3640         (elmo-folder-unflag-answered): Ditto.
3641         (elmo-folder-flag-as-answered): Ditto.
3642
3643         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3644         `elmo-global-flags-set'.
3645         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3646
3647         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3648
3649         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3650         `flag'.
3651         (elmo-folder-flag-as-important): Ditto.
3652         (elmo-folder-unflag-important): Ditto.
3653         (elmo-folder-flag-as-important): Ditto.
3654         (elmo-folder-unflag-read): Ditto.
3655         (elmo-folder-flag-as-read): Ditto.
3656         (elmo-folder-unflag-answered): Ditto.
3657         (elmo-folder-flag-as-answered): Ditto.
3658
3659         * elmo-multi.el (elmo-folder-list-importants): Don't call
3660         elmo-folder-list-messages-with-global-mark.
3661         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3662         (elmo-folder-unflag-important): Ditto.
3663         (elmo-folder-flag-as-read): Ditto.
3664         (elmo-folder-unflag-read): Ditto.
3665         (elmo-folder-flag-as-answered): Ditto.
3666         (elmo-folder-unflag-answered): Ditto.
3667
3668         * elmo-msgdb.el (elmo-msgdb-new-mark,
3669         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3670         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3671         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3672         (Moved to modb-legacy.el).
3673         (elmo-flag-table-get): Treat important flag too.
3674
3675         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3676         `mark' to `flag'.
3677         (elmo-map-folder-flag-as-important): Ditto.
3678         (elmo-map-folder-unflag-read): Ditto.
3679         (elmo-map-folder-flag-as-read): Ditto.
3680         (elmo-map-folder-unflag-answered): Ditto.
3681         (elmo-map-folder-flag-as-answered): Ditto.
3682         (elmo-folder-unflag-important): Ditto.
3683         (elmo-folder-flag-as-important): Ditto.
3684         (elmo-folder-unflag-read): Ditto.
3685         (elmo-folder-flag-as-read): Ditto.
3686         (elmo-folder-unflag-answered): Ditto.
3687         (elmo-folder-flag-as-answered): Ditto.
3688
3689         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3690         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3691         `flag'.
3692         (elmo-map-folder-unflag-important): Ditto.
3693         (elmo-map-folder-flag-as-read): Ditto.
3694         (elmo-map-folder-unflag-read): Ditto.
3695         (elmo-map-folder-flag-as-answered): Ditto.
3696         (elmo-map-folder-unflag-answered): Ditto.
3697
3698         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3699         `elmo-global-flags-set'.
3700         (elmo-global-flags-set): Added autoload setting.
3701
3702         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3703         `flag'.
3704
3705         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3706         `elmo-msgdb-global-mark-set'.
3707         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3708         Call `elmo-global-flags-set'.
3709         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3710         `flag'.
3711         (elmo-folder-flag-as-important-plugged): Ditto.
3712         (elmo-folder-unflag-read-plugged): Ditto.
3713         (elmo-folder-flag-as-read-plugged): Ditto.
3714         (elmo-folder-unflag-answered-plugged): Ditto.
3715         (elmo-folder-flag-as-answered-plugged): Ditto.
3716         (elmo-global-flags-set): Added autoload setting.
3717
3718         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3719         `flag'.
3720         (elmo-folder-unflag-read): Ditto.
3721         (elmo-folder-flag-as-important): Ditto.
3722         (elmo-folder-unflag-important): Ditto.
3723         (elmo-folder-flag-as-answered): Ditto.
3724         (elmo-folder-unflag-answered): Ditto.
3725
3726         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3727         change of `mark'->`flag'.
3728         (elmo-dop-queue-method-name-alist): Ditto.
3729         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3730         (elmo-folder-unflag-read-dop): Ditto.
3731         (elmo-folder-flag-as-important-dop): Ditto.
3732         (elmo-folder-unflag-important-dop): Ditto.
3733         (elmo-folder-flag-as-answered-dop): Ditto.
3734         (elmo-folder-unflag-answered-dop): Ditto.
3735
3736         * elmo-cache.el (elmo-folder-msgdb-create): Call
3737         `elmo-global-flags-set'.
3738
3739         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3740         Call `elmo-global-flags-set'.
3741         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3742         elmo-archive-parse-mmdf with argument `folder'.
3743         (elmo-archive-parse-mmdf): Added argument `folder';
3744         Call `elmo-global-flags-set'.
3745
3746         * elmo-version.el (elmo-version): Up to 2.11.14.
3747
3748 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3749
3750         * modb.el (elmo-msgdb-length): Define.
3751
3752         * elmo.el (elmo-make-folder): Fixed.
3753         (elmo-generic-folder-append-messages): Follow the API change.
3754
3755         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3756         API change.
3757
3758 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3759
3760         * modb.el: New file.
3761
3762         * modb-entity.el: Ditto.
3763
3764         * modb-legacy.el: Ditto.
3765
3766         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3767         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3768         of `elmo-msgdb-overview-get-entity'.
3769         (elmo-msgdb-get-field): Ditto.
3770         (elmo-msgdb-merge): Moved to `elmo.el'.
3771         (elmo-msgdb-length): Removed; redefine as modb method.
3772         (elmo-msgdb-change-mark): Abolish.
3773         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3774         (elmo-msgdb-match-condition): Don't use mark.
3775         (elmo-msgdb-overview-get-entity): Abolish.
3776         Split modb part into `modb*.el'.
3777
3778         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3779
3780         * elmo-shimbun.el (shimbun-mua-search-id): Use
3781         `elmo-msgdb-message-entity' instead of
3782         `elmo-msgdb-overview-get-entity'.
3783         (elmo-shimbun-folder-shimbun-header): Ditto.
3784         (elmo-shimbun-get-headers): Ditto.
3785         (elmo-shimbun-update-overview): Ditto.
3786
3787         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3788
3789         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3790
3791         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3792         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3793
3794         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3795         `elmo-msgdb-mark-to-flags'.
3796
3797         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3798         `elmo-msgdb-set-path'.
3799
3800         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3801  
3802         * elmo-version.el (elmo-version): Up to 2.11.13.
3803
3804         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3805
3806         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3807         of mark.
3808
3809 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3810
3811         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3812         mismatch.
3813
3814 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3815
3816         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3817         instead of `elmo-msgdb-get-cached'.
3818         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3819
3820         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3821         (elmo-msgdb-set-cached): Ditto.
3822         (elmo-msgdb-set-flag): Rewrite.
3823         (elmo-msgdb-unset-flag): Ditto.
3824
3825         * elmo-msgdb.el: Rewrite with luna.
3826
3827         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3828         (elmo-folder-msgdb): Follow the change above.
3829         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3830         (elmo-folder-unmark-important): Follow the API change.
3831         (elmo-folder-mark-as-important): Ditto.
3832         (elmo-folder-unmark-read): Ditto.
3833         (elmo-folder-mark-as-read): Ditto.
3834         (elmo-folder-unmark-answered): Ditto.
3835         (elmo-folder-mark-as-answered): Ditto.
3836         (elmo-folder-clear): Likewise.
3837
3838         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3839         instead of `elmo-msgdb-load' (renamed).
3840
3841         * elmo-version.el (elmo-version): Up to 2.11.12.
3842
3843 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3844
3845         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3846         change.
3847         (elmo-message-mark): Abolish.
3848         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3849         instead of `elmo-msgdb-change-mark'.
3850
3851         * elmo-pipe.el (elmo-message-mark): Abolish.
3852
3853         * elmo-multi.el (elmo-message-mark): Ditto.
3854
3855         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3856         (elmo-msgdb-unread-uncached-mark): Ditto.
3857         (elmo-msgdb-unread-cached-mark): Ditto.
3858         (elmo-msgdb-read-uncached-mark): Ditto.
3859         (elmo-msgdb-answered-cached-mark): Ditto.
3860         (elmo-msgdb-answered-uncached-mark): Ditto.
3861         (elmo-msgdb-important-mark): Ditto.
3862         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3863         `use-cache'.
3864         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3865         `flags'.
3866         (elmo-flag-table-load): Changed flag to list of flag.
3867         (elmo-flag-table-set): If flags is nil, set read flag.
3868         (elmo-flag-table-get): Return derived flags from global mark,
3869         cache status and saved flags.
3870         (elmo-msgdb-flag-table): Follow the change above.
3871         (elmo-msgdb-out-of-date-messages): New function.
3872
3873         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3874
3875         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3876
3877         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3878
3879         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3880         (elmo-nntp-msgdb-create-message): Ditto.
3881
3882         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3883
3884         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3885         independent.
3886         (elmo-folder-msgdb-create): Follow the API change.
3887
3888         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3889         (elmo-folder-append-messages): Ditto.
3890
3891         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3892         (elmo-folder-append-buffer): Ditto.
3893
3894         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3895
3896         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3897
3898         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3899         (elmo-archive-parse-mmdf): Ditto.
3900
3901         * elmo-version.el (elmo-version): Up to 2.11.11.
3902
3903 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3904
3905         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3906         `elmo-msgdb-mark'.
3907
3908         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3909
3910         * elmo-pipe.el (elmo-message-flags): Defined.
3911
3912         * elmo-multi.el (elmo-message-flags): Ditto.
3913
3914 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3915
3916         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3917         `elmo-msgdb-delete-msgs'.
3918
3919         * elmo.el (elmo-folder-count-flags): Don't use
3920         `elmo-msgdb-get-mark-alist'.
3921         (elmo-folder-detach-messages): Follow the API change.
3922
3923         * elmo.el (elmo-folder-list-messages): Append killed messages into
3924         result if `visible-only' is nil.
3925
3926         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3927         canceled messages.
3928         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3929         (elmo-folder-update-number): Likewise.
3930
3931         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3932         (elmo-pop3-sort-msgdb-by-original-number): Use
3933         `elmo-msgdb-sort-entities'.
3934
3935         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3936         (elmo-msgdb-sort-by-date): Use it.
3937         (elmo-msgdb-overview-sort-by-date): Abolish.
3938
3939         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3940
3941         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3942         (elmo-msgdb-flags): New function.
3943         (elmo-msgdb-merge): Use elmo-msgdb-append.
3944
3945         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3946         change.
3947
3948         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3949
3950         * elmo-dop.el (elmo-folder-status-dop): Use
3951         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3952
3953 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3954
3955         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3956
3957         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3958
3959         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3960
3961         * elmo-util.el (elmo-with-progress-display): New macro.
3962
3963         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3964
3965 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3966
3967         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3968         `elmo-folder-list-message-entities' instead of
3969         `elmo-msgdb-get-overview'.
3970         (elmo-map-folder-list-message-locations): Ditto.
3971
3972         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3973         methods instead of treat directly).
3974         (elmo-msgdb-clear): Ditto.
3975         (elmo-msgdb-delete-msgs): Ditto.
3976         (elmo-msgdb-sort-by-date): Ditto.
3977
3978         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3979         local variables.
3980         (elmo-nntp-folder-msgdb-create): Follow the API change.
3981
3982         * elmo-version.el (elmo-version): Up to 2.11.10.
3983
3984 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3985
3986         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3987         (elmo-msgdb-flags-to-mark): Ditto.
3988         (elmo-msgdb-append-entity): Ditto.
3989
3990         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3991         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3992         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3993         (elmo-archive-parse-mmdf): Ditto.
3994
3995         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3996
3997         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3998
3999         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
4000
4001         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4002
4003         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
4004
4005         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4006
4007         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4008
4009         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4010
4011         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
4012         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
4013         to empty msgdb.
4014
4015         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
4016         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
4017         instead of directly construction.
4018         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
4019         instead of construct msgdb.
4020
4021         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
4022         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
4023         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
4024         instead of construct msgdb.
4025
4026 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4027
4028         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
4029         when field is from or subject.
4030
4031 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
4032
4033         * elmo-multi.el (elmo-message-entity-parent): Define.
4034         (elmo-folder-search): Rewrite.
4035
4036 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4037
4038         * elmo-multi.el (elmo-message-cached-p): Define.
4039
4040         * elmo.el (elmo-message-cached-p): New method.
4041         (elmo-message-accessible-p): Use it instead of msgdb API directly.
4042         (elmo-message-flags): New method.
4043         (elmo-message-flagged-p): New function.
4044
4045         * elmo-version.el (elmo-version): Up to 2.11.9.
4046
4047 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4048
4049         * elmo-version.el (elmo-version): Up to 2.11.8.
4050
4051         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
4052
4053         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
4054
4055 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
4056
4057         * elmo.el (elmo-folder-detach-messages): Undo last change.
4058
4059 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
4060
4061         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
4062
4063         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
4064         only when src folder type is pop3.
4065
4066 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
4067
4068         * elmo-msgdb.el (elmo-msgdb-make-index): Use
4069         elmo-msgdb-overview-entity-get-number instead of
4070         elmo-message-entity-number.
4071
4072 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4073
4074         * elmo-version.el (elmo-version): Up to 2.11.7.
4075
4076 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
4077
4078         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
4079         function.
4080
4081         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
4082         (elmo-msgdb-merge): New function.
4083         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
4084         (elmo-msgdb-make-index): Rewrite.
4085
4086         * elmo-version.el (elmo-version): Up to 2.11.6.
4087
4088         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
4089         use it as a the path for loading message entities.
4090
4091         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
4092
4093 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
4094
4095         * elmo-filter.el (elmo-folder-set-message-modified): Set 
4096         message-modified slot of itself if it does not require target msgdb.
4097
4098         * elmo-mime.el (elmo-mime-message-display): Display message entirely
4099         if folder length is zero.
4100         (elmo-mime-display-as-is): Ditto.
4101
4102         * elmo-filter.el (elmo-folder-set-message-modified): Define.
4103
4104         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
4105
4106 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4107
4108         * elmo.el (elmo-folder-set-message-modified): New method.
4109         (elmo-generic-folder-commit): Use it.
4110         (elmo-folder-synchronize): Ditto.
4111
4112         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
4113         (elmo-folder-commit): Remove duplicate definition.
4114
4115 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4116
4117         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
4118
4119 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4120
4121         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
4122         (elmo-strict-folder-diff): Ditto.
4123         (elmo-folder-set-info-max-by-numdb): Simplify.
4124
4125         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
4126         elmo-msgdb-list-messages.
4127
4128         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
4129         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
4130
4131 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4132
4133         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
4134         visible-only is non-nil.
4135         (elmo-folder-confirm-appends): Changed message.
4136         (elmo-folder-synchronize): Added argument disable-killed.
4137
4138         * elmo-multi.el (elmo-folder-synchronize): Added argument
4139         disable-killed.
4140
4141         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
4142
4143         * elmo-version.el (elmo-version): Up to 2.11.5.
4144
4145         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
4146         elmo-list-filter.
4147
4148         * elmo-util.el (elmo-list-filter): Simplify.
4149
4150         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
4151         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
4152         (elmo-generic-folder-diff): Abolish argument.
4153         (elmo-msgdb-load): Don't use number-alist.
4154
4155         * elmo-filter.el (elmo-folder-diff): Abolish argument.
4156
4157         * elmo-pipe.el (elmo-folder-diff): Ditto.
4158
4159         * elmo-nmz.el (elmo-folder-diff): Ditto.
4160
4161         * elmo-net.el (elmo-folder-diff): Ditto.
4162
4163         * elmo-maildir.el (elmo-folder-diff): Ditto.
4164
4165         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
4166
4167         * elmo-multi.el (elmo-folder-diff): Ditto
4168         (elmo-multi-folder-diff): Rewrite.
4169
4170 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4171
4172         * elmo-pipe.el (elmo-folder-msgdb): Define.
4173
4174 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
4175
4176         * elmo.el (elmo-message-set-cached): Define as a method.
4177
4178         * elmo-pipe.el (elmo-message-set-cached): Define.
4179         (elmo-find-fetch-strategy): Ditto.
4180
4181         * elmo-multi.el (elmo-message-set-cached): Define.
4182         (elmo-find-fetch-strategy): Rewrite.
4183
4184         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
4185
4186         * elmo-pipe.el (elmo-message-folder): Fixed definition.
4187
4188 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4189
4190         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
4191         instead of number-alist.
4192
4193         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
4194         mark nor message-id when msgdb of source folder is not loaded.
4195
4196         * elmo.el (elmo-generic-folder-append-messages): Ditto.
4197
4198         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4199
4200 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
4201
4202         * elmo.el (elmo-folder-length): Don't require msgdb.
4203
4204 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
4205
4206         * elmo.el (elmo-message-mark): Cause an error when empty folder.
4207         (elmo-message-field): Ditto.
4208
4209         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
4210         (elmo-map-folder-list-message-locations): Setup `answered-locations'
4211         slot.
4212         (elmo-map-folder-list-answereds): Define.
4213         (elmo-maildir-list-location): Treat 'R' info.
4214         (elmo-folder-msgdb-create): Treat flag-table.
4215         (elmo-folder-append-messages): Save flag-table.
4216
4217 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
4218
4219         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
4220         Use SELECT when elmo-imap4-use-select-to-update-status is t.
4221
4222 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4223
4224         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
4225
4226         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
4227         'read when mark is null.
4228
4229 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
4230
4231         * elmo-version.el (elmo-version): Up to 2.11.4.
4232
4233 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4234
4235         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
4236         (elmo-folder-mark-as-answered): Ditto.
4237
4238 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
4239
4240         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
4241         (elmo-pop3-get-session): Make msgdb directory after session.
4242         (elmo-folder-exists-p): Check exactly at the first time even when the
4243         elmo-pop3-exists-exactly is nil.
4244
4245         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
4246         (elmo-folder-list-messages): Define instead of
4247         elmo-folder-list-messages-internal.
4248         (elmo-folder-check): Check destination folder.
4249         (elmo-folder-synchronize): Drain the pipe.
4250
4251         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
4252         when msgdb is not loaded.
4253
4254         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
4255
4256         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
4257         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
4258         messages.
4259
4260         * elmo.el (elmo-folder-kill-messages-before): New function.
4261         (elmo-folder-kill-messages): Ditto.
4262         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
4263
4264         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
4265         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
4266         killed not by synchronize (e.g. scoring).
4267
4268 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4269
4270         * elmo.el (elmo-folder-search-fast): Return t if condition is not
4271         treated.
4272         (elmo-folder-search): Follow the change above.
4273
4274         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
4275         into the candidates of search field.
4276
4277 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
4278
4279         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
4280         (elmo-msgdb-unset-flag): Ditto.
4281
4282         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
4283
4284 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
4285
4286         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
4287         (elmo-folder-commit): Define.
4288         (elmo-folder-synchronize): Ditto.
4289         (elmo-folder-list-flagged): Ditto.
4290         (elmo-folder-commit): Ditto.
4291         (elmo-folder-length): Ditto.
4292         (elmo-folder-count-flags): Ditto.
4293         (elmo-message-mark): Ditto.
4294         (elmo-message-field): Ditto.
4295         (elmo-message-entity): Ditto.
4296         (elmo-message-folder): Ditto.
4297
4298 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
4299
4300         * elmo.el (elmo-message-field): Define as a method.
4301
4302         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
4303         (elmo-message-field): Define.
4304
4305         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
4306         (elmo-folder-list-importants): Ditto.
4307         (elmo-folder-list-answereds): Ditto.
4308
4309         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
4310         qualifier.
4311         (elmo-folder-mark-as-read): Ditto.
4312         (elmo-folder-unmark-read): Ditto.
4313         (elmo-folder-mark-as-answered): Ditto.
4314         (elmo-folder-unmark-answered): Ditto.
4315         (elmo-folder-list-flagged): Define.
4316         (elmo-folder-commit): Ditto.
4317         (elmo-folder-length): Ditto.
4318         (elmo-folder-count-flags): Ditto.
4319
4320 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4321
4322         * elmo.el (elmo-folder-detach-messages): New method.
4323         (elmo-folder-move-messages): Use it.
4324         (elmo-folder-synchronize): Ditto.
4325
4326         * elmo-multi.el (elmo-folder-detach-messages): Define.
4327
4328         * elmo.el (elmo-message-copy-entity): New function.
4329         (elmo-message-entity-set-number): Ditto.
4330         (elmo-message-mark): Define as method.
4331
4332         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4333         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4334         (elmo-message-entity): Fixed last change.
4335         (elmo-message-mark): Define.
4336         (elmo-folder-msgdb-create): Abolish.
4337         (elmo-multi-folder-append-msgdb): Ditto.
4338         (elmo-multi-folder-diff): Fixed.
4339         (elmo-multi-split-number-alist): Removed.
4340         (elmo-multi-split-mark-alist): Removed.
4341         (elmo-folder-list-messages): Define.
4342         (elmo-folder-list-messages-internal): Removed.
4343
4344         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4345         local file messages.
4346         (elmo-folder-msgdb-create): Fixed read mark.
4347
4348 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4349
4350         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4351         if mark is nil.
4352
4353 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4354
4355         * elmo.el (elmo-folder-list-message-entities): Define as inline
4356         function.
4357         (elmo-folder-messages): Abolish.
4358
4359         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4360         folder.
4361         (elmo-folder-synchronize): Define.
4362         (elmo-message-entity): Define.
4363
4364 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4365
4366         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4367         elmo-imap4-session-select-mailbox.
4368
4369         * elmo.el (elmo-folder-move-messages): Don't display any message.
4370
4371         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4372         parsing.
4373         (elmo-imap4-session-check): Don't wait CHECK response.
4374         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4375
4376 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4377
4378         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4379
4380 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4381
4382         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4383         API.
4384         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4385
4386
4387         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4388         (elmo-folder-list-message-entities): Added argument in-msgdb and
4389         numbers.
4390         (elmo-folder-synchronize): Define as a method.
4391
4392         * elmo-nntp.el (elmo-folder-initialize): Don't use
4393         elmo-nntp-default-user if zero-length username is specified
4394         explicitly.
4395
4396 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4397
4398         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4399         server name in case with username.
4400         (XXX: this is ad-hoc fix against username includes "@", it
4401         should be solved fundamentally)
4402
4403 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4404
4405         * elmo-nntp.el (elmo-nntp-debug): New function.
4406         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4407         (elmo-network-authenticate-session): Hide auth-info from the log.
4408
4409         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4410         user name if it is equal to elmo-nntp-default-user.
4411
4412 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4413
4414         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4415         instead of shimbun-server-internal;
4416         Use shimbun-current-group instead of shimbun-current-group-internal.
4417         (elmo-folder-plugged-p): Use shimbun-server instead of
4418         shimbun-server-internal.
4419         (elmo-folder-set-plugged): Ditto.
4420         (elmo-net-port-info): Ditto.
4421         (elmo-folder-check): Ditto.
4422         (elmo-folder-expand-msgdb-path): Ditto.
4423         (elmo-folder-list-subfolders): Ditto.
4424
4425 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4426
4427         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4428         Convert field-name to lower case.
4429         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4430
4431 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4432
4433         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4434         `message' and `error' take format string.
4435
4436 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4437
4438         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4439
4440 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4441
4442         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4443         recursive call (can't byte compile on emacs 20.7).
4444
4445 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4446
4447         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4448         (elmo-folder-list-message-entities): New API.
4449         (elmo-message-entity): Ditto.
4450         (elmo-message-entity-parent): Ditto.
4451         (elmo-folder-do-each-message-entity): Ditto.
4452         (elmo-message-entity-number): Ditto.
4453         (elmo-message-entity-field): Ditto.
4454         (elmo-message-entity-set-field): Ditto.
4455         (elmo-folder-count-flags): Ditto.
4456         (elmo-folder-length): Ditto.
4457
4458         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4459         not.
4460
4461         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4462         (elmo-msgdb-count-marks): Abolish.
4463         (elmo-msgdb-make-entity): Ditto.
4464         (elmo-msgdb-do-each-entity): Ditto.
4465         (elmo-msgdb-message-entity): New inline function.
4466         (elmo-msgdb-message-entity-field): Ditto.
4467         (elmo-msgdb-message-entity-set-field): Ditto.
4468         (elmo-msgdb-make-message-entity): New function.
4469
4470 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4471
4472         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4473         to flag. (All other related portions are changed.)
4474         (elmo-folder-msgdb-create): Likewise.
4475         (elmo-generic-folder-append-messages): Use flag-table instead of
4476         seen-list.
4477         (elmo-folder-move-messages): Removed redundant process.
4478         (elmo-folder-synchronize): Likewise.
4479
4480         * elmo-msgdb.el (elmo-flag-table-get): New function.
4481         (elmo-flag-table-save): Fixed.
4482         (elmo-msgdb-length): New inline function.
4483         (elmo-msgdb-flag-table): New function.
4484         (elmo-msgdb-mark): Add optional argument new.
4485         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4486         (elmo-msgdb-seen-list): Ditto.
4487         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4488
4489
4490 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4491
4492         * elmo.el (elmo-message-set-mark): Abolish.
4493         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4494         (All related portions are changed.)
4495
4496         * elmo-msgdb.el (toplevel): Added comment.
4497         (elmo-load-msgdb): Added 4th element `path'.
4498         (elmo-msgdb-append): Follow the change above.
4499         (elmo-msgdb-clear): Ditto.
4500         (elmo-msgdb-delete-msgs): Ditto.
4501         (elmo-msgdb-get-path): New inline function.
4502         (elmo-msgdb-set-path): Ditto.
4503         (elmo-flag-table-filename): New variable.
4504         (elmo-flag-table-load): New function.
4505         (elmo-flag-table-set): Ditto.
4506         (elmo-flag-table-save): Ditto.
4507         (elmo-msgdb-get-field-value): Abolish.
4508         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4509
4510 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4511
4512         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4513         the folder has been deleted successfully.
4514         * elmo-imap4.el (elmo-folder-delete): Ditto.
4515         * elmo-archive.el (elmo-folder-delete): Ditto.
4516         * elmo-localdir.el (elmo-folder-delete): Ditto.
4517         * elmo-maildir.el (elmo-folder-delete): Ditto.
4518
4519 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4520
4521         * elmo-util.el (elmo-string-member-ignore-case): New function.
4522         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4523         (elmo-imap4-fetch-callback-1-subr): Likewise.
4524
4525 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4526
4527         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4528         the case of the name attribute "\Noselect".
4529
4530 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4531
4532         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4533
4534         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4535         flist, is not always a member of onum-alist.
4536
4537 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4538
4539         * elmo-version.el (elmo-version): Up to 2.11.3.
4540
4541 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4542
4543         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4544         copied from localdir's one.
4545
4546         * elmo-pipe.el (elmo-folder-rename): New method, rename
4547         destination folder with leaving source folder as it is.
4548
4549 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4550
4551         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4552         replace-regexp.
4553
4554 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4555
4556         * elmo-version.el (elmo-version): Up to 2.11.2.
4557
4558 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4559
4560         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4561         shimbun-open in case of "@".
4562         (elmo-folder-open-internal): Cope with shimbun = nil case.
4563         (elmo-folder-plugged-p): Ditto.
4564         (elmo-folder-list-subfolders): Make list for "@/" group.
4565
4566 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4567
4568         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4569         mailbox (e.g. for %~/something).
4570
4571 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4572
4573         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4574         Replace nested conditional with guard clauses.
4575
4576 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4577
4578         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4579         error [wl:11327].
4580
4581         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4582         print-depth.
4583
4584 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4585
4586         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4587         Replace nested conditional with guard clauses.
4588
4589 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4590
4591         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4592         (elmo-passwd-alist-save): Ditto.
4593         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4594
4595 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4596
4597         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4598         dir-name only if it is absolute path.
4599         (TODO: distinguish +/something and +something)
4600
4601 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4602
4603         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4604         path for "+~/something".
4605
4606 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4607
4608         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4609         as non-directory, cause error before rename-file.
4610         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4611         apropriately, mimic localdir's one.
4612         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4613
4614 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4615
4616         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4617
4618 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4619
4620         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4621
4622         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4623         
4624         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4625         is included in the global-mark or not.
4626
4627 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4628
4629         * utf7.el (toplevel): Avoid error when the function
4630         find-coding-system does not exist.
4631
4632 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4633
4634         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4635         cache even if the folder is plugged.
4636         (elmo-nntp-search-primitive): Do nothing when body search is
4637         invoked (although it is not used by the change above).
4638         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4639
4640 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4641
4642         * elmo-version.el (elmo-version): Up to 2.11.1.
4643
4644 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4645
4646         * elmo-archive.el: Specify charset.
4647
4648 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4649
4650         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4651         process buffer lives or not.
4652
4653         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4654         while flushing queues (It causes infinite loop).
4655
4656 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4657
4658         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4659
4660 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4661
4662         * utf7.el (toplevel): Check the ucs features dynamically.
4663         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4664
4665         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4666         folder is creatabe or not if it already exists.
4667
4668 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4669
4670         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4671
4672         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4673
4674         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4675         (elmo-imap4-read-response): Take care of garbage response.
4676
4677 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4678
4679         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4680         just return nil instead of error.
4681
4682 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4683
4684         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4685         search-key is "body".
4686
4687 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4688
4689         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4690         of elmo-string-matched-assoc to use match-data.
4691         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4692
4693 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4694
4695         * elmo-split.el (elmo-split->): New function.
4696         (elmo-split-<): Ditto.
4697
4698 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4699
4700         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4701         workaround for invalid message-id.
4702
4703 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4704
4705         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4706         return normal pop3 session or pop3 biff session.
4707
4708 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4709
4710         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4711         info part to the cur files when the new files already have it.
4712         (Adviced by Jared Rhine <jared@wordzoo.com>)
4713
4714 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4715
4716         * elmo-split.el (elmo-split-default-action): New variable.
4717         (elmo-split-subr): Use it if all other conditions are passed.
4718         Extend `fname' and rename it as `action'. (implemented
4719         Teranishi-san's idea in [wl:10800])
4720
4721 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4722
4723         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4724         * elmo-util.el: Ditto.
4725
4726 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4727
4728         * elmo.el (elmo-message-accessible-p): Renamed from
4729         elmo-message-cached-p and rewritten.
4730
4731 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4732
4733         * elmo.el (elmo-folder-list-flagged): New generic function.
4734         (elmo-folder-list-importants): New implementation.
4735         (elmo-folder-list-answereds): Ditto.
4736         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4737         Added 'digest'.
4738         (elmo-message-cached-p): New function.
4739         (elmo-message-set-flag): Ditto (no content).
4740         (elmo-message-unset-flag): Ditto.
4741         (elmo-folder-list-messages-mark-match): Abolish.
4742
4743         * elmo-util.el (elmo-regexp-opt): New function.
4744
4745         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4746         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4747         Added 'digest'.
4748         (elmo-msgdb-list-flagged): New function.
4749
4750         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4751         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4752         Added 'digest'.
4753
4754         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4755
4756 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4757
4758         * elmo-version.el (elmo-version): Up to 2.11.0.
4759
4760 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4761
4762         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4763         `elmo-file-cache-exists-p'; use proper mark that depends on
4764         `use-cache'.
4765         (elmo-msgdb-unset-flag): Ditto.
4766         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4767
4768         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4769         with 4th argument `use-cache'.
4770
4771 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4772
4773         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4774         (elmo-folder-mark-as-important): Ditto.
4775         (elmo-folder-unmark-read): Ditto.
4776         (elmo-folder-mark-as-read): Ditto.
4777         (elmo-folder-unmark-answered): Ditto.
4778         (elmo-folder-mark-as-answered): Ditto.
4779
4780         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4781         message status.
4782         (elmo-msgdb-mark): Likewise.
4783         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4784         (elmo-msgdb-unset-flag): Likewise.
4785
4786         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4787
4788 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4789
4790         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4791         `last:' filter.
4792
4793 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4794
4795         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4796         set spool-length to 0.
4797
4798 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4799
4800         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4801         (elmo-dop-queue-flush): Fixed last change.
4802
4803 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4804
4805         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4806         if require-msgdb slot is nil.
4807         (elmo-folder-list-importants): Likewise.
4808
4809 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4810
4811         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4812         mark is changed.
4813
4814         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4815         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4816         is changed.
4817
4818 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4819
4820         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4821
4822 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4823
4824         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4825
4826         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4827
4828 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4829
4830         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4831         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4832
4833 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4834
4835         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4836         the problem reported by Sean Rima [wl-en:180].
4837
4838 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4839
4840         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4841
4842         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4843
4844         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4845
4846         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4847
4848         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4849
4850         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4851
4852         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4853
4854 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4855
4856         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4857         status number.
4858
4859 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4860
4861         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4862         (elmo-folder-mark-as-read): Follow the API change.
4863         (elmo-message-set-cached): New function.
4864
4865         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4866
4867         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4868
4869         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4870         (elmo-folder-mark-as-important): Ditto.
4871         (elmo-folder-unmark-read): Ditto.
4872         (elmo-folder-mark-as-read): Ditto.
4873         (elmo-folder-unmark-answered): Ditto.
4874         (elmo-folder-mark-as-answered): Ditto.
4875
4876         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4877         (elmo-folder-unmark-important): Ditto.
4878         (elmo-folder-mark-as-read): Ditto.
4879         (elmo-folder-unmark-read): Ditto.
4880         (elmo-folder-mark-as-answered): Ditto.
4881         (elmo-folder-unmark-answered): Ditto.
4882
4883         * elmo-mark.el (toplevel): Removed some mark method definitions.
4884
4885         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4886         (elmo-map-folder-mark-as-answered): Ditto.
4887         (elmo-folder-unmark-important): Add :before qualifier.
4888         (elmo-folder-mark-as-important): Ditto.
4889         (elmo-folder-unmark-read): Ditto.
4890         (elmo-folder-mark-as-read): Ditto.
4891         (elmo-folder-unmark-answered): Define.
4892         (elmo-folder-mark-as-answered): Ditto.
4893
4894         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4895         (elmo-map-folder-unmark-answered): Ditto.
4896
4897         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4898
4899         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4900         (elmo-folder-mark-as-important): Ditto.
4901         (elmo-folder-unmark-read): Ditto.
4902         (elmo-folder-mark-as-read): Ditto.
4903         (elmo-folder-unmark-answered): Ditto.
4904         (elmo-folder-mark-as-answered): Ditto.
4905
4906         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4907         `mark'; evaluate mark condition.
4908         (elmo-msgdb-match-condition-internal): New function.
4909         (elmo-msgdb-match-condition): Call it; changed argument.
4910
4911         * elmo.el (elmo-folder-search): Follow the API change on
4912         `elmo-msgdb-match-condition'.
4913
4914 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4915
4916         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4917         original mark is non-nil.
4918
4919 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4920
4921         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4922         (elmo-map-folder-list-answereds): New method.
4923         (elmo-folder-list-unreads): Add :around qualifier.
4924         (elmo-folder-list-importants): Ditto.
4925         (elmo-folder-list-answereds): Ditto.
4926
4927 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4928
4929         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4930
4931         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4932         method if msgdb is not required.
4933         (elmo-filter-folder-list-importants): Don't treat global-mark.
4934
4935         * elmo.el (elmo-folder-list-importants): Ditto.
4936
4937         * elmo-net.el (elmo-folder-list-importants): Ditto.
4938
4939         * elmo-map.el (elmo-folder-list-importants): Ditto.
4940
4941         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4942
4943         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4944         (elmo-imap4-folder-list-any-plugged): New function.
4945         (elmo-imap4-search-internal-primitive): Use it.
4946
4947         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4948         only when require-msgdb slot is non-nil.
4949         (elmo-folder-close): Clear target folder's msgdb.
4950
4951 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4952
4953         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4954         (elmo-pop3-msgdb-create-by-header): Ditto.
4955         (elmo-pop3-msgdb-create-message): Ditto.
4956
4957         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4958
4959         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4960
4961         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4962
4963         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4964         (elmo-folder-msgdb-create): Ditto.
4965         (elmo-nntp-folder-msgdb-create): Ditto.
4966         (elmo-nntp-msgdb-create-by-header): Ditto.
4967         (elmo-nntp-msgdb-create-message): Ditto.
4968         (elmo-folder-list-unreads): Define.
4969
4970         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4971         (elmo-folder-append-messages): Ditto.
4972         (elmo-folder-list-unreads): Define.
4973         (elmo-folder-list-importants): Ditto.
4974         (elmo-folder-list-answereds): Ditto.
4975
4976         * elmo-net.el (elmo-folder-list-unreads): Define.
4977         (elmo-folder-list-importants): Ditto.
4978         (elmo-folder-list-answereds): Ditto.
4979         (elmo-folder-list-answereds-plugged): Ditto.
4980         (elmo-folder-msgdb-create): Follow the API change.
4981         (elmo-folder-msgdb-create-unplugged): Ditto.
4982         (elmo-folder-unmark-answered): Define.
4983         (elmo-folder-mark-as-answered-unplugged): Ditto.
4984         (elmo-folder-unmark-answered-unplugged): Ditto.
4985
4986         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4987         (elmo-msgdb-unread-uncached-mark): Ditto.
4988         (elmo-msgdb-unread-cached-mark): Ditto.
4989         (elmo-msgdb-read-uncached-mark): Ditto.
4990         (elmo-msgdb-answered-cached-mark): Ditto.
4991         (elmo-msgdb-answered-uncached-mark): Ditto.
4992         (elmo-msgdb-important-mark): Ditto.
4993         (elmo-msgdb-set-mark): Rewrite.
4994         (elmo-msgdb-count-marks): Rewrite.
4995         (elmo-msgdb-mark-alist-set): Abolish.
4996         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4997         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4998
4999         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
5000         (elmo-folder-close): Define.
5001         (elmo-folder-msgdb-create): Follow the API change.
5002         (elmo-folder-list-unreads): Rewrite.
5003         (elmo-folder-mark-as-important): Ditto.
5004         (elmo-folder-unmark-important): Ditto.
5005         (elmo-folder-mark-as-read): Ditto.
5006         (elmo-folder-unmark-read): Ditto.
5007         (elmo-folder-mark-as-answered): Define.
5008         (elmo-folder-unmark-answered): Ditto.
5009
5010         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
5011         (elmo-folder-append-messages): Ditto.
5012
5013         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
5014
5015         * elmo-map.el (elmo-folder-list-unreads): Ditto.
5016         (elmo-folder-list-importants): Ditto.
5017
5018         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
5019         (elmo-folder-append-messages): Ditto.
5020
5021         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
5022         change.
5023         (elmo-folder-msgdb-create-plugged): Ditto.
5024         (elmo-folder-append-messages): Ditto.
5025         (elmo-folder-list-answereds-plugged): Define.
5026         (elmo-imap4-search-internal-primitive): Add `mark' processing.
5027         (elmo-folder-unmark-answered-plugged): Define.
5028         (elmo-folder-mark-as-answered-plugged): Ditto.
5029         (elmo-folder-search-requires-msgdb-p): Ditto.
5030
5031         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
5032         (elmo-folder-initialize): Set it.
5033         (elmo-folder-msgdb): Define.
5034         (elmo-folder-check): Call elmo-folder-synchronize.
5035         (elmo-folder-close): Define.
5036         (elmo-folder-commit): Ditto.
5037         (elmo-folder-msgdb-create): Rewrite.
5038         (elmo-folder-list-unreads): Ditto.
5039         (elmo-folder-list-importants): Ditto.
5040         (elmo-folder-mark-as-read): Ditto.
5041         (elmo-folder-unmark-read): Ditto.
5042         (elmo-folder-mark-as-important): Ditto.
5043         (elmo-folder-unmark-important): Ditto.
5044         (elmo-folder-mark-as-answered): Define.
5045         (elmo-folder-unmark-answered): Ditto.
5046
5047         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
5048         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
5049         (elmo-dop-queue-method-name-alist): Likewise.
5050         (elmo-folder-mark-as-answered-dop): New inline function.
5051         (elmo-folder-unmark-answered-dop): Ditto.
5052         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
5053
5054         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
5055         (elmo-folder-msgdb-create): Ditto.
5056         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
5057         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
5058         (elmo-archive-parse-mmdf): Ditto.
5059
5060         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
5061         (elmo-folder-list-unreads-internal): Ditto.
5062
5063         * elmo.el (elmo-folder-msgdb): Define as generic function.
5064         (elmo-folder-list-messages): Added argument `in-msgdb'.
5065         (elmo-folder-list-unreads): Define as generic function.
5066         (elmo-folder-list-importants): Ditto.
5067         (elmo-folder-list-answereds): Ditto.
5068         (elmo-folder-list-messages-with-global-mark): New function.
5069         (elmo-folder-msgdb-create): Removed mark arguments.
5070         (elmo-folder-unmark-answered): New generic function.
5071         (elmo-folder-mark-as-answered): Ditto.
5072         (elmo-folder-append-messages): Removed argunment `unread-marks'
5073         (elmo-folder-list-unreads-internal): Abolish.
5074         (elmo-folder-list-importants-internal): Ditto.
5075         (elmo-folder-search-requires-msgdb-p): New generic function.
5076         (elmo-folder-search-requires-msgdb-p-internal): New function.
5077         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
5078         elmo-msgdb-load.
5079         (elmo-folder-search-fast): Added key 'mark'.
5080         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
5081         instead of unread-marks argument.
5082         (elmo-folder-move-messages): Removed argunment `unread-marks'
5083         (elmo-folder-unmark-important): Define.
5084         (elmo-folder-mark-as-important): Ditto.
5085         (elmo-folder-unmark-read): Ditto.
5086         (elmo-folder-mark-as-read): Ditto.
5087         (elmo-folder-unmark-answered): Ditto.
5088         (elmo-folder-mark-as-answered): Ditto.
5089         (elmo-folder-replace-marks): Abolish.
5090         (elmo-generic-folder-append-msgdb): Append msgdb before checking
5091         duplicates.
5092         (elmo-folder-synchronize): Removed mark arguments;
5093         return crosspost only number.
5094
5095 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5096
5097         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
5098         Remove redundunt connectivity check.
5099
5100 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5101
5102         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
5103         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
5104
5105 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
5106
5107         * pldap.el (ldap-decode-string): Return string as-is if
5108         `ldap-coding-system' is nil.
5109         (ldap-encode-string): Ditto.
5110         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
5111         (ldap-default-host): Fixed docstring.
5112
5113 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
5114
5115         * elmo-util.el (elmo-warning): Define as a macro which uses
5116         `display-warning' if it is defined as a function.
5117
5118         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
5119         (elmo-split-equal): Use it.
5120         (elmo-split-match): Ditto.
5121         (elmo-split-message-entity): New buffer-local variable.
5122         (elmo-split-subr): Set it.
5123
5124         * elmo-version.el (elmo-version): Up to 2.9.15.
5125
5126 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
5127
5128         * elmo-imap4.el (elmo-network-initialize-session):
5129         Check capability after starttls.
5130
5131 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
5132
5133         * elmo-util.el (elmo-list-delete): Added optional argument
5134         DELETE-FUNCTION.
5135
5136         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
5137
5138         * elmo-util.el (elmo-warning): Ignore errors while recenter.
5139
5140         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
5141
5142         * elmo-imap4.el (elmo-folder-initialize): Don't use
5143         elmo-imap4-default-mailbox.
5144
5145 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5146
5147         * elmo-split.el (toplevel): Use `product-provide'.
5148         (elmo-split): Checkdoc.
5149
5150 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
5151
5152         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
5153         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
5154         the function `elmo-imap4-debug-1'.
5155
5156 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5157
5158         * elmo-split.el (elmo-split): Moved to run hooks and to show
5159         message from elmo-split-subr.
5160         (elmo-split-subr): Follow the change above.
5161
5162         * elmo-split.el (elmo-split-subr): New function (renamed from
5163         elmo-split-subr).
5164         (elmo-split): Changed to call elmo-split-subr by element of
5165         elmo-split-folder.
5166         (elmo-split-folder): Changed customization type to choice.
5167
5168 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5169
5170         * elmo-split.el (elmo-split-and): Fixed condition.
5171
5172 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5173
5174         * elmo-split.el: New file.
5175         (elmo-split): Fixed logic.
5176         Display "Test:" instead of "Folder:" when reharsal.
5177
5178         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
5179         explicitly.
5180
5181         * elmo-version.el (elmo-version): Up to 2.9.14.
5182
5183         * elmo-util.el (elmo-expand-newtext): New function (renamed from
5184         wl-expand-newtext).
5185
5186 2002-06-10  Kenichi Sato <ksato@sonycom.com>
5187
5188         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
5189         message with no message-id field.
5190
5191 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
5192
5193         * elmo-version.el (elmo-version): Up to 2.9.13.
5194
5195         * elmo-dop.el (elmo-folder-status-dop): Fix.
5196
5197 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
5198
5199         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
5200
5201         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
5202         changing default value of default-mime-charset.
5203         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
5204
5205         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
5206
5207         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
5208         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
5209         instead of elmo-dop-queue-method-name-alist to check merging queue.
5210         (elmo-folder-delete-messages-dop): Delete from queue if negative
5211         message number.
5212         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
5213         file is already removed.
5214
5215 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
5216
5217         * elmo-vars.el: Bind colon keywords for old Emacsen.
5218
5219 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5220
5221         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
5222         against non-exsisting charset.
5223
5224 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
5225
5226         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
5227         Use eword-decode-and-unfold-unstructured-field-body.
5228
5229         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
5230         (elmo-msgdb-create-overview-from-buffer): Use document charset if
5231         exists to decode raw subject string.
5232         (toplevel): Require 'mime.
5233
5234         * elmo-version.el (elmo-version): Up to 2.9.12.
5235
5236 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
5237
5238         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
5239         (elmo-msgdb-set-mark): Ditto.
5240
5241         * elmo-version.el (elmo-version): Up to 2.9.11.
5242
5243 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
5244
5245         * elmo-util.el (elmo-delete-match-files): New function.
5246
5247         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
5248         instead of elmo-delete-directory.
5249
5250         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
5251         elmo-hash-minimun-size as 63.
5252
5253         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
5254         elmo-diff-unread is nil.
5255
5256         * elmo-imap4.el (elmo-folder-open): Fix.
5257
5258         * elmo.el (elmo-message-mark): Rewrite.
5259         (elmo-message-field): Ditto.
5260         (elmo-message-set-mark): Ditto.
5261         (elmo-folder-replace-marks): New function.
5262         (elmo-generic-folder-append-msgdb): Removed third argument for
5263         elmo-msgdb-append.
5264         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
5265         (elmo-msgdb-load): New implementation.
5266
5267         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
5268
5269         * elmo-util.el (elmo-list-insert): New implementation.
5270
5271         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
5272         argument for elmo-msgdb-append.
5273         
5274
5275         * elmo-msgdb.el (elmo-load-msgdb): New function.
5276         (elmo-make-msgdb): Ditto.
5277         (elmo-msgdb-get-index): New inline function.
5278         (elmo-msgdb-set-index): Ditto.
5279         (elmo-msgdb-get-entity-hashtb): Ditto.
5280         (elmo-msgdb-get-mark-hashtb): Ditto.
5281         (elmo-msgdb-get-mark): Ditto.
5282         (elmo-msgdb-set-mark): Ditto.
5283         (elmo-msgdb-count-marks): Ditto.
5284         (elmo-msgdb-get-number): Ditto.
5285         (elmo-msgdb-get-field): Ditto.
5286         (elmo-msgdb-seen-list): Ditto.
5287         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
5288         (elmo-msgdb-delete-msgs): Follow the changes above.
5289         (elmo-msgdb-overview-get-entity): Ditto.
5290         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
5291         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
5292         and rewritten.
5293         (elmo-msgdb-make-index): Likewise.
5294         (elmo-msgdb-append): Removed third argument.
5295         (elmo-msgdb-clear): Clear index as nil.
5296         (elmo-folder-set-info-hashtb): Removed.
5297         (elmo-folder-set-info-max-by-numdb): Ditto.
5298         (elmo-folder-info-make-hashtb): Ditto.
5299
5300         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
5301
5302         * elmo-map.el (elmo-folder-pack-number): Ditto.
5303
5304 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
5305
5306         * elmo-version.el (elmo-version): Up to 2.9.10.
5307
5308         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
5309
5310         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
5311
5312 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
5313
5314         * elmo-utils.el (elmo-make-directory): Add option.
5315         Default file mode is 700.
5316
5317 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5318
5319         * elmo-shimbun.el (elmo-folder-local-p): Defined.
5320
5321 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
5322
5323         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
5324         mime-charset.
5325
5326         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
5327         and "smaller".
5328
5329 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5330
5331         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5332         (elmo-shimbun-folder-entity-hash): New function.
5333         (elmo-shimbun-folder-shimbun-header): Ditto.
5334         (elmo-shimbun-entity-to-header): Ditto.
5335         (elmo-shimbun-msgdb-to-headers): Removed.
5336         (elmo-shimbun-folder-setup): Ditto.
5337         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5338         for hash key.
5339         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5340         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5341         Removed useless local bind.
5342         (elmo-folder-open-internal): Don't call
5343         `elmo-shimbun-folder-setup'.
5344         (elmo-folder-close-internal): Clear entity-hash slot.
5345         (elmo-folder-clear): Ditto.
5346         (elmo-shimbun-msgdb-create-entity): Use
5347         `elmo-shimbun-folder-shimbun-header'.
5348         (elmo-map-message-fetch): Ditto.
5349         (elmo-shimbun-update-overview): Use overview entity instead of
5350         shimbun header to lookup id by references.
5351         (elmo-map-folder-list-message-locations): Use not only headers but
5352         also overviews to list locations.
5353
5354 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5355
5356         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5357         msgdb path.
5358
5359         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5360
5361 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5362
5363         * elmo-util.el (elmo-read-search-condition-internal): Give default
5364         value for date.
5365
5366 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5367
5368         * elmo-util.el (elmo-condition-parse-search-value): Accept
5369         YYYY-MM-DD format to search.
5370         * elmo-date.el (elmo-date-get-datevec): Likewise.
5371
5372 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5373
5374         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5375         debugging code.
5376
5377 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5378
5379         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5380         from t.
5381
5382         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5383
5384         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5385         case from `elmo-folder-exists-p'.
5386         (elmo-folder-exists-p): Removed.
5387         (elmo-folder-creatable-p) Ditto.
5388
5389         * elmo-net.el (elmo-folder-create): Defined.
5390         (elmo-folder-create-unplugged): New function.
5391         (elmo-folder-exists-p): Changed default value to nil from t.
5392
5393         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5394         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5395
5396         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5397         `elmo-create-folder-dop' and append queue
5398         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5399         (elmo-folder-create-dop-delayed): New function.
5400
5401         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5402
5403         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5404
5405         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5406         (elmo-folder-writable-p) : Ditto.
5407
5408         * elmo-version.el (elmo-version): Up to 2.9.9.
5409
5410 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5411
5412         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5413         `elmo-message-use-cache-p' returns nil.
5414         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5415         (ignore cache file and refer the substance in local folders)
5416
5417 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5418
5419         * elmo-version.el (elmo-version): Up to 2.9.8.
5420
5421 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5422
5423         * elmo-version.el (elmo-version): Up to 2.9.7.
5424
5425         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5426
5427 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5428
5429         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5430
5431 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5432
5433         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5434         from --early.
5435         (elmo-map-folder-list-message-locations): Reverse location list.
5436
5437 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5438
5439         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5440
5441 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5442
5443         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5444         as a key.
5445         (elmo-nntp-folder-list-subfolders): Follow the change above.
5446
5447 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5448
5449         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5450         name if authentication type is specified.
5451
5452 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5453
5454         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5455         variable.
5456         (elmo-default-nntp-stream-type): Ditto.
5457         (elmo-default-pop3-stream-type): Ditto.
5458
5459 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5460
5461         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5462
5463 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5464
5465         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5466         elmo-vars.el.
5467         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5468
5469         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5470         (elmo-maildir-folder-path): Ditto.
5471         (elmo-maildir-list): Ditto (abolished).
5472
5473 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5474
5475         * elmo-version.el (elmo-version): Up to 2.9.6.
5476
5477 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5478
5479         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5480         (elmo-maildir-folder-path): Ditto.
5481         (elmo-msgdb-directory): Ditto.
5482         (elmo-passwd-life-time): Ditto.
5483         (elmo-msgdb-extra-fields): Ditto.
5484         (elmo-enable-disconnected-operation): Ditto.
5485
5486 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5487
5488         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5489         other choices.
5490         (elmo-pop3-default-authenticate-type): Ditto.
5491
5492 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5493
5494         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5495         choices for custom.
5496         (elmo-pop3-default-authenticate-type): Ditto.
5497
5498 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5499
5500         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5501         mailbox to new-folder.
5502
5503 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5504
5505         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5506         less than new, set new as unread.
5507
5508         * elmo-util.el (elmo-string): Don't put text-property if nil.
5509
5510 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5511
5512         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5513         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5514
5515 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5516
5517         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5518         is nil on `completing-read'.
5519
5520 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5521
5522         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5523         for namespace part.
5524         (elmo-imap4-parse-namespace-subr): Ditto.
5525         (elmo-folder-list-subfolders): Append a delimiter when the specified
5526         folder path is a root with namespace and does not end with delimiter.
5527
5528 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5529
5530         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5531         was used.
5532
5533 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5534
5535         * elmo-util.el (elmo-save-buffer): The first argument of message
5536         is a format control string.
5537
5538 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5539
5540         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5541         `elmo-folder-diff').
5542         (elmo-diff-unread): Likewise.
5543
5544 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5545
5546         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5547         is t on `completing-read'.
5548
5549 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5550
5551         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5552         method of target folder with self mark-alist if MARK-ALIST is nil.
5553
5554 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5555
5556         * elmo-version.el (elmo-version): Up to 2.9.5.
5557
5558 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5559
5560         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5561         (elmo-dop-merge-funcs): Remove.
5562
5563 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5564
5565         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5566         Return t if PATH is directory, too.
5567         Use `dolist' instead of while loop.
5568
5569 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5570
5571         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5572         is deleted.
5573
5574 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5575
5576         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5577         return value to t.
5578         (elmo-folder-list-messages-unplugged): Return t if
5579         elmo-enable-disconnected-operation is nil.
5580
5581         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5582         `elmo-folder-list-messages-internal'.
5583
5584 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5585
5586         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5587         Change to looking-at `[23][0-9]+'.
5588         (elmo-network-initialize-session): Use 'error-msg'
5589         * elmo-net.el (elmo-network-open-session): Set unplugged
5590         if elmo-network-initialize-session returns 'elmo-open-err.
5591
5592 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5593
5594         * elmo-version.el (elmo-version): Up to 2.9.4.
5595
5596 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5597
5598         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5599         `elmo-folder-list-messages-internal'.
5600
5601 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5602
5603         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5604         (elmo-message-match-condition): New method.
5605         (elmo-folder-search-fast): New inline function.
5606         (elmo-msgdb-search): Removed.
5607
5608         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5609         target folder if it is unplugged.
5610         (elmo-folder-list-messages-internal): Return t if target folder is
5611         unplugged and itself is persistent; In this case, use list be
5612         searched already.
5613
5614         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5615         (elmo-msgdb-search-internal-primitive): Ditto.
5616         (elmo-msgdb-match-condition): New function.
5617         (elmo-msgdb-match-condition-primitive): Ditto.
5618
5619         * elmo-util.el (elmo-filter-condition-p): New macro.
5620
5621         * elmo-cache.el (elmo-folder-search): Removed.
5622
5623         * elmo-localdir.el (elmo-folder-search): Ditto.
5624
5625         * elmo-maildir.el (elmo-folder-search): Ditto.
5626
5627         * elmo-mark.el (elmo-folder-search): Ditto.
5628
5629         * elmo-nmz.el (elmo-folder-search): Ditto.
5630
5631         * elmo-sendlog.el (elmo-folder-search): Ditto.
5632
5633         * elmo-shimbun.el (elmo-folder-search): Ditto.
5634
5635         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5636         if folder is unplugged.
5637
5638         * elmo-nntp.el (elmo-folder-search): Likewise.
5639         (elmo-nntp-search-internal): New function.
5640
5641         * elmo-version.el (elmo-version): Up to 2.9.3.
5642
5643 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5644
5645         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5646
5647 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5648
5649         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5650
5651 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5652
5653         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5654
5655 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5656
5657         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5658         (elmo-map-folder-list-message-locations): Do drive letter conversion
5659         on Windows environment.
5660         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5661         (elmo-map-message-fetch): Ditto.
5662
5663 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5664
5665         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5666         (elmo-network-initialize-session): Ditto.
5667
5668 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5669
5670         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5671
5672         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5673
5674         * elmo-util.el (elmo-progress-clear): Ditto.
5675
5676         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5677         `DD-Mon-YYYY' type date.
5678
5679 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5680
5681         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5682         `elmo-date-make-sortable-string' instead of
5683         `timezone-make-date-sortable'.
5684
5685         * elmo-date.el (elmo-date-make-sortable-string): Use
5686         `timezone-make-time-string'.
5687
5688 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5689
5690         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5691
5692         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5693         `since'; Fix timezone.
5694
5695         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5696
5697         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5698
5699 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5700
5701         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5702
5703 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5704
5705         * elmo.el (elmo-generic-folder-append-messages): Make
5706         fetch-strategy with `use-cache' as 'maybe. Check return value of
5707         `elmo-message-fetch'.
5708         (elmo-message-fetch): Return return value of
5709         `elmo-message-fetch-with-cache-process'.
5710         (elmo-message-fetch-with-cache-process): Return non-nil if
5711         fetching was succeed. Load cache when fetching was failed and
5712         fetch-strategy-use-cache is 'maybe.
5713
5714         * elmo-util.el (elmo-file-cache-load): New function.
5715
5716         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5717         defun.
5718
5719         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5720         non-nil if fetching was succeed.
5721
5722         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5723
5724         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5725
5726         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5727         (elmo-message-fetch-with-cache-process): Likwise.
5728
5729         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5730
5731         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5732
5733         * elmo-version.el (elmo-version): Up to 2.9.2.
5734
5735 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5736
5737         * elmo.el (elmo-folder-delete): Delete msgdb path.
5738
5739         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5740
5741         * elmo-maildir.el (elmo-folder-delete): Ditto.
5742
5743         * elmo-localdir.el (elmo-folder-delete): Ditto.
5744
5745         * elmo-imap4.el (elmo-folder-delete): Ditto.
5746
5747 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5748
5749         * elmo.el (luna-define-class): Added `biff' slot.
5750
5751         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5752         (elmo-pop3-debug-inhibit-logging): Abolished.
5753         (elmo-network-close-session): Eliminated needless let.
5754         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5755         (elmo-pop3-send-command): Added `no-log' argument.
5756         (elmo-pop3-process-filter): Use `with-current-buffer'.
5757         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5758         if login failure.
5759         (elmo-pop3-auth-apop): Likewise.
5760         (elmo-network-authenticate-session): Likewise.
5761
5762         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5763         if biff folder.
5764
5765         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5766         string to determine protocol.
5767         (elmo-network-session-name-prefix): Abolished.
5768         (elmo-network-session-cache-key): Follow the change above.
5769         (elmo-network-open-session): Ditto.
5770
5771         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5772         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5773
5774         * elmo-version.el (elmo-version): Up to 2.9.1.
5775
5776         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5777         unmatch condition checking.
5778
5779         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5780         condition.
5781
5782 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5783
5784         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5785
5786 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5787
5788         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5789         test for while loop to execute at least one SEARCH command.
5790
5791 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5792
5793         * elmo-version.el (elmo-version): Up to 2.9.0.
5794
5795 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5796
5797         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5798         (elmo-archive-folder-path): Define.
5799         (elmo-folder-initialize): Setup `dir-name' slot.
5800         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5801         Use `dir-name' as prefix of each subfolders.
5802         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5803
5804 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5805
5806         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5807         (elmo-pipe-folder-list-target-messages): New internal function.
5808         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5809         `killed-list'.
5810         (elmo-pipe-folder-copied-list-load): New function.
5811         (elmo-pipe-folder-copied-list-save): Ditto.
5812         (elmo-folder-open-internal): Follow the change above.
5813         (elmo-folder-status): Fixed for copy.
5814
5815 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5816
5817         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5818
5819 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5820
5821         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5822         elmo-copy-file instead of elmo-add-name-to-file.
5823
5824         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5825
5826         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5827         "file://..." index.
5828
5829         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5830         of accept-process-output as 1.
5831         (elmo-pop3-read-contents): Ditto.
5832         (elmo-pop3-read-body): Ditto.
5833
5834 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5835
5836         * elmo-version.el (product-version-as-string): Remove define.
5837
5838 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5839
5840         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5841         (elmo-imap4-copy-messages): Chop number set using
5842         `elmo-imap4-number-set-chop-length'.
5843         (elmo-imap4-set-flag): Ditto.
5844         (elmo-imap4-search-internal-primitive): Ditto.
5845
5846 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5847
5848         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5849         `elmo-folder-make-temp-dir'
5850
5851         * elmo-vars.el (elmo-cache-directory): New variable.
5852         (elmo-cache-dir): Abolished.
5853         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5854
5855         * elmo-version.el (elmo-version): Up to 2.7.7.
5856
5857 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5858
5859         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5860         defcustom; Set default value as t.
5861
5862 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5863
5864         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5865         (ldap-search-program-arguments): Changed default value.
5866         (ldap-search-basic): Accept exit status 4.
5867         (ldap/field-body): Parse options.
5868         (ldap/collect-field): Ditto.
5869         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5870
5871         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5872         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5873         (elmo-imap4-accept-ok): Ditto.
5874         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5875         'notify-bye, only BYE error is reported.
5876         (elmo-folder-exists-p-plugged): Set no-error argument of
5877         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5878
5879         * elmo.el (elmo-imap4-bye-error): Changed message.
5880
5881         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5882         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5883         queues (It causes infinite loop).
5884
5885 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5886
5887         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5888         (RECENT UNSEEN MESSAGES) extension.
5889
5890 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5891
5892         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5893         Check number of overview fields.
5894
5895 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5896
5897         * elmo.el (elmo-folder-confirm-appends): Changed message.
5898         (elmo-folder-confirm-appends): Ditto.
5899
5900         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5901         `with-temp-buffer'.
5902         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5903
5904 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5905
5906         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5907         of elmo-folder-update-threshold is nil, which can be set by
5908         wl-summary-update-confirm-threshold.
5909
5910 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5911
5912         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5913         (elmo-nmz-index-alias-alist): Ditto.
5914         (elmo-map-folder-list-message-locations): Follow the change above.
5915
5916 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5917
5918         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5919
5920         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5921
5922         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5923
5924         * elmo-util.el (elmo-read): Ditto.
5925         (elmo-display-error): Ditto.
5926
5927         * elmo-vars.el (elmo-date-match): Ditto.
5928
5929         * pldap.el (ldap-coding-system): Ditto.
5930
5931         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5932         `elmo-inhibit-number-mapping' as nil.
5933
5934 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5935
5936         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5937         space delimiter for list response.
5938
5939 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5940
5941         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5942
5943 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5944
5945         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5946         (elmo-map-message-fetch): Fix.
5947         * elmo-map.el (elmo-folder-status): Fix for killed.
5948
5949 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5950
5951         * elmo-sendlog.el: New file.
5952         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5953
5954 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5955
5956         * acap.el (acap-logging-out): New buffer local variable.
5957         (acap-close): Set it.
5958         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5959         an error.
5960
5961 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5962
5963         * acap.el (acap-response-bye-p): New function.
5964         (acap-response-bye-message): Ditto.
5965         (acap-wait-for-response): If bye response is received, cause an error.
5966         (acap-parse-response): Make bye response when 'Bye' is received.
5967
5968 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5969
5970         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5971
5972 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5973
5974         * elmo-util.el (elmo-copy-file): Added argument
5975         `ok-if-already-exists'.
5976         (elmo-copy-file): Fixed typo.
5977
5978 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5979
5980         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5981
5982 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5983
5984         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5985
5986 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5987
5988         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5989         to killed-list.
5990
5991 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5992
5993         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5994         (elmo-folder-initialize): Fix for `copy'.
5995         (elmo-pipe-drain): Ditto.
5996         (elmo-folder-open-internal): Ditto.
5997         (elmo-folder-newsgroups): Fix.
5998
5999 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
6000
6001         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
6002         for each message.
6003
6004         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
6005         recent value is returned from imap folder.
6006
6007         * elmo.el (elmo-folder-newsgroups): New generic function.
6008
6009         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
6010         (elmo-folder-initialize): Set it.
6011         (elmo-folder-expand-msgdb-path): Use it.
6012         (elmo-folder-newsgroups): Define.
6013
6014         * elmo-filter.el (elmo-folder-newsgroups): Define.
6015
6016         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
6017
6018         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
6019
6020         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
6021
6022 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6023
6024         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
6025         user option.
6026         (elmo-shimbun-header-extra-field): New inline function.
6027         (elmo-shimbun-header-set-extra-field): Ditto.
6028         (elmo-shimbun-folder-header-hash-setup): Ditto.
6029         (elmo-shimbun-update-overview): Ditto.
6030         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
6031         (elmo-shimbun-folder-setup): Use
6032         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
6033         (elmo-shimbun-get-headers): Ditto.
6034         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
6035         Insert `X-Shimbun-Id:' header if extra field is set.
6036         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
6037         field's value instead of `shimbun-header-id'.
6038
6039         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
6040         inline function.
6041         (elmo-msgdb-overview-entity-set-date): Ditto.
6042         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
6043
6044 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
6045
6046         * mmimap.el (mmimap-entity-section): Changed body node number from
6047         "0" to "1".
6048
6049 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6050
6051         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
6052         `elmo-folder-delete-messages'.
6053
6054         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
6055         (elmo-folder-initialize): Changed to expand alias into index path.
6056
6057         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
6058         `elmo-mime-insert-header-from-buffer' with 6th arg
6059         `sorted-fields'.
6060
6061 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
6062
6063         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
6064
6065         * elmo.el (elmo-diff-new): New inline function.
6066         (elmo-diff-unread): Ditto.
6067         (elmo-diff-all): Ditto.
6068
6069         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
6070         value from responseb.
6071         (elmo-imap4-folder-diff-plugged): Ditto.
6072         (elmo-imap4-server-diff-async): Added recent argument.
6073         (elmo-server-diff-async): Ditto.
6074         (elmo-imap4-folder-diff-plugged): Ditto.
6075
6076         * elmo-version.el (elmo-version): Up to 2.7.6.
6077
6078 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6079
6080         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
6081         in quoted-stirng.
6082
6083 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
6084
6085         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
6086
6087         * elmo-imap4.el (elmo-folder-initialize): Ditto.
6088
6089         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6090
6091         * elmo-multi.el (elmo-folder-initialize): Ditto.
6092
6093         * elmo-util.el (elmo-parse-token): New function.
6094         (elmo-parse-prefixed-element): Ditto.
6095
6096 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6097
6098         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
6099         delete process.
6100         (elmo-imap4-accept-ok): Ditto.
6101
6102 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6103
6104         * mmimap.el (mime-imap-entity-header-string): Don't check first
6105         element of node-id is `0' (Follow last change).
6106
6107 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6108
6109         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
6110         assigned irregular node-id to nested multipart section.
6111         (initialize-instance): Followed above change.
6112
6113 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6114
6115         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
6116         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
6117         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
6118         `elmo-shimbun-get-headers');
6119         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
6120         visible article on summary exists in headers).
6121         (elmo-map-message-fetch): Cause an error when folder is unplugged.
6122
6123 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
6124
6125         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
6126         definition.
6127
6128 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
6129
6130         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
6131
6132 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6133
6134         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
6135         header separator into loop condition.
6136
6137 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6138
6139         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
6140         Return duplicate folder if it has subfolder.
6141
6142 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6143
6144         * elmo.el (elmo-make-folder): Add folder name error check.
6145
6146         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
6147         (elmo-nntp-encode-group-string): New inline function.
6148         (elmo-nntp-decode-group-string): Ditto.
6149         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
6150         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
6151         Use `not' instead of `null';
6152         Use elmo-nntp-decode-group-string.
6153
6154         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
6155
6156         * elmo-version.el (elmo-version): Up to 2.7.5.
6157
6158 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6159
6160         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
6161         Hide progress gauge if `elmo-folder-move-messages' exits
6162         nonlocally.
6163
6164 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6165
6166         * elmo-imap4.el (elmo-folder-initialize): Use
6167         `elmo-imap4-encode-folder-string' for folder name.
6168
6169 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6170
6171         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
6172         `done'.
6173
6174 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6175
6176         * elmo-util.el (elmo-progress-counter-alist): New internal
6177         variable.
6178         (elmo-progress-counter-value): New macro.
6179         (elmo-progress-counter-all-value): Ditto.
6180         (elmo-progress-counter-format): Ditto.
6181         (elmo-progress-counter-set-value): Ditto.
6182         (elmo-progress-set): New function.
6183         (elmo-progress-clear): Ditto.
6184         (elmo-progress-notify): Ditto.
6185
6186         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
6187         counter.
6188
6189         * elmo.el (elmo-generic-folder-append-messages): Call
6190         `elmo-progress-notify'.
6191         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
6192
6193         * elmo-archive.el (elmo-folder-append-messages): Call
6194         `elmo-progress-notify'.
6195
6196         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
6197
6198         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
6199
6200         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
6201
6202 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6203
6204         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
6205         'Create'.
6206         (elmo-message-encache-dop): Added argument `read'.
6207
6208         * elmo-shimbun.el (elmo-message-encache): Ditto.
6209
6210         * elmo-net.el (elmo-message-encache): Ditto.
6211
6212         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
6213         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
6214         elmo-imap4-seen-messages.
6215         (elmo-folder-msgdb-create-plugged): Initialize
6216         elmo-imap4-seen-messages;
6217         Set seen mark on elmo-imap4-seen-messages.
6218
6219         * elmo-pipe.el (elmo-folder-message-file-p): Define.
6220
6221         * elmo.el (elmo-generic-folder-append-messages): Check return value of
6222         elmo-folder-append-buffer.
6223         (elmo-folder-encache): Added optional argument `read'.
6224         (elmo-message-encache): Ditto.
6225
6226         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
6227
6228         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
6229
6230         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
6231         if append buffer content succeds.
6232
6233 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6234
6235         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
6236         elmo-display-progress.
6237
6238         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
6239         Set 4th argument of mime-display-message.
6240         (elmo-mime-display-as-is): Ditto.
6241
6242 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
6243
6244         * elmo-nmz.el (toplevel): Require 'mime-edit.
6245         (elmo-nmz-content-type-alist): Abolished.
6246         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
6247         content is not a message.
6248         (elmo-map-message-fetch): Changed behavior exept for message content;
6249         Detect mime-charset automatically, Use `mime-find-file-type' to detect
6250         content-type, Add From: and Subject: field.
6251
6252 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6253
6254         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
6255         (elmo-map-message-fetch): Add `Content-Type' field if contents is
6256         not a message.
6257
6258 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6259
6260         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
6261         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
6262
6263         * elmo-archive.el (elmo-folder-writable-p): Defined.
6264
6265         * elmo-cache.el (elmo-folder-writable-p): Ditto.
6266
6267         * elmo-filter.el (elmo-folder-writable-p): Ditto.
6268
6269         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
6270
6271         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
6272
6273         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
6274
6275         * elmo-mark.el (elmo-folder-writable-p): Ditto.
6276
6277         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
6278
6279         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
6280
6281 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
6282
6283         * elmo-util.el (elmo-address-quote-specials): New function;
6284         Renamed from `wl-address-quote-specials'.
6285
6286 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6287
6288         * elmo-version.el (elmo-version): Up to 2.7.4.
6289
6290 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
6291
6292         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
6293
6294 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6295
6296         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
6297         both compile-time and run-time to avoid byte-compile warning.
6298
6299 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
6300
6301         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
6302
6303 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6304
6305         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
6306         option.
6307         (elmo-mime-display-as-is-internal): Use it.
6308
6309         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
6310         if `read-passwd' is not defined.
6311
6312 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6313
6314         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
6315         by original number.
6316         (elmo-folder-status): Call `elmo-folder-open-internal';
6317         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
6318         (elmo-folder-close-internal): Set location-alist as nil.
6319         (elmo-folder-clear): Define.
6320         (elmo-folder-check): Don't set location-alist as nil.
6321
6322         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
6323
6324 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
6325
6326         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
6327         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
6328
6329         * mmimap.el (mime-imap-entity::requested): New slot.
6330         (mime-imap-location-fetch-entity-p): New generic function.
6331         (mime-decode-parameters): Define using `defun-maybe'.
6332         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6333         content-type structure.
6334         (mime-entity-body): Return empty body if
6335         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6336
6337         * elmo.el (elmo-message-displaying): New variable.
6338
6339         * elmo-mime.el (elmo-mime-message-display): Bind
6340         elmo-message-displaying as t.
6341
6342         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6343
6344 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6345
6346         * acap.el (acap-open): erase buffer before starting network process.
6347         (acap-store): Rewrite.
6348
6349 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6350
6351         * elmo-imap4.el (elmo-imap4-default-mailbox,
6352         elmo-imap4-default-server
6353         elmo-imap4-default-authenticate-type,
6354         elmo-imap4-default-user,
6355         elmo-imap4-default-port,
6356         elmo-imap4-default-stream-type,
6357         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6358
6359         * elmo-pop3.el (elmo-pop3-default-user,
6360         elmo-pop3-default-server,
6361         elmo-pop3-default-authenticate-type,
6362         elmo-pop3-default-port,
6363         elmo-pop3-default-stream-type,
6364         elmo-pop3-stream-type-alist): Ditto.
6365
6366         * elmo-nntp.el (elmo-nntp-default-server,
6367         elmo-nntp-default-user,
6368         elmo-nntp-default-port,
6369         elmo-nntp-default-stream-type,
6370         elmo-nntp-stream-type-alist): Ditto.
6371
6372         * elmo-vars.el: Follow changes above.
6373         (elmo-setting): New custom group; added 'elmo-setting group to
6374         above variables.
6375
6376         * elmo-version.el (elmo-version): Up to 2.7.3.
6377
6378         * acap.el (acap-parse-response): Don't delete process when BYE
6379         response (It causes hang-up on slow network environment).
6380         (toplevel): Added comment.
6381
6382 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6383
6384         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6385
6386         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6387         parsing NIL.
6388         (acap-parse-return-metadata): Ditto.
6389
6390         * slp.el: New file.
6391         (toplevel): Fixed typo.
6392
6393         * acap.el: New file.
6394         (acap-network-stream-open): Show "Connecting..." message.
6395         (acap-parse-response): Fixed problem for BYE untagged response.
6396         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6397         (toplevel): Added tiny comments.
6398
6399 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6400
6401         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6402         space delimiter for uidl response.
6403
6404 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6405
6406         * elmo-vars.el (elmo-use-semi): Eliminated.
6407
6408         * elmo-util.el (elmo-string-assoc-all): New function.
6409
6410 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6411
6412         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6413         property 'mime-preview-situation for `mime-preview-quit'.
6414
6415 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6416
6417         * elmo.el (elmo-message-fetch-with-cache-process): Call
6418         elmo-message-fetch-internal instead of causing an error when fetch
6419         strategy is 'entire but only 'section cache is available.
6420
6421 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6422
6423         * elmo-version.el (elmo-version): Up to 2.7.2.
6424
6425         * elmo.el (elmo-generic-folder-append-messages): Make
6426         fetch-strategy with `use-cache'.
6427
6428         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6429         (elmo-dop-queue-method-name): New macro.
6430
6431 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6432
6433         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6434         unbalanced parenthesis.
6435
6436 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6437
6438         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6439
6440 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6441
6442         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6443         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6444
6445 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6446
6447         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6448         local variables.
6449
6450 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6451
6452         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6453         (elmo-message-use-cache-p): Define.
6454         (elmo-folder-msgdb-create): Treat cache.
6455
6456 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6457
6458         * elmo-nntp.el (elmo-network-initialize-session): Call
6459         `elmo-nntp-send-mode-reader'.
6460         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6461
6462 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6463
6464         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6465         alist.
6466         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6467         assoc.
6468
6469         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6470         for `elmo-plugged-p'.
6471         (elmo-open-network-stream): Fixed stream-type argument.
6472
6473 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6474
6475         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6476         unknown archive type is specified.
6477
6478 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6479
6480         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6481
6482         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6483         while loading msgdb.
6484
6485         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6486         (elmo-folder-open-internal): Rewrite.
6487
6488 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6489
6490         * elmo-mime.el (elmo-mime-display-as-is-internal):
6491         Adjust buffer-multibyte status.
6492
6493 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6494
6495         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6496         of elmo-condition-find-key.
6497
6498         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6499         (elmo-condition-in-msgdb-p): Ditto.
6500         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6501         argument.
6502
6503 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6504
6505         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6506
6507 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6508
6509         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6510         label for elmo-display-progress.
6511
6512 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6513
6514         * elmo.el (elmo-folder-clear): New method.
6515         (elmo-folder-clear): Define.
6516         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6517
6518         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6519         (elmo-folder-clear): Define.
6520
6521         * elmo-map.el (elmo-folder-clear): Define.
6522
6523         * elmo-version.el (elmo-version): Up to 2.7.1.
6524
6525 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6526
6527         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6528         updates.
6529
6530 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6531
6532         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6533         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6534
6535 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6536
6537         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6538
6539         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6540         and re-written.
6541
6542         * elmo-imap4.el (elmo-folder-initialize): Use
6543         elmo-get-network-stream-type.
6544
6545         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6546
6547         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6548
6549 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6550
6551         * elmo.el (elmo-message-encache): Set unread argument for
6552         elmo-message-fetch.
6553
6554         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6555
6556         * elmo.el (elmo-net-port-info): New method.
6557
6558         * elmo-shimbun.el (elmo-net-port-info): Define.
6559         (elmo-message-encache): Ditto.
6560
6561         * elmo-net.el (elmo-net-port-info): Define as method.
6562
6563         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6564         unplugged status when elmo-enable-disconnected-operation is t.
6565
6566         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6567         of spool folder before checking new number.
6568
6569 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6570
6571         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6572         (elmo-network-setup-session): Ditto.
6573         (elmo-message-fetch-plugged): Ditto.
6574         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6575         (elmo-network-initialize-session): Ditto.
6576         (elmo-pop3-read-response): Abolish 3rd argument.
6577         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6578         (elmo-pop3-read-contents): Ditto.
6579         (elmo-pop3-read-body): Ditto.
6580         (elmo-folder-status): Call elmo-folder-close.
6581         (elmo-pop3-lock): Abolish.
6582         (elmo-pop3-unlock): Ditto.
6583         (elmo-pop3-locked-p): Ditto.
6584         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6585
6586 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6587
6588         * elmo-version.el (elmo-version): Up to 2.7.0.
6589
6590         * elmo-pop3.el (elmo-pop3-debug): New variable.
6591         (elmo-pop3-debug-inhibit-logging): Ditto.
6592         (elmo-pop3-debug): New function.
6593         (elmo-pop3-send-command): Call elmo-pop3-debug.
6594         (elmo-pop3-read-response): Added keep-lock optional argument;
6595         Don't unlock if keep-lock is non-nil.
6596         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6597         (elmo-network-authenticate-session): Bind
6598         elmo-pop3-debug-inhibit-logging as t.
6599         (elmo-network-setup-session): Call elmo-pop3-read-response with
6600         keep-lock argument.
6601         (elmo-pop3-read-msg): Ditto.
6602         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6603         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6604         (elmo-network-initialize-session): Call elmo-pop3-lock.
6605         (elmo-folder-close-internal): Don't clear location-alist slot.
6606         (elmo-folder-check): Clear location-alist slot.
6607
6608 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6609
6610         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6611         (elmo-pop3-send-command): Call elmo-pop3-lock.
6612         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6613         (elmo-pop3-read-contents): Ditto.
6614         (elmo-pop3-lock): New function.
6615         (elmo-pop3-unlock): Ditto.
6616         (elmo-pop3-locked-p): Ditto.
6617         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6618         returns t.
6619
6620 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6621
6622         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6623
6624         * elmo-util.el (elmo-file-field-primitive-condition-match):
6625         New inline function (Don't fetch file content if "first" or "last").
6626         (elmo-file-field-condition-match): Use
6627         elmo-file-field-primitive-condition-match.
6628
6629         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6630         "first".
6631
6632         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6633         (elmo-message-fetch-plugged): Fixed.
6634
6635         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6636
6637 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6638
6639         * elmo.el (elmo-folder-move-messages): Bind
6640         elmo-inhibit-display-retrieval-progress as t while moving messages.
6641
6642         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6643         New variable.
6644         (elmo-inhibit-display-retrieval-progress): Ditto.
6645
6646         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6647         for retrieval progress;
6648         Don't display progress when total buffer size is smaller than
6649         elmo-display-retrieval-progress-threshold.
6650         (elmo-message-fetch-plugged): Don't display progress when
6651         elmo-inhibit-display-retrieval-progress is non-nil.
6652
6653         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6654         for retrieval progress;
6655         Don't display progress when literal size is smaller than
6656         elmo-display-retrieval-progress-threshold.
6657         (elmo-imap4-message-fetch): Don't display progress when
6658         elmo-inhibit-display-retrieval-progress is non-nil.
6659
6660 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6661
6662         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6663         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6664         (elmo-imap4-message-fetch): Likewise.
6665
6666         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6667         (elmo-shimbun-index-range-alist): Ditto.
6668         (elmo-shimbun-use-entire-index): Abolish.
6669         (shimbun-mua-use-entire-index): Ditto.
6670         (elmo-shimbun-folder): Added new slot `range'.
6671         (elmo-folder-initialize): Setup slot `range'.
6672
6673 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6674
6675         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6676         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6677         (elmo-shimbun-get-headers): Use return value of
6678         `shimbun-article-expiration-days'.
6679         (elmo-folder-close-internal): Clean up last-check slot.
6680
6681         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6682         (elmo-pop3-total-size): New variable.
6683         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6684
6685         * elmo.el (elmo-folder-reserve-status-p): New method.
6686
6687         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6688         (elmo-shimbun-use-entire-index): New user option.
6689         (shimbun-elmo-mua): New class.
6690         (shimbun-mua-search-id): Define.
6691         (shimbun-mua-use-entire-index): Ditto.
6692         (elmo-shimbun-folder:last-check): New slot.
6693         (elmo-shimbun-headers-cache-header-list): Abolish.
6694         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6695         (elmo-shimbun-headers-cache-header-hash): Ditto.
6696         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6697         (elmo-shimbun-headers-cache-last-check): Ditto.
6698         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6699         (elmo-shimbun-headers-check-p): Rewrite.
6700         (elmo-shimbun-msgdb-to-headers): New function.
6701         (elmo-shimbun-get-headers): Rewrite.
6702         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6703         (elmo-folder-open-internal): Get headers only if
6704         `elmo-shimbun-headers-check-p' is non-nil.
6705         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6706         is non-nil.
6707         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6708         (elmo-quit): Removed.
6709
6710         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6711         function.
6712         (elmo-msgdb-overview-entity-set-extra): Ditto.
6713         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6714
6715         * elmo-map.el (elmo-folder-status): Don't call
6716         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6717         is non-nil.
6718
6719 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6720
6721         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6722         of `elmo-msgdb-search-internal-primitive' when condition's car is
6723         `and' or `or'.
6724
6725 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6726
6727         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6728
6729 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6730
6731         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6732         call `elmo-pipe-drain'.
6733
6734 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6735
6736         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6737         typo. (elmo-cache-folder -> elmo-mark-folder)
6738
6739 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6740
6741         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6742         `elmo-message-fetch'.
6743
6744 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6745
6746         * elmo-net.el (elmo-message-encache): Fixed typo.
6747         (elmo-message-fetch-unplugged): Changed call
6748         `elmo-message-fetch-internal' without argument `outbuf'.
6749
6750 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6751
6752         * elmo.el (elmo-message-encache): Define as generic function.
6753         (elmo-message-fetch-field): New generic function.
6754         (elmo-message-fetch-with-cache-process): Cause an error when
6755         fetch strategy is 'entire but only 'section cache is available.
6756         (toplevel): Fixed nmz folder definition.
6757
6758         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6759         (elmo-msgdb-resume-list-filename): Ditto.
6760         (elmo-queue-filename): Ditto.
6761         (elmo-enable-disconnected-operation): Changed default value to t.
6762
6763         * elmo-util.el (elmo-cache-path-section-p): New function.
6764         (elmo-file-cache-get): Use it.
6765         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6766         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6767         (elmo-dop-queue-save): Ditto.
6768
6769         * elmo-net.el (elmo-folder-status-unplugged): Call
6770         elmo-folder-status-dop.
6771         (elmo-folder-list-messages-unplugged): Implemented.
6772         (elmo-folder-delete-messages-unplugged): Define.
6773         (elmo-folder-msgdb-create): Define.
6774         (elmo-folder-msgdb-create-unplugged): Define.
6775         (elmo-folder-mark-as-read-unplugged): Ditto.
6776         (elmo-folder-unmark-read-unplugged): Ditto.
6777         (elmo-folder-mark-as-important-unplugged): Ditto.
6778         (elmo-folder-unmark-important-unplugged): Ditto.
6779         (elmo-message-encache): Ditto.
6780
6781         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6782         (elmo-dop-queue-save): Ditto.
6783
6784         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6785         `elmo-folder-msgdb-create'.
6786         (elmo-folder-append-buffer): Implemented unplugged operation.
6787         (elmo-folder-append-messages): Call parent method in unplugged status.
6788         (elmo-message-fetch-unplugged): Removed definition.
6789         (elmo-message-fetch-field): Implemented.
6790
6791         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6792         (elmo-dop-folder): Removed variable definition.
6793         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6794         (elmo-dop-queue-flush): Implemented.
6795         (elmo-dop-queue-merge): Removed definition (TODO).
6796         (elmo-dop-spool-folder): New function.
6797         (elmo-dop-spool-folder-append-buffer): Ditto.
6798         (elmo-dop-spool-folder-list-messages): Ditto.
6799         (elmo-dop-list-deleting-messages): Ditto.
6800         (elmo-folder-append-buffer-dop): Ditto.
6801         (elmo-folder-delete-messages-dop): Ditto.
6802         (elmo-message-encache-dop): New inline function.
6803         (elmo-create-folder-dop): Ditto.
6804         (elmo-folder-mark-as-read-dop): Ditto.
6805         (elmo-folder-unmark-read-dop): Ditto.
6806         (elmo-folder-mark-as-important-dop): Ditto.
6807         (elmo-folder-unmark-important-dop): Ditto.
6808         (elmo-folder-status-dop): Fixed.
6809         (elmo-folder-append-buffer-dop-delayed): New function.
6810         (elmo-folder-delete-messages-dop-delayed): Ditto.
6811         (elmo-dop-msgdb): Ditto.
6812
6813 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6814
6815         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6816
6817 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6818
6819         * elmo.el (elmo-folder-move-messages): Fixed problem when
6820         `dst-folder' is 'null.
6821
6822 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6823
6824         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6825         instead of current mark.
6826
6827         * elmo-multi.el (elmo-folder-list-importants-internal): No
6828         operation if importants is not list.
6829
6830         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6831         Return t if importants is not list.
6832
6833         * elmo-map.el (elmo-map-folder-list-importants): Define.
6834         (elmo-folder-list-importants-internal): Check return value of
6835         `elmo-map-folder-list-importants-internal'.
6836
6837         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6838
6839         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6840
6841         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6842
6843         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6844
6845 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6846
6847         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6848         (Patch is provided by <kita@coe.nttdata.co.jp>).
6849
6850 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6851
6852         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6853         mark folder.
6854
6855 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6856
6857         * elmo.el (elmo-message-fetch): Define.
6858         (elmo-message-fetch-with-cache-process): New generic method.
6859         (elmo-message-fetch-internal): New generic method.
6860         (elmo-folder-synchronize):
6861
6862         * elmo-archive.el (elmo-message-fetch-internal): Define.
6863         (elmo-message-fetch): Eliminated.
6864
6865         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6866         (elmo-message-fetch): Eliminated.
6867
6868         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6869         argument OUTBUF.
6870         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6871
6872         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6873         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6874
6875         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6876         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6877
6878         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6879
6880         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6881
6882         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6883
6884         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6885         (elmo-message-fetch-unplugged): New generic method.
6886         (elmo-message-fetch-internal): Remove cache process (Renamed from
6887         `elmo-message-fetch').
6888
6889         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6890         (elmo-message-fetch): Eliminated.
6891         (elmo-message-fetch-unplugged): Ditto.
6892
6893         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6894
6895 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6896
6897         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6898         of `to-be-deleted' from number-alist to number-list.
6899
6900 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6901
6902         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6903         (elmo-folder-mark-as-important): Ditto.
6904
6905 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6906
6907         * elmo.el (elmo-folder): Added process-duplicates slot.
6908
6909         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6910         (elmo-folder-unmark-read): Ditto.
6911         (elmo-folder-unmark-important): Ditto.
6912         (elmo-folder-mark-as-important): Ditto.
6913
6914         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6915         duplicated message processing.
6916
6917         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6918
6919 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6920
6921         * elmo-util.el (elmo-list-subdirectories-1): New function.
6922         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6923         (elmo-mapcar-list-of-list): New function.
6924
6925         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6926         `elmo-mapcar-list-of-list' instead of `mapcar'.
6927
6928         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6929
6930         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6931         `elmo-have-link-count'. Return the fully qualified folder name.
6932
6933 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6934
6935         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6936         (elmo-shimbun-headers-cache): New internal variable.
6937         (elmo-shimbun-headers-cache-header-list): New inline function.
6938         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6939         (elmo-shimbun-headers-cache-header-hash): Ditto.
6940         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6941         (elmo-shimbun-headers-cache-last-check): Ditto.
6942         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6943         (elmo-shimbun-lapse-seconds): Ditto.
6944         (elmo-shimbun-headers-cache-check-p): Ditto.
6945         (elmo-shimbun-get-headers): New function.
6946         (elmo-folder-open-internal): Call it.
6947         (elmo-quit): Define (Clear headers-cache).
6948
6949 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6950
6951         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6952
6953         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6954         (elmo-msgdb-flist-save): Ditto.
6955
6956         * elmo-shimbun.el (elmo-folder-list-subfolders):
6957         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6958         (elmo-folder-exists-p): Ditto.
6959
6960         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6961         argument for `shimbun-header-insert'.
6962
6963 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6964
6965         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6966         at first time.
6967
6968         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6969         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6970
6971 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6972
6973         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6974         (elmo-folder-plugged-p): Define.
6975         (elmo-folder-set-plugged): Ditto.
6976         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6977         (elmo-folder-list-messages-internal): Return t if unplugged.
6978         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6979
6980         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6981         when elmo-folder-list-messages-internal method of children returns t.
6982
6983         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6984         pair is nil.
6985         (elmo-folder-open-internal): Don't update if unplugged status.
6986
6987 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6988
6989         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6990         new message.
6991
6992 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6993
6994         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6995
6996         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6997         saving.
6998
6999 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
7000
7001         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
7002
7003         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
7004         (elmo-folder-open-internal): Set up headers slot.
7005         (elmo-folder-check): Call elmo-folder-close-internal and
7006         elmo-folder-open-internal.
7007         (elmo-folder-close-internal): Clean up headers slot.
7008
7009 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7010
7011         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
7012         exactly folder list.
7013         (elmo-folder-append-messages): Fixed append archive with prefix.
7014
7015         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
7016         make temp files with start-number.
7017
7018         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
7019
7020 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7021
7022         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
7023         argument `visible-only'.
7024         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
7025         instead of `if'.
7026
7027         * elmo-pop3.el (elmo-folder-open-internal): Check
7028         `elmo-inhibit-number-mapping' is non-nil.
7029
7030         * elmo-pipe.el (elmo-folder-status): Fixed.
7031
7032 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
7033
7034         * elmo.el (elmo-dop-queue-flush): Added autload setting.
7035
7036         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
7037         (elmo-folder-open-internal): Setup `header-hash' slot.
7038         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
7039         information.
7040         (elmo-map-message-fetch): Ditto.
7041
7042 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
7043
7044         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7045         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7046         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7047         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
7048
7049         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
7050
7051 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
7052
7053         * sb-airs.el: Added footer.
7054
7055         * shimbun.el (shimbun-article): Define as luna-method.
7056
7057         * sb-tcup.el: New file.
7058
7059         * sb-airs.el (toplevel): Require 'sb-mhonarc.
7060         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
7061
7062 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
7063
7064         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
7065         (shimbun-get-headers): Ditto.
7066
7067         * elmo.el: Moved obsolete variable definitions from
7068         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
7069
7070         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
7071         groups.
7072
7073         * shimbun.el: New file.
7074
7075         * elmo-shimbun.el: New file.
7076
7077         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7078         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7079         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7080         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
7081
7082 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
7083
7084         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
7085         hierarchy is t.
7086
7087 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
7088
7089         * elmo.el (elmo-folder-msgdb): Define as macro.
7090         (elmo-folder-open): Added argument `load-msgdb'.
7091         (elmo-generic-folder-open): Ditto.
7092         (elmo-folder-encache): New function.
7093
7094         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
7095
7096         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
7097
7098         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
7099         Eliminated argument FOLDER and added argument MSGDB.
7100         (elmo-dop-queue-load): Moved from elmo-dop.el.
7101         (elmo-dop-queue-save): Ditto.
7102
7103         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
7104
7105         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
7106
7107         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
7108         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
7109         (elmo-filter-folder-list-importants-internal): Ditto.
7110
7111         * elmo-map.el (elmo-folder-pack-number): Ditto.
7112
7113         * elmo-mime.el (elmo-mime-message-display): Ditto.
7114
7115         * elmo.el (elmo-generic-folder-commit): Ditto.
7116         (elmo-folder-list-unreads): Ditto.
7117         (elmo-folder-list-importants): Ditto.
7118         (elmo-generic-folder-commit): Ditto.
7119         (elmo-message-set-mark): Ditto.
7120         (elmo-generic-folder-append-msgdb): Ditto.
7121         (elmo-folder-synchronize): Ditto.
7122         (elmo-folder-messages): Ditto.
7123         (elmo-init): Call elmo-dop-queue-load.
7124         (elmo-folder-list-messages): Ditto.
7125
7126         * elmo-nntp.el (elmo-folder-update-number): Ditto.
7127         (elmo-nntp-folder-process-crosspost): Ditto.
7128         (elmo-folder-list-unreads-internal): Ditto.
7129
7130         * elmo-dop.el: Removed old functions.
7131
7132 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
7133
7134         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
7135         `folder' to `msgdb'.
7136
7137 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
7138
7139         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
7140         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
7141
7142         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
7143         case-fold-search.
7144
7145 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
7146
7147         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
7148         defined.
7149
7150         * mmimap.el (toplevel): Require 'mime-parse and 'static.
7151         (mmimap-parse-parameters-from-list): Define as alias for
7152         `mime-decode-parameter-plist' if it is defined as function.
7153         (mmimap-make-mime-entity): Added argument `number'.
7154         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
7155         as 0.
7156         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
7157
7158         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
7159
7160         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
7161
7162         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
7163
7164 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
7165
7166         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
7167
7168         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
7169         when elmo-imap4-default-authenticate-type is nil.
7170         (elmo-folder-list-subfolders): Ditto
7171         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
7172         (elmo-imap4-fetch-callback-1-subr): Renamed from
7173         `elmo-imap4-fetch-callback-1' and define as inline function.
7174         (elmo-imap4-fetch-callback-1):
7175         Renamed from `elmo-imap4-fetch-callback'.
7176         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
7177
7178         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
7179         msgdb path (To keep compatibility with main trunk).
7180
7181         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
7182
7183         * elmo-util.el (elmo-make-file-cache): Moved position of
7184         some macros.
7185
7186         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
7187         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
7188         instead of `elmo-pop3-inhibit-uidl'.
7189         (elmo-folder-exists-p): Ditto.
7190         (elmo-pop3-folder-list-messages): Ditto.
7191
7192         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
7193         instead of `elmo-pop3-inhibit-uidl'.
7194         (elmo-folder-status): Ditto.
7195
7196         * elmo-dop.el (elmo-dop-folder): New variable.
7197         (elmo-dop-lock-message): Eliminated.
7198         (elmo-dop-unlock-message): Ditto.
7199         (elmo-dop-lock-list-load): Ditto.
7200         (elmo-dop-lock-list-save): Ditto.
7201         (elmo-dop-delete-folder): Ditto.
7202         (elmo-dop-rename-folder): Ditto.
7203
7204         * elmo.el: Removed incomplete commentary.
7205
7206 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7207
7208         * elmo.el (toplevel): Require 'elmo-version first;
7209         for little `recursive-load-depth' settings.
7210         Fix "ends here" comment.
7211
7212 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
7213
7214         * elmo-util.el (toplevel): Require 'poem;
7215         Some functions are moved from elmo-cache.el.
7216
7217         * elmo-net.el (toplevel): Require 'elmo-cache.
7218
7219         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
7220
7221         * elmo.el (toplevel): Ditto.
7222
7223         * elmo-cache.el: Rewrite with luna;
7224         Some functions are moved to elmo-util.el.
7225
7226         * elmo-internal.el (elmo-internal-folder-list): New variable.
7227         (elmo-internal-folder-initialize): Rewrite.
7228         (elmo-folder-list-subfolders): Ditto.
7229
7230         * elmo-cache.el (elmo-cache-search-all): Eliminated.
7231         (elmo-cache-collect-sub-directories): Ditto.
7232
7233 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
7234
7235         * elmo-version.el (elmo-version): Up to 2.5.8.
7236
7237         * elmo.el (elmo-folder-list-messages-mark-match): New function.
7238
7239         * elmo-util.el (elmo-list-insert): New function.
7240
7241 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
7242
7243         * elmo.el (elmo-init): New function.
7244         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
7245
7246         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
7247         (Renamed from `elmo-localdir-header-chop-length').
7248
7249         * elmo-pop3.el (elmo-pop3-use-cache,
7250         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
7251
7252         * elmo-nntp.el (elmo-message-fetch): Define.
7253         (elmo-message-fetch-unplugged): Ditto.
7254         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
7255         (elmo-nntp-use-cache): Ditto.
7256         (elmo-nntp-max-number-precedes-list-active): Ditto.
7257
7258         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
7259
7260         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
7261         `elmo-msgdb-insert-file-header'.
7262         Use `elmo-msgdb-file-header-chop-length'.
7263
7264         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
7265         `elmo-vars.el'.
7266
7267         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
7268         (elmo-cache-msgdb-create-overview-entity-from-file): Use
7269         `elmo-msgdb-insert-file-header'.
7270
7271         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
7272         Use new variable;
7273         Define obsolete variables with `elmo-define-obsolete-variable',
7274
7275         * elmo-util.el (elmo-warning-buffer-name): New constant.
7276         (elmo-warning): New function.
7277         (elmo-obsolete-variable-alist): New variable.
7278         (elmo-obsolete-variable-show-warnings): New variable.
7279         (elmo-define-obsolete-variable): New function.
7280         (elmo-resque-obsolete-variable): Ditto.
7281         (elmo-resque-obsolete-variables): Ditto.
7282
7283 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7284
7285         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
7286         Eliminated.
7287
7288         * elmo-pop3.el, elmo-nntp.el: Use custom.
7289
7290 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7291
7292         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
7293         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
7294
7295 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7296
7297         * Luna-fy Kenichi OKADA's following changes.
7298         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
7299         `nohide'.
7300         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
7301
7302 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
7303
7304         * elmo-util.el (elmo-display-progress): Prefer
7305         `progress-feedback-with-label' to `lprogress-display'.
7306
7307 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7308
7309         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
7310
7311 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
7312
7313         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
7314         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
7315         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7316         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7317         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
7318         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
7319         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7320         * elmo-filter.el (elmo-filter-list-folder): Ditto.
7321         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7322         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7323         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7324         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7325         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7326
7327 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7328
7329         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
7330         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7331
7332 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7333
7334         * elmo.el (elmo-folder-process-crosspost): New generic method.
7335         (elmo-folder-writable-p): Ditto.
7336         (elmo-folder-message-appendable-p): Eliminated.
7337         (elmo-generic-folder-append-msgdb): Rewrite.
7338         (elmo-newsgroups-hashtb): New internal variable.
7339         (elmo-crosspost-message-set): Eliminated.
7340         (elmo-crosspost-message-delete): Ditto.
7341         (elmo-setup-subscribed-newsgroups): New function.
7342         (elmo-crosspost-message-alist-modified): New internal variable.
7343         (elmo-crosspost-message-alist-load): New function (Renamed from
7344         `wl-crosspost-alist-load').
7345         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7346         `wl-crosspost-alist-save').
7347
7348         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7349
7350         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7351         `unreads'.
7352         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7353         elmo-newsgroups-hashtb).
7354         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7355         `elmo-nntp-folder-update-crosspost-message-alist'.
7356         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7357         `elmo-nntp-groups-hashtb'.
7358         (elmo-nntp-make-groups-hashtb): Eliminated.
7359         (elmo-nntp-parse-newsgroups): New function (Renamed from
7360         `wl-parse-newsgroups').
7361         (elmo-folder-creatable-p, elmo-folder-writable-p,
7362         elmo-folder-close-internal, elmo-folder-mark-as-read,
7363         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7364         Define.
7365         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7366
7367         * elmo-net.el (elmo-message-fetch): Check buffer size.
7368
7369         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7370
7371         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7372
7373         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7374         before `close' command.
7375
7376         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7377         `mark-alist' (All other related portions are changed).
7378
7379 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7380
7381         * elmo-util.el (elmo-create-hash-size): Eliminated.
7382         (elmo-make-hash) Make a hash with `one less than a power of two'
7383         length.
7384
7385         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7386         (elmo-hash-maximum-size): Changed value.
7387
7388 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7389
7390         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7391         (elmo-mime-message-display-as-is): Ditto.
7392
7393 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7394
7395         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7396         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7397
7398 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7399
7400         * elmo-mark.el: New file.
7401
7402         * elmo-internal.el: Rewrite (Almost empty).
7403
7404 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7405
7406         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7407         (mime-imap-entity-header-string): Ditto.
7408         (mmimap-entity-section): Rewrite.
7409
7410 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7411
7412         * elmo-nmz.el: New file.
7413
7414         * elmo-pipe.el: Rewrite with luna.
7415
7416 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7417
7418         * elmo-archive.el: Rewrite with luna.
7419
7420         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7421         (elmo-folder-list-importants-internal): Ditto.
7422
7423 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7424
7425         * elmo-archive.el (elmo-archive-version): Abolish.
7426         (toplevel) Removed `boso' comment.
7427
7428 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7429
7430         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7431         elmo-msgdb-add-msgs-to-seen-list-subr;
7432         Changed argument seen-marks to unread-marks.
7433
7434         * elmo-nntp.el: Rewrite with luna.
7435
7436 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7437
7438         * elmo-filter.el: Rewrite with luna.
7439
7440 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7441
7442         * elmo-pop3.el: Rewrite with luna.
7443
7444 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7445
7446         * elmo-multi.el: Rewrite with luna.
7447
7448         * elmo-vars.el (elmo-use-killed-list): Abolish.
7449         All other related portions are changed.
7450         (elmo-filename-replace-string-alist): Renamed from
7451         elmo-msgid-replace-string-alist.
7452
7453 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7454
7455         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7456
7457         * elmo-map.el: New file.
7458         * elmo-maildir.el: Rewrite with luna.
7459
7460 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7461
7462         * elmo.el: Changed meaning of `elmo-folder-commit'.
7463         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7464
7465 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7466
7467         * elmo.el (elmo-folder-append-buffer): New function.
7468         (Renamed from `elmo-append-msg')
7469
7470 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7471
7472         * elmo-mime.el: New file.
7473
7474 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7475
7476         * elmo-cache.el: Rewrite.
7477
7478 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7479
7480         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7481
7482 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7483
7484         * elmo-vars.el (elmo): New group.
7485         (elmo-strict-diff-folder-regexp): New variable.
7486
7487         * elmo-util.el (elmo-call-func): Abolish.
7488         (elmo-folder-get-type): Ditto.
7489         (elmo-*-get-spec): Ditto.
7490         (elmo-*-spec-*): Ditto.
7491         (elmo-imap4-identical-name-space-p): Ditto.
7492         (elmo-folder-identical-system-p): Ditto.
7493         (elmo-folder-direct-copy-alist): Ditto.
7494         (elmo-folder-direct-copy-p): Ditto.
7495
7496         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7497         (elmo-folder-initialize): Define.
7498         (elmo-folder-get-primitive-list): Ditto.
7499
7500         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7501         (elmo-folder-initialize): Define.
7502         Renamed `elmo-network-session-host-internal' to
7503         `elmo-network-session-server-internal'.
7504
7505         * elmo-multi.el (elmo-multi-folder): New luna class.
7506         (elmo-folder-initialize): Define.
7507         (elmo-folder-get-primitive-list): Ditto.
7508         (elmo-folder-contains-type): Ditto.
7509         (elmo-message-use-cache-p): Ditto.
7510
7511         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7512         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7513
7514         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7515         (elmo-folder-initialize): Define.
7516
7517         * elmo-filter.el (elmo-filter-folder): New luna class.
7518         (elmo-folder-initialize): Define.
7519         (elmo-folder-get-primitive-list): Ditto.
7520         (elmo-folder-contains-type): Ditto.
7521
7522 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7523
7524         * elmo-imap4.el: Rewrite with luna.
7525
7526         * mmimap.el: New file.
7527
7528         * mmelmo.el, mmelmo-imap4.el: Removed.
7529
7530         * elmo-net.el: Ditto.
7531
7532         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7533         (elmo-folder-initialize): Define.
7534
7535         * elmo-archive.el (elmo-archive-folder): New luna class.
7536         (elmo-folder-initialize): Define.
7537
7538         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7539         `elmo-folder-msgdb-path'.
7540         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7541         `elmo-make-folder'.
7542
7543 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7544
7545         * elmo.el: New file.
7546
7547         * elmo2.el: Renamed to elmo.el.
7548
7549 \f
7550 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7551
7552         * elmo-cache.el (elmo-cache-expire-by-size): Count
7553         a disk usage for a cache file entry in KB even when
7554         its kind is a directory.
7555
7556 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7557
7558         * elmo-version.el (elmo-version): Up to 2.5.7.
7559
7560 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7561
7562         * elmo-version.el (elmo-version): Up to 2.5.6.
7563
7564 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7565
7566         * elmo-version.el (elmo-version): Up to 2.5.5.
7567
7568 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7569
7570         * elmo-imap4.el (elmo-network-authenticate-session):
7571         Fixed a logic for response checking.
7572
7573 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7574
7575         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7576         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7577         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7578         `sasl-mechanisms'.
7579
7580         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7581         for `starttls-open-stream' and `starttls-negotiate'.
7582
7583         * elmo-nntp.el: Remove autoload settings for
7584         `starttls-open-stream' and `starttls-negotiate'.
7585
7586         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7587         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7588         `luna-define-class' with `eval-and-compile'.
7589
7590 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7591
7592         * elmo-util.el (elmo-read-search-condition-internal):
7593         Require an element of table for searching field.
7594
7595 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7596
7597         * elmo-version.el (elmo-version): Up to 2.5.4.
7598
7599 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7600
7601         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7602
7603 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7604
7605         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7606
7607 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7608
7609         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7610         before greeting.
7611
7612 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7613
7614         * elmo-imap4.el (elmo-imap4-delete-folder):
7615         Send "close" before "delete" (Use commented out line).
7616         (elmo-imap4-rename-folder): Ditto.
7617
7618         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7619         folder string itself.
7620         (elmo-dop-list-deleted): New function.
7621         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7622         killed.
7623
7624         * elmo-util.el (elmo-string-rassoc-all): New function.
7625
7626 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7627
7628         * elmo-version.el (elmo-version): Up to 2.5.3.
7629
7630         * elmo-net.el (elmo-network-get-session): Changed logic for
7631         checking process status.
7632
7633         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7634         process is nil;
7635         Changed logic for checking process status.
7636
7637 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7638
7639         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7640         before greeting.
7641         (elmo-network-setup-session): Set UIDL hash size according to
7642         the length of list response.
7643         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7644         according to the length of list response;
7645         Return the length of list response.
7646         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7647
7648 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7649
7650         * elmo-imap4.el (toplevel): Require 'ssl.
7651         Add autoload 'starttls.
7652         * elmo-pop3.el (toplevel): Ditto.
7653         * elmo-nntp.el (toplevel): Ditto.
7654
7655 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7656
7657         * elmo-imap4.el (toplevel): defun at compile time.
7658         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7659         sasl-next-step, sasl-step-data, sasl-step-set-data.
7660         * elmo-pop3.el (toplevel): Ditto.
7661
7662 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7663
7664         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7665
7666 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7667
7668         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7669         if error.
7670         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7671         and `elmo-pop-auth-apop'.
7672
7673 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7674
7675         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7676
7677 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7678
7679         * elmo-pop3.el (elmo-network-authenticate-session): Split
7680         encoded response value.
7681
7682 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7683
7684         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7685         `elmo-pop3-force-login'.
7686         Redefine `sasl-mechanisms'.
7687         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7688
7689 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7690
7691         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7692         Delete `elmo-imap4-authenticator-alist'.
7693         (elmo-imap4-auth-cram-md5): Delete.
7694         (elmo-imap4-auth-digest-md5): Delete.
7695
7696 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7697
7698         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7699         (elmo-pop3-auth-scram-md5): Ditto.
7700         (elmo-pop3-auth-cram-md5): Ditto.
7701
7702 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7703
7704         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7705         Delete `elmo-pop3-authenticator-alist'.
7706
7707 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7708
7709         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7710         new SASL API.
7711         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7712
7713 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7714
7715         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7716
7717 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7718
7719         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7720         Fixed problem when `elmo-pop3-use-uidl' is nil.
7721         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7722
7723 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7724
7725         * elmo-version.el (elmo-version): Up to 2.5.2.
7726
7727 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7728
7729         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7730         New function.
7731         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7732         (elmo-pop3-msgdb-create-as-numlist): Use it.
7733
7734         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7735         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7736
7737         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7738         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7739
7740 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7741
7742         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7743         when elmo-mark-as-read is called with second argument nil.
7744
7745 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7746
7747         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7748         Moved to elmo-util.el.
7749
7750         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7751         Moved from elmo-pipe.el
7752
7753         * elmo-archive.el (elmo-archive-call-process): Enclose with
7754         static-if.
7755
7756         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7757         "RFC822" (because RFC822.PEEK is obsolete).
7758         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7759
7760 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7761
7762         * elmo-archive.el (elmo-archive-call-process): Don't check for
7763         the exit status when Nemacs is running.
7764
7765 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7766
7767         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7768         'plain.
7769
7770         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7771         (elmo-pop3-get-spec): Set default of auth to 'user.
7772
7773         * elmo-imap4.el (elmo-imap4-session-check):
7774         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7775         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7776         (elmo-imap4-auth-login): New function; Revival.
7777         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7778         `elmo-imap4-auth-login'.
7779
7780 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7781
7782         * elmo2.el (toplevel): Move `product-provide' declare.
7783         * mmelmo.el (toplevel): Ditto.
7784
7785 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7786
7787         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7788
7789 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7790
7791         * elmo-util.el (elmo-folder-get-store-type): New function.
7792         (elmo-folder-direct-copy-p): Use it.
7793
7794 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7795
7796         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7797         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7798         and result of `elmo-imap4-use-flag-p'.
7799         (elmo-imap4-fetch-callback-1): Set mark according to
7800         the result of `elmo-imap4-use-flag-p'.
7801
7802 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7803
7804         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7805         (elmo-generic-list-folder-unread): Ditto.
7806         (elmo-folder-get-info): Ditto.
7807         (elmo-folder-set-info-max-by-numdb): Ditto.
7808         (elmo-folder-get-info-max): Ditto.
7809         (elmo-folder-get-info-length): Ditto.
7810         (elmo-folder-get-info-unread): Ditto.
7811         (elmo-folder-info-make-hashtb): Ditto.
7812
7813         * elmo2.el: Removed above functions.
7814
7815 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7816
7817         * elmo-imap4.el (toplevel): Require 'ssl.
7818         Add autoload 'starttls.
7819         * elmo-pop3.el (toplevel): Ditto.
7820         * elmo-nntp.el (toplevel): Ditto.
7821
7822 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7823
7824         * elmo-imap4.el (toplevel): defun at compile time.
7825         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7826         sasl-next-step, sasl-step-data, sasl-step-set-data.
7827         * elmo-pop3.el (toplevel): Ditto.
7828
7829 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7830
7831         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7832
7833 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7834
7835         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7836         if error.
7837         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7838         and `elmo-pop-auth-apop'.
7839
7840 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7841
7842         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7843
7844 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7845
7846         * elmo-pop3.el (elmo-network-authenticate-session): Split
7847         encoded response value.
7848
7849 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7850
7851         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7852         `elmo-pop3-force-login'.
7853         Redefine `sasl-mechanisms'.
7854         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7855
7856 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7857
7858         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7859         Delete `elmo-imap4-authenticator-alist'.
7860         (elmo-imap4-auth-cram-md5): Delete.
7861         (elmo-imap4-auth-digest-md5): Delete.
7862
7863 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7864
7865         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7866         (elmo-pop3-auth-scram-md5): Ditto.
7867         (elmo-pop3-auth-cram-md5): Ditto.
7868
7869 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7870
7871         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7872         Delete `elmo-pop3-authenticator-alist'.
7873
7874 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7875
7876         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7877         new SASL API.
7878         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7879
7880 \f
7881 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7882
7883         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7884
7885 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7886
7887         * elmo-nntp.el (elmo-nntp-get-folders-info):
7888         Fixed problem when '\' character is contained in user-id.
7889         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7890
7891 \f
7892 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7893
7894         * elmo-imap4.el (elmo-imap4-delete-folder):
7895         Send "close" before "delete" (Use commented out line).
7896         (elmo-imap4-rename-folder): Ditto.
7897
7898         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7899         folder string itself.
7900         (elmo-dop-list-deleted): New function.
7901         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7902         killed.
7903
7904         * elmo-util.el (elmo-string-rassoc-all): New function.
7905
7906         * elmo-version.el (elmo-version): Up to 2.5.1.
7907
7908 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7909
7910         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7911
7912         * elmo-internal.el (elmo-internal-search): Fix last change.
7913
7914 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7915
7916         * elmo-internal.el (elmo-internal-search): Rewrite.
7917         (Fixed problem which is pointed out by Akihiro MOTOKI
7918         <motoki@da.jp.nec.com>)
7919
7920         * elmo-version.el (elmo-version): Up to 2.5.0.
7921
7922 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7923
7924         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7925
7926 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7927
7928         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7929         non-nil, make hierarchy.
7930
7931 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7932
7933         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7934         `elmo-pop3-use-uidl' must be bound to nil.
7935         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7936
7937 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7938
7939         * elmo-util.el (elmo-copy-file): Don't cause an error after
7940         `add-name-to-file' failed.
7941
7942         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7943         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7944
7945 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7946
7947         * elmo-version.el (elmo-version): Up to 2.3.93.
7948
7949 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7950
7951         * elmo-util.el (elmo-flatten): New function.
7952
7953 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7954
7955         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7956         sync Author header.
7957         * elmo-cache.el (toplevel): Ditto.
7958         * elmo-database.el (toplevel): Ditto.
7959         * elmo-date.el (toplevel): Ditto.
7960         * elmo-dop.el (toplevel): Ditto.
7961         * elmo-filter.el (toplevel): Ditto.
7962         * elmo-imap4.el (toplevel): Ditto.
7963         * elmo-internal.el (toplevel): Ditto.
7964         * elmo-localdir.el (toplevel): Ditto.
7965         * elmo-localnews.el (toplevel): Ditto.
7966         * elmo-maildir.el (toplevel): Ditto.
7967         * elmo-msgdb.el (toplevel): Ditto.
7968         * elmo-multi.el (toplevel): Ditto.
7969         * elmo-net.el (toplevel): Ditto.
7970         * elmo-nntp.el (toplevel): Ditto.
7971         * elmo-pipe.el (toplevel): Ditto.
7972         * elmo-pop3.el (toplevel): Ditto.
7973         * elmo-util.el (toplevel): Ditto.
7974         * elmo-vars.el (toplevel): Ditto.
7975         * elmo2.el (toplevel): Ditto.
7976         * mmelmo-imap4.el (toplevel): Ditto.
7977         * mmelmo.el (toplevel): Ditto.
7978
7979         * elmo-version.el (elmo-version): Move to top.
7980
7981         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7982         * elmo-imap4.el (toplevel): Ditto.
7983         * elmo-localdir.el (toplevel): Ditto.
7984         * elmo-msgdb.el (toplevel): Ditto.
7985         * elmo-nntp.el (toplevel): Ditto.
7986         * elmo-pop3.el (toplevel): Ditto.
7987         * elmo-version.el (toplevel): Ditto.
7988
7989         * elmo-localnews.el (toplevel): Added Keyword header.
7990
7991 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7992
7993         * elmo-version.el (product-version-as-string): Defined using
7994         `defun-maybe'.
7995         (toplevel): Use it.
7996
7997         * elmo-localdir.el (toplevel): Updated copyright notice.
7998         * elmo-version.el (toplevel): Ditto.
7999         * elmo-msgdb.el (toplevel): Ditto.
8000         * elmo-imap4.el (toplevel): Ditto.
8001         * elmo-nntp.el (toplevel): Ditto.
8002         * elmo-pop3.el (toplevel): Ditto.
8003
8004 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
8005
8006         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
8007         messages.
8008
8009         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
8010         parameter value (It sometimes contains raw kanji).
8011
8012 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8013
8014         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
8015         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
8016
8017 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8018
8019         * elmo-imap4.el (elmo-network-initialize-session): Fix.
8020
8021 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8022
8023         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
8024         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
8025
8026 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
8027
8028         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
8029         value if selecting folder succceeded.
8030         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
8031
8032 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8033
8034         * elmo-util.el (elmo-make-directory): Fixed permission lateral
8035         representation.
8036
8037         * elmo-util.el (elmo-string-matched-member): New function.
8038
8039 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
8040
8041         * elmo-util.el (elmo-unintern): New macro.
8042         (elmo-number-set-member): Fixed docstring.
8043
8044         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
8045         tag token.
8046
8047 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
8048
8049         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
8050         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
8051
8052 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
8053
8054         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
8055         `no-error'.
8056         Added docstring.
8057         Return non-nil if selecting folder succeeded.
8058         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
8059
8060 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
8061
8062         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
8063         `file-name-completion' returns t.
8064         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
8065         (elmo-maildir-set-mark): Put `info' part to the files in the cur
8066         directory if it does not exist.
8067         (elmo-maildir-update-current): Use `while' instead of `mapcar'
8068         for iteration.
8069
8070 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
8071
8072         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
8073         enclosure (It's harmful in unplugged status).
8074
8075         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
8076
8077         * mmelmo-1.el: Removed.
8078
8079         * mmelmo-2.el: Ditto.
8080
8081         * mmelmo-imap4-1.el: Ditto.
8082
8083         * mmelmo-imap4-2.el: Ditto.
8084
8085         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
8086
8087         * mmelmo.el: Merged mmelmo-2.el.
8088
8089         * elmo-version.el (elmo-version): Up to 2.3.92.
8090
8091 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8092
8093         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
8094         elmo-update-number): Remove last period in "...done." message.
8095         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
8096         Ditto.
8097         * elmo-cache.el (elmo-cache-expire-by-size,
8098         elmo-cache-get-sorted-cache-file-list,
8099         elmo-cache-msgdb-create-as-numlist): Ditto.
8100         * elmo-dop.el (elmo-dop-save-pending-messages,
8101         (elmo-dop-flush-pending-append-operations): Ditto.
8102         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
8103         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
8104         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
8105         (elmo-localdir-pack-number): Ditto.
8106         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
8107         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
8108         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
8109         mime-write-entity-content): Ditto.
8110         * pldap.el (ldap-search-basic): Ditto.
8111
8112 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
8113
8114         * elmo-version.el (elmo-version): Up to 2.3.91.
8115
8116         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
8117         Only when filter is 'last'.
8118
8119         * elmo-util.el (elmo-condition-atom-regexp): New constant.
8120         (elmo-condition-parse-search-value): Use it.
8121         (elmo-read-search-condition-internal): Quote value only when
8122         it is not an atom.
8123
8124 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
8125
8126         * elmo2.el (elmo-generic-folder-diff): Fix.
8127
8128 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
8129
8130         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
8131         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
8132         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
8133         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8134         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
8135         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
8136
8137 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
8138
8139         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
8140         extra-fields.
8141
8142 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
8143
8144         * elmo-version.el (elmo-version): Up to 2.3.90.
8145
8146         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
8147         (elmo-imap4-list-folder-important): Ditto.
8148
8149 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8150
8151         * elmo-nntp.el (elmo-network-initialize-session): Fix.
8152
8153 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8154
8155         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
8156
8157 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
8158
8159         * elmo-nntp.el (elmo-network-initialize-session):
8160         Add starttls negotiation.
8161
8162 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8163
8164         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
8165         response.
8166         (elmo-network-setup-session): Define.
8167         Call `elmo-nntp-send-mode-reader' when session opened.
8168
8169 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8170
8171         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
8172
8173 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
8174
8175         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
8176         an invalid SPACE character ahead of `SEARCH' command.  Move
8177         a valid SPACE character following `SEARCH' from conditional
8178         `format' arguments to control-strings.
8179
8180 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8181
8182         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
8183         was succeeded.
8184
8185         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
8186
8187 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
8188
8189         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
8190         `w32-get-true-file-link-count' as t.
8191
8192         * elmo-imap4.el (elmo-imap4-read): Abolished.
8193         (Renamed to `elmo-read' and moved to elmo-util.el)
8194         All other related portions are changed.
8195
8196         * elmo-util.el (elmo-read): New function.
8197         (elmo-condition-parse-search-value): Use it.
8198
8199 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
8200
8201         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
8202
8203         * elmo-nntp.el (elmo-nntp-session): Define.
8204         (elmo-nntp-setting): Abolished.
8205         All other related portions are changed.
8206         (elmo-nntp-get-server-command): Changed argument.
8207         (elmo-nntp-set-server-command): Ditto.
8208         (elmo-nntp-xover-p): Ditto.
8209         (elmo-nntp-set-xover): Ditto.
8210         (elmo-nntp-listgroup-p): Ditto.
8211         (elmo-nntp-set-listgroup): Ditto.
8212         (elmo-nntp-list-active-p): Ditto.
8213         (elmo-nntp-set-list-active): Ditto.
8214         (elmo-nntp-xhdr-p): Ditto.
8215         (elmo-nntp-set-xhdr): Ditto.
8216         (elmo-nntp-flush-connection): Abolished.
8217         (elmo-nntp-get-connection): Abolished.
8218         (elmo-nntp-get-session): New function.
8219         (elmo-network-initialize-session): Defined.
8220         (elmo-network-authenticate-session): Ditto.
8221         (elmo-nntp-send-mode-reader): Changed argument.
8222         (elmo-nntp-send-command): Changed argument.
8223         All other related portions are changed.
8224         (elmo-nntp-read-response): Ditto.
8225         (elmo-nntp-read-raw-response): Ditto.
8226         (elmo-nntp-read-contents): Ditto.
8227         (elmo-nntp-read-body): Ditto.
8228         (elmo-nntp-goto-folder): Abolished.
8229         (elmo-nntp-select-group): New function.
8230         All other related portions are changed.
8231         (This function substitutes `elmo-nntp-goto-folder')
8232         (elmo-nntp-msgdb-create-by-header): Rewrite.
8233         (elmo-nntp-get-overview): Eliminated.
8234         (elmo-nntp-get-message): Ditto.
8235         (elmo-nntp-open-connection) Abolished.
8236         (elmo-nntp-read-msg): Rewrite.
8237         (elmo-nntp-post): Ditto.
8238         (elmo-nntp-send-data): Abolished.
8239         (elmo-nntp-send-buffer): New function.
8240         (elmo-nntp-send-data-line): Define as inline function.
8241         (elmo-nntp-get-folders-info-prepare): Use session as key.
8242         (elmo-nntp-groups-read-response): Changed argument.
8243         (elmo-nntp-retrieve-headers): Ditto.
8244         (elmo-nntp-msgdb-create-message): Ditto.
8245
8246         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
8247         when searching by 'since' or 'before'.
8248
8249 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8250
8251         * elmo-version.el (toplevel): Use product-version-as-string for set
8252         verstion-string, if defined.
8253
8254 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
8255
8256         * elmo-util.el: Doc fixes.
8257
8258 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8259
8260         * elmo-archive.el (toplevel): Use product-provide.
8261         * elmo-cache.el (toplevel): Ditto.
8262         * elmo-database.el (toplevel): Ditto.
8263         * elmo-date.el (toplevel): Ditto.
8264         * elmo-dop.el (toplevel): Ditto.
8265         * elmo-filter.el (toplevel): Ditto.
8266         * elmo-imap4.el (toplevel): Ditto.
8267         * elmo-internal.el (toplevel): Ditto.
8268         * elmo-localdir.el (toplevel): Ditto.
8269         * elmo-localnews.el (toplevel): Ditto.
8270         * elmo-maildir.el (toplevel): Ditto.
8271         * elmo-msgdb.el (toplevel): Ditto.
8272         * elmo-multi.el (toplevel): Ditto.
8273         * elmo-net.el (toplevel): Ditto.
8274         * elmo-nntp.el (toplevel): Ditto.
8275         * elmo-pipe.el (toplevel): Ditto.
8276         * elmo-pop3.el (toplevel): Ditto.
8277         * elmo-util.el (toplevel): Ditto.
8278         * elmo-vars.el (toplevel): Ditto.
8279         * elmo2.el (toplevel): Ditto.
8280         * mmelmo-1.el (toplevel): Ditto.
8281         * mmelmo-2.el (toplevel): Ditto.
8282         * mmelmo-imap4-1.el (toplevel): Ditto.
8283         * mmelmo-imap4-2.el (toplevel): Ditto.
8284         * mmelmo-imap4.el (toplevel): Ditto.
8285         * mmelmo.el (toplevel): Ditto.
8286
8287 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
8288
8289         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
8290         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
8291
8292 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
8293
8294         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
8295         before splitting.
8296         (elmo-multi-split-number-alist): Ditto.
8297
8298 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8299
8300         * elmo-version.el: New file.  Use product.el.
8301         * elmo2.el: Add (require 'elmo-version).
8302         * elmo-vars.el (elmo-appname, elmo-version): Move to
8303         elmo-version.el
8304
8305 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
8306
8307         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
8308         `elmo-msgdb-expand-path'.
8309         (elmo-msgdb-load): Ditto.
8310         Abolished 2nd argument. If 1st argument is not string, treat as spec.
8311         (elmo-generic-list-folder-unread): Rewrite.
8312         (elmo-generic-list-folder-important): Changed argument.
8313         (elmo-list-folder-unread): Ditto.
8314         (elmo-list-folder-important): Ditto.
8315         (elmo-folder-diff): Rewrite.
8316         (elmo-generic-folder-diff): New function.
8317         (elmo-multi-get-number-alist-list): Abolished
8318         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
8319         (elmo-multi-folder-diff): Moved to elmo-multi.el
8320         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
8321
8322         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
8323         `elmo-msgdb-expand-path'.
8324         (elmo-pop3-msgdb-create-as-numlist): Ditto.
8325         (elmo-pop3-read-msg): Ditto.
8326         (elmo-pop3-delete-msgs): Ditto.
8327         (elmo-pop3-folder-diff): New alias.
8328
8329         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
8330         `elmo-msgdb-expand-path'.
8331         (elmo-pipe-list-folder-unread): Changed arguments.
8332         (elmo-pipe-list-folder-important): Ditto.
8333         (elmo-pipe-folder-diff): New alias.
8334
8335         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8336         `elmo-msgdb-expand-path'.
8337         (elmo-nntp-max-of-folder): Ditto.
8338         (elmo-nntp-msgdb-create): Ditto.
8339         (elmo-nntp-delete-msgs): Ditto.
8340         (elmo-nntp-folder-diff): New alias.
8341
8342         * elmo-multi.el (elmo-multi-folder-diff): New function.
8343         (elmo-multi-split-mark-alist): Ditto.
8344         (elmo-multi-split-number-alist): Ditto.
8345         (elmo-multi-mark-alist-list): Abolished (Renamed to
8346         elmo-multi-split-mark-alist).
8347         (elmo-multi-list-folder-unread): Rewrite.
8348         (elmo-multi-list-folder-important): Ditto.
8349         (elmo-multi-list-folder): Set `spec' as 1st argument for
8350         `elmo-msgdb-expand-path'.
8351         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8352         instead of `elmo-multi-get-number-alist-list'.
8353
8354         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8355         If 1st argument is not string, treat as spec.
8356         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8357         `elmo-msgdb-expand-path'.
8358         (elmo-msgdb-flist-load): Ditto.
8359         (elmo-msgdb-flist-save): Ditto.
8360         (elmo-msgdb-delete-path): Ditto.
8361         (elmo-msgdb-rename-path): Ditto.
8362
8363         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8364         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8365         (elmo-maildir-delete-mark-msgs): Ditto.
8366         (elmo-maildir-msgdb-create): Ditto.
8367         (elmo-maildir-read-msg): Ditto.
8368         (elmo-maildir-delete-msgs): Ditto.
8369         (elmo-maildir-list-folder-subr): Ditto.
8370         (elmo-maildir-search): Ditto.
8371         (elmo-maildir-get-msg-filename): Ditto.
8372         (elmo-maildir-pack-number): Ditto.
8373         (elmo-maildir-folder-diff): New alias.
8374
8375         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8376
8377         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8378         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8379         (elmo-localdir-folder-diff): New alias.
8380
8381         * elmo-internal.el (elmo-internal-list-folder-subr):
8382         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8383         (elmo-internal-list-folder-by-location): Ditto.
8384         (elmo-internal-msgdb-create): Ditto.
8385         (elmo-internal-delete-msgs): Ditto.
8386         (elmo-internal-read-msg): Ditto.
8387         (elmo-internal-folder-diff): New alias.
8388
8389         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8390         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8391         `elmo-msgdb-expand-path'.
8392         (elmo-imap4-list-folder-unread): Changed arguments.
8393         (elmo-imap4-list-folder-important): Ditto.
8394
8395         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8396         (elmo-filter-list-folder-important): Ditto.
8397         (elmo-filter-folder-diff): New function.
8398
8399         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8400
8401         * elmo-cache.el (elmo-cache-list-folder):
8402         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8403         (elmo-cache-copy-msgs): Ditto.
8404         (elmo-cache-folder-diff): New alias.
8405
8406         * elmo-archive.el (elmo-archive-list-folder-subr):
8407         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8408         (elmo-archive-get-archive-name): Ditto.
8409         (elmo-archive-create-file): Ditto.
8410         (elmo-archive-append-msg): Ditto.
8411         (elmo-archive-copy-msgs): Ditto.
8412         (elmo-archive-copy-msgs-froms): Ditto.
8413         (elmo-archive-get-msg-filename): Ditto.
8414         (elmo-archive-folder-diff): New alias.
8415
8416 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8417
8418         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8419         (elmo-pop3-stream-type-alist): New variable.
8420         (elmo-nntp-stream-type-alist): New variable.
8421
8422         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8423         (elmo-kill-buffer): Ditto.
8424         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8425         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8426         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8427         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8428         (elmo-imap4-get-spec): Take into account
8429         `elmo-imap4-stream-type-alist'.
8430
8431 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8432
8433         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8434         (elmo-nntp-list-folders-get-cache): Ditto.
8435
8436 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8437
8438         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8439         character before 'uid'.
8440
8441 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8442
8443         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8444
8445         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8446
8447         * elmo-util.el (elmo-number-set-member): New function.
8448         (elmo-number-set-append-list): Ditto.
8449         (elmo-number-set-append): Ditto.
8450
8451         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8452         Use `elmo-number-set-member'.
8453         (elmo-living-messages): Ditto.
8454         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8455         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8456
8457         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8458         (elmo-imap4-add-to-cont-list): Abolished.
8459         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8460         instead of elmo-imap4-add-to-cont-list.
8461
8462         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8463         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8464
8465         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8466
8467 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8468
8469         * elmo-util.el (elmo-condition-parse-search-value):
8470         Fixed date parsing.
8471
8472 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8473
8474         * elmo-util.el (elmo-condition-find-key-internal): New function.
8475         (elmo-condition-find-key): Ditto.
8476
8477         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8478         (elmo-msgdb-search-internal): Ditto.
8479         (elmo-msgdb-search): Ditto.
8480
8481 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8482
8483         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8484         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8485
8486         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8487         (elmo-nntp-search-primitive): Fixed problem when condition is
8488         'unmatch'.
8489
8490         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8491
8492         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8493         (elmo-nntp-xhdr-p): New macro.
8494         (elmo-nntp-set-xhdr): Ditto.
8495         (elmo-nntp-parse-xhdr-response): New function.
8496         (elmo-nntp-retrieve-field): Ditto.
8497         (elmo-nntp-search-primitive): Ditto.
8498         (elmo-nntp-search): Implemented.
8499
8500         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8501
8502         * elmo-archive.el (elmo-archive-search): Set all number list to
8503         `elmo-archive-field-condition-match'
8504
8505         * elmo-localdir.el (elmo-localdir-search): Likewise.
8506
8507         * elmo-maildir.el (elmo-maildir-search): Likewise.
8508
8509 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8510
8511         * elmo-msgdb.el (elmo-living-messages): New function.
8512         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8513         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8514         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8515         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8516         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8517         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8518         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8519         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8520         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8521         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8522         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8523
8524 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8525
8526         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8527
8528         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8529
8530         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8531
8532         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8533         arguments for `SEARCH' command.
8534         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8535         All other related portions are changed.
8536
8537         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8538
8539         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8540         (elmo-list-folder-unread): Rewrite.
8541         (elmo-list-folder-important): Ditto.
8542
8543         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8544         (elmo-condition-parse-error): New inline function.
8545         (elmo-read-search-condition): New function.
8546         (elmo-read-search-condition-internal): Ditto.
8547         (elmo-parse-search-condition): Rewrite.
8548         (elmo-condition-parse): New function.
8549         (elmo-condition-parse-or-expr): Ditto.
8550         (elmo-condition-parse-and-expr): Ditto.
8551         (elmo-condition-parse-primitive): Ditto.
8552         (elmo-condition-parse-search-value): Ditto.
8553         (elmo-buffer-field-primitive-condition-match): Ditto.
8554         (elmo-buffer-field-condition-match): Rewrite.
8555         (elmo-file-field-condition-match): Ditto.
8556
8557         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8558         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8559
8560         * elmo-internal.el (elmo-internal-search): Set `number' and
8561         `number-list' argument of `elmo-file-field-condition-match'.
8562
8563         * elmo-maildir.el (elmo-maildir-search): Ditto.
8564
8565         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8566         `msgdb' as argument instead of `mark-alist'.
8567         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8568         `overview'.
8569
8570         * elmo-multi.el: Likewise.
8571
8572         * elmo-pipe.el: Likewise.
8573
8574         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8575         (elmo-imap4-search-internal): Rewrite.
8576         (elmo-imap4-search): Ditto.
8577
8578         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8579         (elmo-filter-list-folder-unread): Ditto.
8580         (elmo-filter-list-folder-important): Ditto.
8581         (elmo-filter-search): Rewrite.
8582
8583         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8584         `number-list' argument of `elmo-file-field-condition-match'.
8585         (elmo-cache-search): Ditto.
8586
8587         * elmo-localdir.el: Likewise.
8588
8589         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8590         number-list and pass it to `elmo-buffer-field-condition-match'.
8591         (elmo-archive-field-condition-match): Pass `number-list' to
8592         `elmo-archive-field-condition-match'
8593
8594 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8595
8596         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8597         `listgroup'.
8598
8599         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8600         (elmo-folder-diff-async-callback-data): Ditto.
8601         (elmo-folder-diff-async): New function.
8602
8603         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8604         (elmo-network-session-cache-key): Use it as a prefix of the session
8605         name.
8606         (elmo-network-open-session): Ditto.
8607
8608         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8609         (elmo-imap4-status-callback-data): Ditto.
8610         (elmo-imap4-server-diff-async-callback): New variable.
8611         (elmo-imap4-server-diff-async-callback-data): Ditto.
8612         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8613         `elmo-imap4-status-callback-data'.
8614         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8615         `elmo-imap4-status-callback-data' as nil.
8616         (elmo-imap4-server-diff): Ditto.
8617         (elmo-imap4-server-diff-async-callback-1): New function.
8618         (elmo-imap4-server-diff-async): Ditto.
8619         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8620
8621 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8622
8623         * elmo-util.el (elmo-list-delete): Doc fix.
8624         (elmo-delete-lists): Abolish.
8625         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8626         instead of `elmo-delete-lists'.
8627
8628 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8629
8630         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8631         before `sort'.
8632
8633 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8634
8635         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8636         `elmo-imap4-literal-subr'.
8637         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8638         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8639
8640 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8641
8642         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8643         (elmo-archive-list-folder): Fix.
8644         (elmo-archive-max-of-folder): Fix.
8645
8646 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8647
8648         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8649          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8650         (elmo-localdir-append-msg): Ditto.
8651         (elmo-localdir-list-folder): Fix for `nonsort'.
8652         (elmo-localdir-list-folder-subr): Fix for `killed'.
8653         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8654         (elmo-maildir-list-folder-subr): Ditto.
8655         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8656         (elmo-archive-list-folder-subr): Ditto.
8657         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8658         (elmo-internal-list-folder-subr): Ditto.
8659
8660 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8661
8662         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8663
8664 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8665
8666         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8667
8668 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8669
8670         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8671         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8672
8673         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8674         before greeting.
8675         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8676         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8677
8678 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8679
8680         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8681
8682         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8683         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8684         before STORE command.
8685
8686 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8687
8688         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8689
8690         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8691         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8692         of `response'.
8693         (elmo-imap4-list-folders): Removed unused local variable.
8694         (elmo-network-initialize-session): Ditto.
8695         (elmo-imap4-delete-msg-by-id): Ditto.
8696         (elmo-imap4-parse-fetch): Ditto.
8697         (elmo-imap4-copy-msgs): Ditto.
8698         Use `dst-spec' instead of `dst-folder'.
8699         (elmo-network-authenticate-session): Check authenticate type `plain'.
8700
8701 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8702
8703         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8704         garbage checking.
8705         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8706         `elmo-imap4-response-value'.
8707         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8708
8709 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8710
8711         * elmo-imap4.el (elmo-imap4-send-command):
8712         Cause elmo-imap4-bye-error when current response is BYE.
8713         (elmo-imap4-arrival-filter): Changed greeting response value.
8714
8715         * elmo2.el (elmo-imap4-bye-error): Define.
8716
8717         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8718         (elmo-imap4-server-diff): Ditto.
8719         (elmo-imap4-response-bye-p): New macro.
8720         (elmo-imap4-response-error-text): Get text from BYE response.
8721         (elmo-imap4-read-response): Return if BYE response.
8722         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8723         (elmo-imap4-folder-exists-p): Ditto.
8724         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8725         (elmo-imap4-parse-bye): New function.
8726         (elmo-imap4-parse-response): Remove needless let.
8727         Call `elmo-imap4-parse-bye'.
8728
8729 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8730
8731         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8732         the mailbox does not exist.
8733         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8734
8735 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8736
8737         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8738
8739 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8740
8741         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8742
8743         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8744         (elmo-network-initialize-session-buffer): Defined.
8745
8746         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8747         Abolished.
8748         (mmelmo-imap4-get-mime-entity): Rewrite.
8749
8750         * elmo2.el (elmo-error): Capitalize error message.
8751
8752         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8753         (elmo-network-session-buffer): New macro.
8754         (elmo-network-open-session): Use it.
8755
8756         * elmo-imap4.el: Rewrite.
8757
8758 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8759
8760         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8761
8762 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8763
8764         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8765         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8766         (elmo-imap4-create-msgdb-from-overview-string): Use
8767         `elmo-msgdb-create-overview-from-buffer'.
8768
8769 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8770
8771         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8772         (elmo-imap4-default-hierarchy-delimiter): New variable.
8773         (elmo-imap4-list-folders): Use it.
8774
8775 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8776
8777         * elmo-net.el (elmo-network-open-session): Add user and
8778         stream-type for process-buffer name.
8779
8780         * elmo-pop3.el (elmo-network-initialize-session): Call
8781         buffer-disable-undo.
8782
8783         * elmo-imap4.el (elmo-network-initialize-session):
8784         Set current-buffer as an argument for `buffer-disable-undo'.
8785
8786         * elmo-pop3.el (elmo-network-close-session): Don't use
8787         `process-live-p'.
8788
8789         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8790         Set default as 'user.
8791
8792         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8793
8794         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8795         and `elmo-imap4-flush-connection'.
8796
8797         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8798         (elmo-pop3-get-spec): Assume auth as symbol.
8799         (elmo-open-network-stream): Moved to `elmo-net'.
8800
8801         * elmo-pop3.el (toplevel): Require 'elmo-net.
8802         Define `sasl-cram-md5' to silence byte compilier.
8803         (elmo-pop3-connection-cache) Abolished.
8804         (elmo-pop3-authenticator-alist) New variable.
8805         (elmo-pop3-session): Define.
8806         (elmo-pop3-connection-get-process): Abolished.
8807         (elmo-pop3-connection-get-buffer): Ditto.
8808         (elmo-pop3-close-connection): Ditto.
8809         (elmo-pop3-flush-connection): Ditto.
8810         (elmo-pop3-get-connection): Ditto.
8811         (elmo-pop3-get-session): New function.
8812         (Replacement for `elmo-pop3-get-connection').
8813         All other related modules are changed.
8814         (elmo-network-close-session): Define.
8815         (elmo-pop3-send-command): Abolished argument `buffer'.
8816         All other related modules are changed.
8817         (elmo-pop3-read-response): Likewise.
8818         (elmo-pop3-open-connection): Abolished.
8819         (elmo-pop3-auth-user): New function.
8820         (elmo-pop3-auth-apop): Ditto.
8821         (elmo-pop3-auth-cram-md5): Ditto.
8822         (elmo-pop3-auth-scram-md5): Ditto.
8823         (elmo-pop3-auth-digest-md5): Ditto.
8824         (elmo-network-initialize-session): Define.
8825         (elmo-network-authenticate-session): Ditto.
8826         (elmo-network-setup-session): Ditto.
8827
8828         * elmo-imap4.el (toplevel): Require 'elmo-net.
8829         (elmo-imap4-session): Define.
8830         (elmo-imap4-connection-cache): Abolished.
8831         (elmo-imap4-password-key): Ditto.
8832         (elmo-imap4-flush-connection): Ditto.
8833         (elmo-imap4-get-connection): Ditto.
8834         All other related modules are changed.
8835         (elmo-imap4-get-session): New function
8836         (Replacement for `elmo-imap4-get-connection').
8837         (elmo-imap4-read-response): Abolished argument `buffer'.
8838         All other related modules are changed.
8839         (elmo-imap4-send-command): Likewise.
8840         (elmo-imap4-select-folder): Abolished.
8841         All other related modules are changed.
8842         (elmo-imap4-select-mailbox): New function.
8843         (Replacement for `elmo-imap4-select-folder').
8844         (elmo-imap4-auth-login): Simplify.
8845         (Assume current buffer as process buffer)
8846         (elmo-imap4-auth-cram-md5): Ditto.
8847         (elmo-imap4-auth-digest-md5): Ditto.
8848         (elmo-imap4-login): Ditto.
8849         (elmo-imap4-open-connection): Abolished.
8850         (elmo-imap4-open-connection-1): Abolished.
8851         (elmo-network-initialize-sessoin): Define.
8852         (elmo-network-authenticate-session): Ditto.
8853         (elmo-network-setup-session): Ditto.
8854
8855         * elmo-net.el: New module.
8856
8857 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8858
8859         * elmo-util.el (elmo-define-error): New function.
8860
8861         * elmo2.el (elmo-error): Define.
8862         (elmo-open-error): Define.
8863         (elmo-authenticate-error): Define.
8864
8865         * elmo-imap4.el (elmo-imap4-error): Abolish.
8866         (elmo-imap4-error-type): Abolish.
8867         (elmo-imap4-error-process): Abolish.
8868         (elmo-imap4-error-message): Abolish
8869         (elmo-imap4-list-folders): Don't quote lambda.
8870         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8871         (elmo-imap4-parse-namespace): Ditto.
8872         (elmo-imap4-open-connection): Rewrite.
8873         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8874         (elmo-imap4-get-connection): Abolish local variable `result'.
8875
8876 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8877
8878         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8879         wrong-type-argument error when auth is nil.
8880
8881 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8882
8883         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8884         (elmo-default-nntp-stream-type): Ditto.
8885         (elmo-default-pop3-stream-type): Ditto.
8886         (elmo-network-stream-type-alist): Ditto.
8887         (elmo-default-imap4-ssl): Abolished.
8888         (elmo-default-nntp-ssl): Ditto.
8889         (elmo-default-pop3-ssl): Ditto.
8890
8891         * elmo-util.el: (toplevel): Removed needless requires.
8892         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8893         (elmo-open-network-stream): Open network stream according to
8894         the value of `elmo-network-stream-type-alist'.
8895         (elmo-get-network-stream-type): New function.
8896         (elmo-network-stream-type-spec-string): New macro.
8897         (elmo-network-stream-type-symbol): Ditto.
8898         (elmo-network-stream-type-function): Ditto.
8899
8900         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8901         network-stream-type. All other related portions are changed.
8902         (elmo-pop3-open-connection): Ditto.
8903
8904         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8905         network-stream-type. All other related portions are changed.
8906
8907         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8908         network-stream-type.All other related portions are changed.
8909         (elmo-imap4-error): New macro.
8910         (elmo-imap4-error-type): Ditto.
8911         (elmo-imap4-error-process): Ditto.
8912         (elmo-imap4-error-message): Ditto.
8913         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8914         (elmo-imap4-auth-cram-md5): Ditto.
8915         (elmo-imap4-auth-digest-md5): Ditto.
8916         (elmo-imap4-login): Ditto.
8917         (elmo-imap4-open-connection): Remove password entry if authentication
8918         was in vain.
8919         (elmo-imap4-user-at-host): Abolished.
8920         (elmo-imap4-password-key): New buffer local variable.
8921         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8922         using protocol, port, auth and stream-type.
8923
8924         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8925
8926 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8927
8928         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8929
8930         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8931
8932         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8933         (elmo-imap4-authenticator-alist): New variable.
8934         (elmo-imap4-open-connection-1): Rename from
8935         elmo-imap4-open-connection.
8936         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8937         only wraps elmo-imap4-open-connection-1.
8938         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8939         user-at-host.
8940         (elmo-imap4-auth-login): New function.
8941         (elmo-imap4-auth-cram-md5): New function.
8942         (elmo-imap4-auth-digest-md5): New function.
8943         (elmo-imap4-login): New function.
8944
8945 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8946
8947         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8948         function `error'.
8949
8950 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8951
8952         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8953
8954 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8955
8956         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8957
8958 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8959
8960         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8961         for server responses, quote `*' regardless of where it appears.
8962
8963 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8964
8965         * elmo-maildir.el (elmo-maildir-commit): New alias.
8966
8967 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8968
8969         * elmo-util.el (elmo-display-progress):
8970                 Use `progress-feedback-with-label'.
8971
8972 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8973
8974         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8975         (elmo-imap4-non-atom-char-regex): Ditto.
8976         (elmo-imap4-non-text-char-regex): Ditto.
8977         (elmo-imap4-literal-threshold): Ditto.
8978         (elmo-imap4-atom-p): New function.
8979         (elmo-imap4-quotable-p): Ditto.
8980         (elmo-imap4-nil): Ditto.
8981         (elmo-imap4-atom): Ditto.
8982         (elmo-imap4-quoted): Ditto.
8983         (elmo-imap4-literal-subr): Ditto.
8984         (elmo-imap4-literal): Ditto.
8985         (elmo-imap4-buffer-literal): Ditto.
8986         (elmo-imap4-string-subr): Ditto.
8987         (elmo-imap4-string): Ditto.
8988         (elmo-imap4-buffer-string): Ditto.
8989         (elmo-imap4-astring-subr): Ditto.
8990         (elmo-imap4-astring): Ditto.
8991         (elmo-imap4-buffer-astring): Ditto.
8992         (elmo-imap4-nstring): Ditto.
8993         (elmo-imap4-buffer-nstring): Ditto.
8994         (elmo-imap4-mailbox): New alias.
8995         (elmo-imap4-field-body): Ditto.
8996         (elmo-imap4-userid): Ditto.
8997         (elmo-imap4-password): Ditto.
8998         (elmo-imap4-format-quoted): New function.
8999         (elmo-imap4-send-command): Rewritten.  Accept a list of command
9000         arguments and handle "atom", "quoted" and "literal" string here.
9001         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
9002         `elmo-imap4-send-command'.
9003         (elmo-imap4-folder-exists-p): Likewise.
9004         (elmo-imap4-create-folder): Likewise.
9005         (elmo-imap4-delete-folder): Likewise.
9006         (elmo-imap4-rename-folder): Likewise.
9007         (elmo-imap4-max-of-folder): Likewise.
9008         (elmo-imap4-check-validity): Likewise.
9009         (elmo-imap4-sync-validity): Likewise.
9010         (elmo-imap4-server-diff): Likewise.
9011         (elmo-imap4-select-folder): Likewise.
9012         (elmo-imap4-copy-msgs): Likewise.
9013         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
9014         (elmo-imap4-mark-set-on-msgs): Likewise.
9015         (elmo-imap4-read-part): Likewise.
9016         (elmo-imap4-read-msg): Likewise.
9017         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
9018         `elmo-imap4-password' for `elmo-imap4-send-command'.
9019         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
9020         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
9021         `elmo-imap4-buffer-literal'.
9022         (elmo-imap4-append-msg): Likewise.
9023
9024         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
9025         `delete' for removing dead connection from the connection cache.
9026         Move deletion of the process buffer after that.
9027         (elmo-imap4-list): Change `defsubst' to `defun'.
9028         (elmo-imap4-commit): Make error message verbose.
9029         (elmo-imap4-search): Ditto.
9030         (elmo-imap4-list): Ditto.
9031         (elmo-imap4-select-folder): Ditto.
9032         (elmo-imap4-copy-msgs): Ditto.
9033         (elmo-imap4-delete-msg-by-id): Ditto.
9034         (elmo-imap4-append-msg-by-id): Ditto.
9035         (elmo-imap4-append-msg): Ditto.
9036
9037 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
9038
9039         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
9040         when dired is used on XEmacs.
9041
9042 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
9043
9044         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
9045         instead of `append'.
9046         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
9047         `elmo-plugged-p' directly.
9048         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
9049         of `elmo-plugged-p' directly.
9050
9051         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
9052         Eliminate unused variable.  Use `memq' for checking a process status.
9053         Use `cons' instead of `append' for updating the connection cache.
9054         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
9055         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
9056
9057 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
9058
9059         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
9060         `elmo-imap4-read-point' exactly.
9061
9062         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
9063         the local variable `folder' to `mailbox'.
9064         Rename the argument `fld' to `folder'.
9065
9066 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
9067
9068         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
9069         * elmo-imap4.el (elmo-imap4-commit): Ditto.
9070
9071 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
9072
9073         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
9074         (elmo-pop3-number-uidl-hash): New buffer-local variable.
9075         (elmo-pop3-uidl-number-hash): Ditto.
9076         (elmo-pop3-size-hash): Ditto.
9077         (elmo-pop3-uidl-done): Ditto.
9078         (elmo-pop3-list-done): Ditto.
9079         (elmo-pop3-connection-get-process): New defmacro.
9080         (elmo-pop3-connection-get-buffer): Ditto.
9081         (elmo-pop3-close-connection): Delete buffer and process.
9082         (elmo-pop3-flush-connection): Don't delete buffer and process.
9083         (elmo-pop3-get-connection): Added optional argument `if-exists'.
9084         Setup UIDL and size hash.
9085         (elmo-pop3-send-command-no-erase): Deleted
9086         (elmo-pop3-send-command): Added optional argument `no-erase'.
9087         (elmo-pop3-parse-uidl-response): New function.
9088         (elmo-pop3-parse-list-response): Set size hash.
9089         (elmo-pop3-list-location): New function.
9090         (elmo-pop3-list-by-uidl-subr): Ditto.
9091         (elmo-pop3-list-by-list): Ditto.
9092         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
9093         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
9094         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
9095         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
9096         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
9097         Use uidl.
9098         (elmo-pop3-uidl-to-number): New function.
9099         (elmo-pop3-number-to-uidl): Ditto.
9100         (elmo-pop3-number-to-size): Ditto.
9101         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
9102         Set number by use of uidl.
9103         (elmo-pop3-msgdb-create-message): Likewise.
9104         Set size, loc-alist in msgdb.
9105         (elmo-pop3-read-msg): Set number by use of uidl.
9106         Added optional argument `msgdb'.
9107         (elmo-pop3-delete-msg): Ditto.
9108         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
9109         (elmo-pop3-commit): Close connection.
9110
9111         * elmo-pipe.el (elmo-pipe-max-of-folder):
9112         Bind `elmo-pop3-use-uidl' as nil.
9113         (elmo-pipe-drain): Ditto.
9114         Call `elmo-commit'.
9115
9116         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
9117         (elmo-msgdb-overview-entity-set-size): New defsubst.
9118
9119 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
9120
9121         * elmo-vars.el (elmo-use-killed-list): New variable
9122         (Renamed from `elmo-nntp-use-killed-list').
9123         (elmo-nntp-use-killed-list): Eliminated.
9124
9125         * elmo-msgdb.el (elmo-msgdb-expand-path):
9126         Changed expanding msgdb path for elmo-multi.
9127
9128         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
9129         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
9130         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
9131         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
9132         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
9133         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
9134         (toplevel): Deleted time-stamp line.
9135
9136         * elmo2.el (elmo-clear-killed ): Defined as function
9137         (Abolished defining as a backend function).
9138         All other related modules are changed.
9139
9140 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
9141
9142         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
9143
9144 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
9145
9146         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
9147
9148 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
9149
9150         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
9151
9152 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
9153
9154         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
9155         asynchronous folder check.
9156
9157         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
9158
9159         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
9160         `elmo-nntp-use-killed-list'.
9161         (elmo-nntp-list-folder): Use killed list.
9162         (elmo-nntp-max-of-folder): Ditto.
9163         (elmo-nntp-msgdb-create): Set killed list.
9164
9165         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
9166
9167         * elmo2.el (elmo-clear-killed): New backend function.
9168         All other related modules are changed.
9169
9170 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
9171
9172         * elmo-util.el (elmo-imap4-spec-folder): Use
9173         `elmo-imap4-spec-mailbox'; Mark as obsolete.
9174         All callers changed.
9175
9176 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
9177
9178         * mmelmo-2.el (initialize-instance):
9179         Use `mime-buffer-entity-buffer-internal' instead of
9180         `mime-entity-buffer'.
9181
9182         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
9183         (mime-entity-body): Implemented.
9184         (mime-goto-header-start-point): Deleted.
9185         (mime-goto-body-end-point): Ditto.
9186         (mime-entity-point-min): Ditto.
9187         (mime-entity-point-max): Ditto.
9188         (mime-entity-children): Ditto.
9189         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
9190         instead of `mime-entity-buffer'.
9191         (mime-entity-header-buffer): Ditto.
9192         (mime-entity-body-buffer): Ditto.
9193         (mime-write-entity-content): Ditto.
9194
9195         * pldap.el (ldap-static-if): New macro.
9196         (toplevel): Use it instead of `static-if'.
9197
9198 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
9199
9200         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
9201         included in `attrs' argument.
9202
9203 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
9204
9205         * elmo-util.el (elmo-get-passwd): Use old backquote style.
9206
9207         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
9208         (ldap-ldif-safe-init-char-regexp): Ditto.
9209         (ldap-ldif-safe-string-regexp): Ditto.
9210         (ldap/ldif-safe-string-p): New macro.
9211         (ldap/ldif-insert-field): Ditto.
9212         (ldap-modify): Use it.
9213         (ldap-add): Ditto.
9214         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
9215         (ldap-decode-attribute): Decode only when `attr' is consp.
9216         (ldap-delete): Bind `ret'.
9217         (toplevel): Require 'cl at compile time.
9218         Removed (require 'poe) and (require 'std11).
9219         (pldap-version): Eliminated.
9220         (ldap-search-basic): Removed auth and dn binding.
9221         (ldap-ldif-field-name-regexp): New constant.
9222         (ldap-ldif-field-head-regexp): Ditto.
9223         (ldap-ldif-next-field-head-regexp): Ditto.
9224         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
9225         (ldap/field-end): New function.
9226         (ldap/field-body): Use it.
9227         (ldap/collect-field): Ditto.
9228         (ldap-search-basic): Use `ldap/field-body'.
9229
9230 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
9231
9232         * pldap.el (ldap-default-attribute-encoder): New user option.
9233         (ldap/field-body): Decode base64 string.
9234         (ldap/collect-field): Ditto.
9235         (ldap-encode-attribute): New function.
9236         (ldap-add-entries): Use it.
9237         (ldap-modify-entries): Ditto.
9238         (ldap-search-entries): Enclosed decoding function with
9239         `with-temp-buffer' and set as unibyte.
9240         (ldap-search-basic): Set process buffer as unibyte.
9241
9242         * elmo-util.el (elmo-folder-identical-system-p):
9243         Eliminated name space checking.
9244
9245         * pldap.el: New module.
9246         toplevel: Changed condition to detect built-in ldap feature.
9247         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
9248         (ldap-add): Added error handling.
9249         (ldap-modify): Ditto.
9250         (ldap-delete): Ditto.
9251
9252 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
9253
9254         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
9255         Initialize local variables with `let'.  Inline a temporary
9256         variable for the progress percentage.  Sort `setq' to reduce
9257         function call in the while-loop.
9258
9259         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
9260         into the conditional branch.
9261
9262 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
9263
9264         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
9265         Move a conditional out of the while-loop.
9266
9267 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9268
9269         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
9270         elmo-msgdb-overview-get-entity-by-number.
9271         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
9272         throw.
9273
9274 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
9275
9276         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
9277         the local variable for a packed number self descriptively.
9278
9279 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9280
9281         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
9282         * elmo-localdir.el (elmo-localdir-pack-number): Use
9283         `elmo-msgdb-overview-get-entity' instead of
9284         `elmo-msgdb-overview-get-entity-by-number'.
9285         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
9286         (elmo-msgdb-search-overview-entity): Removed.
9287         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
9288         by message-id or number.
9289         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
9290         instead of `elmo-msgdb-overview-get-entity-by-number'.
9291
9292 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9293
9294         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
9295         non-nil, use hash table for overview.
9296         (elmo-hash-maximum-size): New variable.
9297         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
9298         (elmo-msgdb-make-overview-hashtb): New function.
9299         (elmo-msgdb-clear-overview-hashtb): New function.
9300         (elmo-clear-hash-val): New macro.
9301         All other related modules are changed.
9302
9303 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
9304
9305         * elmo2.el (elmo-move-msgs): If there's other message with
9306         same message-id, don't use cache.
9307
9308 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
9309
9310         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
9311         number is already packed.
9312
9313 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
9314
9315         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
9316
9317 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9318
9319         * elmo-vars.el (elmo-display-progress-threshold): New variable.
9320         All other related modules are changed.
9321
9322 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
9323
9324         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
9325         of refiling failure on Maildir.
9326
9327 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9328
9329         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
9330         decoded mime-charset with cache.
9331         (elmo-msgdb-overview-entity-get-from): Ditto.
9332         (elmo-msgdb-overview-entity-get-subject): Ditto.
9333         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9334
9335 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9336
9337         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9338         (elmo-remove-passwd): Fill password with 0 before erase.
9339         * elmo-vars.el (elmo-passwd-life-time): New variable.
9340
9341 \f
9342 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9343
9344         * elmo-cache.el (elmo-buffer-cache-add):
9345         Set message cache buffer as unibyte.
9346
9347 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9348
9349         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9350         become nil.
9351
9352 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9353
9354         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9355         when display is finished.
9356         (elmo-nntp-msgdb-create): Ditto.
9357         (elmo-nntp-groups-read-response): Ditto.
9358         (elmo-nntp-retrieve-headers): Ditto.
9359         (elmo-nntp-msgdb-create-message): Ditto.
9360         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9361         (elmo-pop3-msgdb-create-message): Ditto.
9362
9363 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9364
9365         * elmo-maildir.el (elmo-maildir-msgdb-create):
9366         Use `elmo-msgdb-sort-by-date'.
9367
9368 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9369
9370         * elmo2.el (elmo-read-msg-no-cache):
9371         Eliminated arguments after `outbuf'.
9372         Don't use cache even if it exists.
9373         (elmo-read-msg): Don't pass arguments after `outbuf' to
9374         `elmo-read-msg-no-cache'.
9375
9376 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9377
9378         * elmo-archive.el (elmo-archive-list-folders):
9379         Use `file-name-directory' if base folder does not exist.
9380
9381 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9382
9383         * elmo-archive.el (elmo-archive-list-folders): Don't use
9384         `file-name-directory'.
9385
9386 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9387
9388         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9389         If `force' is non-nil, try flushing all operation queues.
9390
9391 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9392
9393         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9394         as-binary-process.
9395
9396 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9397
9398         * elmo-util.el (elmo-display-progress): Fixed.
9399
9400 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9401
9402         * elmo-util.el (elmo-display-progress): New function.
9403         All other related modules are changed.