* elmo-vars.el (dynamic-link, dynamic-call): Use `defalias-maybe' instead of `defun...
[elisp/wanderlust.git] / elmo / ChangeLog
1 2008-02-20  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2
3         * elmo-vars.el (dynamic-link, dynamic-call): Use `defalias-maybe'
4         instead of `defun-maybe'
5
6         * elmo-util.el: Add (eval-when-compile (require 'static)).
7
8 2008-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
9
10         * mmimap.el: Remove (require 'static).
11         * acap.el: Ditto.
12
13         * elmo-flag.el: Move ';;; Code:' comment.
14         * elmo-imap4.el: Ditto.
15         * elmo-net.el: Ditto.
16
17         * elmo-version.el (product-provide): Fix comment.
18
19 2008-02-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
20
21         * slp.el: Add (eval-when-compile (require 'cl)).
22         * elmo-date.el: Ditto.
23         * elmo-pop3.el: Ditto.
24         * elmo-mime.el: Add (eval-when-compile (require 'elmo)).
25
26 2008-02-17  TAKAHASHI Kaoru  <kaoru@kaisei.org>
27
28         * modb.el (elmo-msgdb-match-condition-primitive): Use
29         `string-to-number' instead of `string-to-int'.
30
31         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer)
32         (elmo-msgdb-message-match-condition)
33         (elmo-msgdb-create-message-entity-from-buffer): Use
34         `string-to-number' instead of `string-to-int'.
35
36         * elmo.el (elmo-folder-confirm-appends): Use `string-to-number'
37         instead of `string-to-int'.
38
39         * elmo-util.el (elmo-cache-expire-by-age): Use `string-to-number'
40         instead of `string-to-int'.
41
42         * elmo-pop3.el (elmo-pop3-list-by-list, elmo-folder-status): Use
43         `string-to-number' instead of `string-to-int'.
44
45         * elmo-nntp.el (elmo-nntp-make-msglist)
46         (elmo-folder-list-messages-plugged, elmo-nntp-folder-status)
47         (elmo-nntp-create-msgdb-from-overview-string)
48         (elmo-nntp-parse-xhdr-response, elmo-nntp-msgdb-create-message)
49         (elmo-nntp-search-primitive): Use `string-to-number' instead of
50         `string-to-int'.
51
52         * elmo-net.el (elmo-net-folder-set-parameters): Use
53         `string-to-number' instead of `string-to-int'.
54
55         * elmo-localdir.el (elmo-localdir-list-subr): Use
56         `string-to-number' instead of `string-to-int'.
57
58         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Use
59         `string-to-number' instead of `string-to-int'.
60
61         * elmo-date.el (elmo-date-get-datevec): Use `string-to-number'
62         instead of `string-to-int'.
63
64         * elmo-archive.el (elmo-archive-list-folder-subr): Use
65         `string-to-number' instead of `string-to-int'.
66
67 2008-02-16  TAKAHASHI Kaoru  <kaoru@kaisei.org>
68
69         * elmo-util.el (elmo-get-passwd): Fix typo.
70
71         * elmo-nntp.el (elmo-nntp-get-server-command)
72         (elmo-nntp-set-server-command, elmo-nntp-xover-p)
73         (elmo-nntp-listgroup-p, elmo-nntp-set-listgroup)
74         (elmo-nntp-list-active-p, elmo-nntp-set-list-active)
75         (elmo-nntp-xhdr-p, elmo-nntp-set-xhdr): New backquote style.
76
77         * elmo-imap4.el (elmo-imap4-debug)
78         (elmo-imap4-response-continue-req-p, elmo-imap4-response-ok-p)
79         (elmo-imap4-response-bye-p, elmo-imap4-response-garbage-p)
80         (elmo-imap4-response-value, elmo-imap4-response-error-text)
81         (elmo-imap4-response-bodydetail-text, elmo-imap4-value)
82         (elmo-imap4-nth, elmo-imap4-detect-search-charset)
83         (elmo-imap4-identical-system-p): New backquote style.
84
85 2008-02-15  TAKAHASHI Kaoru  <kaoru@kaisei.org>
86
87         * elmo-dop.el (elmo-make-dop-queue): New backquote style.
88         (elmo-dop-queue-fname, elmo-dop-queue-method): Ditto.
89         (elmo-dop-queue-arguments): Ditto.
90
91         * elmo-date.el (elmo-match-substring): New backquote style.
92         (elmo-match-string, elmo-match-buffer): Ditto.
93         (elmo-date-make-sortable-string): Ditto.
94
95         * elmo-archive.el (elmo-archive-get-method):New backquote style.
96         (elmo-archive-get-suffix, elmo-archive-get-regexp): Ditto.
97
98         * elmo-multi.el (elmo-multi-real-folder-number): New backquote
99         style.
100
101         * elmo-net.el (elmo-network-stream-type-spec-string): New
102         backquote style.
103         (elmo-network-stream-type-symbol): Ditto.
104         (elmo-network-stream-type-feature): Ditto.
105         (elmo-network-stream-type-function): Ditto.
106         (elmo-network-session-buffer): Ditto.
107
108         * elmo-util.el (elmo-file-cache-expand-path): New backquote style.
109         (elmo-file-cache-status, elmo-file-cache-path): Ditto.
110         (elmo-make-file-cache, elmo-string, elmo-get-passwd): Ditto.
111         (elmo-bind-directory, elmo-set-work-buf): Ditto.
112
113         * elmo.el (elmo-folder-send): New backquote style.
114
115 2008-02-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
116
117         * pldap.el (ldap-static-if): New backquote style.
118         (ldap/ldif-safe-string-p): Ditto.
119         (ldap/ldif-insert-field): Ditto.
120
121         * elmo-version.el (elmo-version): Up to 2.15.6.
122
123 2008-01-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
124
125         * elmo-imap4.el (elmo-folder-list-messages-plugged): Don't include
126         messages with \Deleted flag.
127         (elmo-folder-delete-messages-plugged): Ask before sending expunge
128         command if there are messages with \Deleted flag.
129
130 2007-04-24  Yoichi NAKAYAMA  <yoichi@geiin.org>
131
132         * elmo-pop3.el (elmo-pop3-auth-apop): Use more strict regexp.
133         http://seclists.org/bugtraq/2007/Apr/0018.html
134         (Suggested by Tatsuya Kinoshita)
135
136 2007-04-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
137
138         * elmo-imap4.el (elmo-folder-delete): Don't call close for mailbox
139         with \Noselect attribute.
140
141 2007-04-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
142
143         * elmo-imap4.el (elmo-folder-list-subfolders): Fix handling of
144         hierarchical folder structure with UW-imapd.
145
146 2007-02-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
147
148         * elmo-imap4.el (elmo-imap4-clear-login): Don't send LOGIN command
149         when the LOGINDISABLED capability is advertised.
150
151 2007-01-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
152
153         * elmo-msgdb.el (elmo-msgdb-extra-fields): Make it non-destructive.
154
155 2007-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
156
157         * elmo-shimbun.el (elmo-shimbun-update-overview): Add argnument
158         `entity'.
159         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview' only
160         if the message entity is exists.
161
162 2007-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
163
164         * elmo-util.el (elmo-msgdb-insert-file-header): Call
165         `elmo-delete-cr-buffer'.
166
167         * elmo-localdir.el (elmo-message-fetch-internal): Use
168         `insert-file-contents-as-raw-text' instead of
169         `insert-file-contents-as-binary'.
170
171         * elmo-maildir.el (elmo-map-message-fetch): Ditto.
172
173 2006-12-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
174
175         * elmo-imap4.el (elmo-network-initialize-session): Check to
176         retrieve a whole greeting message.
177
178 2006-11-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
179
180         * elmo-flag.el (elmo-folder-commit): Encode `.minfo' at save.
181
182 2006-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
183
184         * elmo-util.el (elmo-safe-plist-get): New alias or macro.
185         (elmo-progress-notify): Use it instead of `plist-get'.
186
187 2006-11-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
188
189         * elmo.el (elmo-generic-folder-append-messages): Remove unused
190         variable `table'.
191
192 2006-11-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
193
194         * elmo-pipe.el (elmo-folder-set-plugged): Define.
195
196 2006-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
197
198         * elsp-bsfilter.el (elmo-spam-bsfilter-use-remote): New user option.
199         (elmo-spam-list-spam-messages): Check it option.
200
201 2006-11-08  Tetsurou Okazaki  <okazaki@be.to>
202
203         * elmo-util.el (elmo-with-progress-display): Return the value
204         of the last form in `body'.
205
206 2006-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
207
208         * elmo-util.el (elmo-progress-start): Accept nil for `total'.  Set
209         `elmo-progress-counter' as t when a query callback returns nil.
210         (elmo-progress-clear): New function.
211         (elmo-progress-done): Split into `elmo-progress-clear'.
212         (elmo-progress-notify): Update a total slot when it is nil.
213         (elmo-with-progress-display): Call `elmo-progress-clear' in
214         unwind-protect and move calling `elmo-progress-done' to outside.
215
216         * elmo-imap4.el (elmo-imap4-find-next-line): Call
217         `elmo-progress-notify' with :total parameter instead of
218         `elmo-progress-counter-set-total'.
219
220 2006-11-07  Tetsurou Okazaki  <okazaki@be.to>
221
222         * elmo-util.el (elmo-cache-expire-by-age): Add docstring.
223         Make it interactive.
224         (elmo-progress-start): Avoid updating `elmo-progress-counter'
225         when a query callback returns nil.  Return a progress counter
226         instead of t whenever a start callback was called.
227
228 2006-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
229
230         * elmo-imap4.el (elmo-imap4-session-capable-p): New macro.
231         (elmo-imap4-send-command): Use it.
232         (elmo-network-initialize-session): Ditto.
233         (elmo-network-setup-session): Ditto.
234         (elmo-folder-msgdb-create-plugged): Ditto.
235
236 2006-11-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
237
238         * elmo-util.el (elmo-progress-done): Fix a miss refer to
239         `elmo-progress-counter'.
240
241 2006-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
242
243         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Abolish.
244         (elsp-bsfilter-list-spam-filter): New function.
245         (elsp-bsfilter-start-list-spam): Ditto.
246         (elsp-bsfilter-read-list-spam): Ditto.
247         (elmo-spam-list-spam-messages): Use async process to display
248         progress message by each message.
249
250 2006-11-03  Yoichi NAKAYAMA  <yoichi@geiin.org>
251
252         * elmo-spam.el (elmo-spam-process-messages-as-mbox): Fix problem
253         of flushing previously inserted message contents.
254
255         * elmo-imap4.el (elmo-folder-search): Fix return value.
256
257 2006-11-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
258
259         * elmo-imap4.el (elmo-imap4-find-next-line): Check whether a label
260         of reporter is enable or not.
261
262 2006-10-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
263
264         * elmo-util.el (elmo-list-bigger-diff): Abolish.
265         (elmo-display-progress): Ditto.
266         (elmo-progress-counter-alist): Ditto.
267         (elmo-progress-set): Ditto.
268         (elmo-progress-clear): Ditto.
269         (elmo-progress-counter-all-value): Rename to
270         `elmo-progress-counter-total'.
271         (elmo-progress-counter-format): Rename to
272         `elmo-progress-counter-action'.
273         (elmo-progress-counter): New internal variable.
274         (elmo-progress-callback-function): Ditto.
275         (elmo-progress-counter-label): New function.
276         (elmo-progress-counter-set-total): Ditto.
277         (elmo-progress-counter-set-action): Ditto.
278         (elmo-progress-call-callback): Ditto.
279         (elmo-progress-start): Ditto.
280         (elmo-progress-done): Ditto.
281         (elmo-progress-notify): Rewrite.
282         (elmo-with-progress-display): Remove first argument
283         `condition'. Add optional argument `var' in `spec'.
284
285         * elmo-vars.el (elmo-display-progress-threshold): Abolish.
286         (elmo-display-retrieval-progress-threshold): Ditto.
287         (elmo-inhibit-display-retrieval-progress): Ditto.
288
289         * Replace all pair of `elmo-progress-set' and
290         `elmo-progress-clear' into `elmo-with-progress-display'.
291
292         * Replace to call `elmo-display-progress' into pair of
293         `elmo-progress-notify' and `elmo-with-progress-display'.
294
295         * elmo-version.el (elmo-version): Up to 2.15.5.
296
297 2006-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
298
299         * elmo-imap4.el (elmo-imap4-arrival-filter): Use `case' instead of
300         `cond'.
301
302 2006-10-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
303
304         * elmo-imap4.el (elmo-imap4-arrival-filter): Call delete-region in
305         cleanup-forms [wl:14027].
306
307 2006-10-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
308
309         * elmo-flag.el (elmo-global-flag-set-internal): Use
310         `elmo-copy-file' by priority when the message is a file.
311
312 2006-10-01  Yoichi NAKAYAMA  <yoichi@geiin.org>
313
314         * elmo.el: Fix typo: disptch -> dispatch.
315
316 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
317
318         * elmo.el (elmo-file-tag): New class.
319         (elmo-append-messages-disptch-table): New constant.
320         (elmo-folder-type-p): New function.
321         (elmo-folder-append-messages): Redefine as function.
322
323         * elmo-null.el (elmo-folder-append-messages): Renamed from
324         `elmo-folder-append-messages'.
325
326         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
327         (elmo-folder-append-messages-*-maildir): Renamed from
328         `elmo-folder-append-messages'.
329
330         * elmo-localdir.el (elmo-localdir-folder): Inherit
331         `elmo-file-tag'.
332         (elmo-folder-append-messages-*-localdir): Renamed from
333         `elmo-folder-append-messages'.
334
335         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
336         from `elmo-folder-append-messages'.
337
338         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
339         `elmo-folder-append-messages'.
340
341         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
342         function.
343         (elmo-folder-append-messages-*-filter): Ditto.
344
345         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
346
347         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
348         (elmo-folder-append-messages-*-pipe): Renamed from
349         `elmo-folder-append-messages'.
350
351         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
352
353         * elmo-file.el (elmo-file-folder): Ditto.
354
355         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
356
357         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
358         from `elmo-folder-append-messages'
359
360 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
361
362         * elmo-map.el (elmo-location-map-setup): Change an argument
363         `locations' to optional.
364         (elmo-location-map-clear): Abolish.
365         (elmo-folder-clear): Follow the API change.
366
367         * elmo-pop3.el (elmo-folder-clear): Ditto.
368
369         * elmo-pop3.el (toplevel): Require elmo-map.
370         (elmo-pop3-folder): Inherit elmo-location-map and abolish
371         location-alist slot (All other related portions are changed).
372         (elmo-pop3-folder-use-uidl): New function.
373         (elmo-folder-msgdb-create): Don't sort message entities.
374         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
375         (elmo-pop3-number-to-size): Convert return value to number.
376         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
377         working buffer.
378
379         * elmo-map.el: Use `location-map' as a variable name for instance
380         instead of `mapper'.
381         (elmo-location-map-setup): Return location alist.
382         (elmo-location-map-update): Ditto.
383
384 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
385
386         * elmo-map.el (elmo-location-map): New class; split location and
387         number mapping from elmo-map-folder (All other related portions
388         are changed).
389
390         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
391         change.
392
393         * elmo-version.el (elmo-version): Up to 2.15.4.
394
395 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
396
397         * elmo-vars.el (elmo-use-hardlink): New user option.
398
399         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
400         `elmo-use-hardlink'.
401
402         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
403         killed-list.
404         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
405         instead of `*-internal'. Use `elmo-with-progress-display'.
406
407 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
408
409         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
410         `elmo-spam-process-messages-as-mbox'.
411
412         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
413
414 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
415
416         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
417         argument BUFFER of `call-process'.
418
419 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
420
421         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
422         args.
423         (elsp-bsfilter-list-spam-files): Ditto.
424
425 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
426
427         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
428         (elmo-spam-bsfilter-max-messages-per-process): New use option.
429         (elmo-spam-bsfilter-debug): Fix a group.
430         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
431         `--homedir'.
432         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
433         (elsp-bsfilter-list-spam-files): New function.
434         (elmo-spam-list-spam-messages): Define.
435         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
436         (elmo-spam-bsfilter-register-messages): New function.
437         (elmo-spam-register-spam-messages): Define.
438         (elmo-spam-register-good-messages): Ditto.
439
440         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
441
442         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
443         `nconc' and `consp'.
444
445 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
446
447         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
448         hash table to test whether a location is exists.
449
450 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
451
452         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
453         even if some error occurred.
454
455         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
456         meaningless unwind-protect.
457
458         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
459         start-number correctly.
460         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
461         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
462
463 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
464
465         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
466         (elmo-folder-initialize): Use it.
467         (elmo-global-flag-replace-referrer): New function.
468
469         * elmo.el (toplevel): Added autoload setting for
470         `elmo-global-flag-replace-referrer'.
471         (elmo-folder-rename): Rewrite the last change use
472         `elmo-global-flag-replace-referrer'.
473
474         * elmo-pipe.el (elmo-folder-rename): Call
475         `elmo-global-flag-replace-referrer'.
476
477 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
478
479         * elmo.el (elmo-folder-rename): Set meta data for global flags
480         follow the rename.
481
482 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
483
484         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
485         as 'not-loaded.
486         (elmo-folder-close): Ditto.
487         (elmo-filter-folder-number-list-loaded-p): New function.
488         (elmo-filter-folder-number-list): Check whether loaded or not.
489         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
490         of `elmo-filter-folder-number-list-internal'.
491         (elmo-folder-delete-messages): Ditto.
492         (elmo-folder-length): Check whether number-list is loaded or not.
493
494 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
495
496         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
497         field `real field' into each element of list.
498         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
499         (elmo-msgdb-message-entity-field): Ditto.
500         (modb-entity-ml-info-real-fields): New function.
501
502         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
503
504         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
505         `elmo-msgdb-extra-fields'.
506
507 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
508
509         * elmo-util.el (elmo-passwd-alist-load): Move point to min
510         position before read.
511
512 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
513
514         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
515         (elmo-global-flags-initialize): Ditto.
516
517 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
518
519         * elmo-archive.el (toplevel): Don't require emu, std11
520         and elmo-localdir.
521
522         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
523         definition.
524
525 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
526
527         * elmo.el (elmo-folder-confirm-appends): Display folder name.
528
529 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
530
531         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
532         literals.
533
534 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
535
536         * elmo-maildir.el (elmo-maildir-list-location): Reduce
537         `elmo-get-last-modification-time' call.
538
539 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
540
541         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
542         expression.
543         (elmo-maildir-set-mark): Ditto.
544         (elmo-maildir-delete-mark): Ditto.
545
546 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
547
548         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
549         optional argument `separators'.
550
551 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
552
553         * elmo.el (cache-changed): Abolish.
554         (status-changed): New signal.
555         (elmo-message-killed-p): New generic function and define for
556         elmo-folder.
557         (elmo-folder-recover-messages): Ditto.
558         (elmo-message-set-cached): Emit signal `status-changed' instead of
559         `cache-changed'.
560         (elmo-message-status): New macro.
561         (elmo-message-status-folder): Ditto.
562         (elmo-message-status-number): Ditto.
563         (elmo-message-status-set-flags): Ditto.
564         (elmo-message-status-set-killed): Ditto.
565         (elmo-message-status-flags): New function.
566         (elmo-message-status-cached-p): Ditto.
567         (elmo-message-status-killed-p): Ditto.
568
569         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
570         `status-changed' instead of `cache-changed'.
571         (elmo-folder-recover-messages): Define.
572         (elmo-message-killed-p): Ditto.
573
574         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
575         `status-changed' instead of `cache-changed'.
576
577         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
578         (elmo-message-killed-p): Define.
579         (elmo-folder-recover-messages): Ditto.
580
581         * elmo-version.el (elmo-version): Up to 2.15.3.
582
583 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
584
585         * elmo-signal.el (elmo-signal-bindings): Use cons to append
586         element into list.
587         (elmo-define-signal-handler): Add docstring.
588         (elmo-define-signal-filter): Ditto.
589
590         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
591
592 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
593
594         * elmo-util.el (elmo-flatten): Don't use recursive call.
595
596         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
597         assignment.
598         (elmo-folder-message-make-temp-files): Use `number-to-string'
599         instead of `int-to-string'.
600
601 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
602
603         * elmo-search.el (elmo-folder-delete-messages): Define.
604
605 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
606
607         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
608         customization type.
609         (elmo-mailing-list-count-spec-list): Ditto.
610
611         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
612         for `list-id'.
613
614 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
615
616         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
617         handling.
618
619 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
620
621         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
622         (elmo-mailing-list-count-spec-list): Ditto.
623
624         * elmo-util.el (elmo-map-until-success): New function.
625         (elmo-string-match-substring): Ditto.
626         (elmo-find-list-match-value): Ditto.
627
628         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
629         Removed.
630         (modb-entity-extract-ml-info-from-subject): Ditto.
631         (modb-entity-extract-ml-info-from-return-path): Ditto.
632         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
633         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
634         (modb-entity-extract-ml-info-from-mailman): Ditto.
635         (modb-entity-extract-mailing-list-info-functions): Ditto.
636         (modb-entity-extract-mailing-list-info): Rewrite with
637         `elmo-find-list-match-value'.
638
639 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
640
641         * elmo-net.el (elmo-network-session-retry-count): New user option.
642         (elmo-network-session-buffer-name): New internal function.
643         (elmo-network-session-buffer-create): Ditto.
644         (elmo-network-open-session): Retry open network session
645         `elmo-network-session-retry-count' times.
646
647 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
648
649         * elmo-util.el (elmo-list-filter): Rewritten.
650
651 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
652
653         * elmo-util.el (elmo-string-member): Allow symbol element in list.
654
655 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
656
657         * elmo-search.el (elmo-make-search-engine): Use prefix
658         `elmo-search-' for require symbol instead of `else-'.
659         (elmo-search-engine-extprog): New class.
660         (elmo-search-engine-do-search): Remove nil from argument
661         list. Added argument pattern to evaluate element as function.
662         (elmo-search-engine-local-file): Derived from
663         `elmo-search-engine-extprog'.
664         (elmo-search-engine-create-message-entity): Check existance of file.
665         (elmo-search-engine-fetch-message): Ditto.
666         (elmo-search-namazu-index): Follow the API change.
667         (elmo-search-grep-target): Ditto.
668
669 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
670
671         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
672         characters of working buffer.
673
674         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
675         Does not bind `default-mime-charset'.
676         (elmo-msgdb-create-message-entity-from-buffer): Removed
677         unnecessary local bind.
678
679         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
680         function.
681         (modb-entity-extract-mailing-list-info-functions): Added it.
682
683 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
684
685         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
686         when number and message-id are non-nil.
687
688         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
689
690         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
691         conditional steatment.
692         (elmo-pop3-auth-apop): Likewise.
693         (elmo-network-authenticate-session): Likewise.
694
695 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
696
697         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
698         symbol `fill-column'.
699         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
700         decode field value.
701
702         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
703         (elmo-decoded-field-body): Ditto.
704
705 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
706
707         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
708         `tokens' to `params'.
709
710 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
711
712         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
713         working buffer.
714
715 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
716
717         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
718         decide index.
719
720 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
721
722         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
723         Set default value as nil.
724         (toplevel): Register search engines by
725         `elmo-search-register-engine' if there are not defined.
726
727         * elmo.el (autoload): Added autoload setting for
728         `elmo-search-register-engine'.
729
730 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
731
732         * elmo.el (toplevel): `[' is redefined as the prefix of the search
733         folder instead of nmz folder.
734         (elmo-nmz-default-index-path): Added obsolete variable setting.
735         (elmo-nmz-index-alias-alist): Ditto.
736         (elmo-nmz-use-drive-letter): Ditto.
737
738         * elmo-search.el (elmo-search-register-engine): New function.
739
740         * elmo-nmz.el: Removed.
741
742         * elmo-version.el (elmo-version): Up to 2.15.2.
743
744 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
745
746         * elmo-search.el: New file.
747
748 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
749
750         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
751         condition `larger' and `smaller'.
752
753 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
754
755         * elmo-util.el (elmo-safe-filename): Rewrite to replace
756         `"' (double quote) into "_Q_".
757
758 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
759
760         * elmo-net.el (elmo-net-quote-chars): Abolish.
761         (elmo-net-format-quoted): Ditto.
762
763 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
764
765         * elmo.el (elmo-get-folder-function): New variable.
766         (elmo-get-folder): New function.
767         (elmo-folder-rename): Call `elmo-make-folder' with specified
768         mime-charset.
769
770         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
771         `elmo-make-folder'.
772         (elmo-split-subr): Ditto.
773
774         * elmo-multi.el (elmo-folder-initialize): Ditto.
775
776         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
777
778         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
779         (elmo-flag-get-folder): Ditto.
780
781         * elmo-filter.el (elmo-folder-initialize): Ditto.
782
783         * elmo-access.el (elmo-folder-initialize): Ditto.
784         (elmo-access-folder-update-children): Ditto.
785
786         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
787         (elmo-dop-queue-flush): Ditto.
788         (elmo-folder-append-buffer-dop-delayed): Ditto.
789         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
790         mime-charset.
791
792         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
793         instead of `elmo-make-folder'.
794         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
795         destination folder instead of send `elmo-folder-rename-internal'.
796
797         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
798         slot of subfolder instead of create it.
799
800 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
801
802         * elmo-util.el (elmo-collect-separators): New function.
803         (elmo-collect-separators-internal): Ditto.
804         (elmo-collect-trail-separators): Ditto.
805         (elmo-parse-separated-tokens): Ditto.
806         (elmo-parse-separated-tokens-internal): Ditto.
807         (elmo-quote-syntactical-element): Ditto.
808
809         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
810         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
811
812         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
813         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
814         (elmo-nntp-folder-list-subfolders): Quote a user name.
815
816         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
817         (elmo-net-parse-network): Abolish.
818         (elmo-net-folder-set-parameters): New function.
819         (elmo-folder-initialize): Follow the above change.
820
821         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
822         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
823         (elmo-folder-list-subfolders): Use
824         `elmo-quote-syntactical-element' instead of
825         `elmo-net-format-quoted' to quote mailbox and user name.
826
827 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
828
829         * elmo-util.el (elmo-token-valid-p): New function.
830         (elmo-parse-token): Add optional argument `requirement'.
831         (elmo-parse-prefixed-element): Likewise.
832
833         * elmo-net.el (elmo-net-quote-chars): Renamed from
834         `elmo-net-quote-chars-regexp'.
835         (elmo-net-format-quoted): Add optional argument `extra-chars'.
836
837         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
838         by info document. Check token `uidl' is started an alphabet.
839
840         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
841         by info document. Check token `user' is started an alphabet.
842
843         * elmo-imap4.el (elmo-folder-initialize): Ditto.
844         (elmo-folder-list-subfolders): Quote user.
845
846 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
847
848         * elmo-util.el (elmo-quoted-specials-list): New constant.
849         (elmo-quoted-token): New function.
850
851         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
852         (elmo-net-format-quoted): New function.
853         (elmo-net-parse-network): Ditto.
854         (elmo-folder-initialize): Use it.
855
856         * elmo-nntp.el (elmo-folder-initialize): Use
857         `elmo-net-parse-network' to parse network specification instead of
858         `elmo-folder-initialize#elmo-net'.
859
860         * elmo-pop3.el (elmo-folder-initialize): Ditto.
861
862         * elmo-imap4.el (elmo-folder-initialize): Ditto.
863         (elmo-folder-list-subfolders): Quote folder name by
864         `elmo-net-format-quoted'.
865
866 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
867
868         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
869         (elmo-folder-search): Use it.
870
871 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
872
873         * modb-standard.el (modb-standard-loaded-message-id): Use
874         `elmo-msgdb-message-entity-field'.
875
876 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
877
878         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
879         without filename.
880
881 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
882
883         * elmo-util.el (elmo-set-auto-coding): New function.
884         (elmo-object-load): Use it.
885
886 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
887
888         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
889         (elmo-time<): Define as alias of `elmo-time-less-p'.
890         (elmo-time-to-datevec): New function.
891
892         * elmo-date.el (elmo-time-to-days): New function.
893
894 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
895
896         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
897         is not cons cell.
898
899 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
900
901         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
902         parenthesis.
903
904         * elmo-util.el (elmo-map-recursive): New function.
905
906         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
907         (modb-entity-encode-string-recursive): Ditto.
908
909 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
910
911         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
912         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
913         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
914         compare sequence number when last modified time is nil.
915
916 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
917
918         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
919
920         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
921
922 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
923
924         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
925         modification time of the file.
926
927 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
928
929         * elmo-util.el (elmo-condition-optimize): Discriminated against
930         preserved fields, extra fields and the other weight.
931
932 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
933
934         * modb-entity.el (initialize-instance): Define.
935         (modb-entity-handler-mime-charset): New internal function.
936         (modb-standard-entity-set-field): Use it.
937         (elmo-msgdb-message-entity-field): Ditto.
938         (elmo-msgdb-message-entity-field): Ditto.
939
940         * modb.el (elmo-msgdb-match-condition): Rewrite with
941         `elmo-condition-match'.
942         (elmo-msgdb-match-condition-primitive): New function.
943
944         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
945         arguments `flags' and `numbers'.
946         (elmo-msgdb-match-condition-primitive): Abolished (merged to
947         `elmo-msgdb-message-match-condition').
948         (modb-buffer-entity-handler): New class.
949
950         * elmo.el (elmo-folder-search): Optimize condition to use
951         `elmo-condition-optimize'.
952         (elmo-message-buffer-match-condition): New function.
953         (elmo-message-match-condition): Use
954         `elmo-message-buffer-match-condition' instead of
955         `elmo-buffer-field-condition-match'.
956
957         * elmo-util.el (elmo-condition-match): New function.
958         (elmo-condition-optimize): Ditto.
959         (elmo-buffer-field-primitive-condition-match): Abolish.
960         (elmo-buffer-field-condition-match): Ditto.
961
962         * elmo-archive.el (elmo-archive-field-condition-match): Use
963         `elmo-message-buffer-match-condition' instead of
964         `elmo-buffer-field-condition-match'.
965
966 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
967
968         * elmo-flag.el (elmo-global-flags-initialize): Check the
969         existence of the flag directory.
970
971 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
972
973         * elmo-access.el (elmo-folder-initialize): Call
974         `elmo-multi-connect-signals'.
975
976         * elmo-pipe.el (elmo-folder-close): Define.
977
978         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
979         children folders.
980
981         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
982         with target folder.
983
984         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
985         `number'.
986
987         * elmo-multi.el (elmo-message-entity): Don't use return value of
988         `elmo-message-entity-set-number'.
989
990 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
991
992         * modb.el (modb-generic): Added slot `mime-charset'.
993
994         * modb-standard.el (modb-standard): Added slot `overview-handler'.
995         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
996         and `modb-entity-handler-dump-parameters'.
997         (modb-standard-default-entity-handler): Abolish.
998         (elmo-msgdb-message-entity-handler): Save created handler by
999         instance slot.
1000
1001         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
1002         (modb-entity-handler-list-parameters): New method.
1003         (modb-entity-handler-equal-p): New function.
1004         (modb-entity-handler-dump-parameters): Ditto.
1005         (modb-entity-parse-address-string): Encode return value.
1006         (modb-entity-make-address-string): Decode argument value.
1007         (modb-entity-decode-string-recursive): New function.
1008         (modb-entity-encode-string-recursive): Ditto.
1009         (modb-standard-entity-normalizer): Set to encode field value.
1010         (modb-standard-entity-specializer): Follow the above change.
1011         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
1012         mime-charset of handler.
1013         (elmo-msgdb-message-entity-field): Ditto.
1014         (elmo-msgdb-copy-message-entity): Fixed reference to internal
1015         structure.
1016         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
1017
1018         * elmo.el (elmo-folder): Added slot `mime-charset'.
1019         (elmo-make-folder): Added argument `mime-charset'.
1020         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
1021         `mime-charest'.
1022
1023         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
1024         (elmo-make-msgdb): Likewise.
1025
1026         * elmo-internal.el (elmo-internal-folder-initialize): Call
1027         `luna-make-entity' with :mime-charset parameter.
1028
1029 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
1030
1031         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
1032         encoded words in `from' and `subject' field.
1033
1034 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1035
1036         * modb.el (elmo-msgdb-message-field): Add argument `type'.
1037         (elmo-msgdb-match-condition): Get handler from entity instead of
1038         msgdb.
1039
1040         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
1041         (modb-standard-load-entity): Treat new file format.
1042         (modb-standard-save-entity-1): Save as new file format.
1043         (modb-standard-save-entity): Split messages into section here.
1044         (elmo-msgdb-message-field): Follow the API change.
1045         (modb-standard-default-entity-handler): New internal variable.
1046         (elmo-msgdb-message-entity-handler): Define.
1047
1048         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1049         to `elmo-vars.el'.
1050         (modb-entity-field-extractor-alist): New user option.
1051         (elmo-msgdb-message-entity-field): Removed argument `decode' and
1052         added argument `type'.
1053         (elmo-msgdb-copy-message-entity): Add optional argument
1054         `make-handler'.
1055         (modb-set-field-converter): New function.
1056         (modb-convert-field-value): Ditto.
1057         (modb-entity-string-decoder): Ditto.
1058         (modb-entity-string-encoder): Ditto.
1059         (modb-entity-parse-date-string): Ditto.
1060         (modb-entity-make-date-string): Ditto.
1061         (modb-entity-mime-decoder): Ditto.
1062         (modb-entity-mime-encoder): Ditto.
1063         (modb-entity-address-list-decoder): Ditto.
1064         (modb-entity-address-list-encoder): Ditto.
1065         (modb-entity-parse-address-string): Ditto.
1066         (modb-entity-make-address-string): Ditto.
1067         (modb-entity-create-field-indices): Ditto.
1068         (modb-legacy-entity-field-slots): New constant.
1069         (modb-legacy-entity-field-indices): Ditto.
1070         (modb-legacy-entity-normalizer): New variable.
1071         (modb-legacy-entity-specializer): Ditto.
1072         (modb-legacy-entity-field-index): New macro.
1073         (modb-legacy-entity-set-field): New function.
1074         (modb-legacy-make-message-entity): Rewrite.
1075         (elmo-msgdb-create-message-entity-from-buffer): Use
1076         `elmo-msgdb-get-references-from-buffer'. Use
1077         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
1078         Use `modb-legacy-entity-set-field' instead of
1079         `elmo-msgdb-message-entity-set-field'.
1080         (elmo-msgdb-message-entity-field): Rewrite.
1081         (elmo-msgdb-message-entity-set-field): Ditto.
1082         (elmo-msgdb-copy-message-entity): Make new entity by
1083         `make-handler' if it specified.
1084         (elmo-msgdb-message-match-condition): Define a method of
1085         `modb-entity-handler' and follow the API change.
1086         (modb-standard-entity-handler): New class.
1087         (modb-entity-extract-ml-info-from-x-sequence): New function.
1088         (modb-entity-extract-ml-info-from-subject): Ditto.
1089         (modb-entity-extract-ml-info-from-return-path): Ditto.
1090         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
1091         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
1092         (modb-entity-extract-mailing-list-info): Ditto.
1093         (modb-entity-extract-mailing-list-info-functions): New variable.
1094
1095         * elmo.el (elmo-message-field): Add optional argument `type'.
1096
1097         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1098         from `modb-entity.el'.
1099
1100         * elmo-util.el (elmo-object-load): Decode by coding-system from
1101         `set-auto-coding-function'.
1102         (elmo-object-save): Use `detect-mime-charset-region' and add
1103         coding cookie if encode.
1104         (elmo-msgdb-get-references-from-buffer): New function.
1105         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
1106
1107         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
1108
1109         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
1110         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
1111         instead of `shimbun-make-header' and follow the API change.
1112         (elmo-shimbun-update-overview): Follow the API change.
1113         (elmo-map-folder-list-message-locations): Ditto.
1114
1115         * elmo-pipe.el (elmo-message-field): Ditto.
1116
1117         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
1118         Ditto.
1119
1120         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1121
1122         * elmo-multi.el (elmo-message-field): Ditto.
1123
1124         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
1125         (elmo-msgdb-sort-by-date): Ditto.
1126         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
1127         `elmo-message-entity-field'.
1128         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
1129         change.
1130         (elmo-msgdb-overview-entity-get-from): Ditto.
1131         (elmo-msgdb-overview-entity-get-subject): Ditto.
1132         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1133         (elmo-msgdb-overview-entity-get-date): Ditto.
1134         (elmo-msgdb-overview-entity-get-to): Ditto.
1135         (elmo-msgdb-overview-entity-get-cc): Ditto.
1136
1137         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1138         (elmo-mime-collect-message/partial-pieces): Ditto.
1139
1140         * elmo-filter.el (elmo-message-field): Ditto.
1141
1142         * elmo-date.el (elmo-datevec-to-time): New function.
1143         (elmo-time-parse-date-string): Ditto.
1144         (elmo-time-make-date-string): Ditto.
1145         (elmo-time<): Ditto.
1146
1147         * elmo-version.el (elmo-version): Up to 2.15.1.
1148
1149 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
1150
1151         * elmo-flag.el (elmo-global-flags-initialize): Don't include
1152         member of elmo-local-flags.
1153
1154 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
1155
1156         * elmo-version.el (elmo-version): Up to 2.15.0.
1157
1158 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1159
1160         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
1161         `ignore-msgdb' is non-nil.
1162
1163 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1164
1165         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
1166         (elmo-condition-in-msgdb-p): Ditto.
1167         (elmo-file-field-primitive-condition-match): Ditto.
1168         (elmo-file-field-condition-match): Ditto.
1169
1170         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
1171
1172 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1173
1174         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
1175         subdirectories here.
1176         (elmo-global-flags-initialize): New function.
1177
1178         * elmo.el (toplevel): Added autoload setting for
1179         `elmo-global-flags-initialize'.
1180
1181 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
1182
1183         * elmo.el (message-number-changed): Define new signal.
1184         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
1185         message-number-changed signal.
1186         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1187         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1188         Respect `elmo-pack-number-check-strict'.
1189
1190 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1191
1192         * elmo-signal.el (elmo-connect-signal): Document.
1193         (elmo-emit-signal): Ditto.
1194         (elmo-emit-signal): It should pass source argument to filter and
1195         handler, not slot-source.
1196
1197 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1198
1199         * modb.el (elmo-msgdb-update-entity): New API and define generic
1200         implement.
1201
1202         * modb-standard.el (elmo-msgdb-update-entity): Define.
1203
1204         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
1205         API and define generic implement.
1206
1207         * elmo.el (update-overview): New singnal.
1208
1209         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
1210         `elmo-msgdb-update-entity' and emit signal `update-overview'.
1211         (elmo-message-entity-parent): Define.
1212
1213         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
1214         `update-overview'.
1215
1216         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
1217
1218         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
1219
1220 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
1221
1222         * elmo.el (elmo-folder-synchronize): Sort the return value of
1223         `elmo-list-diff'.
1224
1225         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
1226         list.
1227
1228 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1229
1230         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
1231         `default-enable-multibyte-characters'.
1232         (elmo-object-load): Use `with-temp-buffer' instead of
1233         `elmo-set-work-buf'.
1234         (elmo-object-save): Ditto.
1235         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
1236         `elmo-set-work-buf'.
1237         (elmo-decoded-field-body): Ditto.
1238
1239         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
1240
1241         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
1242         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
1243
1244         * elmo-version.el (elmo-version): Up to 2.13.3.
1245
1246 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
1247
1248         * elmo-util.el (elmo-list-diff): Fix the last change.
1249         Reverse order of result lists.
1250
1251 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
1252
1253         * modb-standard.el (elmo-msgdb-set-flag): Use
1254         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
1255         (elmo-msgdb-unset-flag): Ditto.
1256
1257         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
1258         `elmo-list-diff'.
1259
1260         * elmo-util.el (elmo-list-diff): Rewrite.
1261         (elmo-list-diff-nonsortable): New function.
1262
1263 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
1264
1265         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
1266         `elmo-multibypte-buffer-name'.  All referers are updated.
1267
1268 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1269
1270         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
1271         (elmo-mime-entity-fragment-p): New function.
1272         (mime-elmo-buffer-entity): Added slot `reassembled'.
1273         (elmo-message-mime-entity): Added 4th argument `reassemble'.
1274         (elmo-message-mime-entity-internal): New function (renamed from
1275         `elmo-message-mime-entity').
1276         (elmo-mime-inherit-field-list-from-enclosed): New constant.
1277         (elmo-mime-make-reassembled-mime-entity): New function.
1278         (elmo-message-reassembled-mime-entity): Ditto.
1279         (elmo-mime-collect-message/partial-pieces): Ditto.
1280
1281 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1282
1283         * elmo.el (elmo-message-fetch-string): Disable multibyte.
1284
1285         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
1286         (elmo-with-enable-multibyte): New macro.
1287
1288         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
1289
1290 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1291
1292         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
1293         argument `number'.
1294         (elmo-filter-connect-signals): Follow the above change.
1295
1296 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
1297
1298         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
1299
1300         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
1301         that only the first flag is used.
1302
1303 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1304
1305         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
1306         if available.
1307
1308 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1309
1310         * elmo-signal.el: New file.
1311
1312         * elmo.el (toplevel): Require elmo-signal.
1313         (flag-changing, flag-changed, cache-changed): New signal.
1314         (elmo-folder): Remove slog `handlers'.
1315         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1316         `elmo-folder-notify-event'.
1317         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1318         (elmo-folder-unset-flag): Ditto.
1319         (elmo-event-handler): Abolish.
1320         (elmo-event-handler-flag-changed): Ditto.
1321         (elmo-event-handler-cache-changed): Ditto.
1322         (elmo-folder-add-handler): Ditto.
1323         (elmo-folder-remove-handler): Ditto.
1324         (elmo-folder-notify-event): Ditto.
1325
1326         * elmo-pipe.el (toplevel): Require elmo-signal.
1327         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1328         (elmo-pipe-connect-signals): New function.
1329         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1330         (elmo-folder-set-flag): Ditto.
1331         (elmo-folder-unset-flag): Ditto.
1332         (elmo-message-set-cached): Ditto.
1333
1334         * elmo-multi.el (toplevel): Require elmo-signal.
1335         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1336         (elmo-multi-connect-signals): New function.
1337         (elmo-multi-map-numbers): Ditto.
1338         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1339         (elmo-message-fetch): Ditto.
1340         (elmo-folder-set-flag): Ditto.
1341         (elmo-folder-unset-flag): Ditto.
1342
1343         * elmo-filter.el (toplevel): Require elmo-signal.
1344         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1345         (elmo-filter-connect-signals): New function.
1346         (elmo-filter-add-flag-count): Ditto.
1347         (elmo-message-fetch): Does not call
1348         `elmo-filter-folder-countup-message-flags' and
1349         `elmo-folder-notify-event'.
1350         (elmo-message-set-cached): Ditto.
1351         (elmo-folder-set-flag): Ditto.
1352         (elmo-folder-unset-flag): Ditto.
1353
1354         * elmo-version.el (elmo-version): Up to 2.13.2.
1355
1356 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1357
1358         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1359         `flags'.
1360
1361 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1362
1363         * elmo-filter.el (elmo-message-set-cached): Call
1364         `elmo-folder-notify-event' with event `cache-changed'.
1365
1366         * elmo-multi.el (elmo-message-set-cached): Ditto.
1367
1368         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1369
1370 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1371
1372         * elmo.el (elmo-folder-encache): Abolish.
1373
1374 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1375
1376         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1377         (elmo-folder-next-message-number-dop): Return appropriate negative
1378         integer.
1379
1380 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1381
1382         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1383         clearing pending operations.
1384         (elmo-folder-next-message-number-dop): Return appropriate negative
1385         integer.
1386
1387 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1388
1389         * elmo.el (toplevel): Added autoload setting for `md5'.
1390         (elmo-msgdb-path-encode-threshold): New user option.
1391         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1392         longer than `elmo-msgdb-path-encode-threshold'.
1393
1394         * elmo-flag.el (elmo-global-mark-migrate): Use
1395         `elmo-folder-expand-msgdb-path' instead of
1396         `elmo-folder-msgdb-path'.
1397
1398 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1399
1400         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1401         element of the difference is nil.
1402
1403 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1404
1405         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1406         to the check logic of file systems which are weak in colon character.
1407
1408 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1409
1410         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1411
1412 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1413
1414         * elmo-maildir.el (elmo-maildir-move-file): New function.
1415         (elmo-folder-append-buffer): Use it.
1416         (elmo-folder-append-messages): Ditto.
1417         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1418
1419         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1420         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1421
1422         * elmo-maildir.el (elmo-maildir-separator): New user option.
1423         (elmo-maildir-adjust-separator): New macro.
1424         (elmo-maildir-list-location): Use it.
1425         (elmo-maildir-update-current): Ditto.
1426         (elmo-maildir-set-mark): Ditto.
1427         (elmo-maildir-delete-mark): Ditto.
1428         (These changes are based on Hiroya Murata's patch [wl: 13437])
1429
1430 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1431
1432         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1433
1434 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1435
1436         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1437         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1438         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1439
1440 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1441
1442         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1443         Use `with-temp-buffer'.
1444
1445 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1446
1447         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1448
1449         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1450         `wl-read-search-condition').
1451         (elmo-read-search-condition-internal): Likewise.
1452
1453         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1454         (elmo-flag-valid-p): New function.
1455         (elmo-folder-initialize): Check flag name is valid.
1456
1457 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1458
1459         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1460         delimiter to obtain root mailbox itself.
1461
1462 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1463
1464         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1465         type mismatch.
1466
1467 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1468
1469         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1470         as t.
1471
1472 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1473
1474         * elmo-shimbun.el (toplevel): Require cl at compile.
1475
1476         * elmo-nntp.el (toplevel): Ditto.
1477
1478         * elmo-nmz.el (toplevel): Ditto.
1479
1480         * elmo-multi.el (toplevel): Ditto.
1481
1482         * elmo-file.el (toplevel): Ditto.
1483
1484         * elmo-dop.el (toplevel): Ditto.
1485
1486         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1487
1488 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1489
1490         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1491         as nil.
1492
1493         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1494         size of elmo-message-fetch-internal is 0 byte.
1495
1496 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1497
1498         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1499
1500 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1501
1502         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1503         always plugged.
1504
1505 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1506
1507         * elmo-maildir.el (elmo-map-message-fetch): Call
1508         `elmo-map-folder-set-flag'.
1509
1510         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1511         (elmo-message-fetch): Merge from
1512         `elmo-message-fetch-with-cache-process'.
1513
1514         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1515         (elmo-message-fetch): Define.
1516
1517         * elmo-nntp.el (elmo-message-fetch): Renamed from
1518         `elmo-message-fetch-with-cache-process'.
1519
1520         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1521         (elmo-message-fetch): Define.
1522
1523         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1524         search-key.
1525
1526         * elmo-shimbun.el (shimbun-mua-search-id): Use
1527         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1528         (elmo-shimbun-folder-shimbun-header): Ditto.
1529         (elmo-shimbun-get-headers): Ditto.
1530         (elmo-shimbun-update-overview): Ditto.
1531
1532         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1533
1534         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1535         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1536
1537 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1538
1539         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1540         message is cached.
1541         (elmo-message-fetch-string): Fixed argument.
1542
1543 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1544
1545         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1546         exchange order of arguments `section' and `unread'.
1547         (elmo-message-encache): Follow the API change.
1548         (elmo-message-match-condition): Ditto.
1549         (elmo-generic-folder-append-messages): Ditto.
1550         (elmo-message-fetch-string): New function.
1551
1552         * elmo-split.el (elmo-split-subr): Ditto.
1553
1554         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1555
1556         * elmo-pipe.el (elmo-message-fetch): Ditto.
1557
1558         * elmo-multi.el (elmo-message-fetch): Ditto.
1559
1560         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1561
1562         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1563
1564         * elmo-filter.el (elmo-message-fetch): Ditto.
1565
1566         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1567
1568         * elmo-imap4.el (mime-imap-location-section-body): Use
1569         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1570         follow the API change.
1571
1572 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1573
1574         * elmo-access.el: New file.
1575
1576         * elmo-null.el: Ditto.
1577
1578         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1579
1580 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1581
1582         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1583         (elmo-network-session): New attribute `last-accessed'.
1584         (elmo-network-get-session): Discard network cache if elapsed time
1585         since last-accessed is larger than elmo-network-session-idle-timeout.
1586
1587 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1588
1589         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1590         and added `number', `require-entireness'.
1591         (elmo-find-fetch-strategy): Rewrite.
1592         (elmo-message-fetch): Unset `unread' flag when argument unread is
1593         non-nil.
1594
1595         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1596
1597         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1598         (elmo-message-fetch): Notify event `flag-changed'.
1599
1600         * elmo-pipe.el: Likewise.
1601
1602         * elmo-mime.el (elmo-mime-entity): New class.
1603         (elmo-mime-entity-display-p): New generic function.
1604         (elmo-mime-entity-display): Ditto.
1605         (elmo-mime-entity-display-as-is): Ditto.
1606         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1607         elmo-mime-entity.
1608         (elmo-make-mime-message-location): Removed.
1609         (elmo-mime-message-display): Ditto.
1610         (elmo-mime-display-as-is): Ditto.
1611         (elmo-message-mime-entity): New function.
1612
1613         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1614
1615         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1616         change.
1617         (elmo-message-fetch): Re-count flagged message number and notify
1618         event `flag-changed'.
1619
1620         * elmo-version.el (elmo-version): Up to 2.13.1.
1621
1622 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1623
1624         * elmo-filter.el (elmo-message-field): Define.
1625         (elmo-message-set-field): Ditto.
1626
1627 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1628
1629         * elmo.el (elmo-message-set-cached): Call
1630         `elmo-folder-notify-event' with cache-changed.
1631         (elmo-event-handler-cache-changed): New generic function.
1632
1633 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1634
1635         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1636         instead of elmo-add-name-to-file.
1637         (elmo-folder-append-messages): Ditto.
1638
1639 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1640
1641         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1642
1643 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1644
1645         * elmo-version.el (elmo-version): Up to 2.13.0.
1646
1647         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1648         `auto'.
1649
1650         * modb-standard.el (modb-standard-economize-entity-size): Changed
1651         default value to `t'.
1652
1653         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1654         `standard'.
1655
1656         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1657         after parsing greeting string.
1658
1659 2004-11-23  Daishi Kato <daishi@axlight.com>
1660
1661         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1662         New user option.
1663         (elmo-spam-spamoracle-call): Use it.
1664
1665 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1666
1667         * elmo.el (elmo-message-accessible-p): Message in dop spool
1668         is accessible.
1669
1670 2004-11-23  Daishi Kato <daishi@axlight.com>
1671
1672         * elsp-spamoracle.el: New file.
1673
1674 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1675
1676         * elmo.el (elmo-message-flags-for-append): New function.
1677         (elmo-generic-folder-append-messages): Use it.
1678
1679         * elmo-split.el (elmo-split-subr): Ditto.
1680
1681         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1682         `flags' and use elmo-folder-append-buffer instead of
1683         write-region-as-binary.
1684         (elmo-dop-filter-pending-messages): New function.
1685         (elmo-folder-append-buffer-dop): Call
1686         elmo-dop-spool-folder-append-buffer with `flag'.
1687         (elmo-folder-set-flag-dop): Filter messages by
1688         elmo-dop-filter-pending-messages.
1689         (elmo-folder-unset-flag-dop): Ditto.
1690         (elmo-folder-append-buffer-dop-delayed): Use
1691         elmo-message-flags-for-append to get flags of the message and
1692         simplify.
1693
1694 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1695
1696         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1697
1698 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1699
1700         * elmo.el (elmo-folder): Added handlers slot.
1701         (elmo-event-handler): New class.
1702         (elmo-event-handler-flag-changed): New API.
1703         (elmo-folder-add-handler): New function.
1704         (elmo-folder-remove-handler): Ditto.
1705         (elmo-folder-notify-event): Ditto.
1706         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1707         `flag-changed'.
1708         (elmo-folder-unset-flag): Ditto.
1709
1710         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1711         (elmo-folder-unset-flag): Ditto.
1712
1713         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1714         (elmo-folder-unset-flag): Ditto.
1715
1716         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1717         (elmo-folder-unset-flag): Ditto.
1718
1719         * elmo-version.el (elmo-version): Up to 2.11.33.
1720
1721 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1722
1723         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1724
1725 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1726
1727         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1728
1729         * elmo-flag.el (elmo-folder-unset-flag): Define.
1730         (elmo-global-flag-detach): Do process when the flag is not target
1731         flag.
1732
1733 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1734
1735         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1736         variable.
1737         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1738
1739 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1740
1741         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1742         function.
1743         (elmo-folder-delete-messages): Detach messages before delete
1744         messages from target folder.
1745         (elmo-folder-detach-messages): Set updated number-list to slot.
1746
1747 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1748
1749         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1750
1751 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1752
1753         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1754
1755 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1756
1757         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1758         internal use only).
1759         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1760         not modified.
1761         (elmo-folder-delete-messages): Define.
1762         (elmo-folder-move-messages): Don't call
1763         `elmo-folder-detach-messages'.
1764         (elmo-folder-synchronize): Rewrite.
1765         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1766
1767         * elmo-util.el (elmo-last): New function.
1768         (elmo-set-list): Ditto.
1769         (elmo-number-set-delete-list): Ditto.
1770         (elmo-number-set-delete): Ditto.
1771
1772         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1773
1774         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1775         `elmo-folder-delete-messages' and don't delete location map.
1776         (elmo-folder-detach-messages): Define.
1777
1778         * elmo-imap4.el (elmo-folder-delete): Use
1779         `elmo-folder-delete-messages-internal' instead of
1780         `elmo-folder-delete-messages'.
1781
1782         * elmo-filter.el (elmo-folder-delete-messages): Call
1783         `elmo-folder-detach-messages'.
1784         (elmo-folder-detach-messages): Don't call
1785         `elmo-folder-detach-messages' for target folder.
1786
1787         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1788         message deletion is succeeded.
1789
1790         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1791
1792         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1793         from `elmo-folder-delete-messages'.
1794
1795         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1796
1797         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1798
1799         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1800
1801         * elmo-version.el (elmo-version): Up to 2.11.32.
1802
1803 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1804
1805         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1806         (elmo-global-flag-list): Added obsolete variable setting.
1807
1808         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1809
1810         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1811         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1812         `elmo-mime-display-header-analysis' is nil.
1813
1814         * elmo-flag.el (elmo-global-flags): Renamed from
1815         `elmo-global-flag-list' (All other related portions are changed).
1816         (elmo-local-flags): New variable.
1817         (elmo-local-flag-p): New function.
1818         (elmo-global-flag-set-internal): Cause an error when flag is not
1819         global.
1820
1821 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1822
1823         * elmo-util.el (elmo-concat-path): Treat empty path.
1824
1825 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1826
1827         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1828         field-or-fields).
1829         (elmo-split-address-match): Ditto.
1830         (elmo-split-equal): Ditto.
1831         (elmo-split-match): Ditto.
1832
1833 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1834
1835         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1836         (elmo-generic-folder-append-messages): If src message exists but
1837         has no flag, pass (read) for the FLAG argument of
1838         `elmo-folder-append-buffer'. Otherwise, pass nil.
1839
1840         * elmo-split.el (elmo-split-subr): Likewise.
1841
1842         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1843
1844         * elmo-multi.el (elmo-message-flags): Ditto.
1845
1846         * elmo-filter.el (elmo-message-flags): Ditto.
1847
1848         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1849         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1850         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1851         
1852 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1853
1854         * elmo-split.el (elmo-split-rule): Update comment.
1855         (elmo-split-address-equal): Allow 2nd argument to be a list.
1856         (elmo-split-address-match): Ditto.
1857         (elmo-split-equal): Ditto.
1858         (elmo-split-match): Ditto.
1859
1860 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1861
1862         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1863         (elmo-folder-append-msgdb): Don't treat `read'.
1864         (elmo-message-flags): Don't return `read'.
1865
1866         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1867         (elmo-folder-unset-read-delayed): Ditto.
1868
1869         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1870
1871 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1872
1873         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1874         deletion.
1875
1876 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1877
1878         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1879         header.
1880
1881 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1882
1883         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1884         here.
1885         (elmo-msgdb-save): Bind inhibit-quit.
1886         (modb-standard-message-entity): Ditto.
1887
1888 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1889
1890         * elmo-database.el: No need to require elmo-msgdb.
1891
1892 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1893
1894         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1895         instead of `elmo-list-subdirectories'.
1896
1897 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1898
1899         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1900         group entry.
1901         (elmo-folder-exists-p): "[" is empty.
1902         (elmo-folder-list-subfolders): Define.
1903         (elmo-folder-have-subfolder-p): Ditto.
1904
1905 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1906
1907         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1908
1909 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1910
1911         * elmo-filter.el (elmo-folder-local-p): Define.
1912
1913 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1914
1915         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1916         when entity is garbaged.
1917         (modb-standard-save-entity-1): Don't modify the original entity.
1918
1919 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1920
1921         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1922
1923 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1924
1925         * elmo.el (elmo-strict-folder-diff): Use
1926         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1927
1928 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1929
1930         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1931         (elmo-msgdb-message-number): Ditto.
1932         (elmo-msgdb-message-field): Ditto.
1933
1934         * modb-standard.el (modb-standard-economize-entity-size): New user
1935         option.
1936         (modb-standard-loaded-message-id): New inline function.
1937         (modb-standard-load-entity): Use it.
1938         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1939         throw message-id string away.
1940         (elmo-msgdb-flag-available-p): Define.
1941         (elmo-msgdb-message-number): Ditto.
1942         (elmo-msgdb-message-field): Ditto.
1943
1944         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1945         (suppoted -> supported).
1946         (modb-legacy-supported-flag-p): Ditto.
1947         (elmo-msgdb-set-flag): Ditto.
1948         (elmo-msgdb-unset-flag): Ditto.
1949         (elmo-msgdb-flag-available-p): Define.
1950
1951         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1952         is `t', treat it as legacy entity.
1953         
1954         * elmo.el (elmo-message-flag-available-p): New generic function.
1955         (elmo-message-number): Ditto.
1956         (elmo-message-field): Use `elmo-msgdb-message-field'.
1957
1958         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1959
1960         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1961         (elmo-message-number): Ditto.
1962
1963         * elmo-multi.el (elmo-message-number): Define.
1964         (elmo-message-flag-available-p): Ditto.
1965
1966         * elmo-filter.el (elmo-message-flag-available-p): Define.
1967         (elmo-message-number): Ditto.
1968
1969         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1970         (elmo-folder-initialize): Load `max-number'.
1971         (elmo-folder-commit): Save it.
1972         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1973         (elmo-global-flag-set-internal): Set up max-number slot.
1974
1975 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1976
1977         * elmo-version.el (elmo-version): Up to 2.11.31.
1978
1979 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1980
1981         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1982         unibyte string of the current buffer for the argument of `md5'
1983         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1984
1985 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1986
1987         * modb-legacy.el (modb-legacy-flag-list): New constant.
1988         (modb-legacy-suppoted-flag-p): New internal function.
1989         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1990         (elmo-msgdb-unset-flag): Ditto.
1991
1992 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1993
1994         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1995
1996         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1997         from msgdb.
1998
1999 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2000
2001         * elmo-multi.el (elmo-folder-count-flags): Changed return value
2002         (follow the API change).
2003
2004         * elmo-filter.el (elmo-folder-count-flags): Ditto.
2005
2006 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
2007
2008         * modb-standard.el (modb-standard-digest-flags): Abolish.
2009         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
2010
2011         * elmo-vars.el (elmo-digest-flags): New variable.
2012         (elmo-preserved-flags): Moved from elmo-flag.el.
2013
2014         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
2015         (elmo-imap4-flag-to-imap-criteria): Ditto.
2016         (elmo-imap4-folder-list-flagged): Use it.
2017
2018         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
2019
2020         * elmo.el (elmo-folder-count-flags): Changed return value.
2021
2022         * elmo-flag.el (elmo-preserved-flags): New variable.
2023         (elmo-get-global-flags): Use it.
2024
2025         * modb-standard.el (modb-standard-digest-flags): New variable.
2026         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
2027         Changed behavior of `any'.
2028
2029         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
2030         which are defined the Internet draft
2031         (draft-melnikov-imap-keywords-03.txt).
2032         (elmo-imap4-flags-to-imap): New function.
2033         (elmo-folder-append-buffer): Use it.
2034
2035         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
2036         in the docstring.
2037
2038         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
2039         avoid the bug of Emacs 21.3.
2040
2041 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
2042
2043         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
2044         function find-coding-system does not exist.
2045
2046 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2047
2048         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
2049         parsing.
2050
2051 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2052
2053         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
2054         response codes.
2055
2056 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2057
2058         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
2059         (elmo-network-close-session): Follow the changes in
2060         `elmo-pop3-read-response'.
2061         (elmo-pop3-auth-user): Ditto.
2062         (elmo-pop3-auth-apop): Ditto.
2063         (elmo-network-initialize-session): Ditto.
2064         (elmo-network-authenticate-session): Ditto.
2065         (elmo-network-setup-session): Ditto.
2066         (elmo-folder-status): Ditto.
2067         (elmo-message-fetch-plugged): Ditto.
2068         (elmo-pop3-delete-msg): Ditto.
2069
2070 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
2071
2072         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
2073         on failure.
2074
2075 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2076
2077         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
2078         style.
2079         (elmo-bind-directory): Ditto.
2080
2081 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2082
2083         * elmo.el (elmo-folder-append-messages): Note on return value.
2084         * elmo-archive.el (elmo-folder-append-messages): Don't return
2085         message numbers which could not be appended.
2086
2087 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2088
2089         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
2090
2091 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2092
2093         * elmo-version.el (elmo-version): Up to 2.11.30.
2094
2095 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2096
2097         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
2098         `mask'.
2099
2100         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
2101
2102         * elmo-multi.el (elmo-folder-synchronize): Likewise.
2103         (elmo-multi-split-numbers): Add elmo-folder object into each
2104         element of return value at first.
2105         (elmo-folder-delete-messages): Follow the above change.
2106         (elmo-folder-detach-messages): Ditto.
2107
2108         * elmo-filter.el (elmo-folder-synchronize): Minimize message
2109         number which is synchronized in target folder.
2110
2111 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2112
2113         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
2114         Change default value to symbol `all'.
2115         (elmo-map-message-fetch): Change condition to update overview
2116         follow the above.
2117
2118 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2119
2120         * elmo-shimbun.el (elmo-map-message-fetch): Change default
2121         behavior to update overview.
2122         (elmo-shimbun-update-overview-folder-list): Note it.
2123
2124 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2125
2126         * modb-standard.el (modb-standard-message-entity): Avoid infinite
2127         recursive call.
2128
2129 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2130
2131         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
2132         buffer-disable-undo, it is unnecessary.
2133         (elmo-spam-register-good-messages): Ditto.
2134
2135         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2136         Ditto.
2137
2138         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
2139
2140 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2141
2142         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
2143         (elmo-set-work-buf): Use set-buffer-multibyte instead of
2144         elmo-set-buffer-multibyte.
2145         (elmo-object-load): Ditto.
2146         (elmo-save-buffer): Ditto.
2147         (elmo-delete-char): Ditto.
2148         (elmo-file-field-primitive-condition-match): Ditto.
2149         (elmo-mime-string): Ditto.
2150
2151         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
2152         (elmo-archive-field-condition-match): Ditto.
2153
2154         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
2155
2156         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
2157
2158         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
2159         (elmo-nntp-msgdb-create-message): Ditto.
2160
2161         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2162
2163         * elmo.el (elmo-message-match-condition): Ditto.
2164         (elmo-message-match-condition): Ditto.
2165
2166         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2167         Ditto.
2168
2169         * elmo-version.el (elmo-version): Up to 2.11.29.
2170
2171         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
2172         (elsp-header): New backend.
2173
2174         * elmo-util.el (elmo-decoded-field-body): New function.
2175
2176 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2177
2178         * elmo-version.el (elmo-version): Up to 2.11.28.
2179
2180 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2181
2182         * elmo-filter.el: Rewrite.
2183
2184         * elmo-version.el (elmo-version): Up to 2.11.27.
2185
2186 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
2187
2188         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
2189         msgdb path for the localdir folder with absolute path.
2190
2191         * utf7.el: Synch up with latest gnus/utf7.el;
2192         Modified for latest Emacs.
2193
2194 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2195
2196         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
2197         shimbun backend couldn't open.
2198
2199 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
2200
2201         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
2202         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
2203         when a destination folder is a filter folder.
2204
2205 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2206
2207         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
2208         (elmo-generic-folder-append-messages): Call elmo-message-flags
2209         with argument `msgid'.
2210
2211         * elmo-split.el (elmo-split-subr): Ditto.
2212
2213         * elmo-pipe.el (elmo-message-flags): Follow the API change.
2214
2215         * elmo-multi.el (elmo-message-flags): Ditto.
2216
2217 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2218
2219         * elmo.el (elmo-folder): Add new slot `flag-table'.
2220         (elmo-folder-flag-table): New API.
2221         (elmo-folder-close-flag-table): Ditto.
2222         (elmo-folder-preserve-flags): New function.
2223         (elmo-generic-folder-append-messages): Use
2224         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
2225         Flag of a non-registered message, it sets to nil.
2226         Does not set flag to flag-table.
2227
2228         * elmo-maildir.el (elmo-folder-append-buffer): Use
2229         `elmo-folder-preserve-flags'.
2230         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2231         `elmo-folder-close-flag-table'.
2232
2233         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
2234         (elmo-archive-folder-append-buffer): Use
2235         `elmo-folder-preserve-flags'.
2236
2237         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
2238
2239         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
2240
2241         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2242         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2243         `elmo-folder-close-flag-table'.
2244
2245         * elmo-version.el (elmo-version): Up to 2.11.26.
2246
2247 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2248
2249         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
2250
2251         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
2252         md5's 4th and 5th argument (non-existent in flim one).
2253
2254 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2255
2256         * elmo-split.el (elmo-split-subr): Flag of a non-registered
2257         message, It sets to nil.
2258
2259 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2260
2261         * elmo.el (elmo-folder-list-messages): Merge lists only if both
2262         list is non-nil.
2263
2264 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
2265
2266         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
2267
2268         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
2269
2270         * elmo-util.el (elmo-uniq-sorted-list): New function.
2271         (elmo-make-number-list): Ditto.
2272         (elmo-number-set-to-number-list): Use elmo-make-number-list
2273         and don't use nreverse.
2274
2275 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2276
2277         * elmo-version.el (elmo-version): Up to 2.11.25.
2278
2279 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2280
2281         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
2282         field not exists in message, Use md5 message digest of header.
2283
2284 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2285
2286         * elmo.el (elmo-folder-append-buffer): Add note on return value.
2287         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
2288         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2289         * elmo-split.el (elmo-split-subr): Check return value of
2290         elmo-folder-append-buffer.
2291
2292         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
2293         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2294
2295         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
2296         message-id.
2297
2298 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
2299
2300         * elmo-split.el (elmo-split-subr): Append message with flag.
2301
2302         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
2303         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
2304         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2305
2306 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
2307
2308         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
2309         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
2310         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2311
2312 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
2313
2314         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2315         with a function call of `process-buffer'.  All callers are updated.
2316         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2317         Remove redundant `set-buffer' in a while loop.
2318
2319 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2320
2321         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2322         calls.
2323
2324 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2325
2326         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2327         elsp-spamfilter-register-buffer-internal with current buffer.
2328         (elmo-spam-register-spam-buffer): Ditto.
2329         (elmo-spam-register-good-buffer): Ditto.
2330
2331 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2332
2333         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2334         if it is not contained in the response(A workaround for courier-imap).
2335
2336 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2337
2338         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2339         parenthesis.
2340
2341 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2342
2343         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2344         range.
2345
2346 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2347
2348         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2349         of nconc.
2350
2351         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2352         argument handler.
2353         (elmo-msgdb-message-match-condition): Follow the change above.
2354
2355 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2356
2357         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2358         folder name.
2359
2360 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2361
2362         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2363
2364 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2365
2366         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2367
2368 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2369
2370         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2371         not found.
2372
2373 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2374
2375         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2376         value.
2377         (elmo-file-command-argument): Undo last change for cygwin.
2378         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2379         Don't return nil.
2380         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2381
2382 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2383
2384         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2385         value returned from elmo-file-find is nil.
2386
2387 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2388
2389         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2390         to elmo-vars.el.
2391
2392         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2393         instead of insert-file-contents-as-binary.
2394         (elmo-message-set-field): New generic function.
2395
2396         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2397         behavior change on `split-string'.
2398
2399         * elmo-file.el (elmo-file-find): New function.
2400         (elmo-file-command): New user option.
2401         (elmo-file-command-argument): Ditto.
2402         (elmo-file-fetch-max-size): Ditto.
2403         (elmo-file-detect-format): New function.
2404         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2405         Use elmo-file-detect-format.
2406         (elmo-map-folder-list-message-locations): Don't treat directories.
2407
2408 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2409
2410         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2411         (elmo-passwd-alist-clear): Shred password before clear.
2412         (elmo-remove-passwd): Remove all mached pair.
2413
2414 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2415
2416         * elmo.el (elmo-folder-synchronize): Fix description of the return
2417         value.
2418
2419 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2420
2421         * elmo.el (elmo-message-fetch-bodystructure): New method.
2422         (elmo-message-fetch-bodystructure): Define default.
2423
2424         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2425         elmo-message-fetch-bodystructure.
2426         (elmo-message-fetch-bodystructure): Define.
2427
2428         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2429
2430 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2431
2432         * elmo-filter.el (elmo-message-folder): Define.
2433
2434 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2435
2436         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2437         elmo-delete-cr-buffer.
2438
2439         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2440
2441         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2442
2443         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2444
2445         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2446         type seems to be a text.
2447
2448 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2449
2450         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2451         (elmo-spam-register-good-buffer): Ditto.
2452         (elmo-spam-spamassassin-register-messages): Ditto.
2453
2454         * elmo-util.el (elmo-string-member-ignore-case): Define with
2455         static-cond.
2456
2457 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2458
2459         * elmo.el (elmo-folder-type): Undo last change.
2460
2461         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2462
2463         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2464         warnings.
2465
2466         * elmo-file.el: New file.
2467         
2468         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2469
2470         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2471         variable.
2472         (elmo-spam-spamassassin-register-messages): New inline function.
2473         (elmo-spam-register-spam-messages): Define.
2474         (elmo-spam-register-good-messages): Ditto.
2475
2476         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2477         Fixed typo.
2478
2479         * elmo.el (toplevel): Added autoload setting for
2480         `elmo-get-global-flags'.
2481         (elmo-message-has-global-flag-p): New function.
2482         (elmo-message-set-global-flags): Ditto.
2483         (elmo-folder-type): Improvement for name: format.
2484
2485         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2486         availability of keyword flags.
2487         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2488         (elmo-folder-list-flagged-plugged): Renamed from
2489         elmo-folder-list-flagged-unplugged.
2490         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2491         accept any flag as keyword flag.
2492         (elmo-folder-set-flag-plugged): Accept keyword flags.
2493         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2494
2495         * elmo-flag.el (elmo-get-global-flags): New function.
2496
2497         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2498         folders.
2499
2500         * elmo-version.el (elmo-version): Up to 2.11.24.
2501
2502 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2503
2504         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2505         elmo-multiple-field-body instead of std11-field-body to check all
2506         headers.
2507
2508 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2509
2510         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2511         or "size".
2512
2513 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2514
2515         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2516         unintern is unbound.
2517
2518 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2519
2520         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2521         Protect from infinite loop.
2522
2523 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2524
2525         * elsp-bogofilter.el
2526         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2527         (elmo-spam-bogofilter-register-messages): New internal function.
2528         (elmo-spam-register-spam-messages): Define.
2529         (elmo-spam-register-good-messages): Ditto.
2530
2531 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2532
2533         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2534         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2535         (elmo-spam-bogofilter-call): Fixed the last change.
2536         (elmo-spam-bogofilter-arguments): Ditto.
2537
2538         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2539         Follow the options change of latest bogofilter.
2540
2541         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2542         (elmo-spam-bogofilter-good-switch): Ditto.
2543         (elmo-spam-bogofilter-arguments-alist): New user option.
2544         (elmo-spam-bogofilter-debug): Ditto.
2545         (elmo-spam-bogofilter-call): Renamed from
2546         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2547         is non-nil, insert output in buffer for debug.
2548         (elmo-spam-bogofilter-arguments): New macro.
2549         (elmo-spam-buffer-spam-p): Use it.
2550         (elsp-bogofilter-register-buffer): Ditto.
2551
2552 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2553
2554         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2555         regexp.
2556
2557 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2558
2559         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2560         value as "ruby".
2561         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2562         (elmo-spam-bsfilter-program): Set default value as full path for
2563         `bsfilter'.
2564         (elmo-spam-bsfilter-debug): New user option.
2565         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2566         non-nil, insert output in buffer for debug. Fix treating of
2567         argument.
2568
2569 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2570
2571         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2572         `elmo-maildir-flag-specs' element instead of one.
2573         (elmo-map-folder-unset-flag): Ditto.
2574         (Reported by Ken Makimura <macky@astem.or.jp>)
2575
2576         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2577         (elmo-folder-unset-flag-plugged): Ditto.
2578
2579 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2580
2581         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2582         to `reads' slot only if `in-msgdb' is nil.
2583
2584 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2585
2586         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2587         and complement argument list.
2588
2589 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2590
2591         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2592         instead of elmo-folder-list-flagged.
2593
2594 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2595
2596         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2597
2598         * elsp-bsfilter.el: New file.
2599
2600         * elmo-pipe.el (elmo-folder-list-unreads,
2601         elmo-folder-list-answereds,
2602         elmo-folder-list-importants,
2603         elmo-folder-flag-as-important,
2604         elmo-folder-unflag-important,
2605         elmo-folder-flag-as-read,
2606         elmo-folder-unflag-read,
2607         elmo-folder-flag-as-answered,
2608         elmo-folder-unflag-answered): Remove.
2609         (elmo-folder-set-flag): Define.
2610         (elmo-folder-unset-flag): Ditto.
2611
2612         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2613         (elmo-folder-set-flag): Define.
2614         (elmo-folder-unset-flag): Ditto.
2615         (elmo-folder-list-unreads): Remove.
2616         (elmo-folder-list-flagged): Define.
2617
2618         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2619         (elmo-folder-list-unreads,
2620         elmo-folder-list-importants,
2621         elmo-folder-list-answereds,
2622         elmo-folder-list-unreads-plugged,
2623         elmo-folder-list-importants-plugged,
2624         elmo-folder-list-answereds-plugged): Remove.
2625         (elmo-folder-list-flagged-plugged): New method.
2626         (elmo-folder-unflag-important,
2627         elmo-folder-flag-as-important,
2628         elmo-folder-unflag-read,
2629         elmo-folder-flag-as-read,
2630         elmo-folder-unflag-answered,
2631         elmo-folder-flag-as-answered,
2632         elmo-folder-flag-as-read-unplugged,
2633         elmo-folder-unflag-read-unplugged,
2634         elmo-folder-flag-as-important-unplugged,
2635         elmo-folder-unflag-important-unplugged,
2636         elmo-folder-flag-as-answered-unplugged,
2637         elmo-folder-unflag-answered-unplugged): Remove.
2638         (elmo-folder-set-flag): Define.
2639         (elmo-folder-unset-flag): Ditto.
2640         (elmo-folder-set-flag-unplugged): Ditto.
2641         (elmo-folder-unset-flag-unplugged): Ditto.
2642
2643         * elmo-multi.el (elmo-folder-list-unreads,
2644         elmo-folder-list-answereds,
2645         elmo-folder-list-importants,
2646         elmo-folder-flag-as-important,
2647         elmo-folder-unflag-important,
2648         elmo-folder-flag-as-read,
2649         elmo-folder-unflag-read,
2650         elmo-folder-flag-as-answered,
2651         elmo-folder-unflag-answered): Remove.
2652         (elmo-folder-set-flag): Define.
2653         (elmo-folder-unset-flag): Ditto.
2654
2655         * elmo-map.el (elmo-map-folder-unflag-important,
2656         elmo-map-folder-flag-as-important,
2657         elmo-map-folder-unflag-read,
2658         elmo-map-folder-flag-as-read,
2659         elmo-map-folder-unflag-answered,
2660         elmo-map-folder-flag-as-answered): Remove.
2661         (elmo-map-folder-set-flag): New method.
2662         (elmo-map-folder-unset-flag): Ditto.
2663         (elmo-map-folder-list-unreads,
2664         elmo-map-folder-list-importants,
2665         elmo-map-folder-list-answereds): Remove.
2666         (elmo-folder-list-flagged-internal): Define.
2667         (elmo-map-folder-list-flagged): New method.
2668
2669         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2670         (elmo-map-folder-list-unreads,
2671         elmo-map-folder-list-importants,
2672         elmo-map-folder-list-flagged): Remove.
2673         (elmo-map-folder-list-flagged): Define.
2674         (elmo-map-folder-flag-as-important,
2675         elmo-map-folder-unflag-important,
2676         elmo-map-folder-flag-as-read,
2677         elmo-map-folder-unflag-read,
2678         elmo-map-folder-flag-as-answered,
2679         elmo-map-folder-unflag-answered): Remove.
2680         (elmo-maildir-set-mark-messages): New internal function.
2681         (elmo-map-folder-set-flag): Define.
2682         (elmo-map-folder-unset-flag): Ditto.
2683
2684         * elmo.el (toplevel): Added autoload setting for
2685         `elmo-folder-list-global-flag-messages'.
2686         (elmo-folder-list-unreads,
2687         elmo-folder-list-importants,
2688         elmo-folder-list-answereds): Remove.
2689         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2690         Return a list whitch merged with messages have global flag.
2691         (elmo-folder-list-flagged-internal): New method.
2692         (elmo-folder-unflag-important,
2693         elmo-folder-flag-as-important,
2694         elmo-folder-unflag-read,
2695         elmo-folder-flag-as-read,
2696         elmo-folder-unflag-answered,
2697         elmo-folder-flag-as-answered): Remove.
2698         (elmo-folder-set-flag): New method.
2699         (elmo-folder-unset-flag): Ditto.
2700         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2701         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2702
2703         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2704         (elmo-folder-list-unreads-plugged,
2705         elmo-folder-list-importants-plugged,
2706         elmo-folder-list-answereds-plugged,
2707         elmo-folder-list-flagged-unplugged,
2708         elmo-folder-unflag-important-plugged,
2709         elmo-folder-flag-as-important-plugged,
2710         elmo-folder-unflag-read-plugged,
2711         elmo-folder-flag-as-read-plugged,
2712         elmo-folder-unflag-answered-plugged,
2713         elmo-folder-flag-as-answered-plugged): Remove.
2714         (elmo-folder-set-flag-plugged,
2715         elmo-folder-unset-flag-plugged): Define.
2716
2717         * elmo-flag.el (elmo-folder-initialize): Register to
2718         `elmo-global-flag-list' if flag is not global.
2719         (elmo-folder-append-messages): Set flag to source messages.
2720
2721         * elmo-filter.el (elmo-filter-folder-list-unreads,
2722         elmo-folder-list-unreads,
2723         elmo-filter-folder-list-importants,
2724         elmo-folder-list-importants,
2725         elmo-folder-flag-as-read,
2726         elmo-folder-unflag-read,
2727         elmo-folder-flag-as-important,
2728         elmo-folder-unflag-important,
2729         elmo-folder-flag-as-answered,
2730         elmo-folder-unflag-answered): Remove.
2731         (elmo-folder-set-flag): Define.
2732         (elmo-folder-unset-flag): Ditto.
2733
2734         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2735         elmo-folder-unflag-read-dop,
2736         elmo-folder-flag-as-important-dop,
2737         elmo-folder-unflag-important-dop,
2738         elmo-folder-flag-as-answered-dop,
2739         elmo-folder-unflag-answered-dop): Remove.
2740         (elmo-folder-set-flag-dop,
2741         elmo-folder-unset-flag-dop,
2742         elmo-folder-set-important-delayed,
2743         elmo-folder-unset-important-delayed,
2744         elmo-folder-set-read-delayed,
2745         elmo-folder-unset-read-delayed,
2746         elmo-folder-set-answered-delayed,
2747         elmo-folder-unset-answered-delayed): New function.
2748         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2749         (elmo-dop-queue-method-name-alist): Ditto.
2750
2751         * elmo-version.el (elmo-version): Up to 2.11.23.
2752
2753 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2754
2755         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2756
2757         * elsp-sa.el: New file.
2758
2759 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2760
2761         * modb-standard.el (modb-standard-message-entity): New function.
2762         (elmo-msgdb-message-entity): Use it.
2763
2764 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2765
2766         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2767         behavior when one-level is nil.
2768
2769         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2770
2771         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2772
2773 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2774
2775         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2776         get max number.
2777         (elmo-generic-folder-diff): Ditto.
2778
2779         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2780         (elmo-folder-update-number): Ditto.
2781
2782         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2783         (elmo-folder-next-message-number-dop): Ditto.
2784
2785 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2786
2787         * elmo-filter.el (elmo-folder-msgdb-create): Use
2788         `elmo-message-entity' and `elmo-message-flags' instead of
2789         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2790
2791 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2792
2793         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2794         `if-exists'.
2795
2796 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2797
2798         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2799
2800         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2801
2802         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2803
2804 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2805
2806         * elmo-version.el (elmo-version): Up to 2.11.22.
2807
2808 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2809
2810         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2811
2812 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2813
2814         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2815         if the message dose not exist.
2816
2817 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2818
2819         * elmo-version.el (elmo-version): Up to 2.11.21.
2820
2821 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2822
2823         * modb-standard.el (toplevel): Don't require mime.
2824
2825 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2826
2827         * elsp-bogofilter.el (toplevel): Don't require path-util.
2828         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2829         (elmo-spam-bogofilter-header): Abolish.
2830         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2831         (elmo-spam-bogofilter-args): New user option.
2832         (elsp-bogofilter-call-bogofilter): New internal function.
2833         (elmo-spam-buffer-spam-p): Use it.
2834         (elsp-bogofilter-register-buffer): Renamed from
2835         `elmo-spam-bogofilter-register-buffer';
2836         Use `elsp-bogofilter-call-bogofilter'.
2837         (elmo-spam-register-spam-buffer): Follow the change above.
2838         (elmo-spam-register-good-buffer): Ditto.
2839
2840 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2841
2842         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2843         message-id is nil do nothing.
2844
2845 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2846
2847         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2848         Revival.
2849         (elmo-imap4-session): Removed use-flag slot.
2850         (elmo-imap4-session-select-mailbox): Undo last change.
2851         (elmo-folder-use-flag-p): Use
2852         elmo-imap4-disuse-server-flag-mailbox-regexp.
2853
2854 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2855
2856         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2857         (elmo-imap4-session-select-mailbox): Set it up.
2858         (elmo-folder-use-flag-p): Return value of use-flag slot.
2859
2860 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2861
2862         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2863         message-id is nil.
2864         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2865
2866         * modb-entity.el (elmo-message-entity-handler): Likewise.
2867
2868 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2869
2870         * elmo.el (toplevel): Remove setting of autoloding for
2871         elmo-global-flag-initialize.
2872         (elmo-init): Don't call elmo-global-flag-initialize.
2873         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2874
2875         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2876         (elmo-global-mark-migrate): Don't call it.
2877         (elmo-global-mark-upgrade): Ditto.
2878
2879 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2880
2881         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2882         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2883
2884         * elmo-vars.el (elmo-init-hook): New user option.
2885
2886         * elmo.el (elmo-init): Run the elmo-init-hook.
2887
2888         * elmo-flag.el (elmo-global-mark-migrate): New function.
2889
2890 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2891
2892         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2893         Undo last change (move to elmo-msgdb-unset-flag).
2894         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2895         flag is unset.
2896
2897 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2898
2899         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2900         read flag is set.
2901         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2902         (elmo-msgdb-unset-flag): Ditto.
2903
2904 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2905
2906         * elmo-split.el (elmo-split): Return split message count.
2907
2908 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2909
2910         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2911         is nil.
2912
2913 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2914
2915         * elmo.el (elmo-folder-unflag-important): Call
2916         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2917         a symbol `always'.
2918
2919         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2920         before unset flag.
2921         (elmo-global-flag-detach): Delete the message from flag folder, if
2922         `delete-if-none' is a symbol `always'.
2923
2924 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2925
2926         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2927         `elmo-spam-spamfilter-decode-buffer'.
2928         (elsp-spamfilter-register-buffer-internal): New internal function.
2929         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2930         (elmo-spam-register-spam-buffer): Ditto.
2931         (elmo-spam-register-good-buffer): Ditto.
2932
2933         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2934         change.
2935         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2936         (elmo-spam-register-spam-buffer): Follow the API change.
2937         (elmo-spam-register-good-buffer): Ditto.
2938
2939         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2940         (elmo-split-spam-p): Added argument plist; Call
2941         `elmo-spam-buffer-spam-p' with new argument register.
2942
2943         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2944         `register'.
2945         (elmo-spam-message-spam-p): Ditto.
2946         (elmo-spam-register-spam-buffer): Added optional argument
2947         `restore'.
2948         (elmo-spam-register-good-buffer): Ditto.
2949         (elmo-spam-register-spam-messages): Ditto.
2950         (elmo-spam-register-good-messages): Ditto.
2951
2952 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2953
2954         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2955         register into good corpus.
2956         (elmo-spam-register-good-buffer): Fixed to register into bad
2957         corpus.
2958
2959 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2960
2961         * elmo-version.el (elmo-version): Up to 2.11.20.
2962
2963         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2964         change.
2965
2966         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2967         flag without depending on \Recent flag.
2968
2969 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2970
2971         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2972         (elmo-spam-modified-p): Defined.
2973         (elmo-spam-save-status): Set `modified' slot to nil.
2974         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2975         (elmo-spam-register-good-buffer): Ditto.
2976
2977         * elmo-spam.el (elmo-spam-modified-p): New API.
2978
2979 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2980
2981         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2982         duplicate definition.
2983
2984         * elmo-util.el (elmo-unfold-field-body): New function.
2985         (elmo-msgdb-get-message-id-from-buffer): Use it.
2986
2987         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2988         Fixed the last change; Use elmo-unfold-field-body.
2989
2990 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2991
2992         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2993         Unfold date value.
2994
2995 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2996
2997         * elmo-spam.el (elmo-spam-save-status): New API.
2998
2999         * elsp-spamfilter.el: New file.
3000
3001 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3002
3003         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
3004
3005 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3006
3007         * elmo-split.el (elmo-split-spam-p): New function.
3008
3009         * elmo-spam.el: New file.
3010
3011         * elsp-bogofilter.el: Ditto.
3012
3013 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
3014
3015         * elmo.el (elmo-folder-next-message-number): New API.
3016         (elmo-folder-next-message-number): Define.
3017         (elmo-message-field): Don't check folder length.
3018
3019         * elmo-net.el (elmo-folder-next-message-number): Define.
3020         (elmo-folder-next-message-number-unplugged): Define.
3021
3022         * elmo-map.el (elmo-folder-next-message-number): Define.
3023         (elmo-folder-delete-messages): Clear hash value.
3024
3025         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
3026
3027         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
3028         (elmo-folder-delete-messages-dop-delayed): Always return t.
3029
3030         * elmo-version.el (elmo-version): Up to 2.11.19.
3031
3032 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3033
3034         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
3035         change.
3036
3037         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
3038         identical cons cell into the mark-alist and the hash table.
3039
3040 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
3041
3042         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
3043         elmo-folder-list-messages with argument `visible-only' as t.
3044
3045         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
3046         (elmo-folder-msgdb-create): Check the target folder.
3047
3048 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
3049
3050         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
3051         `permanentflag' instead of `flags'.
3052         (elmo-folder-open): Ditto.
3053         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
3054         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
3055         (elmo-folder-use-flag-p): Always return t.
3056         (elmo-imap4-session-select-mailbox): Use value of `flags' if
3057         `permanentflags' does not exist.
3058         (elmo-folder-open): Ditto.
3059
3060 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
3061
3062         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
3063         is nil.
3064         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
3065
3066         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
3067         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
3068         response.
3069         (elmo-folder-open): Ditto.
3070         (elmo-imap4-set-flag): Send store flag command only when the `flags'
3071         slot of the session includes the flag.
3072         (elmo-imap4-session-flag-available-p): New function.
3073         (elmo-imap4-folder-list-flagged): Ditto.
3074         (elmo-folder-list-unreads-plugged): Use it.
3075         (elmo-folder-list-importants-plugged): Ditto.
3076         (elmo-folder-list-answereds-plugged): Ditto.
3077         (elmo-imap4-search-internal-primitive): Ditto.
3078         (elmo-imap4-folder-list-any-plugged,
3079         elmo-imap4-folder-list-digest-plugged): Abolish.
3080
3081         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
3082         if numbers is nil.
3083
3084 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3085
3086         * elmo-util.el (toplevel): Require emu for char-list-to-string.
3087
3088 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
3089
3090         * elmo-util.el (elmo-get-hash-val): Simplify.
3091         (elmo-set-hash-val): Rewrite.
3092
3093 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3094
3095         * elmo.el (elmo-folder-list-messages): Append killed messages into
3096         result if `visible-only' is nil and `in-msgdb' is non-nil.
3097
3098         * elmo-util.el (elmo-uniq-list): Added optional argument
3099         `delete-function'.
3100
3101         * modb.el (elmo-msgdb-flag-count): New API.
3102
3103         * modb-standard.el (modb-standard): Added slot flag-count.
3104         (modb-standard-countup-flags): New function.
3105         (modb-standard-load-flag): Call it.
3106         (elmo-msgdb-append): Ditto.
3107         (elmo-msgdb-clear): Clear slot flag-count.
3108         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
3109         (elmo-msgdb-unset-flag): Treat `all' flag and call
3110         modb-standard-countup-flags.
3111         (elmo-msgdb-flag-count): Define.
3112         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
3113         (elmo-msgdb-delete-messages): Ditto.
3114
3115         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
3116         (elmo-msgdb-flag-count): Define.
3117
3118         * elmo.el (elmo-folder-list-messages): Undo last change.
3119         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
3120         (elmo-folder-kill-messages): Unset all flags to numbers.
3121
3122         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
3123         elmo-folder-kill-messages.
3124
3125         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
3126         (elmo-nntp-folder-delete-messages): Abolish.
3127
3128         * elmo-version.el (elmo-version): Up to 2.11.18.
3129
3130 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3131
3132         * elmo.el (elmo-folder-kill-messages-before): Abolish.
3133         (elmo-folder-kill-messages-range): New function.
3134         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
3135         instead of elmo-folder-kill-messages-before.
3136
3137 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
3138
3139         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
3140         elmo-imap4-current-msgdb to decide entity handler.
3141
3142 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3143
3144         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
3145
3146         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
3147         inline function.
3148         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
3149         (elmo-msgdb-overview-entity-set-number,
3150         elmo-msgdb-overview-entity-get-references,
3151         elmo-msgdb-overview-entity-set-references,
3152         elmo-msgdb-overview-entity-get-from-no-decode,
3153         elmo-msgdb-overview-entity-get-from,
3154         elmo-msgdb-overview-entity-set-from,
3155         elmo-msgdb-overview-entity-get-subject,
3156         elmo-msgdb-overview-entity-get-subject-no-decode,
3157         elmo-msgdb-overview-entity-set-subject,
3158         elmo-msgdb-overview-entity-get-date,
3159         elmo-msgdb-overview-entity-set-date,
3160         elmo-msgdb-overview-entity-get-to,
3161         elmo-msgdb-overview-entity-get-cc,
3162         elmo-msgdb-overview-entity-get-size,
3163         elmo-msgdb-overview-entity-set-size,
3164         elmo-msgdb-overview-entity-get-extra,
3165         elmo-msgdb-overview-entity-set-extra,
3166         elmo-msgdb-overview-entity-get-extra-field,
3167         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
3168         (elmo-msgdb-make-index): Use
3169         `elmo-msgdb-overview-entity-get-number-internal'.
3170         (elmo-msgdb-clear-index): Ditto.
3171         (elmo-msgdb-append-entity): Ditto;
3172         Use `elmo-msgdb-overview-entity-get-id-internal'.
3173
3174         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
3175         elmo-msgdb-overview-entity-set-number,
3176         elmo-msgdb-overview-entity-get-references,
3177         elmo-msgdb-overview-entity-set-references,
3178         elmo-msgdb-overview-entity-get-from-no-decode,
3179         elmo-msgdb-overview-entity-get-from,
3180         elmo-msgdb-overview-entity-set-from,
3181         elmo-msgdb-overview-entity-get-subject,
3182         elmo-msgdb-overview-entity-get-subject-no-decode,
3183         elmo-msgdb-overview-entity-set-subject,
3184         elmo-msgdb-overview-entity-get-date,
3185         elmo-msgdb-overview-entity-set-date,
3186         elmo-msgdb-overview-entity-get-to,
3187         elmo-msgdb-overview-entity-get-cc,
3188         elmo-msgdb-overview-entity-get-size,
3189         elmo-msgdb-overview-entity-set-size,
3190         elmo-msgdb-overview-entity-get-extra,
3191         elmo-msgdb-overview-entity-set-extra,
3192         elmo-msgdb-overview-entity-get-extra-field,
3193         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
3194         and rewrote for backward compatibility.
3195
3196 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3197
3198         * elmo.el (elmo-message-entity-number,
3199         elmo-message-entity-set-number,
3200         elmo-message-entity-field,
3201         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
3202
3203         * elmo-msgdb.el (elmo-message-entity-number,
3204         elmo-message-entity-set-number,
3205         elmo-message-entity-field,
3206         elmo-message-entity-set-field): Moved from elmo.el.
3207
3208 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3209
3210         * elmo.el (toplevel): Changed definition orders.
3211
3212 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3213
3214         * modb.el (elmo-msgdb-search): New API .
3215         (elmo-msgdb-match-condition): Ditto.
3216
3217         * modb-standard.el (elmo-msgdb-search): Define.
3218
3219         * modb-legacy.el (elmo-msgdb-search): Ditto.
3220
3221         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
3222         from elmo-msgdb-match-condition-internal.
3223
3224         * elmo.el (elmo-folder-search-fast): Abolish.
3225         (elmo-folder-search): Use elmo-msgdb-search and
3226         elmo-with-progress-display.
3227
3228         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
3229         as msgdb API.
3230
3231         * elmo.el (elmo-folder): Remove slot message-modified and
3232         flag-modified.
3233         (elmo-folder-set-message-modified): Abolish.
3234         (elmo-generic-folder-commit): Follow the change above.
3235         (elmo-folder-synchronize): Ditto.
3236
3237         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
3238
3239         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3240
3241         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
3242
3243 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3244
3245         * modb-standard.el (modb-standard-make-message-entity,
3246         elmo-msgdb-make-message-entity,
3247         elmo-msgdb-create-message-entity-from-buffer,
3248         elmo-msgdb-message-entity-number,
3249         elmo-msgdb-message-entity-set-number,
3250         elmo-msgdb-message-entity-field,
3251         elmo-msgdb-message-entity-set-field,
3252         elmo-msgdb-copy-message-entity,
3253         elmo-msgdb-match-condition-internal): Remove.
3254
3255         * modb-entity.el: New file (again).
3256
3257         * modb.el (toplevel): Require modb-entity.
3258         (elmo-msgdb-message-entity-handler): New method.
3259
3260         * modb-standard.el (modb-standard-entity-id): Use
3261         elmo-message-entity-handler.
3262         (modb-standard-load-entity): Ditto.
3263         (elmo-msgdb-append-entity): Ditto.
3264         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3265
3266         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
3267         elmo-msgdb-decoded-cache-hashtb,
3268         (modb-legacy-make-message-entity,
3269         elmo-msgdb-make-message-entity,
3270         elmo-msgdb-create-message-entity-from-buffer,
3271         elmo-msgdb-message-entity-number,
3272         elmo-msgdb-message-entity-set-number,
3273         elmo-msgdb-message-entity-field,
3274         elmo-msgdb-message-entity-set-field,
3275         elmo-msgdb-copy-message-entity,
3276         elmo-msgdb-match-condition-internal,
3277         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
3278
3279         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
3280         (elmo-message-entity-set-number): Ditto.
3281         (elmo-message-entity-field): Ditto.
3282         (elmo-message-entity-set-field): Ditto.
3283
3284         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
3285
3286         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3287
3288         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3289
3290         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3291         (elmo-nntp-msgdb-create-message): Ditto.
3292
3293         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
3294         (elmo-folder-msgdb-create): Add unread flag.
3295
3296         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3297
3298         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
3299
3300         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
3301
3302         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3303
3304         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
3305         elmo-msgdb-messge-entity-handler.
3306         * elmo-version.el (elmo-version): Up to 2.11.17.
3307
3308 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3309
3310         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
3311         change.
3312
3313 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3314
3315         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3316
3317         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3318         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3319         (elmo-msgdb-flag-table): Ditto.
3320         (elmo-msgdb-sort-by-date): Ditto.
3321
3322         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3323
3324         * modb-standard.el (toplevel): Require mime.
3325         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3326         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3327         elmo-msgdb-message-entity-number.
3328         (elmo-msgdb-append-entity): Ditto.
3329         (elmo-msgdb-create-message-entity-from-file): Remove.
3330         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3331         corresponds to the entity.
3332         (elmo-msgdb-message-entity-number): Do nothing currently.
3333         (elmo-msgdb-message-entity-field): Ditto.
3334         (elmo-msgdb-message-entity-set-field): Ditto.
3335         (elmo-msgdb-copy-message-entity): Ditto.
3336         (elmo-msgdb-match-condition-internal): Ditto.
3337
3338         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3339         elmo-util.el.
3340         (elmo-msgdb-create-message-entity-from-file): Remove.
3341
3342         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3343         modb-legacy.el.
3344         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3345
3346         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3347
3348 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3349
3350         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3351         (elmo-msgdb-message-entity-field): Ditto.
3352         (elmo-msgdb-message-entity-number): Ditto.
3353
3354 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3355
3356         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3357         Fixed how to set extra field into entity.
3358         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3359         symbol.
3360
3361         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3362         Fixed how to set extra field into entity.
3363         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3364         symbol.
3365
3366 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3367
3368         * modb.el (elmo-message-entity-db): New function.
3369         (elmo-msgdb-make-message-entity): New API.
3370         (elmo-msgdb-message-entity-number): Ditto.
3371         (elmo-msgdb-message-entity-set-number): Ditto.
3372         (elmo-msgdb-message-entity-field): Ditto.
3373         (elmo-msgdb-message-entity-set-field): Ditto.
3374         (elmo-msgdb-copy-message-entity): Ditto.
3375         (elmo-msgdb-create-message-entity-from-file): Ditto.
3376         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3377         (elmo-msgdb-match-condition-internal): Ditto.
3378
3379         * modb-standard.el (modb-legacy): Require modb-legacy.
3380         (modb-standard-make-message-entity): New inline function.
3381         (elmo-msgdb-make-message-entity): Define.
3382         (elmo-msgdb-create-message-entity-from-file): Ditto.
3383         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3384         (elmo-msgdb-message-entity-field): Ditto.
3385         (elmo-msgdb-message-entity-set-field): Ditto.
3386         (elmo-msgdb-copy-message-entity): Ditto.
3387         (elmo-msgdb-match-condition-internal): Ditto.
3388
3389         * modb-legacy.el: Don't require modb-entity.
3390         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3391         (elmo-msgdb-match-condition-primitive): Ditto.
3392         (elmo-msgdb-get-decoded-cache): Ditto.
3393         (elmo-msgdb-overview-entity-get-id): Ditto.
3394         (elmo-msgdb-overview-entity-get-number): Ditto.
3395         (elmo-msgdb-overview-entity-set-number): Ditto.
3396         (elmo-msgdb-overview-entity-get-references): Ditto.
3397         (elmo-msgdb-overview-entity-set-references): Ditto.
3398         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3399         (elmo-msgdb-overview-entity-get-from): Ditto.
3400         (elmo-msgdb-overview-entity-set-from): Ditto.
3401         (elmo-msgdb-overview-entity-get-subject): Ditto.
3402         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3403         (elmo-msgdb-overview-entity-set-subject): Ditto.
3404         (elmo-msgdb-overview-entity-get-date): Ditto.
3405         (elmo-msgdb-overview-entity-set-date): Ditto.
3406         (elmo-msgdb-overview-entity-get-to): Ditto.
3407         (elmo-msgdb-overview-entity-get-cc): Ditto.
3408         (elmo-msgdb-overview-entity-get-size): Ditto.
3409         (elmo-msgdb-overview-entity-set-size): Ditto.
3410         (elmo-msgdb-overview-entity-get-extra): Ditto.
3411         (elmo-msgdb-overview-entity-set-extra): Ditto.
3412         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3413         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3414         (elmo-msgdb-number-load): Ditto.
3415         (elmo-msgdb-overview-load): Ditto.
3416         (elmo-msgdb-mark-load): Ditto.
3417         (elmo-msgdb-number-save): Ditto.
3418         (elmo-msgdb-mark-save): Ditto.
3419         (elmo-msgdb-overview-save): Ditto.
3420         (modb-legacy-make-message-entity): New inline function.
3421         (elmo-msgdb-insert-file-header): Ditto.
3422         (elmo-msgdb-make-message-entity): Define.
3423         (elmo-msgdb-create-message-entity-from-file): Ditto.
3424         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3425         (elmo-msgdb-message-entity-number): Ditto.
3426         (elmo-msgdb-message-entity-set-number): Ditto.
3427         (elmo-msgdb-message-entity-field): Ditto.
3428         (elmo-msgdb-message-entity-set-field): Ditto.
3429         (elmo-msgdb-copy-message-entity): Ditto.
3430         (elmo-msgdb-match-condition-internal): Ditto.
3431
3432         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3433         (elmo-message-copy-entity): Rewrite.
3434         (elmo-message-entity-number): Ditto.
3435         (elmo-message-entity-set-number): Ditto.
3436         (elmo-message-entity-field): Use elmo-message-entity-db.
3437         (elmo-message-entity-set-field): Ditto.
3438         (elmo-message-field): Rewrite.
3439
3440         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3441         elmo-msgdb.el
3442         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3443
3444         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3445         elmo-message-entity-field.
3446         (elmo-shimbun-folder-shimbun-header): Ditto.
3447         (elmo-shimbun-entity-to-header): Ditto.
3448         (elmo-folder-msgdb-create): Ditto.
3449         (elmo-shimbun-msgdb-create-entity): Ditto;
3450         Use elmo-msgdb-create-message-entity-from-buffer.
3451         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3452         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3453
3454         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3455         elmo-msgdb-create-message-entity-from-file and 
3456         elmo-message-entity-field.
3457
3458         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3459         elmo-message-entity-number.
3460         (elmo-pop3-msgdb-create-message): Use
3461         elmo-msgdb-create-message-entity-from-buffer,
3462         elmo-message-entity-set-field, elmo-message-entity-number and
3463         elmo-message-entity-set-number.
3464
3465         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3466         the API change in elmo-msgdb-make-message-entity.
3467         (elmo-nntp-msgdb-create-message): Use
3468         elmo-msgdb-create-message-entity-from-buffer.
3469
3470         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3471         elmo-message-entity-field and
3472         elmo-msgdb-create-message-entity-from-file.
3473
3474         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3475         (elmo-msgdb-get-field): Abolish.
3476         (elmo-msgdb-get-number): Rewrite.
3477         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3478         (elmo-msgdb-flag-table): Ditto.
3479         (elmo-msgdb-get-last-message-id,
3480         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3481         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3482         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3483         (elmo-msgdb-create-overview-from-buffer,
3484         elmo-msgdb-overview-get-parent-entity): Abolish.
3485
3486         * elmo-mime.el (elmo-mime-display-as-is): Use
3487         elmo-message-entity-field.
3488
3489         * elmo-map.el (elmo-folder-pack-numbers): Use
3490         elmo-message-entity-set-number.
3491
3492         * elmo-maildir.el (elmo-folder-msgdb-create): 
3493         elmo-msgdb-create-message-entity-from-file instead of
3494         elmo-msgdb-create-overview-entity-from-file.
3495
3496         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3497         msgdb.
3498         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3499         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3500
3501         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3502         elmo-messge-entity-field and elmo-message-entity-number.
3503         (elmo-imap4-fetch-callback-1): Call
3504         elmo-msgdb-create-message-entity-from-buffer instead of
3505         elmo-msgdb-create-overview-from-buffer. 
3506         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3507         (elmo-find-fetch-strategy): Likewise.
3508
3509         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3510         elmo-localdir-msgdb-create-entity with argument msgdb.
3511
3512         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3513         and elmo-message-entity-set-number.
3514
3515         * elmo-cache.el (elmo-folder-msgdb-create): Use
3516         elmo-message-entity-field.
3517         (elmo-folder-msgdb-create): Call
3518         elmo-msgdb-create-message-entity-from-file instead of
3519         elmo-msgdb-create-overview-entity-from-file.
3520
3521         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3522         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3523         instead of elmo-msgdb-create-overview-from-buffer.
3524         (elmo-archive-msgdb-create-entity): Ditto.
3525         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3526         elmo-message-entity-field.
3527         (elmo-archive-parse-mmdf): Ditto.
3528
3529         * modb-entity.el: Removed.
3530
3531         * elmo-version.el (elmo-version): Up to 2.11.16.
3532
3533 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3534
3535         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3536         `is-local'.
3537         (elmo-folder-flag-as-answered): Ditto.
3538
3539 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3540
3541         * modb-standard.el: New file.
3542
3543         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3544         elmo-msgdb-convert-type is `sync'.
3545
3546         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3547         (elmo-msgdb-convert-type): New user option.
3548
3549         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3550         (elmo-load-msgdb): Auto detect saved type.
3551
3552         * elmo-version.el (elmo-version): Up to 2.11.15.
3553
3554 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3555
3556         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3557
3558         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3559         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3560         with argument `delete-if-none' when dst-folder is 'null.
3561
3562         * elmo-flag.el (elmo-folder-append-messages): Defined.
3563         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3564
3565 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3566
3567         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3568
3569 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3570
3571         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3572         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3573         (elmo-folder-commit): Ditto.
3574
3575 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3576
3577         * elmo-flag.el: New file.
3578
3579         * elmo-mark.el: Removed.
3580
3581         * modb-legacy.el (modb-legacy-new-mark,
3582         modb-legacy-unread-uncached-mark,
3583         modb-legacy-unread-cached-mark,
3584         modb-legacy-read-uncached-mark,
3585         modb-legacy-answered-cached-mark,
3586         modb-legacy-answered-uncached-mark,
3587         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3588         All other related portions are changed.
3589
3590         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3591         (elmo-folder-list-messages-with-global-mark): Abolish.
3592         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3593         (elmo-folder-flag-as-important): Ditto.
3594         (elmo-folder-unflag-read): Ditto.
3595         (elmo-folder-flag-as-read): Ditto.
3596         (elmo-folder-unflag-answered): Ditto.
3597         (elmo-folder-flag-as-answered): Ditto.
3598         (elmo-message-encache): Return the cache path.
3599         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3600         (elmo-message-set-flag): Transitional implementation.
3601         (elmo-message-unset-flag): Ditto.
3602         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3603         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3604         (elmo-init): Call elmo-global-flag-initialize.
3605         (toplevel): Added autoload settings for elmo-flag.
3606
3607         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3608
3609         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3610         (elmo-file-cache-delete): Don't treat global-mark.
3611
3612         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3613
3614         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3615
3616         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3617         `elmo-global-flags-set'.
3618
3619         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3620         `flag'.
3621         (elmo-folder-unflag-read): Ditto.
3622         (elmo-folder-unflag-important): Ditto.
3623         (elmo-folder-flag-as-important): Ditto.
3624         (elmo-folder-unflag-answered): Ditto.
3625         (elmo-folder-flag-as-answered): Ditto.
3626
3627         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3628         `elmo-global-flags-set'.
3629         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3630
3631         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3632
3633         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3634         `flag'.
3635         (elmo-folder-flag-as-important): Ditto.
3636         (elmo-folder-unflag-important): Ditto.
3637         (elmo-folder-flag-as-important): Ditto.
3638         (elmo-folder-unflag-read): Ditto.
3639         (elmo-folder-flag-as-read): Ditto.
3640         (elmo-folder-unflag-answered): Ditto.
3641         (elmo-folder-flag-as-answered): Ditto.
3642
3643         * elmo-multi.el (elmo-folder-list-importants): Don't call
3644         elmo-folder-list-messages-with-global-mark.
3645         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3646         (elmo-folder-unflag-important): Ditto.
3647         (elmo-folder-flag-as-read): Ditto.
3648         (elmo-folder-unflag-read): Ditto.
3649         (elmo-folder-flag-as-answered): Ditto.
3650         (elmo-folder-unflag-answered): Ditto.
3651
3652         * elmo-msgdb.el (elmo-msgdb-new-mark,
3653         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3654         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3655         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3656         (Moved to modb-legacy.el).
3657         (elmo-flag-table-get): Treat important flag too.
3658
3659         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3660         `mark' to `flag'.
3661         (elmo-map-folder-flag-as-important): Ditto.
3662         (elmo-map-folder-unflag-read): Ditto.
3663         (elmo-map-folder-flag-as-read): Ditto.
3664         (elmo-map-folder-unflag-answered): Ditto.
3665         (elmo-map-folder-flag-as-answered): Ditto.
3666         (elmo-folder-unflag-important): Ditto.
3667         (elmo-folder-flag-as-important): Ditto.
3668         (elmo-folder-unflag-read): Ditto.
3669         (elmo-folder-flag-as-read): Ditto.
3670         (elmo-folder-unflag-answered): Ditto.
3671         (elmo-folder-flag-as-answered): Ditto.
3672
3673         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3674         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3675         `flag'.
3676         (elmo-map-folder-unflag-important): Ditto.
3677         (elmo-map-folder-flag-as-read): Ditto.
3678         (elmo-map-folder-unflag-read): Ditto.
3679         (elmo-map-folder-flag-as-answered): Ditto.
3680         (elmo-map-folder-unflag-answered): Ditto.
3681
3682         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3683         `elmo-global-flags-set'.
3684         (elmo-global-flags-set): Added autoload setting.
3685
3686         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3687         `flag'.
3688
3689         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3690         `elmo-msgdb-global-mark-set'.
3691         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3692         Call `elmo-global-flags-set'.
3693         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3694         `flag'.
3695         (elmo-folder-flag-as-important-plugged): Ditto.
3696         (elmo-folder-unflag-read-plugged): Ditto.
3697         (elmo-folder-flag-as-read-plugged): Ditto.
3698         (elmo-folder-unflag-answered-plugged): Ditto.
3699         (elmo-folder-flag-as-answered-plugged): Ditto.
3700         (elmo-global-flags-set): Added autoload setting.
3701
3702         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3703         `flag'.
3704         (elmo-folder-unflag-read): Ditto.
3705         (elmo-folder-flag-as-important): Ditto.
3706         (elmo-folder-unflag-important): Ditto.
3707         (elmo-folder-flag-as-answered): Ditto.
3708         (elmo-folder-unflag-answered): Ditto.
3709
3710         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3711         change of `mark'->`flag'.
3712         (elmo-dop-queue-method-name-alist): Ditto.
3713         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3714         (elmo-folder-unflag-read-dop): Ditto.
3715         (elmo-folder-flag-as-important-dop): Ditto.
3716         (elmo-folder-unflag-important-dop): Ditto.
3717         (elmo-folder-flag-as-answered-dop): Ditto.
3718         (elmo-folder-unflag-answered-dop): Ditto.
3719
3720         * elmo-cache.el (elmo-folder-msgdb-create): Call
3721         `elmo-global-flags-set'.
3722
3723         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3724         Call `elmo-global-flags-set'.
3725         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3726         elmo-archive-parse-mmdf with argument `folder'.
3727         (elmo-archive-parse-mmdf): Added argument `folder';
3728         Call `elmo-global-flags-set'.
3729
3730         * elmo-version.el (elmo-version): Up to 2.11.14.
3731
3732 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3733
3734         * modb.el (elmo-msgdb-length): Define.
3735
3736         * elmo.el (elmo-make-folder): Fixed.
3737         (elmo-generic-folder-append-messages): Follow the API change.
3738
3739         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3740         API change.
3741
3742 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3743
3744         * modb.el: New file.
3745
3746         * modb-entity.el: Ditto.
3747
3748         * modb-legacy.el: Ditto.
3749
3750         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3751         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3752         of `elmo-msgdb-overview-get-entity'.
3753         (elmo-msgdb-get-field): Ditto.
3754         (elmo-msgdb-merge): Moved to `elmo.el'.
3755         (elmo-msgdb-length): Removed; redefine as modb method.
3756         (elmo-msgdb-change-mark): Abolish.
3757         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3758         (elmo-msgdb-match-condition): Don't use mark.
3759         (elmo-msgdb-overview-get-entity): Abolish.
3760         Split modb part into `modb*.el'.
3761
3762         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3763
3764         * elmo-shimbun.el (shimbun-mua-search-id): Use
3765         `elmo-msgdb-message-entity' instead of
3766         `elmo-msgdb-overview-get-entity'.
3767         (elmo-shimbun-folder-shimbun-header): Ditto.
3768         (elmo-shimbun-get-headers): Ditto.
3769         (elmo-shimbun-update-overview): Ditto.
3770
3771         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3772
3773         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3774
3775         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3776         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3777
3778         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3779         `elmo-msgdb-mark-to-flags'.
3780
3781         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3782         `elmo-msgdb-set-path'.
3783
3784         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3785  
3786         * elmo-version.el (elmo-version): Up to 2.11.13.
3787
3788         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3789
3790         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3791         of mark.
3792
3793 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3794
3795         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3796         mismatch.
3797
3798 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3799
3800         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3801         instead of `elmo-msgdb-get-cached'.
3802         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3803
3804         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3805         (elmo-msgdb-set-cached): Ditto.
3806         (elmo-msgdb-set-flag): Rewrite.
3807         (elmo-msgdb-unset-flag): Ditto.
3808
3809         * elmo-msgdb.el: Rewrite with luna.
3810
3811         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3812         (elmo-folder-msgdb): Follow the change above.
3813         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3814         (elmo-folder-unmark-important): Follow the API change.
3815         (elmo-folder-mark-as-important): Ditto.
3816         (elmo-folder-unmark-read): Ditto.
3817         (elmo-folder-mark-as-read): Ditto.
3818         (elmo-folder-unmark-answered): Ditto.
3819         (elmo-folder-mark-as-answered): Ditto.
3820         (elmo-folder-clear): Likewise.
3821
3822         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3823         instead of `elmo-msgdb-load' (renamed).
3824
3825         * elmo-version.el (elmo-version): Up to 2.11.12.
3826
3827 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3828
3829         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3830         change.
3831         (elmo-message-mark): Abolish.
3832         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3833         instead of `elmo-msgdb-change-mark'.
3834
3835         * elmo-pipe.el (elmo-message-mark): Abolish.
3836
3837         * elmo-multi.el (elmo-message-mark): Ditto.
3838
3839         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3840         (elmo-msgdb-unread-uncached-mark): Ditto.
3841         (elmo-msgdb-unread-cached-mark): Ditto.
3842         (elmo-msgdb-read-uncached-mark): Ditto.
3843         (elmo-msgdb-answered-cached-mark): Ditto.
3844         (elmo-msgdb-answered-uncached-mark): Ditto.
3845         (elmo-msgdb-important-mark): Ditto.
3846         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3847         `use-cache'.
3848         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3849         `flags'.
3850         (elmo-flag-table-load): Changed flag to list of flag.
3851         (elmo-flag-table-set): If flags is nil, set read flag.
3852         (elmo-flag-table-get): Return derived flags from global mark,
3853         cache status and saved flags.
3854         (elmo-msgdb-flag-table): Follow the change above.
3855         (elmo-msgdb-out-of-date-messages): New function.
3856
3857         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3858
3859         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3860
3861         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3862
3863         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3864         (elmo-nntp-msgdb-create-message): Ditto.
3865
3866         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3867
3868         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3869         independent.
3870         (elmo-folder-msgdb-create): Follow the API change.
3871
3872         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3873         (elmo-folder-append-messages): Ditto.
3874
3875         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3876         (elmo-folder-append-buffer): Ditto.
3877
3878         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3879
3880         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3881
3882         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3883         (elmo-archive-parse-mmdf): Ditto.
3884
3885         * elmo-version.el (elmo-version): Up to 2.11.11.
3886
3887 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3888
3889         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3890         `elmo-msgdb-mark'.
3891
3892         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3893
3894         * elmo-pipe.el (elmo-message-flags): Defined.
3895
3896         * elmo-multi.el (elmo-message-flags): Ditto.
3897
3898 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3899
3900         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3901         `elmo-msgdb-delete-msgs'.
3902
3903         * elmo.el (elmo-folder-count-flags): Don't use
3904         `elmo-msgdb-get-mark-alist'.
3905         (elmo-folder-detach-messages): Follow the API change.
3906
3907         * elmo.el (elmo-folder-list-messages): Append killed messages into
3908         result if `visible-only' is nil.
3909
3910         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3911         canceled messages.
3912         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3913         (elmo-folder-update-number): Likewise.
3914
3915         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3916         (elmo-pop3-sort-msgdb-by-original-number): Use
3917         `elmo-msgdb-sort-entities'.
3918
3919         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3920         (elmo-msgdb-sort-by-date): Use it.
3921         (elmo-msgdb-overview-sort-by-date): Abolish.
3922
3923         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3924
3925         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3926         (elmo-msgdb-flags): New function.
3927         (elmo-msgdb-merge): Use elmo-msgdb-append.
3928
3929         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3930         change.
3931
3932         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3933
3934         * elmo-dop.el (elmo-folder-status-dop): Use
3935         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3936
3937 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3938
3939         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3940
3941         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3942
3943         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3944
3945         * elmo-util.el (elmo-with-progress-display): New macro.
3946
3947         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3948
3949 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3950
3951         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3952         `elmo-folder-list-message-entities' instead of
3953         `elmo-msgdb-get-overview'.
3954         (elmo-map-folder-list-message-locations): Ditto.
3955
3956         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3957         methods instead of treat directly).
3958         (elmo-msgdb-clear): Ditto.
3959         (elmo-msgdb-delete-msgs): Ditto.
3960         (elmo-msgdb-sort-by-date): Ditto.
3961
3962         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3963         local variables.
3964         (elmo-nntp-folder-msgdb-create): Follow the API change.
3965
3966         * elmo-version.el (elmo-version): Up to 2.11.10.
3967
3968 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3969
3970         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3971         (elmo-msgdb-flags-to-mark): Ditto.
3972         (elmo-msgdb-append-entity): Ditto.
3973
3974         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3975         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3976         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3977         (elmo-archive-parse-mmdf): Ditto.
3978
3979         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3980
3981         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3982
3983         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3984
3985         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3986
3987         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3988
3989         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3990
3991         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3992
3993         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3994
3995         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3996         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3997         to empty msgdb.
3998
3999         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
4000         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
4001         instead of directly construction.
4002         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
4003         instead of construct msgdb.
4004
4005         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
4006         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
4007         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
4008         instead of construct msgdb.
4009
4010 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4011
4012         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
4013         when field is from or subject.
4014
4015 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
4016
4017         * elmo-multi.el (elmo-message-entity-parent): Define.
4018         (elmo-folder-search): Rewrite.
4019
4020 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4021
4022         * elmo-multi.el (elmo-message-cached-p): Define.
4023
4024         * elmo.el (elmo-message-cached-p): New method.
4025         (elmo-message-accessible-p): Use it instead of msgdb API directly.
4026         (elmo-message-flags): New method.
4027         (elmo-message-flagged-p): New function.
4028
4029         * elmo-version.el (elmo-version): Up to 2.11.9.
4030
4031 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4032
4033         * elmo-version.el (elmo-version): Up to 2.11.8.
4034
4035         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
4036
4037         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
4038
4039 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
4040
4041         * elmo.el (elmo-folder-detach-messages): Undo last change.
4042
4043 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
4044
4045         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
4046
4047         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
4048         only when src folder type is pop3.
4049
4050 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
4051
4052         * elmo-msgdb.el (elmo-msgdb-make-index): Use
4053         elmo-msgdb-overview-entity-get-number instead of
4054         elmo-message-entity-number.
4055
4056 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4057
4058         * elmo-version.el (elmo-version): Up to 2.11.7.
4059
4060 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
4061
4062         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
4063         function.
4064
4065         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
4066         (elmo-msgdb-merge): New function.
4067         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
4068         (elmo-msgdb-make-index): Rewrite.
4069
4070         * elmo-version.el (elmo-version): Up to 2.11.6.
4071
4072         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
4073         use it as a the path for loading message entities.
4074
4075         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
4076
4077 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
4078
4079         * elmo-filter.el (elmo-folder-set-message-modified): Set 
4080         message-modified slot of itself if it does not require target msgdb.
4081
4082         * elmo-mime.el (elmo-mime-message-display): Display message entirely
4083         if folder length is zero.
4084         (elmo-mime-display-as-is): Ditto.
4085
4086         * elmo-filter.el (elmo-folder-set-message-modified): Define.
4087
4088         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
4089
4090 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4091
4092         * elmo.el (elmo-folder-set-message-modified): New method.
4093         (elmo-generic-folder-commit): Use it.
4094         (elmo-folder-synchronize): Ditto.
4095
4096         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
4097         (elmo-folder-commit): Remove duplicate definition.
4098
4099 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4100
4101         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
4102
4103 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4104
4105         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
4106         (elmo-strict-folder-diff): Ditto.
4107         (elmo-folder-set-info-max-by-numdb): Simplify.
4108
4109         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
4110         elmo-msgdb-list-messages.
4111
4112         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
4113         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
4114
4115 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4116
4117         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
4118         visible-only is non-nil.
4119         (elmo-folder-confirm-appends): Changed message.
4120         (elmo-folder-synchronize): Added argument disable-killed.
4121
4122         * elmo-multi.el (elmo-folder-synchronize): Added argument
4123         disable-killed.
4124
4125         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
4126
4127         * elmo-version.el (elmo-version): Up to 2.11.5.
4128
4129         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
4130         elmo-list-filter.
4131
4132         * elmo-util.el (elmo-list-filter): Simplify.
4133
4134         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
4135         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
4136         (elmo-generic-folder-diff): Abolish argument.
4137         (elmo-msgdb-load): Don't use number-alist.
4138
4139         * elmo-filter.el (elmo-folder-diff): Abolish argument.
4140
4141         * elmo-pipe.el (elmo-folder-diff): Ditto.
4142
4143         * elmo-nmz.el (elmo-folder-diff): Ditto.
4144
4145         * elmo-net.el (elmo-folder-diff): Ditto.
4146
4147         * elmo-maildir.el (elmo-folder-diff): Ditto.
4148
4149         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
4150
4151         * elmo-multi.el (elmo-folder-diff): Ditto
4152         (elmo-multi-folder-diff): Rewrite.
4153
4154 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4155
4156         * elmo-pipe.el (elmo-folder-msgdb): Define.
4157
4158 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
4159
4160         * elmo.el (elmo-message-set-cached): Define as a method.
4161
4162         * elmo-pipe.el (elmo-message-set-cached): Define.
4163         (elmo-find-fetch-strategy): Ditto.
4164
4165         * elmo-multi.el (elmo-message-set-cached): Define.
4166         (elmo-find-fetch-strategy): Rewrite.
4167
4168         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
4169
4170         * elmo-pipe.el (elmo-message-folder): Fixed definition.
4171
4172 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4173
4174         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
4175         instead of number-alist.
4176
4177         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
4178         mark nor message-id when msgdb of source folder is not loaded.
4179
4180         * elmo.el (elmo-generic-folder-append-messages): Ditto.
4181
4182         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4183
4184 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
4185
4186         * elmo.el (elmo-folder-length): Don't require msgdb.
4187
4188 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
4189
4190         * elmo.el (elmo-message-mark): Cause an error when empty folder.
4191         (elmo-message-field): Ditto.
4192
4193         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
4194         (elmo-map-folder-list-message-locations): Setup `answered-locations'
4195         slot.
4196         (elmo-map-folder-list-answereds): Define.
4197         (elmo-maildir-list-location): Treat 'R' info.
4198         (elmo-folder-msgdb-create): Treat flag-table.
4199         (elmo-folder-append-messages): Save flag-table.
4200
4201 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
4202
4203         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
4204         Use SELECT when elmo-imap4-use-select-to-update-status is t.
4205
4206 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4207
4208         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
4209
4210         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
4211         'read when mark is null.
4212
4213 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
4214
4215         * elmo-version.el (elmo-version): Up to 2.11.4.
4216
4217 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4218
4219         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
4220         (elmo-folder-mark-as-answered): Ditto.
4221
4222 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
4223
4224         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
4225         (elmo-pop3-get-session): Make msgdb directory after session.
4226         (elmo-folder-exists-p): Check exactly at the first time even when the
4227         elmo-pop3-exists-exactly is nil.
4228
4229         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
4230         (elmo-folder-list-messages): Define instead of
4231         elmo-folder-list-messages-internal.
4232         (elmo-folder-check): Check destination folder.
4233         (elmo-folder-synchronize): Drain the pipe.
4234
4235         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
4236         when msgdb is not loaded.
4237
4238         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
4239
4240         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
4241         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
4242         messages.
4243
4244         * elmo.el (elmo-folder-kill-messages-before): New function.
4245         (elmo-folder-kill-messages): Ditto.
4246         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
4247
4248         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
4249         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
4250         killed not by synchronize (e.g. scoring).
4251
4252 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4253
4254         * elmo.el (elmo-folder-search-fast): Return t if condition is not
4255         treated.
4256         (elmo-folder-search): Follow the change above.
4257
4258         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
4259         into the candidates of search field.
4260
4261 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
4262
4263         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
4264         (elmo-msgdb-unset-flag): Ditto.
4265
4266         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
4267
4268 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
4269
4270         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
4271         (elmo-folder-commit): Define.
4272         (elmo-folder-synchronize): Ditto.
4273         (elmo-folder-list-flagged): Ditto.
4274         (elmo-folder-commit): Ditto.
4275         (elmo-folder-length): Ditto.
4276         (elmo-folder-count-flags): Ditto.
4277         (elmo-message-mark): Ditto.
4278         (elmo-message-field): Ditto.
4279         (elmo-message-entity): Ditto.
4280         (elmo-message-folder): Ditto.
4281
4282 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
4283
4284         * elmo.el (elmo-message-field): Define as a method.
4285
4286         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
4287         (elmo-message-field): Define.
4288
4289         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
4290         (elmo-folder-list-importants): Ditto.
4291         (elmo-folder-list-answereds): Ditto.
4292
4293         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
4294         qualifier.
4295         (elmo-folder-mark-as-read): Ditto.
4296         (elmo-folder-unmark-read): Ditto.
4297         (elmo-folder-mark-as-answered): Ditto.
4298         (elmo-folder-unmark-answered): Ditto.
4299         (elmo-folder-list-flagged): Define.
4300         (elmo-folder-commit): Ditto.
4301         (elmo-folder-length): Ditto.
4302         (elmo-folder-count-flags): Ditto.
4303
4304 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4305
4306         * elmo.el (elmo-folder-detach-messages): New method.
4307         (elmo-folder-move-messages): Use it.
4308         (elmo-folder-synchronize): Ditto.
4309
4310         * elmo-multi.el (elmo-folder-detach-messages): Define.
4311
4312         * elmo.el (elmo-message-copy-entity): New function.
4313         (elmo-message-entity-set-number): Ditto.
4314         (elmo-message-mark): Define as method.
4315
4316         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4317         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4318         (elmo-message-entity): Fixed last change.
4319         (elmo-message-mark): Define.
4320         (elmo-folder-msgdb-create): Abolish.
4321         (elmo-multi-folder-append-msgdb): Ditto.
4322         (elmo-multi-folder-diff): Fixed.
4323         (elmo-multi-split-number-alist): Removed.
4324         (elmo-multi-split-mark-alist): Removed.
4325         (elmo-folder-list-messages): Define.
4326         (elmo-folder-list-messages-internal): Removed.
4327
4328         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4329         local file messages.
4330         (elmo-folder-msgdb-create): Fixed read mark.
4331
4332 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4333
4334         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4335         if mark is nil.
4336
4337 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4338
4339         * elmo.el (elmo-folder-list-message-entities): Define as inline
4340         function.
4341         (elmo-folder-messages): Abolish.
4342
4343         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4344         folder.
4345         (elmo-folder-synchronize): Define.
4346         (elmo-message-entity): Define.
4347
4348 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4349
4350         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4351         elmo-imap4-session-select-mailbox.
4352
4353         * elmo.el (elmo-folder-move-messages): Don't display any message.
4354
4355         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4356         parsing.
4357         (elmo-imap4-session-check): Don't wait CHECK response.
4358         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4359
4360 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4361
4362         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4363
4364 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4365
4366         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4367         API.
4368         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4369
4370
4371         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4372         (elmo-folder-list-message-entities): Added argument in-msgdb and
4373         numbers.
4374         (elmo-folder-synchronize): Define as a method.
4375
4376         * elmo-nntp.el (elmo-folder-initialize): Don't use
4377         elmo-nntp-default-user if zero-length username is specified
4378         explicitly.
4379
4380 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4381
4382         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4383         server name in case with username.
4384         (XXX: this is ad-hoc fix against username includes "@", it
4385         should be solved fundamentally)
4386
4387 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4388
4389         * elmo-nntp.el (elmo-nntp-debug): New function.
4390         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4391         (elmo-network-authenticate-session): Hide auth-info from the log.
4392
4393         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4394         user name if it is equal to elmo-nntp-default-user.
4395
4396 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4397
4398         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4399         instead of shimbun-server-internal;
4400         Use shimbun-current-group instead of shimbun-current-group-internal.
4401         (elmo-folder-plugged-p): Use shimbun-server instead of
4402         shimbun-server-internal.
4403         (elmo-folder-set-plugged): Ditto.
4404         (elmo-net-port-info): Ditto.
4405         (elmo-folder-check): Ditto.
4406         (elmo-folder-expand-msgdb-path): Ditto.
4407         (elmo-folder-list-subfolders): Ditto.
4408
4409 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4410
4411         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4412         Convert field-name to lower case.
4413         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4414
4415 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4416
4417         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4418         `message' and `error' take format string.
4419
4420 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4421
4422         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4423
4424 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4425
4426         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4427         recursive call (can't byte compile on emacs 20.7).
4428
4429 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4430
4431         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4432         (elmo-folder-list-message-entities): New API.
4433         (elmo-message-entity): Ditto.
4434         (elmo-message-entity-parent): Ditto.
4435         (elmo-folder-do-each-message-entity): Ditto.
4436         (elmo-message-entity-number): Ditto.
4437         (elmo-message-entity-field): Ditto.
4438         (elmo-message-entity-set-field): Ditto.
4439         (elmo-folder-count-flags): Ditto.
4440         (elmo-folder-length): Ditto.
4441
4442         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4443         not.
4444
4445         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4446         (elmo-msgdb-count-marks): Abolish.
4447         (elmo-msgdb-make-entity): Ditto.
4448         (elmo-msgdb-do-each-entity): Ditto.
4449         (elmo-msgdb-message-entity): New inline function.
4450         (elmo-msgdb-message-entity-field): Ditto.
4451         (elmo-msgdb-message-entity-set-field): Ditto.
4452         (elmo-msgdb-make-message-entity): New function.
4453
4454 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4455
4456         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4457         to flag. (All other related portions are changed.)
4458         (elmo-folder-msgdb-create): Likewise.
4459         (elmo-generic-folder-append-messages): Use flag-table instead of
4460         seen-list.
4461         (elmo-folder-move-messages): Removed redundant process.
4462         (elmo-folder-synchronize): Likewise.
4463
4464         * elmo-msgdb.el (elmo-flag-table-get): New function.
4465         (elmo-flag-table-save): Fixed.
4466         (elmo-msgdb-length): New inline function.
4467         (elmo-msgdb-flag-table): New function.
4468         (elmo-msgdb-mark): Add optional argument new.
4469         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4470         (elmo-msgdb-seen-list): Ditto.
4471         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4472
4473
4474 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4475
4476         * elmo.el (elmo-message-set-mark): Abolish.
4477         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4478         (All related portions are changed.)
4479
4480         * elmo-msgdb.el (toplevel): Added comment.
4481         (elmo-load-msgdb): Added 4th element `path'.
4482         (elmo-msgdb-append): Follow the change above.
4483         (elmo-msgdb-clear): Ditto.
4484         (elmo-msgdb-delete-msgs): Ditto.
4485         (elmo-msgdb-get-path): New inline function.
4486         (elmo-msgdb-set-path): Ditto.
4487         (elmo-flag-table-filename): New variable.
4488         (elmo-flag-table-load): New function.
4489         (elmo-flag-table-set): Ditto.
4490         (elmo-flag-table-save): Ditto.
4491         (elmo-msgdb-get-field-value): Abolish.
4492         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4493
4494 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4495
4496         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4497         the folder has been deleted successfully.
4498         * elmo-imap4.el (elmo-folder-delete): Ditto.
4499         * elmo-archive.el (elmo-folder-delete): Ditto.
4500         * elmo-localdir.el (elmo-folder-delete): Ditto.
4501         * elmo-maildir.el (elmo-folder-delete): Ditto.
4502
4503 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4504
4505         * elmo-util.el (elmo-string-member-ignore-case): New function.
4506         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4507         (elmo-imap4-fetch-callback-1-subr): Likewise.
4508
4509 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4510
4511         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4512         the case of the name attribute "\Noselect".
4513
4514 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4515
4516         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4517
4518         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4519         flist, is not always a member of onum-alist.
4520
4521 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4522
4523         * elmo-version.el (elmo-version): Up to 2.11.3.
4524
4525 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4526
4527         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4528         copied from localdir's one.
4529
4530         * elmo-pipe.el (elmo-folder-rename): New method, rename
4531         destination folder with leaving source folder as it is.
4532
4533 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4534
4535         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4536         replace-regexp.
4537
4538 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4539
4540         * elmo-version.el (elmo-version): Up to 2.11.2.
4541
4542 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4543
4544         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4545         shimbun-open in case of "@".
4546         (elmo-folder-open-internal): Cope with shimbun = nil case.
4547         (elmo-folder-plugged-p): Ditto.
4548         (elmo-folder-list-subfolders): Make list for "@/" group.
4549
4550 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4551
4552         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4553         mailbox (e.g. for %~/something).
4554
4555 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4556
4557         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4558         Replace nested conditional with guard clauses.
4559
4560 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4561
4562         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4563         error [wl:11327].
4564
4565         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4566         print-depth.
4567
4568 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4569
4570         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4571         Replace nested conditional with guard clauses.
4572
4573 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4574
4575         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4576         (elmo-passwd-alist-save): Ditto.
4577         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4578
4579 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4580
4581         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4582         dir-name only if it is absolute path.
4583         (TODO: distinguish +/something and +something)
4584
4585 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4586
4587         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4588         path for "+~/something".
4589
4590 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4591
4592         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4593         as non-directory, cause error before rename-file.
4594         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4595         apropriately, mimic localdir's one.
4596         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4597
4598 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4599
4600         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4601
4602 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4603
4604         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4605
4606         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4607         
4608         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4609         is included in the global-mark or not.
4610
4611 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4612
4613         * utf7.el (toplevel): Avoid error when the function
4614         find-coding-system does not exist.
4615
4616 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4617
4618         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4619         cache even if the folder is plugged.
4620         (elmo-nntp-search-primitive): Do nothing when body search is
4621         invoked (although it is not used by the change above).
4622         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4623
4624 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4625
4626         * elmo-version.el (elmo-version): Up to 2.11.1.
4627
4628 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4629
4630         * elmo-archive.el: Specify charset.
4631
4632 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4633
4634         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4635         process buffer lives or not.
4636
4637         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4638         while flushing queues (It causes infinite loop).
4639
4640 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4641
4642         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4643
4644 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4645
4646         * utf7.el (toplevel): Check the ucs features dynamically.
4647         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4648
4649         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4650         folder is creatabe or not if it already exists.
4651
4652 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4653
4654         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4655
4656         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4657
4658         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4659         (elmo-imap4-read-response): Take care of garbage response.
4660
4661 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4662
4663         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4664         just return nil instead of error.
4665
4666 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4667
4668         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4669         search-key is "body".
4670
4671 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4672
4673         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4674         of elmo-string-matched-assoc to use match-data.
4675         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4676
4677 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4678
4679         * elmo-split.el (elmo-split->): New function.
4680         (elmo-split-<): Ditto.
4681
4682 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4683
4684         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4685         workaround for invalid message-id.
4686
4687 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4688
4689         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4690         return normal pop3 session or pop3 biff session.
4691
4692 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4693
4694         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4695         info part to the cur files when the new files already have it.
4696         (Adviced by Jared Rhine <jared@wordzoo.com>)
4697
4698 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4699
4700         * elmo-split.el (elmo-split-default-action): New variable.
4701         (elmo-split-subr): Use it if all other conditions are passed.
4702         Extend `fname' and rename it as `action'. (implemented
4703         Teranishi-san's idea in [wl:10800])
4704
4705 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4706
4707         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4708         * elmo-util.el: Ditto.
4709
4710 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4711
4712         * elmo.el (elmo-message-accessible-p): Renamed from
4713         elmo-message-cached-p and rewritten.
4714
4715 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4716
4717         * elmo.el (elmo-folder-list-flagged): New generic function.
4718         (elmo-folder-list-importants): New implementation.
4719         (elmo-folder-list-answereds): Ditto.
4720         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4721         Added 'digest'.
4722         (elmo-message-cached-p): New function.
4723         (elmo-message-set-flag): Ditto (no content).
4724         (elmo-message-unset-flag): Ditto.
4725         (elmo-folder-list-messages-mark-match): Abolish.
4726
4727         * elmo-util.el (elmo-regexp-opt): New function.
4728
4729         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4730         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4731         Added 'digest'.
4732         (elmo-msgdb-list-flagged): New function.
4733
4734         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4735         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4736         Added 'digest'.
4737
4738         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4739
4740 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4741
4742         * elmo-version.el (elmo-version): Up to 2.11.0.
4743
4744 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4745
4746         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4747         `elmo-file-cache-exists-p'; use proper mark that depends on
4748         `use-cache'.
4749         (elmo-msgdb-unset-flag): Ditto.
4750         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4751
4752         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4753         with 4th argument `use-cache'.
4754
4755 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4756
4757         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4758         (elmo-folder-mark-as-important): Ditto.
4759         (elmo-folder-unmark-read): Ditto.
4760         (elmo-folder-mark-as-read): Ditto.
4761         (elmo-folder-unmark-answered): Ditto.
4762         (elmo-folder-mark-as-answered): Ditto.
4763
4764         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4765         message status.
4766         (elmo-msgdb-mark): Likewise.
4767         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4768         (elmo-msgdb-unset-flag): Likewise.
4769
4770         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4771
4772 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4773
4774         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4775         `last:' filter.
4776
4777 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4778
4779         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4780         set spool-length to 0.
4781
4782 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4783
4784         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4785         (elmo-dop-queue-flush): Fixed last change.
4786
4787 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4788
4789         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4790         if require-msgdb slot is nil.
4791         (elmo-folder-list-importants): Likewise.
4792
4793 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4794
4795         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4796         mark is changed.
4797
4798         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4799         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4800         is changed.
4801
4802 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4803
4804         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4805
4806 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4807
4808         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4809
4810         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4811
4812 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4813
4814         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4815         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4816
4817 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4818
4819         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4820         the problem reported by Sean Rima [wl-en:180].
4821
4822 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4823
4824         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4825
4826         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4827
4828         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4829
4830         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4831
4832         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4833
4834         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4835
4836         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4837
4838 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4839
4840         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4841         status number.
4842
4843 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4844
4845         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4846         (elmo-folder-mark-as-read): Follow the API change.
4847         (elmo-message-set-cached): New function.
4848
4849         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4850
4851         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4852
4853         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4854         (elmo-folder-mark-as-important): Ditto.
4855         (elmo-folder-unmark-read): Ditto.
4856         (elmo-folder-mark-as-read): Ditto.
4857         (elmo-folder-unmark-answered): Ditto.
4858         (elmo-folder-mark-as-answered): Ditto.
4859
4860         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4861         (elmo-folder-unmark-important): Ditto.
4862         (elmo-folder-mark-as-read): Ditto.
4863         (elmo-folder-unmark-read): Ditto.
4864         (elmo-folder-mark-as-answered): Ditto.
4865         (elmo-folder-unmark-answered): Ditto.
4866
4867         * elmo-mark.el (toplevel): Removed some mark method definitions.
4868
4869         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4870         (elmo-map-folder-mark-as-answered): Ditto.
4871         (elmo-folder-unmark-important): Add :before qualifier.
4872         (elmo-folder-mark-as-important): Ditto.
4873         (elmo-folder-unmark-read): Ditto.
4874         (elmo-folder-mark-as-read): Ditto.
4875         (elmo-folder-unmark-answered): Define.
4876         (elmo-folder-mark-as-answered): Ditto.
4877
4878         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4879         (elmo-map-folder-unmark-answered): Ditto.
4880
4881         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4882
4883         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4884         (elmo-folder-mark-as-important): Ditto.
4885         (elmo-folder-unmark-read): Ditto.
4886         (elmo-folder-mark-as-read): Ditto.
4887         (elmo-folder-unmark-answered): Ditto.
4888         (elmo-folder-mark-as-answered): Ditto.
4889
4890         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4891         `mark'; evaluate mark condition.
4892         (elmo-msgdb-match-condition-internal): New function.
4893         (elmo-msgdb-match-condition): Call it; changed argument.
4894
4895         * elmo.el (elmo-folder-search): Follow the API change on
4896         `elmo-msgdb-match-condition'.
4897
4898 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4899
4900         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4901         original mark is non-nil.
4902
4903 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4904
4905         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4906         (elmo-map-folder-list-answereds): New method.
4907         (elmo-folder-list-unreads): Add :around qualifier.
4908         (elmo-folder-list-importants): Ditto.
4909         (elmo-folder-list-answereds): Ditto.
4910
4911 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4912
4913         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4914
4915         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4916         method if msgdb is not required.
4917         (elmo-filter-folder-list-importants): Don't treat global-mark.
4918
4919         * elmo.el (elmo-folder-list-importants): Ditto.
4920
4921         * elmo-net.el (elmo-folder-list-importants): Ditto.
4922
4923         * elmo-map.el (elmo-folder-list-importants): Ditto.
4924
4925         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4926
4927         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4928         (elmo-imap4-folder-list-any-plugged): New function.
4929         (elmo-imap4-search-internal-primitive): Use it.
4930
4931         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4932         only when require-msgdb slot is non-nil.
4933         (elmo-folder-close): Clear target folder's msgdb.
4934
4935 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4936
4937         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4938         (elmo-pop3-msgdb-create-by-header): Ditto.
4939         (elmo-pop3-msgdb-create-message): Ditto.
4940
4941         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4942
4943         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4944
4945         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4946
4947         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4948         (elmo-folder-msgdb-create): Ditto.
4949         (elmo-nntp-folder-msgdb-create): Ditto.
4950         (elmo-nntp-msgdb-create-by-header): Ditto.
4951         (elmo-nntp-msgdb-create-message): Ditto.
4952         (elmo-folder-list-unreads): Define.
4953
4954         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4955         (elmo-folder-append-messages): Ditto.
4956         (elmo-folder-list-unreads): Define.
4957         (elmo-folder-list-importants): Ditto.
4958         (elmo-folder-list-answereds): Ditto.
4959
4960         * elmo-net.el (elmo-folder-list-unreads): Define.
4961         (elmo-folder-list-importants): Ditto.
4962         (elmo-folder-list-answereds): Ditto.
4963         (elmo-folder-list-answereds-plugged): Ditto.
4964         (elmo-folder-msgdb-create): Follow the API change.
4965         (elmo-folder-msgdb-create-unplugged): Ditto.
4966         (elmo-folder-unmark-answered): Define.
4967         (elmo-folder-mark-as-answered-unplugged): Ditto.
4968         (elmo-folder-unmark-answered-unplugged): Ditto.
4969
4970         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4971         (elmo-msgdb-unread-uncached-mark): Ditto.
4972         (elmo-msgdb-unread-cached-mark): Ditto.
4973         (elmo-msgdb-read-uncached-mark): Ditto.
4974         (elmo-msgdb-answered-cached-mark): Ditto.
4975         (elmo-msgdb-answered-uncached-mark): Ditto.
4976         (elmo-msgdb-important-mark): Ditto.
4977         (elmo-msgdb-set-mark): Rewrite.
4978         (elmo-msgdb-count-marks): Rewrite.
4979         (elmo-msgdb-mark-alist-set): Abolish.
4980         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4981         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4982
4983         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4984         (elmo-folder-close): Define.
4985         (elmo-folder-msgdb-create): Follow the API change.
4986         (elmo-folder-list-unreads): Rewrite.
4987         (elmo-folder-mark-as-important): Ditto.
4988         (elmo-folder-unmark-important): Ditto.
4989         (elmo-folder-mark-as-read): Ditto.
4990         (elmo-folder-unmark-read): Ditto.
4991         (elmo-folder-mark-as-answered): Define.
4992         (elmo-folder-unmark-answered): Ditto.
4993
4994         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4995         (elmo-folder-append-messages): Ditto.
4996
4997         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4998
4999         * elmo-map.el (elmo-folder-list-unreads): Ditto.
5000         (elmo-folder-list-importants): Ditto.
5001
5002         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
5003         (elmo-folder-append-messages): Ditto.
5004
5005         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
5006         change.
5007         (elmo-folder-msgdb-create-plugged): Ditto.
5008         (elmo-folder-append-messages): Ditto.
5009         (elmo-folder-list-answereds-plugged): Define.
5010         (elmo-imap4-search-internal-primitive): Add `mark' processing.
5011         (elmo-folder-unmark-answered-plugged): Define.
5012         (elmo-folder-mark-as-answered-plugged): Ditto.
5013         (elmo-folder-search-requires-msgdb-p): Ditto.
5014
5015         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
5016         (elmo-folder-initialize): Set it.
5017         (elmo-folder-msgdb): Define.
5018         (elmo-folder-check): Call elmo-folder-synchronize.
5019         (elmo-folder-close): Define.
5020         (elmo-folder-commit): Ditto.
5021         (elmo-folder-msgdb-create): Rewrite.
5022         (elmo-folder-list-unreads): Ditto.
5023         (elmo-folder-list-importants): Ditto.
5024         (elmo-folder-mark-as-read): Ditto.
5025         (elmo-folder-unmark-read): Ditto.
5026         (elmo-folder-mark-as-important): Ditto.
5027         (elmo-folder-unmark-important): Ditto.
5028         (elmo-folder-mark-as-answered): Define.
5029         (elmo-folder-unmark-answered): Ditto.
5030
5031         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
5032         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
5033         (elmo-dop-queue-method-name-alist): Likewise.
5034         (elmo-folder-mark-as-answered-dop): New inline function.
5035         (elmo-folder-unmark-answered-dop): Ditto.
5036         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
5037
5038         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
5039         (elmo-folder-msgdb-create): Ditto.
5040         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
5041         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
5042         (elmo-archive-parse-mmdf): Ditto.
5043
5044         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
5045         (elmo-folder-list-unreads-internal): Ditto.
5046
5047         * elmo.el (elmo-folder-msgdb): Define as generic function.
5048         (elmo-folder-list-messages): Added argument `in-msgdb'.
5049         (elmo-folder-list-unreads): Define as generic function.
5050         (elmo-folder-list-importants): Ditto.
5051         (elmo-folder-list-answereds): Ditto.
5052         (elmo-folder-list-messages-with-global-mark): New function.
5053         (elmo-folder-msgdb-create): Removed mark arguments.
5054         (elmo-folder-unmark-answered): New generic function.
5055         (elmo-folder-mark-as-answered): Ditto.
5056         (elmo-folder-append-messages): Removed argunment `unread-marks'
5057         (elmo-folder-list-unreads-internal): Abolish.
5058         (elmo-folder-list-importants-internal): Ditto.
5059         (elmo-folder-search-requires-msgdb-p): New generic function.
5060         (elmo-folder-search-requires-msgdb-p-internal): New function.
5061         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
5062         elmo-msgdb-load.
5063         (elmo-folder-search-fast): Added key 'mark'.
5064         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
5065         instead of unread-marks argument.
5066         (elmo-folder-move-messages): Removed argunment `unread-marks'
5067         (elmo-folder-unmark-important): Define.
5068         (elmo-folder-mark-as-important): Ditto.
5069         (elmo-folder-unmark-read): Ditto.
5070         (elmo-folder-mark-as-read): Ditto.
5071         (elmo-folder-unmark-answered): Ditto.
5072         (elmo-folder-mark-as-answered): Ditto.
5073         (elmo-folder-replace-marks): Abolish.
5074         (elmo-generic-folder-append-msgdb): Append msgdb before checking
5075         duplicates.
5076         (elmo-folder-synchronize): Removed mark arguments;
5077         return crosspost only number.
5078
5079 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5080
5081         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
5082         Remove redundunt connectivity check.
5083
5084 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5085
5086         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
5087         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
5088
5089 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
5090
5091         * pldap.el (ldap-decode-string): Return string as-is if
5092         `ldap-coding-system' is nil.
5093         (ldap-encode-string): Ditto.
5094         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
5095         (ldap-default-host): Fixed docstring.
5096
5097 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
5098
5099         * elmo-util.el (elmo-warning): Define as a macro which uses
5100         `display-warning' if it is defined as a function.
5101
5102         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
5103         (elmo-split-equal): Use it.
5104         (elmo-split-match): Ditto.
5105         (elmo-split-message-entity): New buffer-local variable.
5106         (elmo-split-subr): Set it.
5107
5108         * elmo-version.el (elmo-version): Up to 2.9.15.
5109
5110 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
5111
5112         * elmo-imap4.el (elmo-network-initialize-session):
5113         Check capability after starttls.
5114
5115 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
5116
5117         * elmo-util.el (elmo-list-delete): Added optional argument
5118         DELETE-FUNCTION.
5119
5120         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
5121
5122         * elmo-util.el (elmo-warning): Ignore errors while recenter.
5123
5124         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
5125
5126         * elmo-imap4.el (elmo-folder-initialize): Don't use
5127         elmo-imap4-default-mailbox.
5128
5129 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5130
5131         * elmo-split.el (toplevel): Use `product-provide'.
5132         (elmo-split): Checkdoc.
5133
5134 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
5135
5136         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
5137         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
5138         the function `elmo-imap4-debug-1'.
5139
5140 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5141
5142         * elmo-split.el (elmo-split): Moved to run hooks and to show
5143         message from elmo-split-subr.
5144         (elmo-split-subr): Follow the change above.
5145
5146         * elmo-split.el (elmo-split-subr): New function (renamed from
5147         elmo-split-subr).
5148         (elmo-split): Changed to call elmo-split-subr by element of
5149         elmo-split-folder.
5150         (elmo-split-folder): Changed customization type to choice.
5151
5152 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5153
5154         * elmo-split.el (elmo-split-and): Fixed condition.
5155
5156 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5157
5158         * elmo-split.el: New file.
5159         (elmo-split): Fixed logic.
5160         Display "Test:" instead of "Folder:" when reharsal.
5161
5162         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
5163         explicitly.
5164
5165         * elmo-version.el (elmo-version): Up to 2.9.14.
5166
5167         * elmo-util.el (elmo-expand-newtext): New function (renamed from
5168         wl-expand-newtext).
5169
5170 2002-06-10  Kenichi Sato <ksato@sonycom.com>
5171
5172         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
5173         message with no message-id field.
5174
5175 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
5176
5177         * elmo-version.el (elmo-version): Up to 2.9.13.
5178
5179         * elmo-dop.el (elmo-folder-status-dop): Fix.
5180
5181 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
5182
5183         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
5184
5185         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
5186         changing default value of default-mime-charset.
5187         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
5188
5189         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
5190
5191         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
5192         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
5193         instead of elmo-dop-queue-method-name-alist to check merging queue.
5194         (elmo-folder-delete-messages-dop): Delete from queue if negative
5195         message number.
5196         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
5197         file is already removed.
5198
5199 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
5200
5201         * elmo-vars.el: Bind colon keywords for old Emacsen.
5202
5203 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5204
5205         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
5206         against non-exsisting charset.
5207
5208 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
5209
5210         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
5211         Use eword-decode-and-unfold-unstructured-field-body.
5212
5213         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
5214         (elmo-msgdb-create-overview-from-buffer): Use document charset if
5215         exists to decode raw subject string.
5216         (toplevel): Require 'mime.
5217
5218         * elmo-version.el (elmo-version): Up to 2.9.12.
5219
5220 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
5221
5222         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
5223         (elmo-msgdb-set-mark): Ditto.
5224
5225         * elmo-version.el (elmo-version): Up to 2.9.11.
5226
5227 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
5228
5229         * elmo-util.el (elmo-delete-match-files): New function.
5230
5231         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
5232         instead of elmo-delete-directory.
5233
5234         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
5235         elmo-hash-minimun-size as 63.
5236
5237         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
5238         elmo-diff-unread is nil.
5239
5240         * elmo-imap4.el (elmo-folder-open): Fix.
5241
5242         * elmo.el (elmo-message-mark): Rewrite.
5243         (elmo-message-field): Ditto.
5244         (elmo-message-set-mark): Ditto.
5245         (elmo-folder-replace-marks): New function.
5246         (elmo-generic-folder-append-msgdb): Removed third argument for
5247         elmo-msgdb-append.
5248         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
5249         (elmo-msgdb-load): New implementation.
5250
5251         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
5252
5253         * elmo-util.el (elmo-list-insert): New implementation.
5254
5255         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
5256         argument for elmo-msgdb-append.
5257         
5258
5259         * elmo-msgdb.el (elmo-load-msgdb): New function.
5260         (elmo-make-msgdb): Ditto.
5261         (elmo-msgdb-get-index): New inline function.
5262         (elmo-msgdb-set-index): Ditto.
5263         (elmo-msgdb-get-entity-hashtb): Ditto.
5264         (elmo-msgdb-get-mark-hashtb): Ditto.
5265         (elmo-msgdb-get-mark): Ditto.
5266         (elmo-msgdb-set-mark): Ditto.
5267         (elmo-msgdb-count-marks): Ditto.
5268         (elmo-msgdb-get-number): Ditto.
5269         (elmo-msgdb-get-field): Ditto.
5270         (elmo-msgdb-seen-list): Ditto.
5271         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
5272         (elmo-msgdb-delete-msgs): Follow the changes above.
5273         (elmo-msgdb-overview-get-entity): Ditto.
5274         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
5275         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
5276         and rewritten.
5277         (elmo-msgdb-make-index): Likewise.
5278         (elmo-msgdb-append): Removed third argument.
5279         (elmo-msgdb-clear): Clear index as nil.
5280         (elmo-folder-set-info-hashtb): Removed.
5281         (elmo-folder-set-info-max-by-numdb): Ditto.
5282         (elmo-folder-info-make-hashtb): Ditto.
5283
5284         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
5285
5286         * elmo-map.el (elmo-folder-pack-number): Ditto.
5287
5288 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
5289
5290         * elmo-version.el (elmo-version): Up to 2.9.10.
5291
5292         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
5293
5294         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
5295
5296 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
5297
5298         * elmo-utils.el (elmo-make-directory): Add option.
5299         Default file mode is 700.
5300
5301 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5302
5303         * elmo-shimbun.el (elmo-folder-local-p): Defined.
5304
5305 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
5306
5307         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
5308         mime-charset.
5309
5310         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
5311         and "smaller".
5312
5313 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5314
5315         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5316         (elmo-shimbun-folder-entity-hash): New function.
5317         (elmo-shimbun-folder-shimbun-header): Ditto.
5318         (elmo-shimbun-entity-to-header): Ditto.
5319         (elmo-shimbun-msgdb-to-headers): Removed.
5320         (elmo-shimbun-folder-setup): Ditto.
5321         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5322         for hash key.
5323         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5324         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5325         Removed useless local bind.
5326         (elmo-folder-open-internal): Don't call
5327         `elmo-shimbun-folder-setup'.
5328         (elmo-folder-close-internal): Clear entity-hash slot.
5329         (elmo-folder-clear): Ditto.
5330         (elmo-shimbun-msgdb-create-entity): Use
5331         `elmo-shimbun-folder-shimbun-header'.
5332         (elmo-map-message-fetch): Ditto.
5333         (elmo-shimbun-update-overview): Use overview entity instead of
5334         shimbun header to lookup id by references.
5335         (elmo-map-folder-list-message-locations): Use not only headers but
5336         also overviews to list locations.
5337
5338 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5339
5340         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5341         msgdb path.
5342
5343         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5344
5345 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5346
5347         * elmo-util.el (elmo-read-search-condition-internal): Give default
5348         value for date.
5349
5350 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5351
5352         * elmo-util.el (elmo-condition-parse-search-value): Accept
5353         YYYY-MM-DD format to search.
5354         * elmo-date.el (elmo-date-get-datevec): Likewise.
5355
5356 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5357
5358         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5359         debugging code.
5360
5361 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5362
5363         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5364         from t.
5365
5366         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5367
5368         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5369         case from `elmo-folder-exists-p'.
5370         (elmo-folder-exists-p): Removed.
5371         (elmo-folder-creatable-p) Ditto.
5372
5373         * elmo-net.el (elmo-folder-create): Defined.
5374         (elmo-folder-create-unplugged): New function.
5375         (elmo-folder-exists-p): Changed default value to nil from t.
5376
5377         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5378         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5379
5380         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5381         `elmo-create-folder-dop' and append queue
5382         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5383         (elmo-folder-create-dop-delayed): New function.
5384
5385         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5386
5387         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5388
5389         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5390         (elmo-folder-writable-p) : Ditto.
5391
5392         * elmo-version.el (elmo-version): Up to 2.9.9.
5393
5394 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5395
5396         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5397         `elmo-message-use-cache-p' returns nil.
5398         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5399         (ignore cache file and refer the substance in local folders)
5400
5401 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5402
5403         * elmo-version.el (elmo-version): Up to 2.9.8.
5404
5405 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5406
5407         * elmo-version.el (elmo-version): Up to 2.9.7.
5408
5409         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5410
5411 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5412
5413         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5414
5415 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5416
5417         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5418         from --early.
5419         (elmo-map-folder-list-message-locations): Reverse location list.
5420
5421 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5422
5423         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5424
5425 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5426
5427         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5428         as a key.
5429         (elmo-nntp-folder-list-subfolders): Follow the change above.
5430
5431 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5432
5433         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5434         name if authentication type is specified.
5435
5436 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5437
5438         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5439         variable.
5440         (elmo-default-nntp-stream-type): Ditto.
5441         (elmo-default-pop3-stream-type): Ditto.
5442
5443 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5444
5445         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5446
5447 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5448
5449         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5450         elmo-vars.el.
5451         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5452
5453         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5454         (elmo-maildir-folder-path): Ditto.
5455         (elmo-maildir-list): Ditto (abolished).
5456
5457 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5458
5459         * elmo-version.el (elmo-version): Up to 2.9.6.
5460
5461 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5462
5463         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5464         (elmo-maildir-folder-path): Ditto.
5465         (elmo-msgdb-directory): Ditto.
5466         (elmo-passwd-life-time): Ditto.
5467         (elmo-msgdb-extra-fields): Ditto.
5468         (elmo-enable-disconnected-operation): Ditto.
5469
5470 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5471
5472         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5473         other choices.
5474         (elmo-pop3-default-authenticate-type): Ditto.
5475
5476 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5477
5478         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5479         choices for custom.
5480         (elmo-pop3-default-authenticate-type): Ditto.
5481
5482 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5483
5484         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5485         mailbox to new-folder.
5486
5487 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5488
5489         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5490         less than new, set new as unread.
5491
5492         * elmo-util.el (elmo-string): Don't put text-property if nil.
5493
5494 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5495
5496         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5497         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5498
5499 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5500
5501         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5502         is nil on `completing-read'.
5503
5504 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5505
5506         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5507         for namespace part.
5508         (elmo-imap4-parse-namespace-subr): Ditto.
5509         (elmo-folder-list-subfolders): Append a delimiter when the specified
5510         folder path is a root with namespace and does not end with delimiter.
5511
5512 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5513
5514         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5515         was used.
5516
5517 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5518
5519         * elmo-util.el (elmo-save-buffer): The first argument of message
5520         is a format control string.
5521
5522 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5523
5524         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5525         `elmo-folder-diff').
5526         (elmo-diff-unread): Likewise.
5527
5528 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5529
5530         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5531         is t on `completing-read'.
5532
5533 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5534
5535         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5536         method of target folder with self mark-alist if MARK-ALIST is nil.
5537
5538 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5539
5540         * elmo-version.el (elmo-version): Up to 2.9.5.
5541
5542 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5543
5544         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5545         (elmo-dop-merge-funcs): Remove.
5546
5547 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5548
5549         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5550         Return t if PATH is directory, too.
5551         Use `dolist' instead of while loop.
5552
5553 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5554
5555         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5556         is deleted.
5557
5558 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5559
5560         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5561         return value to t.
5562         (elmo-folder-list-messages-unplugged): Return t if
5563         elmo-enable-disconnected-operation is nil.
5564
5565         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5566         `elmo-folder-list-messages-internal'.
5567
5568 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5569
5570         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5571         Change to looking-at `[23][0-9]+'.
5572         (elmo-network-initialize-session): Use 'error-msg'
5573         * elmo-net.el (elmo-network-open-session): Set unplugged
5574         if elmo-network-initialize-session returns 'elmo-open-err.
5575
5576 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5577
5578         * elmo-version.el (elmo-version): Up to 2.9.4.
5579
5580 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5581
5582         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5583         `elmo-folder-list-messages-internal'.
5584
5585 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5586
5587         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5588         (elmo-message-match-condition): New method.
5589         (elmo-folder-search-fast): New inline function.
5590         (elmo-msgdb-search): Removed.
5591
5592         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5593         target folder if it is unplugged.
5594         (elmo-folder-list-messages-internal): Return t if target folder is
5595         unplugged and itself is persistent; In this case, use list be
5596         searched already.
5597
5598         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5599         (elmo-msgdb-search-internal-primitive): Ditto.
5600         (elmo-msgdb-match-condition): New function.
5601         (elmo-msgdb-match-condition-primitive): Ditto.
5602
5603         * elmo-util.el (elmo-filter-condition-p): New macro.
5604
5605         * elmo-cache.el (elmo-folder-search): Removed.
5606
5607         * elmo-localdir.el (elmo-folder-search): Ditto.
5608
5609         * elmo-maildir.el (elmo-folder-search): Ditto.
5610
5611         * elmo-mark.el (elmo-folder-search): Ditto.
5612
5613         * elmo-nmz.el (elmo-folder-search): Ditto.
5614
5615         * elmo-sendlog.el (elmo-folder-search): Ditto.
5616
5617         * elmo-shimbun.el (elmo-folder-search): Ditto.
5618
5619         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5620         if folder is unplugged.
5621
5622         * elmo-nntp.el (elmo-folder-search): Likewise.
5623         (elmo-nntp-search-internal): New function.
5624
5625         * elmo-version.el (elmo-version): Up to 2.9.3.
5626
5627 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5628
5629         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5630
5631 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5632
5633         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5634
5635 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5636
5637         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5638
5639 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5640
5641         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5642         (elmo-map-folder-list-message-locations): Do drive letter conversion
5643         on Windows environment.
5644         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5645         (elmo-map-message-fetch): Ditto.
5646
5647 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5648
5649         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5650         (elmo-network-initialize-session): Ditto.
5651
5652 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5653
5654         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5655
5656         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5657
5658         * elmo-util.el (elmo-progress-clear): Ditto.
5659
5660         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5661         `DD-Mon-YYYY' type date.
5662
5663 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5664
5665         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5666         `elmo-date-make-sortable-string' instead of
5667         `timezone-make-date-sortable'.
5668
5669         * elmo-date.el (elmo-date-make-sortable-string): Use
5670         `timezone-make-time-string'.
5671
5672 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5673
5674         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5675
5676         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5677         `since'; Fix timezone.
5678
5679         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5680
5681         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5682
5683 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5684
5685         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5686
5687 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5688
5689         * elmo.el (elmo-generic-folder-append-messages): Make
5690         fetch-strategy with `use-cache' as 'maybe. Check return value of
5691         `elmo-message-fetch'.
5692         (elmo-message-fetch): Return return value of
5693         `elmo-message-fetch-with-cache-process'.
5694         (elmo-message-fetch-with-cache-process): Return non-nil if
5695         fetching was succeed. Load cache when fetching was failed and
5696         fetch-strategy-use-cache is 'maybe.
5697
5698         * elmo-util.el (elmo-file-cache-load): New function.
5699
5700         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5701         defun.
5702
5703         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5704         non-nil if fetching was succeed.
5705
5706         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5707
5708         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5709
5710         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5711         (elmo-message-fetch-with-cache-process): Likwise.
5712
5713         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5714
5715         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5716
5717         * elmo-version.el (elmo-version): Up to 2.9.2.
5718
5719 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5720
5721         * elmo.el (elmo-folder-delete): Delete msgdb path.
5722
5723         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5724
5725         * elmo-maildir.el (elmo-folder-delete): Ditto.
5726
5727         * elmo-localdir.el (elmo-folder-delete): Ditto.
5728
5729         * elmo-imap4.el (elmo-folder-delete): Ditto.
5730
5731 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5732
5733         * elmo.el (luna-define-class): Added `biff' slot.
5734
5735         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5736         (elmo-pop3-debug-inhibit-logging): Abolished.
5737         (elmo-network-close-session): Eliminated needless let.
5738         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5739         (elmo-pop3-send-command): Added `no-log' argument.
5740         (elmo-pop3-process-filter): Use `with-current-buffer'.
5741         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5742         if login failure.
5743         (elmo-pop3-auth-apop): Likewise.
5744         (elmo-network-authenticate-session): Likewise.
5745
5746         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5747         if biff folder.
5748
5749         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5750         string to determine protocol.
5751         (elmo-network-session-name-prefix): Abolished.
5752         (elmo-network-session-cache-key): Follow the change above.
5753         (elmo-network-open-session): Ditto.
5754
5755         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5756         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5757
5758         * elmo-version.el (elmo-version): Up to 2.9.1.
5759
5760         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5761         unmatch condition checking.
5762
5763         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5764         condition.
5765
5766 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5767
5768         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5769
5770 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5771
5772         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5773         test for while loop to execute at least one SEARCH command.
5774
5775 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5776
5777         * elmo-version.el (elmo-version): Up to 2.9.0.
5778
5779 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5780
5781         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5782         (elmo-archive-folder-path): Define.
5783         (elmo-folder-initialize): Setup `dir-name' slot.
5784         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5785         Use `dir-name' as prefix of each subfolders.
5786         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5787
5788 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5789
5790         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5791         (elmo-pipe-folder-list-target-messages): New internal function.
5792         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5793         `killed-list'.
5794         (elmo-pipe-folder-copied-list-load): New function.
5795         (elmo-pipe-folder-copied-list-save): Ditto.
5796         (elmo-folder-open-internal): Follow the change above.
5797         (elmo-folder-status): Fixed for copy.
5798
5799 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5800
5801         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5802
5803 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5804
5805         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5806         elmo-copy-file instead of elmo-add-name-to-file.
5807
5808         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5809
5810         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5811         "file://..." index.
5812
5813         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5814         of accept-process-output as 1.
5815         (elmo-pop3-read-contents): Ditto.
5816         (elmo-pop3-read-body): Ditto.
5817
5818 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5819
5820         * elmo-version.el (product-version-as-string): Remove define.
5821
5822 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5823
5824         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5825         (elmo-imap4-copy-messages): Chop number set using
5826         `elmo-imap4-number-set-chop-length'.
5827         (elmo-imap4-set-flag): Ditto.
5828         (elmo-imap4-search-internal-primitive): Ditto.
5829
5830 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5831
5832         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5833         `elmo-folder-make-temp-dir'
5834
5835         * elmo-vars.el (elmo-cache-directory): New variable.
5836         (elmo-cache-dir): Abolished.
5837         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5838
5839         * elmo-version.el (elmo-version): Up to 2.7.7.
5840
5841 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5842
5843         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5844         defcustom; Set default value as t.
5845
5846 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5847
5848         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5849         (ldap-search-program-arguments): Changed default value.
5850         (ldap-search-basic): Accept exit status 4.
5851         (ldap/field-body): Parse options.
5852         (ldap/collect-field): Ditto.
5853         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5854
5855         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5856         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5857         (elmo-imap4-accept-ok): Ditto.
5858         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5859         'notify-bye, only BYE error is reported.
5860         (elmo-folder-exists-p-plugged): Set no-error argument of
5861         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5862
5863         * elmo.el (elmo-imap4-bye-error): Changed message.
5864
5865         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5866         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5867         queues (It causes infinite loop).
5868
5869 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5870
5871         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5872         (RECENT UNSEEN MESSAGES) extension.
5873
5874 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5875
5876         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5877         Check number of overview fields.
5878
5879 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5880
5881         * elmo.el (elmo-folder-confirm-appends): Changed message.
5882         (elmo-folder-confirm-appends): Ditto.
5883
5884         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5885         `with-temp-buffer'.
5886         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5887
5888 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5889
5890         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5891         of elmo-folder-update-threshold is nil, which can be set by
5892         wl-summary-update-confirm-threshold.
5893
5894 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5895
5896         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5897         (elmo-nmz-index-alias-alist): Ditto.
5898         (elmo-map-folder-list-message-locations): Follow the change above.
5899
5900 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5901
5902         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5903
5904         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5905
5906         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5907
5908         * elmo-util.el (elmo-read): Ditto.
5909         (elmo-display-error): Ditto.
5910
5911         * elmo-vars.el (elmo-date-match): Ditto.
5912
5913         * pldap.el (ldap-coding-system): Ditto.
5914
5915         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5916         `elmo-inhibit-number-mapping' as nil.
5917
5918 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5919
5920         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5921         space delimiter for list response.
5922
5923 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5924
5925         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5926
5927 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5928
5929         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5930         (elmo-map-message-fetch): Fix.
5931         * elmo-map.el (elmo-folder-status): Fix for killed.
5932
5933 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5934
5935         * elmo-sendlog.el: New file.
5936         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5937
5938 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5939
5940         * acap.el (acap-logging-out): New buffer local variable.
5941         (acap-close): Set it.
5942         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5943         an error.
5944
5945 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5946
5947         * acap.el (acap-response-bye-p): New function.
5948         (acap-response-bye-message): Ditto.
5949         (acap-wait-for-response): If bye response is received, cause an error.
5950         (acap-parse-response): Make bye response when 'Bye' is received.
5951
5952 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5953
5954         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5955
5956 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5957
5958         * elmo-util.el (elmo-copy-file): Added argument
5959         `ok-if-already-exists'.
5960         (elmo-copy-file): Fixed typo.
5961
5962 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5963
5964         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5965
5966 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5967
5968         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5969
5970 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5971
5972         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5973         to killed-list.
5974
5975 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5976
5977         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5978         (elmo-folder-initialize): Fix for `copy'.
5979         (elmo-pipe-drain): Ditto.
5980         (elmo-folder-open-internal): Ditto.
5981         (elmo-folder-newsgroups): Fix.
5982
5983 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5984
5985         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5986         for each message.
5987
5988         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5989         recent value is returned from imap folder.
5990
5991         * elmo.el (elmo-folder-newsgroups): New generic function.
5992
5993         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5994         (elmo-folder-initialize): Set it.
5995         (elmo-folder-expand-msgdb-path): Use it.
5996         (elmo-folder-newsgroups): Define.
5997
5998         * elmo-filter.el (elmo-folder-newsgroups): Define.
5999
6000         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
6001
6002         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
6003
6004         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
6005
6006 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6007
6008         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
6009         user option.
6010         (elmo-shimbun-header-extra-field): New inline function.
6011         (elmo-shimbun-header-set-extra-field): Ditto.
6012         (elmo-shimbun-folder-header-hash-setup): Ditto.
6013         (elmo-shimbun-update-overview): Ditto.
6014         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
6015         (elmo-shimbun-folder-setup): Use
6016         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
6017         (elmo-shimbun-get-headers): Ditto.
6018         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
6019         Insert `X-Shimbun-Id:' header if extra field is set.
6020         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
6021         field's value instead of `shimbun-header-id'.
6022
6023         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
6024         inline function.
6025         (elmo-msgdb-overview-entity-set-date): Ditto.
6026         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
6027
6028 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
6029
6030         * mmimap.el (mmimap-entity-section): Changed body node number from
6031         "0" to "1".
6032
6033 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6034
6035         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
6036         `elmo-folder-delete-messages'.
6037
6038         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
6039         (elmo-folder-initialize): Changed to expand alias into index path.
6040
6041         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
6042         `elmo-mime-insert-header-from-buffer' with 6th arg
6043         `sorted-fields'.
6044
6045 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
6046
6047         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
6048
6049         * elmo.el (elmo-diff-new): New inline function.
6050         (elmo-diff-unread): Ditto.
6051         (elmo-diff-all): Ditto.
6052
6053         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
6054         value from responseb.
6055         (elmo-imap4-folder-diff-plugged): Ditto.
6056         (elmo-imap4-server-diff-async): Added recent argument.
6057         (elmo-server-diff-async): Ditto.
6058         (elmo-imap4-folder-diff-plugged): Ditto.
6059
6060         * elmo-version.el (elmo-version): Up to 2.7.6.
6061
6062 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6063
6064         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
6065         in quoted-stirng.
6066
6067 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
6068
6069         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
6070
6071         * elmo-imap4.el (elmo-folder-initialize): Ditto.
6072
6073         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6074
6075         * elmo-multi.el (elmo-folder-initialize): Ditto.
6076
6077         * elmo-util.el (elmo-parse-token): New function.
6078         (elmo-parse-prefixed-element): Ditto.
6079
6080 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6081
6082         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
6083         delete process.
6084         (elmo-imap4-accept-ok): Ditto.
6085
6086 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6087
6088         * mmimap.el (mime-imap-entity-header-string): Don't check first
6089         element of node-id is `0' (Follow last change).
6090
6091 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6092
6093         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
6094         assigned irregular node-id to nested multipart section.
6095         (initialize-instance): Followed above change.
6096
6097 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6098
6099         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
6100         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
6101         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
6102         `elmo-shimbun-get-headers');
6103         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
6104         visible article on summary exists in headers).
6105         (elmo-map-message-fetch): Cause an error when folder is unplugged.
6106
6107 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
6108
6109         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
6110         definition.
6111
6112 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
6113
6114         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
6115
6116 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6117
6118         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
6119         header separator into loop condition.
6120
6121 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6122
6123         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
6124         Return duplicate folder if it has subfolder.
6125
6126 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6127
6128         * elmo.el (elmo-make-folder): Add folder name error check.
6129
6130         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
6131         (elmo-nntp-encode-group-string): New inline function.
6132         (elmo-nntp-decode-group-string): Ditto.
6133         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
6134         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
6135         Use `not' instead of `null';
6136         Use elmo-nntp-decode-group-string.
6137
6138         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
6139
6140         * elmo-version.el (elmo-version): Up to 2.7.5.
6141
6142 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6143
6144         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
6145         Hide progress gauge if `elmo-folder-move-messages' exits
6146         nonlocally.
6147
6148 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6149
6150         * elmo-imap4.el (elmo-folder-initialize): Use
6151         `elmo-imap4-encode-folder-string' for folder name.
6152
6153 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6154
6155         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
6156         `done'.
6157
6158 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6159
6160         * elmo-util.el (elmo-progress-counter-alist): New internal
6161         variable.
6162         (elmo-progress-counter-value): New macro.
6163         (elmo-progress-counter-all-value): Ditto.
6164         (elmo-progress-counter-format): Ditto.
6165         (elmo-progress-counter-set-value): Ditto.
6166         (elmo-progress-set): New function.
6167         (elmo-progress-clear): Ditto.
6168         (elmo-progress-notify): Ditto.
6169
6170         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
6171         counter.
6172
6173         * elmo.el (elmo-generic-folder-append-messages): Call
6174         `elmo-progress-notify'.
6175         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
6176
6177         * elmo-archive.el (elmo-folder-append-messages): Call
6178         `elmo-progress-notify'.
6179
6180         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
6181
6182         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
6183
6184         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
6185
6186 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6187
6188         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
6189         'Create'.
6190         (elmo-message-encache-dop): Added argument `read'.
6191
6192         * elmo-shimbun.el (elmo-message-encache): Ditto.
6193
6194         * elmo-net.el (elmo-message-encache): Ditto.
6195
6196         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
6197         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
6198         elmo-imap4-seen-messages.
6199         (elmo-folder-msgdb-create-plugged): Initialize
6200         elmo-imap4-seen-messages;
6201         Set seen mark on elmo-imap4-seen-messages.
6202
6203         * elmo-pipe.el (elmo-folder-message-file-p): Define.
6204
6205         * elmo.el (elmo-generic-folder-append-messages): Check return value of
6206         elmo-folder-append-buffer.
6207         (elmo-folder-encache): Added optional argument `read'.
6208         (elmo-message-encache): Ditto.
6209
6210         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
6211
6212         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
6213
6214         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
6215         if append buffer content succeds.
6216
6217 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6218
6219         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
6220         elmo-display-progress.
6221
6222         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
6223         Set 4th argument of mime-display-message.
6224         (elmo-mime-display-as-is): Ditto.
6225
6226 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
6227
6228         * elmo-nmz.el (toplevel): Require 'mime-edit.
6229         (elmo-nmz-content-type-alist): Abolished.
6230         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
6231         content is not a message.
6232         (elmo-map-message-fetch): Changed behavior exept for message content;
6233         Detect mime-charset automatically, Use `mime-find-file-type' to detect
6234         content-type, Add From: and Subject: field.
6235
6236 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6237
6238         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
6239         (elmo-map-message-fetch): Add `Content-Type' field if contents is
6240         not a message.
6241
6242 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6243
6244         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
6245         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
6246
6247         * elmo-archive.el (elmo-folder-writable-p): Defined.
6248
6249         * elmo-cache.el (elmo-folder-writable-p): Ditto.
6250
6251         * elmo-filter.el (elmo-folder-writable-p): Ditto.
6252
6253         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
6254
6255         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
6256
6257         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
6258
6259         * elmo-mark.el (elmo-folder-writable-p): Ditto.
6260
6261         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
6262
6263         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
6264
6265 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
6266
6267         * elmo-util.el (elmo-address-quote-specials): New function;
6268         Renamed from `wl-address-quote-specials'.
6269
6270 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6271
6272         * elmo-version.el (elmo-version): Up to 2.7.4.
6273
6274 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
6275
6276         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
6277
6278 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6279
6280         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
6281         both compile-time and run-time to avoid byte-compile warning.
6282
6283 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
6284
6285         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
6286
6287 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6288
6289         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
6290         option.
6291         (elmo-mime-display-as-is-internal): Use it.
6292
6293         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
6294         if `read-passwd' is not defined.
6295
6296 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6297
6298         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
6299         by original number.
6300         (elmo-folder-status): Call `elmo-folder-open-internal';
6301         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
6302         (elmo-folder-close-internal): Set location-alist as nil.
6303         (elmo-folder-clear): Define.
6304         (elmo-folder-check): Don't set location-alist as nil.
6305
6306         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
6307
6308 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
6309
6310         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
6311         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
6312
6313         * mmimap.el (mime-imap-entity::requested): New slot.
6314         (mime-imap-location-fetch-entity-p): New generic function.
6315         (mime-decode-parameters): Define using `defun-maybe'.
6316         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6317         content-type structure.
6318         (mime-entity-body): Return empty body if
6319         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6320
6321         * elmo.el (elmo-message-displaying): New variable.
6322
6323         * elmo-mime.el (elmo-mime-message-display): Bind
6324         elmo-message-displaying as t.
6325
6326         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6327
6328 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6329
6330         * acap.el (acap-open): erase buffer before starting network process.
6331         (acap-store): Rewrite.
6332
6333 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6334
6335         * elmo-imap4.el (elmo-imap4-default-mailbox,
6336         elmo-imap4-default-server
6337         elmo-imap4-default-authenticate-type,
6338         elmo-imap4-default-user,
6339         elmo-imap4-default-port,
6340         elmo-imap4-default-stream-type,
6341         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6342
6343         * elmo-pop3.el (elmo-pop3-default-user,
6344         elmo-pop3-default-server,
6345         elmo-pop3-default-authenticate-type,
6346         elmo-pop3-default-port,
6347         elmo-pop3-default-stream-type,
6348         elmo-pop3-stream-type-alist): Ditto.
6349
6350         * elmo-nntp.el (elmo-nntp-default-server,
6351         elmo-nntp-default-user,
6352         elmo-nntp-default-port,
6353         elmo-nntp-default-stream-type,
6354         elmo-nntp-stream-type-alist): Ditto.
6355
6356         * elmo-vars.el: Follow changes above.
6357         (elmo-setting): New custom group; added 'elmo-setting group to
6358         above variables.
6359
6360         * elmo-version.el (elmo-version): Up to 2.7.3.
6361
6362         * acap.el (acap-parse-response): Don't delete process when BYE
6363         response (It causes hang-up on slow network environment).
6364         (toplevel): Added comment.
6365
6366 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6367
6368         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6369
6370         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6371         parsing NIL.
6372         (acap-parse-return-metadata): Ditto.
6373
6374         * slp.el: New file.
6375         (toplevel): Fixed typo.
6376
6377         * acap.el: New file.
6378         (acap-network-stream-open): Show "Connecting..." message.
6379         (acap-parse-response): Fixed problem for BYE untagged response.
6380         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6381         (toplevel): Added tiny comments.
6382
6383 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6384
6385         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6386         space delimiter for uidl response.
6387
6388 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6389
6390         * elmo-vars.el (elmo-use-semi): Eliminated.
6391
6392         * elmo-util.el (elmo-string-assoc-all): New function.
6393
6394 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6395
6396         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6397         property 'mime-preview-situation for `mime-preview-quit'.
6398
6399 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6400
6401         * elmo.el (elmo-message-fetch-with-cache-process): Call
6402         elmo-message-fetch-internal instead of causing an error when fetch
6403         strategy is 'entire but only 'section cache is available.
6404
6405 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6406
6407         * elmo-version.el (elmo-version): Up to 2.7.2.
6408
6409         * elmo.el (elmo-generic-folder-append-messages): Make
6410         fetch-strategy with `use-cache'.
6411
6412         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6413         (elmo-dop-queue-method-name): New macro.
6414
6415 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6416
6417         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6418         unbalanced parenthesis.
6419
6420 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6421
6422         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6423
6424 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6425
6426         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6427         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6428
6429 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6430
6431         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6432         local variables.
6433
6434 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6435
6436         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6437         (elmo-message-use-cache-p): Define.
6438         (elmo-folder-msgdb-create): Treat cache.
6439
6440 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6441
6442         * elmo-nntp.el (elmo-network-initialize-session): Call
6443         `elmo-nntp-send-mode-reader'.
6444         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6445
6446 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6447
6448         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6449         alist.
6450         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6451         assoc.
6452
6453         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6454         for `elmo-plugged-p'.
6455         (elmo-open-network-stream): Fixed stream-type argument.
6456
6457 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6458
6459         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6460         unknown archive type is specified.
6461
6462 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6463
6464         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6465
6466         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6467         while loading msgdb.
6468
6469         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6470         (elmo-folder-open-internal): Rewrite.
6471
6472 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6473
6474         * elmo-mime.el (elmo-mime-display-as-is-internal):
6475         Adjust buffer-multibyte status.
6476
6477 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6478
6479         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6480         of elmo-condition-find-key.
6481
6482         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6483         (elmo-condition-in-msgdb-p): Ditto.
6484         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6485         argument.
6486
6487 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6488
6489         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6490
6491 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6492
6493         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6494         label for elmo-display-progress.
6495
6496 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6497
6498         * elmo.el (elmo-folder-clear): New method.
6499         (elmo-folder-clear): Define.
6500         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6501
6502         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6503         (elmo-folder-clear): Define.
6504
6505         * elmo-map.el (elmo-folder-clear): Define.
6506
6507         * elmo-version.el (elmo-version): Up to 2.7.1.
6508
6509 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6510
6511         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6512         updates.
6513
6514 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6515
6516         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6517         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6518
6519 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6520
6521         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6522
6523         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6524         and re-written.
6525
6526         * elmo-imap4.el (elmo-folder-initialize): Use
6527         elmo-get-network-stream-type.
6528
6529         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6530
6531         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6532
6533 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6534
6535         * elmo.el (elmo-message-encache): Set unread argument for
6536         elmo-message-fetch.
6537
6538         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6539
6540         * elmo.el (elmo-net-port-info): New method.
6541
6542         * elmo-shimbun.el (elmo-net-port-info): Define.
6543         (elmo-message-encache): Ditto.
6544
6545         * elmo-net.el (elmo-net-port-info): Define as method.
6546
6547         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6548         unplugged status when elmo-enable-disconnected-operation is t.
6549
6550         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6551         of spool folder before checking new number.
6552
6553 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6554
6555         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6556         (elmo-network-setup-session): Ditto.
6557         (elmo-message-fetch-plugged): Ditto.
6558         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6559         (elmo-network-initialize-session): Ditto.
6560         (elmo-pop3-read-response): Abolish 3rd argument.
6561         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6562         (elmo-pop3-read-contents): Ditto.
6563         (elmo-pop3-read-body): Ditto.
6564         (elmo-folder-status): Call elmo-folder-close.
6565         (elmo-pop3-lock): Abolish.
6566         (elmo-pop3-unlock): Ditto.
6567         (elmo-pop3-locked-p): Ditto.
6568         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6569
6570 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6571
6572         * elmo-version.el (elmo-version): Up to 2.7.0.
6573
6574         * elmo-pop3.el (elmo-pop3-debug): New variable.
6575         (elmo-pop3-debug-inhibit-logging): Ditto.
6576         (elmo-pop3-debug): New function.
6577         (elmo-pop3-send-command): Call elmo-pop3-debug.
6578         (elmo-pop3-read-response): Added keep-lock optional argument;
6579         Don't unlock if keep-lock is non-nil.
6580         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6581         (elmo-network-authenticate-session): Bind
6582         elmo-pop3-debug-inhibit-logging as t.
6583         (elmo-network-setup-session): Call elmo-pop3-read-response with
6584         keep-lock argument.
6585         (elmo-pop3-read-msg): Ditto.
6586         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6587         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6588         (elmo-network-initialize-session): Call elmo-pop3-lock.
6589         (elmo-folder-close-internal): Don't clear location-alist slot.
6590         (elmo-folder-check): Clear location-alist slot.
6591
6592 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6593
6594         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6595         (elmo-pop3-send-command): Call elmo-pop3-lock.
6596         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6597         (elmo-pop3-read-contents): Ditto.
6598         (elmo-pop3-lock): New function.
6599         (elmo-pop3-unlock): Ditto.
6600         (elmo-pop3-locked-p): Ditto.
6601         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6602         returns t.
6603
6604 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6605
6606         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6607
6608         * elmo-util.el (elmo-file-field-primitive-condition-match):
6609         New inline function (Don't fetch file content if "first" or "last").
6610         (elmo-file-field-condition-match): Use
6611         elmo-file-field-primitive-condition-match.
6612
6613         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6614         "first".
6615
6616         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6617         (elmo-message-fetch-plugged): Fixed.
6618
6619         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6620
6621 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6622
6623         * elmo.el (elmo-folder-move-messages): Bind
6624         elmo-inhibit-display-retrieval-progress as t while moving messages.
6625
6626         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6627         New variable.
6628         (elmo-inhibit-display-retrieval-progress): Ditto.
6629
6630         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6631         for retrieval progress;
6632         Don't display progress when total buffer size is smaller than
6633         elmo-display-retrieval-progress-threshold.
6634         (elmo-message-fetch-plugged): Don't display progress when
6635         elmo-inhibit-display-retrieval-progress is non-nil.
6636
6637         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6638         for retrieval progress;
6639         Don't display progress when literal size is smaller than
6640         elmo-display-retrieval-progress-threshold.
6641         (elmo-imap4-message-fetch): Don't display progress when
6642         elmo-inhibit-display-retrieval-progress is non-nil.
6643
6644 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6645
6646         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6647         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6648         (elmo-imap4-message-fetch): Likewise.
6649
6650         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6651         (elmo-shimbun-index-range-alist): Ditto.
6652         (elmo-shimbun-use-entire-index): Abolish.
6653         (shimbun-mua-use-entire-index): Ditto.
6654         (elmo-shimbun-folder): Added new slot `range'.
6655         (elmo-folder-initialize): Setup slot `range'.
6656
6657 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6658
6659         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6660         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6661         (elmo-shimbun-get-headers): Use return value of
6662         `shimbun-article-expiration-days'.
6663         (elmo-folder-close-internal): Clean up last-check slot.
6664
6665         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6666         (elmo-pop3-total-size): New variable.
6667         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6668
6669         * elmo.el (elmo-folder-reserve-status-p): New method.
6670
6671         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6672         (elmo-shimbun-use-entire-index): New user option.
6673         (shimbun-elmo-mua): New class.
6674         (shimbun-mua-search-id): Define.
6675         (shimbun-mua-use-entire-index): Ditto.
6676         (elmo-shimbun-folder:last-check): New slot.
6677         (elmo-shimbun-headers-cache-header-list): Abolish.
6678         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6679         (elmo-shimbun-headers-cache-header-hash): Ditto.
6680         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6681         (elmo-shimbun-headers-cache-last-check): Ditto.
6682         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6683         (elmo-shimbun-headers-check-p): Rewrite.
6684         (elmo-shimbun-msgdb-to-headers): New function.
6685         (elmo-shimbun-get-headers): Rewrite.
6686         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6687         (elmo-folder-open-internal): Get headers only if
6688         `elmo-shimbun-headers-check-p' is non-nil.
6689         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6690         is non-nil.
6691         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6692         (elmo-quit): Removed.
6693
6694         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6695         function.
6696         (elmo-msgdb-overview-entity-set-extra): Ditto.
6697         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6698
6699         * elmo-map.el (elmo-folder-status): Don't call
6700         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6701         is non-nil.
6702
6703 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6704
6705         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6706         of `elmo-msgdb-search-internal-primitive' when condition's car is
6707         `and' or `or'.
6708
6709 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6710
6711         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6712
6713 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6714
6715         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6716         call `elmo-pipe-drain'.
6717
6718 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6719
6720         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6721         typo. (elmo-cache-folder -> elmo-mark-folder)
6722
6723 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6724
6725         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6726         `elmo-message-fetch'.
6727
6728 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6729
6730         * elmo-net.el (elmo-message-encache): Fixed typo.
6731         (elmo-message-fetch-unplugged): Changed call
6732         `elmo-message-fetch-internal' without argument `outbuf'.
6733
6734 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6735
6736         * elmo.el (elmo-message-encache): Define as generic function.
6737         (elmo-message-fetch-field): New generic function.
6738         (elmo-message-fetch-with-cache-process): Cause an error when
6739         fetch strategy is 'entire but only 'section cache is available.
6740         (toplevel): Fixed nmz folder definition.
6741
6742         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6743         (elmo-msgdb-resume-list-filename): Ditto.
6744         (elmo-queue-filename): Ditto.
6745         (elmo-enable-disconnected-operation): Changed default value to t.
6746
6747         * elmo-util.el (elmo-cache-path-section-p): New function.
6748         (elmo-file-cache-get): Use it.
6749         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6750         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6751         (elmo-dop-queue-save): Ditto.
6752
6753         * elmo-net.el (elmo-folder-status-unplugged): Call
6754         elmo-folder-status-dop.
6755         (elmo-folder-list-messages-unplugged): Implemented.
6756         (elmo-folder-delete-messages-unplugged): Define.
6757         (elmo-folder-msgdb-create): Define.
6758         (elmo-folder-msgdb-create-unplugged): Define.
6759         (elmo-folder-mark-as-read-unplugged): Ditto.
6760         (elmo-folder-unmark-read-unplugged): Ditto.
6761         (elmo-folder-mark-as-important-unplugged): Ditto.
6762         (elmo-folder-unmark-important-unplugged): Ditto.
6763         (elmo-message-encache): Ditto.
6764
6765         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6766         (elmo-dop-queue-save): Ditto.
6767
6768         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6769         `elmo-folder-msgdb-create'.
6770         (elmo-folder-append-buffer): Implemented unplugged operation.
6771         (elmo-folder-append-messages): Call parent method in unplugged status.
6772         (elmo-message-fetch-unplugged): Removed definition.
6773         (elmo-message-fetch-field): Implemented.
6774
6775         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6776         (elmo-dop-folder): Removed variable definition.
6777         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6778         (elmo-dop-queue-flush): Implemented.
6779         (elmo-dop-queue-merge): Removed definition (TODO).
6780         (elmo-dop-spool-folder): New function.
6781         (elmo-dop-spool-folder-append-buffer): Ditto.
6782         (elmo-dop-spool-folder-list-messages): Ditto.
6783         (elmo-dop-list-deleting-messages): Ditto.
6784         (elmo-folder-append-buffer-dop): Ditto.
6785         (elmo-folder-delete-messages-dop): Ditto.
6786         (elmo-message-encache-dop): New inline function.
6787         (elmo-create-folder-dop): Ditto.
6788         (elmo-folder-mark-as-read-dop): Ditto.
6789         (elmo-folder-unmark-read-dop): Ditto.
6790         (elmo-folder-mark-as-important-dop): Ditto.
6791         (elmo-folder-unmark-important-dop): Ditto.
6792         (elmo-folder-status-dop): Fixed.
6793         (elmo-folder-append-buffer-dop-delayed): New function.
6794         (elmo-folder-delete-messages-dop-delayed): Ditto.
6795         (elmo-dop-msgdb): Ditto.
6796
6797 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6798
6799         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6800
6801 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6802
6803         * elmo.el (elmo-folder-move-messages): Fixed problem when
6804         `dst-folder' is 'null.
6805
6806 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6807
6808         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6809         instead of current mark.
6810
6811         * elmo-multi.el (elmo-folder-list-importants-internal): No
6812         operation if importants is not list.
6813
6814         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6815         Return t if importants is not list.
6816
6817         * elmo-map.el (elmo-map-folder-list-importants): Define.
6818         (elmo-folder-list-importants-internal): Check return value of
6819         `elmo-map-folder-list-importants-internal'.
6820
6821         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6822
6823         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6824
6825         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6826
6827         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6828
6829 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6830
6831         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6832         (Patch is provided by <kita@coe.nttdata.co.jp>).
6833
6834 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6835
6836         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6837         mark folder.
6838
6839 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6840
6841         * elmo.el (elmo-message-fetch): Define.
6842         (elmo-message-fetch-with-cache-process): New generic method.
6843         (elmo-message-fetch-internal): New generic method.
6844         (elmo-folder-synchronize):
6845
6846         * elmo-archive.el (elmo-message-fetch-internal): Define.
6847         (elmo-message-fetch): Eliminated.
6848
6849         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6850         (elmo-message-fetch): Eliminated.
6851
6852         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6853         argument OUTBUF.
6854         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6855
6856         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6857         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6858
6859         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6860         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6861
6862         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6863
6864         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6865
6866         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6867
6868         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6869         (elmo-message-fetch-unplugged): New generic method.
6870         (elmo-message-fetch-internal): Remove cache process (Renamed from
6871         `elmo-message-fetch').
6872
6873         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6874         (elmo-message-fetch): Eliminated.
6875         (elmo-message-fetch-unplugged): Ditto.
6876
6877         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6878
6879 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6880
6881         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6882         of `to-be-deleted' from number-alist to number-list.
6883
6884 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6885
6886         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6887         (elmo-folder-mark-as-important): Ditto.
6888
6889 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6890
6891         * elmo.el (elmo-folder): Added process-duplicates slot.
6892
6893         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6894         (elmo-folder-unmark-read): Ditto.
6895         (elmo-folder-unmark-important): Ditto.
6896         (elmo-folder-mark-as-important): Ditto.
6897
6898         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6899         duplicated message processing.
6900
6901         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6902
6903 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6904
6905         * elmo-util.el (elmo-list-subdirectories-1): New function.
6906         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6907         (elmo-mapcar-list-of-list): New function.
6908
6909         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6910         `elmo-mapcar-list-of-list' instead of `mapcar'.
6911
6912         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6913
6914         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6915         `elmo-have-link-count'. Return the fully qualified folder name.
6916
6917 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6918
6919         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6920         (elmo-shimbun-headers-cache): New internal variable.
6921         (elmo-shimbun-headers-cache-header-list): New inline function.
6922         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6923         (elmo-shimbun-headers-cache-header-hash): Ditto.
6924         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6925         (elmo-shimbun-headers-cache-last-check): Ditto.
6926         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6927         (elmo-shimbun-lapse-seconds): Ditto.
6928         (elmo-shimbun-headers-cache-check-p): Ditto.
6929         (elmo-shimbun-get-headers): New function.
6930         (elmo-folder-open-internal): Call it.
6931         (elmo-quit): Define (Clear headers-cache).
6932
6933 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6934
6935         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6936
6937         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6938         (elmo-msgdb-flist-save): Ditto.
6939
6940         * elmo-shimbun.el (elmo-folder-list-subfolders):
6941         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6942         (elmo-folder-exists-p): Ditto.
6943
6944         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6945         argument for `shimbun-header-insert'.
6946
6947 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6948
6949         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6950         at first time.
6951
6952         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6953         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6954
6955 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6956
6957         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6958         (elmo-folder-plugged-p): Define.
6959         (elmo-folder-set-plugged): Ditto.
6960         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6961         (elmo-folder-list-messages-internal): Return t if unplugged.
6962         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6963
6964         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6965         when elmo-folder-list-messages-internal method of children returns t.
6966
6967         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6968         pair is nil.
6969         (elmo-folder-open-internal): Don't update if unplugged status.
6970
6971 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6972
6973         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6974         new message.
6975
6976 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6977
6978         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6979
6980         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6981         saving.
6982
6983 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6984
6985         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6986
6987         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6988         (elmo-folder-open-internal): Set up headers slot.
6989         (elmo-folder-check): Call elmo-folder-close-internal and
6990         elmo-folder-open-internal.
6991         (elmo-folder-close-internal): Clean up headers slot.
6992
6993 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6994
6995         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6996         exactly folder list.
6997         (elmo-folder-append-messages): Fixed append archive with prefix.
6998
6999         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
7000         make temp files with start-number.
7001
7002         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
7003
7004 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7005
7006         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
7007         argument `visible-only'.
7008         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
7009         instead of `if'.
7010
7011         * elmo-pop3.el (elmo-folder-open-internal): Check
7012         `elmo-inhibit-number-mapping' is non-nil.
7013
7014         * elmo-pipe.el (elmo-folder-status): Fixed.
7015
7016 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
7017
7018         * elmo.el (elmo-dop-queue-flush): Added autload setting.
7019
7020         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
7021         (elmo-folder-open-internal): Setup `header-hash' slot.
7022         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
7023         information.
7024         (elmo-map-message-fetch): Ditto.
7025
7026 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
7027
7028         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7029         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7030         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7031         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
7032
7033         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
7034
7035 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
7036
7037         * sb-airs.el: Added footer.
7038
7039         * shimbun.el (shimbun-article): Define as luna-method.
7040
7041         * sb-tcup.el: New file.
7042
7043         * sb-airs.el (toplevel): Require 'sb-mhonarc.
7044         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
7045
7046 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
7047
7048         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
7049         (shimbun-get-headers): Ditto.
7050
7051         * elmo.el: Moved obsolete variable definitions from
7052         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
7053
7054         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
7055         groups.
7056
7057         * shimbun.el: New file.
7058
7059         * elmo-shimbun.el: New file.
7060
7061         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7062         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7063         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7064         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
7065
7066 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
7067
7068         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
7069         hierarchy is t.
7070
7071 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
7072
7073         * elmo.el (elmo-folder-msgdb): Define as macro.
7074         (elmo-folder-open): Added argument `load-msgdb'.
7075         (elmo-generic-folder-open): Ditto.
7076         (elmo-folder-encache): New function.
7077
7078         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
7079
7080         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
7081
7082         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
7083         Eliminated argument FOLDER and added argument MSGDB.
7084         (elmo-dop-queue-load): Moved from elmo-dop.el.
7085         (elmo-dop-queue-save): Ditto.
7086
7087         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
7088
7089         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
7090
7091         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
7092         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
7093         (elmo-filter-folder-list-importants-internal): Ditto.
7094
7095         * elmo-map.el (elmo-folder-pack-number): Ditto.
7096
7097         * elmo-mime.el (elmo-mime-message-display): Ditto.
7098
7099         * elmo.el (elmo-generic-folder-commit): Ditto.
7100         (elmo-folder-list-unreads): Ditto.
7101         (elmo-folder-list-importants): Ditto.
7102         (elmo-generic-folder-commit): Ditto.
7103         (elmo-message-set-mark): Ditto.
7104         (elmo-generic-folder-append-msgdb): Ditto.
7105         (elmo-folder-synchronize): Ditto.
7106         (elmo-folder-messages): Ditto.
7107         (elmo-init): Call elmo-dop-queue-load.
7108         (elmo-folder-list-messages): Ditto.
7109
7110         * elmo-nntp.el (elmo-folder-update-number): Ditto.
7111         (elmo-nntp-folder-process-crosspost): Ditto.
7112         (elmo-folder-list-unreads-internal): Ditto.
7113
7114         * elmo-dop.el: Removed old functions.
7115
7116 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
7117
7118         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
7119         `folder' to `msgdb'.
7120
7121 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
7122
7123         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
7124         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
7125
7126         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
7127         case-fold-search.
7128
7129 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
7130
7131         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
7132         defined.
7133
7134         * mmimap.el (toplevel): Require 'mime-parse and 'static.
7135         (mmimap-parse-parameters-from-list): Define as alias for
7136         `mime-decode-parameter-plist' if it is defined as function.
7137         (mmimap-make-mime-entity): Added argument `number'.
7138         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
7139         as 0.
7140         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
7141
7142         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
7143
7144         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
7145
7146         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
7147
7148 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
7149
7150         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
7151
7152         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
7153         when elmo-imap4-default-authenticate-type is nil.
7154         (elmo-folder-list-subfolders): Ditto
7155         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
7156         (elmo-imap4-fetch-callback-1-subr): Renamed from
7157         `elmo-imap4-fetch-callback-1' and define as inline function.
7158         (elmo-imap4-fetch-callback-1):
7159         Renamed from `elmo-imap4-fetch-callback'.
7160         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
7161
7162         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
7163         msgdb path (To keep compatibility with main trunk).
7164
7165         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
7166
7167         * elmo-util.el (elmo-make-file-cache): Moved position of
7168         some macros.
7169
7170         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
7171         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
7172         instead of `elmo-pop3-inhibit-uidl'.
7173         (elmo-folder-exists-p): Ditto.
7174         (elmo-pop3-folder-list-messages): Ditto.
7175
7176         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
7177         instead of `elmo-pop3-inhibit-uidl'.
7178         (elmo-folder-status): Ditto.
7179
7180         * elmo-dop.el (elmo-dop-folder): New variable.
7181         (elmo-dop-lock-message): Eliminated.
7182         (elmo-dop-unlock-message): Ditto.
7183         (elmo-dop-lock-list-load): Ditto.
7184         (elmo-dop-lock-list-save): Ditto.
7185         (elmo-dop-delete-folder): Ditto.
7186         (elmo-dop-rename-folder): Ditto.
7187
7188         * elmo.el: Removed incomplete commentary.
7189
7190 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7191
7192         * elmo.el (toplevel): Require 'elmo-version first;
7193         for little `recursive-load-depth' settings.
7194         Fix "ends here" comment.
7195
7196 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
7197
7198         * elmo-util.el (toplevel): Require 'poem;
7199         Some functions are moved from elmo-cache.el.
7200
7201         * elmo-net.el (toplevel): Require 'elmo-cache.
7202
7203         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
7204
7205         * elmo.el (toplevel): Ditto.
7206
7207         * elmo-cache.el: Rewrite with luna;
7208         Some functions are moved to elmo-util.el.
7209
7210         * elmo-internal.el (elmo-internal-folder-list): New variable.
7211         (elmo-internal-folder-initialize): Rewrite.
7212         (elmo-folder-list-subfolders): Ditto.
7213
7214         * elmo-cache.el (elmo-cache-search-all): Eliminated.
7215         (elmo-cache-collect-sub-directories): Ditto.
7216
7217 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
7218
7219         * elmo-version.el (elmo-version): Up to 2.5.8.
7220
7221         * elmo.el (elmo-folder-list-messages-mark-match): New function.
7222
7223         * elmo-util.el (elmo-list-insert): New function.
7224
7225 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
7226
7227         * elmo.el (elmo-init): New function.
7228         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
7229
7230         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
7231         (Renamed from `elmo-localdir-header-chop-length').
7232
7233         * elmo-pop3.el (elmo-pop3-use-cache,
7234         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
7235
7236         * elmo-nntp.el (elmo-message-fetch): Define.
7237         (elmo-message-fetch-unplugged): Ditto.
7238         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
7239         (elmo-nntp-use-cache): Ditto.
7240         (elmo-nntp-max-number-precedes-list-active): Ditto.
7241
7242         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
7243
7244         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
7245         `elmo-msgdb-insert-file-header'.
7246         Use `elmo-msgdb-file-header-chop-length'.
7247
7248         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
7249         `elmo-vars.el'.
7250
7251         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
7252         (elmo-cache-msgdb-create-overview-entity-from-file): Use
7253         `elmo-msgdb-insert-file-header'.
7254
7255         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
7256         Use new variable;
7257         Define obsolete variables with `elmo-define-obsolete-variable',
7258
7259         * elmo-util.el (elmo-warning-buffer-name): New constant.
7260         (elmo-warning): New function.
7261         (elmo-obsolete-variable-alist): New variable.
7262         (elmo-obsolete-variable-show-warnings): New variable.
7263         (elmo-define-obsolete-variable): New function.
7264         (elmo-resque-obsolete-variable): Ditto.
7265         (elmo-resque-obsolete-variables): Ditto.
7266
7267 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7268
7269         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
7270         Eliminated.
7271
7272         * elmo-pop3.el, elmo-nntp.el: Use custom.
7273
7274 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7275
7276         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
7277         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
7278
7279 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7280
7281         * Luna-fy Kenichi OKADA's following changes.
7282         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
7283         `nohide'.
7284         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
7285
7286 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
7287
7288         * elmo-util.el (elmo-display-progress): Prefer
7289         `progress-feedback-with-label' to `lprogress-display'.
7290
7291 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7292
7293         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
7294
7295 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
7296
7297         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
7298         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
7299         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7300         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7301         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
7302         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
7303         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7304         * elmo-filter.el (elmo-filter-list-folder): Ditto.
7305         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7306         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7307         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7308         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7309         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7310
7311 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7312
7313         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
7314         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7315
7316 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7317
7318         * elmo.el (elmo-folder-process-crosspost): New generic method.
7319         (elmo-folder-writable-p): Ditto.
7320         (elmo-folder-message-appendable-p): Eliminated.
7321         (elmo-generic-folder-append-msgdb): Rewrite.
7322         (elmo-newsgroups-hashtb): New internal variable.
7323         (elmo-crosspost-message-set): Eliminated.
7324         (elmo-crosspost-message-delete): Ditto.
7325         (elmo-setup-subscribed-newsgroups): New function.
7326         (elmo-crosspost-message-alist-modified): New internal variable.
7327         (elmo-crosspost-message-alist-load): New function (Renamed from
7328         `wl-crosspost-alist-load').
7329         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7330         `wl-crosspost-alist-save').
7331
7332         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7333
7334         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7335         `unreads'.
7336         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7337         elmo-newsgroups-hashtb).
7338         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7339         `elmo-nntp-folder-update-crosspost-message-alist'.
7340         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7341         `elmo-nntp-groups-hashtb'.
7342         (elmo-nntp-make-groups-hashtb): Eliminated.
7343         (elmo-nntp-parse-newsgroups): New function (Renamed from
7344         `wl-parse-newsgroups').
7345         (elmo-folder-creatable-p, elmo-folder-writable-p,
7346         elmo-folder-close-internal, elmo-folder-mark-as-read,
7347         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7348         Define.
7349         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7350
7351         * elmo-net.el (elmo-message-fetch): Check buffer size.
7352
7353         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7354
7355         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7356
7357         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7358         before `close' command.
7359
7360         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7361         `mark-alist' (All other related portions are changed).
7362
7363 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7364
7365         * elmo-util.el (elmo-create-hash-size): Eliminated.
7366         (elmo-make-hash) Make a hash with `one less than a power of two'
7367         length.
7368
7369         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7370         (elmo-hash-maximum-size): Changed value.
7371
7372 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7373
7374         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7375         (elmo-mime-message-display-as-is): Ditto.
7376
7377 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7378
7379         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7380         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7381
7382 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7383
7384         * elmo-mark.el: New file.
7385
7386         * elmo-internal.el: Rewrite (Almost empty).
7387
7388 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7389
7390         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7391         (mime-imap-entity-header-string): Ditto.
7392         (mmimap-entity-section): Rewrite.
7393
7394 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7395
7396         * elmo-nmz.el: New file.
7397
7398         * elmo-pipe.el: Rewrite with luna.
7399
7400 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7401
7402         * elmo-archive.el: Rewrite with luna.
7403
7404         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7405         (elmo-folder-list-importants-internal): Ditto.
7406
7407 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7408
7409         * elmo-archive.el (elmo-archive-version): Abolish.
7410         (toplevel) Removed `boso' comment.
7411
7412 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7413
7414         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7415         elmo-msgdb-add-msgs-to-seen-list-subr;
7416         Changed argument seen-marks to unread-marks.
7417
7418         * elmo-nntp.el: Rewrite with luna.
7419
7420 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7421
7422         * elmo-filter.el: Rewrite with luna.
7423
7424 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7425
7426         * elmo-pop3.el: Rewrite with luna.
7427
7428 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7429
7430         * elmo-multi.el: Rewrite with luna.
7431
7432         * elmo-vars.el (elmo-use-killed-list): Abolish.
7433         All other related portions are changed.
7434         (elmo-filename-replace-string-alist): Renamed from
7435         elmo-msgid-replace-string-alist.
7436
7437 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7438
7439         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7440
7441         * elmo-map.el: New file.
7442         * elmo-maildir.el: Rewrite with luna.
7443
7444 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7445
7446         * elmo.el: Changed meaning of `elmo-folder-commit'.
7447         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7448
7449 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7450
7451         * elmo.el (elmo-folder-append-buffer): New function.
7452         (Renamed from `elmo-append-msg')
7453
7454 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7455
7456         * elmo-mime.el: New file.
7457
7458 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7459
7460         * elmo-cache.el: Rewrite.
7461
7462 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7463
7464         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7465
7466 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7467
7468         * elmo-vars.el (elmo): New group.
7469         (elmo-strict-diff-folder-regexp): New variable.
7470
7471         * elmo-util.el (elmo-call-func): Abolish.
7472         (elmo-folder-get-type): Ditto.
7473         (elmo-*-get-spec): Ditto.
7474         (elmo-*-spec-*): Ditto.
7475         (elmo-imap4-identical-name-space-p): Ditto.
7476         (elmo-folder-identical-system-p): Ditto.
7477         (elmo-folder-direct-copy-alist): Ditto.
7478         (elmo-folder-direct-copy-p): Ditto.
7479
7480         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7481         (elmo-folder-initialize): Define.
7482         (elmo-folder-get-primitive-list): Ditto.
7483
7484         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7485         (elmo-folder-initialize): Define.
7486         Renamed `elmo-network-session-host-internal' to
7487         `elmo-network-session-server-internal'.
7488
7489         * elmo-multi.el (elmo-multi-folder): New luna class.
7490         (elmo-folder-initialize): Define.
7491         (elmo-folder-get-primitive-list): Ditto.
7492         (elmo-folder-contains-type): Ditto.
7493         (elmo-message-use-cache-p): Ditto.
7494
7495         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7496         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7497
7498         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7499         (elmo-folder-initialize): Define.
7500
7501         * elmo-filter.el (elmo-filter-folder): New luna class.
7502         (elmo-folder-initialize): Define.
7503         (elmo-folder-get-primitive-list): Ditto.
7504         (elmo-folder-contains-type): Ditto.
7505
7506 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7507
7508         * elmo-imap4.el: Rewrite with luna.
7509
7510         * mmimap.el: New file.
7511
7512         * mmelmo.el, mmelmo-imap4.el: Removed.
7513
7514         * elmo-net.el: Ditto.
7515
7516         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7517         (elmo-folder-initialize): Define.
7518
7519         * elmo-archive.el (elmo-archive-folder): New luna class.
7520         (elmo-folder-initialize): Define.
7521
7522         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7523         `elmo-folder-msgdb-path'.
7524         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7525         `elmo-make-folder'.
7526
7527 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7528
7529         * elmo.el: New file.
7530
7531         * elmo2.el: Renamed to elmo.el.
7532
7533 \f
7534 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7535
7536         * elmo-cache.el (elmo-cache-expire-by-size): Count
7537         a disk usage for a cache file entry in KB even when
7538         its kind is a directory.
7539
7540 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7541
7542         * elmo-version.el (elmo-version): Up to 2.5.7.
7543
7544 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7545
7546         * elmo-version.el (elmo-version): Up to 2.5.6.
7547
7548 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7549
7550         * elmo-version.el (elmo-version): Up to 2.5.5.
7551
7552 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7553
7554         * elmo-imap4.el (elmo-network-authenticate-session):
7555         Fixed a logic for response checking.
7556
7557 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7558
7559         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7560         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7561         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7562         `sasl-mechanisms'.
7563
7564         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7565         for `starttls-open-stream' and `starttls-negotiate'.
7566
7567         * elmo-nntp.el: Remove autoload settings for
7568         `starttls-open-stream' and `starttls-negotiate'.
7569
7570         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7571         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7572         `luna-define-class' with `eval-and-compile'.
7573
7574 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7575
7576         * elmo-util.el (elmo-read-search-condition-internal):
7577         Require an element of table for searching field.
7578
7579 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7580
7581         * elmo-version.el (elmo-version): Up to 2.5.4.
7582
7583 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7584
7585         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7586
7587 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7588
7589         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7590
7591 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7592
7593         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7594         before greeting.
7595
7596 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7597
7598         * elmo-imap4.el (elmo-imap4-delete-folder):
7599         Send "close" before "delete" (Use commented out line).
7600         (elmo-imap4-rename-folder): Ditto.
7601
7602         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7603         folder string itself.
7604         (elmo-dop-list-deleted): New function.
7605         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7606         killed.
7607
7608         * elmo-util.el (elmo-string-rassoc-all): New function.
7609
7610 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7611
7612         * elmo-version.el (elmo-version): Up to 2.5.3.
7613
7614         * elmo-net.el (elmo-network-get-session): Changed logic for
7615         checking process status.
7616
7617         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7618         process is nil;
7619         Changed logic for checking process status.
7620
7621 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7622
7623         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7624         before greeting.
7625         (elmo-network-setup-session): Set UIDL hash size according to
7626         the length of list response.
7627         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7628         according to the length of list response;
7629         Return the length of list response.
7630         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7631
7632 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7633
7634         * elmo-imap4.el (toplevel): Require 'ssl.
7635         Add autoload 'starttls.
7636         * elmo-pop3.el (toplevel): Ditto.
7637         * elmo-nntp.el (toplevel): Ditto.
7638
7639 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7640
7641         * elmo-imap4.el (toplevel): defun at compile time.
7642         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7643         sasl-next-step, sasl-step-data, sasl-step-set-data.
7644         * elmo-pop3.el (toplevel): Ditto.
7645
7646 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7647
7648         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7649
7650 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7651
7652         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7653         if error.
7654         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7655         and `elmo-pop-auth-apop'.
7656
7657 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7658
7659         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7660
7661 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7662
7663         * elmo-pop3.el (elmo-network-authenticate-session): Split
7664         encoded response value.
7665
7666 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7667
7668         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7669         `elmo-pop3-force-login'.
7670         Redefine `sasl-mechanisms'.
7671         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7672
7673 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7674
7675         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7676         Delete `elmo-imap4-authenticator-alist'.
7677         (elmo-imap4-auth-cram-md5): Delete.
7678         (elmo-imap4-auth-digest-md5): Delete.
7679
7680 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7681
7682         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7683         (elmo-pop3-auth-scram-md5): Ditto.
7684         (elmo-pop3-auth-cram-md5): Ditto.
7685
7686 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7687
7688         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7689         Delete `elmo-pop3-authenticator-alist'.
7690
7691 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7692
7693         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7694         new SASL API.
7695         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7696
7697 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7698
7699         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7700
7701 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7702
7703         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7704         Fixed problem when `elmo-pop3-use-uidl' is nil.
7705         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7706
7707 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7708
7709         * elmo-version.el (elmo-version): Up to 2.5.2.
7710
7711 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7712
7713         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7714         New function.
7715         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7716         (elmo-pop3-msgdb-create-as-numlist): Use it.
7717
7718         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7719         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7720
7721         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7722         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7723
7724 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7725
7726         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7727         when elmo-mark-as-read is called with second argument nil.
7728
7729 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7730
7731         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7732         Moved to elmo-util.el.
7733
7734         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7735         Moved from elmo-pipe.el
7736
7737         * elmo-archive.el (elmo-archive-call-process): Enclose with
7738         static-if.
7739
7740         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7741         "RFC822" (because RFC822.PEEK is obsolete).
7742         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7743
7744 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7745
7746         * elmo-archive.el (elmo-archive-call-process): Don't check for
7747         the exit status when Nemacs is running.
7748
7749 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7750
7751         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7752         'plain.
7753
7754         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7755         (elmo-pop3-get-spec): Set default of auth to 'user.
7756
7757         * elmo-imap4.el (elmo-imap4-session-check):
7758         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7759         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7760         (elmo-imap4-auth-login): New function; Revival.
7761         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7762         `elmo-imap4-auth-login'.
7763
7764 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7765
7766         * elmo2.el (toplevel): Move `product-provide' declare.
7767         * mmelmo.el (toplevel): Ditto.
7768
7769 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7770
7771         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7772
7773 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7774
7775         * elmo-util.el (elmo-folder-get-store-type): New function.
7776         (elmo-folder-direct-copy-p): Use it.
7777
7778 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7779
7780         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7781         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7782         and result of `elmo-imap4-use-flag-p'.
7783         (elmo-imap4-fetch-callback-1): Set mark according to
7784         the result of `elmo-imap4-use-flag-p'.
7785
7786 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7787
7788         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7789         (elmo-generic-list-folder-unread): Ditto.
7790         (elmo-folder-get-info): Ditto.
7791         (elmo-folder-set-info-max-by-numdb): Ditto.
7792         (elmo-folder-get-info-max): Ditto.
7793         (elmo-folder-get-info-length): Ditto.
7794         (elmo-folder-get-info-unread): Ditto.
7795         (elmo-folder-info-make-hashtb): Ditto.
7796
7797         * elmo2.el: Removed above functions.
7798
7799 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7800
7801         * elmo-imap4.el (toplevel): Require 'ssl.
7802         Add autoload 'starttls.
7803         * elmo-pop3.el (toplevel): Ditto.
7804         * elmo-nntp.el (toplevel): Ditto.
7805
7806 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7807
7808         * elmo-imap4.el (toplevel): defun at compile time.
7809         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7810         sasl-next-step, sasl-step-data, sasl-step-set-data.
7811         * elmo-pop3.el (toplevel): Ditto.
7812
7813 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7814
7815         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7816
7817 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7818
7819         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7820         if error.
7821         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7822         and `elmo-pop-auth-apop'.
7823
7824 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7825
7826         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7827
7828 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7829
7830         * elmo-pop3.el (elmo-network-authenticate-session): Split
7831         encoded response value.
7832
7833 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7834
7835         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7836         `elmo-pop3-force-login'.
7837         Redefine `sasl-mechanisms'.
7838         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7839
7840 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7841
7842         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7843         Delete `elmo-imap4-authenticator-alist'.
7844         (elmo-imap4-auth-cram-md5): Delete.
7845         (elmo-imap4-auth-digest-md5): Delete.
7846
7847 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7848
7849         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7850         (elmo-pop3-auth-scram-md5): Ditto.
7851         (elmo-pop3-auth-cram-md5): Ditto.
7852
7853 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7854
7855         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7856         Delete `elmo-pop3-authenticator-alist'.
7857
7858 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7859
7860         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7861         new SASL API.
7862         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7863
7864 \f
7865 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7866
7867         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7868
7869 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7870
7871         * elmo-nntp.el (elmo-nntp-get-folders-info):
7872         Fixed problem when '\' character is contained in user-id.
7873         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7874
7875 \f
7876 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7877
7878         * elmo-imap4.el (elmo-imap4-delete-folder):
7879         Send "close" before "delete" (Use commented out line).
7880         (elmo-imap4-rename-folder): Ditto.
7881
7882         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7883         folder string itself.
7884         (elmo-dop-list-deleted): New function.
7885         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7886         killed.
7887
7888         * elmo-util.el (elmo-string-rassoc-all): New function.
7889
7890         * elmo-version.el (elmo-version): Up to 2.5.1.
7891
7892 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7893
7894         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7895
7896         * elmo-internal.el (elmo-internal-search): Fix last change.
7897
7898 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7899
7900         * elmo-internal.el (elmo-internal-search): Rewrite.
7901         (Fixed problem which is pointed out by Akihiro MOTOKI
7902         <motoki@da.jp.nec.com>)
7903
7904         * elmo-version.el (elmo-version): Up to 2.5.0.
7905
7906 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7907
7908         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7909
7910 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7911
7912         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7913         non-nil, make hierarchy.
7914
7915 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7916
7917         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7918         `elmo-pop3-use-uidl' must be bound to nil.
7919         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7920
7921 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7922
7923         * elmo-util.el (elmo-copy-file): Don't cause an error after
7924         `add-name-to-file' failed.
7925
7926         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7927         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7928
7929 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7930
7931         * elmo-version.el (elmo-version): Up to 2.3.93.
7932
7933 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7934
7935         * elmo-util.el (elmo-flatten): New function.
7936
7937 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7938
7939         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7940         sync Author header.
7941         * elmo-cache.el (toplevel): Ditto.
7942         * elmo-database.el (toplevel): Ditto.
7943         * elmo-date.el (toplevel): Ditto.
7944         * elmo-dop.el (toplevel): Ditto.
7945         * elmo-filter.el (toplevel): Ditto.
7946         * elmo-imap4.el (toplevel): Ditto.
7947         * elmo-internal.el (toplevel): Ditto.
7948         * elmo-localdir.el (toplevel): Ditto.
7949         * elmo-localnews.el (toplevel): Ditto.
7950         * elmo-maildir.el (toplevel): Ditto.
7951         * elmo-msgdb.el (toplevel): Ditto.
7952         * elmo-multi.el (toplevel): Ditto.
7953         * elmo-net.el (toplevel): Ditto.
7954         * elmo-nntp.el (toplevel): Ditto.
7955         * elmo-pipe.el (toplevel): Ditto.
7956         * elmo-pop3.el (toplevel): Ditto.
7957         * elmo-util.el (toplevel): Ditto.
7958         * elmo-vars.el (toplevel): Ditto.
7959         * elmo2.el (toplevel): Ditto.
7960         * mmelmo-imap4.el (toplevel): Ditto.
7961         * mmelmo.el (toplevel): Ditto.
7962
7963         * elmo-version.el (elmo-version): Move to top.
7964
7965         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7966         * elmo-imap4.el (toplevel): Ditto.
7967         * elmo-localdir.el (toplevel): Ditto.
7968         * elmo-msgdb.el (toplevel): Ditto.
7969         * elmo-nntp.el (toplevel): Ditto.
7970         * elmo-pop3.el (toplevel): Ditto.
7971         * elmo-version.el (toplevel): Ditto.
7972
7973         * elmo-localnews.el (toplevel): Added Keyword header.
7974
7975 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7976
7977         * elmo-version.el (product-version-as-string): Defined using
7978         `defun-maybe'.
7979         (toplevel): Use it.
7980
7981         * elmo-localdir.el (toplevel): Updated copyright notice.
7982         * elmo-version.el (toplevel): Ditto.
7983         * elmo-msgdb.el (toplevel): Ditto.
7984         * elmo-imap4.el (toplevel): Ditto.
7985         * elmo-nntp.el (toplevel): Ditto.
7986         * elmo-pop3.el (toplevel): Ditto.
7987
7988 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7989
7990         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7991         messages.
7992
7993         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7994         parameter value (It sometimes contains raw kanji).
7995
7996 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7997
7998         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7999         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
8000
8001 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8002
8003         * elmo-imap4.el (elmo-network-initialize-session): Fix.
8004
8005 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8006
8007         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
8008         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
8009
8010 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
8011
8012         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
8013         value if selecting folder succceeded.
8014         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
8015
8016 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8017
8018         * elmo-util.el (elmo-make-directory): Fixed permission lateral
8019         representation.
8020
8021         * elmo-util.el (elmo-string-matched-member): New function.
8022
8023 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
8024
8025         * elmo-util.el (elmo-unintern): New macro.
8026         (elmo-number-set-member): Fixed docstring.
8027
8028         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
8029         tag token.
8030
8031 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
8032
8033         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
8034         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
8035
8036 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
8037
8038         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
8039         `no-error'.
8040         Added docstring.
8041         Return non-nil if selecting folder succeeded.
8042         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
8043
8044 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
8045
8046         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
8047         `file-name-completion' returns t.
8048         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
8049         (elmo-maildir-set-mark): Put `info' part to the files in the cur
8050         directory if it does not exist.
8051         (elmo-maildir-update-current): Use `while' instead of `mapcar'
8052         for iteration.
8053
8054 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
8055
8056         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
8057         enclosure (It's harmful in unplugged status).
8058
8059         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
8060
8061         * mmelmo-1.el: Removed.
8062
8063         * mmelmo-2.el: Ditto.
8064
8065         * mmelmo-imap4-1.el: Ditto.
8066
8067         * mmelmo-imap4-2.el: Ditto.
8068
8069         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
8070
8071         * mmelmo.el: Merged mmelmo-2.el.
8072
8073         * elmo-version.el (elmo-version): Up to 2.3.92.
8074
8075 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8076
8077         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
8078         elmo-update-number): Remove last period in "...done." message.
8079         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
8080         Ditto.
8081         * elmo-cache.el (elmo-cache-expire-by-size,
8082         elmo-cache-get-sorted-cache-file-list,
8083         elmo-cache-msgdb-create-as-numlist): Ditto.
8084         * elmo-dop.el (elmo-dop-save-pending-messages,
8085         (elmo-dop-flush-pending-append-operations): Ditto.
8086         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
8087         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
8088         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
8089         (elmo-localdir-pack-number): Ditto.
8090         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
8091         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
8092         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
8093         mime-write-entity-content): Ditto.
8094         * pldap.el (ldap-search-basic): Ditto.
8095
8096 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
8097
8098         * elmo-version.el (elmo-version): Up to 2.3.91.
8099
8100         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
8101         Only when filter is 'last'.
8102
8103         * elmo-util.el (elmo-condition-atom-regexp): New constant.
8104         (elmo-condition-parse-search-value): Use it.
8105         (elmo-read-search-condition-internal): Quote value only when
8106         it is not an atom.
8107
8108 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
8109
8110         * elmo2.el (elmo-generic-folder-diff): Fix.
8111
8112 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
8113
8114         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
8115         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
8116         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
8117         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8118         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
8119         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
8120
8121 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
8122
8123         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
8124         extra-fields.
8125
8126 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
8127
8128         * elmo-version.el (elmo-version): Up to 2.3.90.
8129
8130         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
8131         (elmo-imap4-list-folder-important): Ditto.
8132
8133 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8134
8135         * elmo-nntp.el (elmo-network-initialize-session): Fix.
8136
8137 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8138
8139         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
8140
8141 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
8142
8143         * elmo-nntp.el (elmo-network-initialize-session):
8144         Add starttls negotiation.
8145
8146 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8147
8148         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
8149         response.
8150         (elmo-network-setup-session): Define.
8151         Call `elmo-nntp-send-mode-reader' when session opened.
8152
8153 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8154
8155         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
8156
8157 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
8158
8159         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
8160         an invalid SPACE character ahead of `SEARCH' command.  Move
8161         a valid SPACE character following `SEARCH' from conditional
8162         `format' arguments to control-strings.
8163
8164 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8165
8166         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
8167         was succeeded.
8168
8169         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
8170
8171 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
8172
8173         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
8174         `w32-get-true-file-link-count' as t.
8175
8176         * elmo-imap4.el (elmo-imap4-read): Abolished.
8177         (Renamed to `elmo-read' and moved to elmo-util.el)
8178         All other related portions are changed.
8179
8180         * elmo-util.el (elmo-read): New function.
8181         (elmo-condition-parse-search-value): Use it.
8182
8183 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
8184
8185         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
8186
8187         * elmo-nntp.el (elmo-nntp-session): Define.
8188         (elmo-nntp-setting): Abolished.
8189         All other related portions are changed.
8190         (elmo-nntp-get-server-command): Changed argument.
8191         (elmo-nntp-set-server-command): Ditto.
8192         (elmo-nntp-xover-p): Ditto.
8193         (elmo-nntp-set-xover): Ditto.
8194         (elmo-nntp-listgroup-p): Ditto.
8195         (elmo-nntp-set-listgroup): Ditto.
8196         (elmo-nntp-list-active-p): Ditto.
8197         (elmo-nntp-set-list-active): Ditto.
8198         (elmo-nntp-xhdr-p): Ditto.
8199         (elmo-nntp-set-xhdr): Ditto.
8200         (elmo-nntp-flush-connection): Abolished.
8201         (elmo-nntp-get-connection): Abolished.
8202         (elmo-nntp-get-session): New function.
8203         (elmo-network-initialize-session): Defined.
8204         (elmo-network-authenticate-session): Ditto.
8205         (elmo-nntp-send-mode-reader): Changed argument.
8206         (elmo-nntp-send-command): Changed argument.
8207         All other related portions are changed.
8208         (elmo-nntp-read-response): Ditto.
8209         (elmo-nntp-read-raw-response): Ditto.
8210         (elmo-nntp-read-contents): Ditto.
8211         (elmo-nntp-read-body): Ditto.
8212         (elmo-nntp-goto-folder): Abolished.
8213         (elmo-nntp-select-group): New function.
8214         All other related portions are changed.
8215         (This function substitutes `elmo-nntp-goto-folder')
8216         (elmo-nntp-msgdb-create-by-header): Rewrite.
8217         (elmo-nntp-get-overview): Eliminated.
8218         (elmo-nntp-get-message): Ditto.
8219         (elmo-nntp-open-connection) Abolished.
8220         (elmo-nntp-read-msg): Rewrite.
8221         (elmo-nntp-post): Ditto.
8222         (elmo-nntp-send-data): Abolished.
8223         (elmo-nntp-send-buffer): New function.
8224         (elmo-nntp-send-data-line): Define as inline function.
8225         (elmo-nntp-get-folders-info-prepare): Use session as key.
8226         (elmo-nntp-groups-read-response): Changed argument.
8227         (elmo-nntp-retrieve-headers): Ditto.
8228         (elmo-nntp-msgdb-create-message): Ditto.
8229
8230         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
8231         when searching by 'since' or 'before'.
8232
8233 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8234
8235         * elmo-version.el (toplevel): Use product-version-as-string for set
8236         verstion-string, if defined.
8237
8238 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
8239
8240         * elmo-util.el: Doc fixes.
8241
8242 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8243
8244         * elmo-archive.el (toplevel): Use product-provide.
8245         * elmo-cache.el (toplevel): Ditto.
8246         * elmo-database.el (toplevel): Ditto.
8247         * elmo-date.el (toplevel): Ditto.
8248         * elmo-dop.el (toplevel): Ditto.
8249         * elmo-filter.el (toplevel): Ditto.
8250         * elmo-imap4.el (toplevel): Ditto.
8251         * elmo-internal.el (toplevel): Ditto.
8252         * elmo-localdir.el (toplevel): Ditto.
8253         * elmo-localnews.el (toplevel): Ditto.
8254         * elmo-maildir.el (toplevel): Ditto.
8255         * elmo-msgdb.el (toplevel): Ditto.
8256         * elmo-multi.el (toplevel): Ditto.
8257         * elmo-net.el (toplevel): Ditto.
8258         * elmo-nntp.el (toplevel): Ditto.
8259         * elmo-pipe.el (toplevel): Ditto.
8260         * elmo-pop3.el (toplevel): Ditto.
8261         * elmo-util.el (toplevel): Ditto.
8262         * elmo-vars.el (toplevel): Ditto.
8263         * elmo2.el (toplevel): Ditto.
8264         * mmelmo-1.el (toplevel): Ditto.
8265         * mmelmo-2.el (toplevel): Ditto.
8266         * mmelmo-imap4-1.el (toplevel): Ditto.
8267         * mmelmo-imap4-2.el (toplevel): Ditto.
8268         * mmelmo-imap4.el (toplevel): Ditto.
8269         * mmelmo.el (toplevel): Ditto.
8270
8271 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
8272
8273         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
8274         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
8275
8276 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
8277
8278         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
8279         before splitting.
8280         (elmo-multi-split-number-alist): Ditto.
8281
8282 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8283
8284         * elmo-version.el: New file.  Use product.el.
8285         * elmo2.el: Add (require 'elmo-version).
8286         * elmo-vars.el (elmo-appname, elmo-version): Move to
8287         elmo-version.el
8288
8289 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
8290
8291         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
8292         `elmo-msgdb-expand-path'.
8293         (elmo-msgdb-load): Ditto.
8294         Abolished 2nd argument. If 1st argument is not string, treat as spec.
8295         (elmo-generic-list-folder-unread): Rewrite.
8296         (elmo-generic-list-folder-important): Changed argument.
8297         (elmo-list-folder-unread): Ditto.
8298         (elmo-list-folder-important): Ditto.
8299         (elmo-folder-diff): Rewrite.
8300         (elmo-generic-folder-diff): New function.
8301         (elmo-multi-get-number-alist-list): Abolished
8302         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
8303         (elmo-multi-folder-diff): Moved to elmo-multi.el
8304         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
8305
8306         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
8307         `elmo-msgdb-expand-path'.
8308         (elmo-pop3-msgdb-create-as-numlist): Ditto.
8309         (elmo-pop3-read-msg): Ditto.
8310         (elmo-pop3-delete-msgs): Ditto.
8311         (elmo-pop3-folder-diff): New alias.
8312
8313         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
8314         `elmo-msgdb-expand-path'.
8315         (elmo-pipe-list-folder-unread): Changed arguments.
8316         (elmo-pipe-list-folder-important): Ditto.
8317         (elmo-pipe-folder-diff): New alias.
8318
8319         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8320         `elmo-msgdb-expand-path'.
8321         (elmo-nntp-max-of-folder): Ditto.
8322         (elmo-nntp-msgdb-create): Ditto.
8323         (elmo-nntp-delete-msgs): Ditto.
8324         (elmo-nntp-folder-diff): New alias.
8325
8326         * elmo-multi.el (elmo-multi-folder-diff): New function.
8327         (elmo-multi-split-mark-alist): Ditto.
8328         (elmo-multi-split-number-alist): Ditto.
8329         (elmo-multi-mark-alist-list): Abolished (Renamed to
8330         elmo-multi-split-mark-alist).
8331         (elmo-multi-list-folder-unread): Rewrite.
8332         (elmo-multi-list-folder-important): Ditto.
8333         (elmo-multi-list-folder): Set `spec' as 1st argument for
8334         `elmo-msgdb-expand-path'.
8335         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8336         instead of `elmo-multi-get-number-alist-list'.
8337
8338         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8339         If 1st argument is not string, treat as spec.
8340         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8341         `elmo-msgdb-expand-path'.
8342         (elmo-msgdb-flist-load): Ditto.
8343         (elmo-msgdb-flist-save): Ditto.
8344         (elmo-msgdb-delete-path): Ditto.
8345         (elmo-msgdb-rename-path): Ditto.
8346
8347         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8348         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8349         (elmo-maildir-delete-mark-msgs): Ditto.
8350         (elmo-maildir-msgdb-create): Ditto.
8351         (elmo-maildir-read-msg): Ditto.
8352         (elmo-maildir-delete-msgs): Ditto.
8353         (elmo-maildir-list-folder-subr): Ditto.
8354         (elmo-maildir-search): Ditto.
8355         (elmo-maildir-get-msg-filename): Ditto.
8356         (elmo-maildir-pack-number): Ditto.
8357         (elmo-maildir-folder-diff): New alias.
8358
8359         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8360
8361         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8362         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8363         (elmo-localdir-folder-diff): New alias.
8364
8365         * elmo-internal.el (elmo-internal-list-folder-subr):
8366         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8367         (elmo-internal-list-folder-by-location): Ditto.
8368         (elmo-internal-msgdb-create): Ditto.
8369         (elmo-internal-delete-msgs): Ditto.
8370         (elmo-internal-read-msg): Ditto.
8371         (elmo-internal-folder-diff): New alias.
8372
8373         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8374         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8375         `elmo-msgdb-expand-path'.
8376         (elmo-imap4-list-folder-unread): Changed arguments.
8377         (elmo-imap4-list-folder-important): Ditto.
8378
8379         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8380         (elmo-filter-list-folder-important): Ditto.
8381         (elmo-filter-folder-diff): New function.
8382
8383         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8384
8385         * elmo-cache.el (elmo-cache-list-folder):
8386         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8387         (elmo-cache-copy-msgs): Ditto.
8388         (elmo-cache-folder-diff): New alias.
8389
8390         * elmo-archive.el (elmo-archive-list-folder-subr):
8391         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8392         (elmo-archive-get-archive-name): Ditto.
8393         (elmo-archive-create-file): Ditto.
8394         (elmo-archive-append-msg): Ditto.
8395         (elmo-archive-copy-msgs): Ditto.
8396         (elmo-archive-copy-msgs-froms): Ditto.
8397         (elmo-archive-get-msg-filename): Ditto.
8398         (elmo-archive-folder-diff): New alias.
8399
8400 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8401
8402         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8403         (elmo-pop3-stream-type-alist): New variable.
8404         (elmo-nntp-stream-type-alist): New variable.
8405
8406         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8407         (elmo-kill-buffer): Ditto.
8408         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8409         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8410         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8411         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8412         (elmo-imap4-get-spec): Take into account
8413         `elmo-imap4-stream-type-alist'.
8414
8415 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8416
8417         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8418         (elmo-nntp-list-folders-get-cache): Ditto.
8419
8420 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8421
8422         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8423         character before 'uid'.
8424
8425 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8426
8427         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8428
8429         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8430
8431         * elmo-util.el (elmo-number-set-member): New function.
8432         (elmo-number-set-append-list): Ditto.
8433         (elmo-number-set-append): Ditto.
8434
8435         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8436         Use `elmo-number-set-member'.
8437         (elmo-living-messages): Ditto.
8438         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8439         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8440
8441         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8442         (elmo-imap4-add-to-cont-list): Abolished.
8443         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8444         instead of elmo-imap4-add-to-cont-list.
8445
8446         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8447         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8448
8449         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8450
8451 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8452
8453         * elmo-util.el (elmo-condition-parse-search-value):
8454         Fixed date parsing.
8455
8456 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8457
8458         * elmo-util.el (elmo-condition-find-key-internal): New function.
8459         (elmo-condition-find-key): Ditto.
8460
8461         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8462         (elmo-msgdb-search-internal): Ditto.
8463         (elmo-msgdb-search): Ditto.
8464
8465 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8466
8467         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8468         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8469
8470         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8471         (elmo-nntp-search-primitive): Fixed problem when condition is
8472         'unmatch'.
8473
8474         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8475
8476         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8477         (elmo-nntp-xhdr-p): New macro.
8478         (elmo-nntp-set-xhdr): Ditto.
8479         (elmo-nntp-parse-xhdr-response): New function.
8480         (elmo-nntp-retrieve-field): Ditto.
8481         (elmo-nntp-search-primitive): Ditto.
8482         (elmo-nntp-search): Implemented.
8483
8484         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8485
8486         * elmo-archive.el (elmo-archive-search): Set all number list to
8487         `elmo-archive-field-condition-match'
8488
8489         * elmo-localdir.el (elmo-localdir-search): Likewise.
8490
8491         * elmo-maildir.el (elmo-maildir-search): Likewise.
8492
8493 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8494
8495         * elmo-msgdb.el (elmo-living-messages): New function.
8496         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8497         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8498         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8499         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8500         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8501         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8502         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8503         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8504         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8505         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8506         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8507
8508 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8509
8510         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8511
8512         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8513
8514         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8515
8516         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8517         arguments for `SEARCH' command.
8518         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8519         All other related portions are changed.
8520
8521         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8522
8523         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8524         (elmo-list-folder-unread): Rewrite.
8525         (elmo-list-folder-important): Ditto.
8526
8527         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8528         (elmo-condition-parse-error): New inline function.
8529         (elmo-read-search-condition): New function.
8530         (elmo-read-search-condition-internal): Ditto.
8531         (elmo-parse-search-condition): Rewrite.
8532         (elmo-condition-parse): New function.
8533         (elmo-condition-parse-or-expr): Ditto.
8534         (elmo-condition-parse-and-expr): Ditto.
8535         (elmo-condition-parse-primitive): Ditto.
8536         (elmo-condition-parse-search-value): Ditto.
8537         (elmo-buffer-field-primitive-condition-match): Ditto.
8538         (elmo-buffer-field-condition-match): Rewrite.
8539         (elmo-file-field-condition-match): Ditto.
8540
8541         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8542         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8543
8544         * elmo-internal.el (elmo-internal-search): Set `number' and
8545         `number-list' argument of `elmo-file-field-condition-match'.
8546
8547         * elmo-maildir.el (elmo-maildir-search): Ditto.
8548
8549         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8550         `msgdb' as argument instead of `mark-alist'.
8551         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8552         `overview'.
8553
8554         * elmo-multi.el: Likewise.
8555
8556         * elmo-pipe.el: Likewise.
8557
8558         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8559         (elmo-imap4-search-internal): Rewrite.
8560         (elmo-imap4-search): Ditto.
8561
8562         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8563         (elmo-filter-list-folder-unread): Ditto.
8564         (elmo-filter-list-folder-important): Ditto.
8565         (elmo-filter-search): Rewrite.
8566
8567         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8568         `number-list' argument of `elmo-file-field-condition-match'.
8569         (elmo-cache-search): Ditto.
8570
8571         * elmo-localdir.el: Likewise.
8572
8573         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8574         number-list and pass it to `elmo-buffer-field-condition-match'.
8575         (elmo-archive-field-condition-match): Pass `number-list' to
8576         `elmo-archive-field-condition-match'
8577
8578 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8579
8580         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8581         `listgroup'.
8582
8583         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8584         (elmo-folder-diff-async-callback-data): Ditto.
8585         (elmo-folder-diff-async): New function.
8586
8587         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8588         (elmo-network-session-cache-key): Use it as a prefix of the session
8589         name.
8590         (elmo-network-open-session): Ditto.
8591
8592         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8593         (elmo-imap4-status-callback-data): Ditto.
8594         (elmo-imap4-server-diff-async-callback): New variable.
8595         (elmo-imap4-server-diff-async-callback-data): Ditto.
8596         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8597         `elmo-imap4-status-callback-data'.
8598         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8599         `elmo-imap4-status-callback-data' as nil.
8600         (elmo-imap4-server-diff): Ditto.
8601         (elmo-imap4-server-diff-async-callback-1): New function.
8602         (elmo-imap4-server-diff-async): Ditto.
8603         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8604
8605 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8606
8607         * elmo-util.el (elmo-list-delete): Doc fix.
8608         (elmo-delete-lists): Abolish.
8609         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8610         instead of `elmo-delete-lists'.
8611
8612 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8613
8614         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8615         before `sort'.
8616
8617 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8618
8619         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8620         `elmo-imap4-literal-subr'.
8621         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8622         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8623
8624 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8625
8626         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8627         (elmo-archive-list-folder): Fix.
8628         (elmo-archive-max-of-folder): Fix.
8629
8630 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8631
8632         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8633          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8634         (elmo-localdir-append-msg): Ditto.
8635         (elmo-localdir-list-folder): Fix for `nonsort'.
8636         (elmo-localdir-list-folder-subr): Fix for `killed'.
8637         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8638         (elmo-maildir-list-folder-subr): Ditto.
8639         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8640         (elmo-archive-list-folder-subr): Ditto.
8641         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8642         (elmo-internal-list-folder-subr): Ditto.
8643
8644 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8645
8646         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8647
8648 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8649
8650         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8651
8652 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8653
8654         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8655         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8656
8657         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8658         before greeting.
8659         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8660         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8661
8662 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8663
8664         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8665
8666         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8667         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8668         before STORE command.
8669
8670 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8671
8672         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8673
8674         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8675         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8676         of `response'.
8677         (elmo-imap4-list-folders): Removed unused local variable.
8678         (elmo-network-initialize-session): Ditto.
8679         (elmo-imap4-delete-msg-by-id): Ditto.
8680         (elmo-imap4-parse-fetch): Ditto.
8681         (elmo-imap4-copy-msgs): Ditto.
8682         Use `dst-spec' instead of `dst-folder'.
8683         (elmo-network-authenticate-session): Check authenticate type `plain'.
8684
8685 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8686
8687         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8688         garbage checking.
8689         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8690         `elmo-imap4-response-value'.
8691         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8692
8693 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8694
8695         * elmo-imap4.el (elmo-imap4-send-command):
8696         Cause elmo-imap4-bye-error when current response is BYE.
8697         (elmo-imap4-arrival-filter): Changed greeting response value.
8698
8699         * elmo2.el (elmo-imap4-bye-error): Define.
8700
8701         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8702         (elmo-imap4-server-diff): Ditto.
8703         (elmo-imap4-response-bye-p): New macro.
8704         (elmo-imap4-response-error-text): Get text from BYE response.
8705         (elmo-imap4-read-response): Return if BYE response.
8706         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8707         (elmo-imap4-folder-exists-p): Ditto.
8708         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8709         (elmo-imap4-parse-bye): New function.
8710         (elmo-imap4-parse-response): Remove needless let.
8711         Call `elmo-imap4-parse-bye'.
8712
8713 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8714
8715         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8716         the mailbox does not exist.
8717         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8718
8719 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8720
8721         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8722
8723 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8724
8725         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8726
8727         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8728         (elmo-network-initialize-session-buffer): Defined.
8729
8730         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8731         Abolished.
8732         (mmelmo-imap4-get-mime-entity): Rewrite.
8733
8734         * elmo2.el (elmo-error): Capitalize error message.
8735
8736         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8737         (elmo-network-session-buffer): New macro.
8738         (elmo-network-open-session): Use it.
8739
8740         * elmo-imap4.el: Rewrite.
8741
8742 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8743
8744         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8745
8746 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8747
8748         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8749         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8750         (elmo-imap4-create-msgdb-from-overview-string): Use
8751         `elmo-msgdb-create-overview-from-buffer'.
8752
8753 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8754
8755         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8756         (elmo-imap4-default-hierarchy-delimiter): New variable.
8757         (elmo-imap4-list-folders): Use it.
8758
8759 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8760
8761         * elmo-net.el (elmo-network-open-session): Add user and
8762         stream-type for process-buffer name.
8763
8764         * elmo-pop3.el (elmo-network-initialize-session): Call
8765         buffer-disable-undo.
8766
8767         * elmo-imap4.el (elmo-network-initialize-session):
8768         Set current-buffer as an argument for `buffer-disable-undo'.
8769
8770         * elmo-pop3.el (elmo-network-close-session): Don't use
8771         `process-live-p'.
8772
8773         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8774         Set default as 'user.
8775
8776         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8777
8778         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8779         and `elmo-imap4-flush-connection'.
8780
8781         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8782         (elmo-pop3-get-spec): Assume auth as symbol.
8783         (elmo-open-network-stream): Moved to `elmo-net'.
8784
8785         * elmo-pop3.el (toplevel): Require 'elmo-net.
8786         Define `sasl-cram-md5' to silence byte compilier.
8787         (elmo-pop3-connection-cache) Abolished.
8788         (elmo-pop3-authenticator-alist) New variable.
8789         (elmo-pop3-session): Define.
8790         (elmo-pop3-connection-get-process): Abolished.
8791         (elmo-pop3-connection-get-buffer): Ditto.
8792         (elmo-pop3-close-connection): Ditto.
8793         (elmo-pop3-flush-connection): Ditto.
8794         (elmo-pop3-get-connection): Ditto.
8795         (elmo-pop3-get-session): New function.
8796         (Replacement for `elmo-pop3-get-connection').
8797         All other related modules are changed.
8798         (elmo-network-close-session): Define.
8799         (elmo-pop3-send-command): Abolished argument `buffer'.
8800         All other related modules are changed.
8801         (elmo-pop3-read-response): Likewise.
8802         (elmo-pop3-open-connection): Abolished.
8803         (elmo-pop3-auth-user): New function.
8804         (elmo-pop3-auth-apop): Ditto.
8805         (elmo-pop3-auth-cram-md5): Ditto.
8806         (elmo-pop3-auth-scram-md5): Ditto.
8807         (elmo-pop3-auth-digest-md5): Ditto.
8808         (elmo-network-initialize-session): Define.
8809         (elmo-network-authenticate-session): Ditto.
8810         (elmo-network-setup-session): Ditto.
8811
8812         * elmo-imap4.el (toplevel): Require 'elmo-net.
8813         (elmo-imap4-session): Define.
8814         (elmo-imap4-connection-cache): Abolished.
8815         (elmo-imap4-password-key): Ditto.
8816         (elmo-imap4-flush-connection): Ditto.
8817         (elmo-imap4-get-connection): Ditto.
8818         All other related modules are changed.
8819         (elmo-imap4-get-session): New function
8820         (Replacement for `elmo-imap4-get-connection').
8821         (elmo-imap4-read-response): Abolished argument `buffer'.
8822         All other related modules are changed.
8823         (elmo-imap4-send-command): Likewise.
8824         (elmo-imap4-select-folder): Abolished.
8825         All other related modules are changed.
8826         (elmo-imap4-select-mailbox): New function.
8827         (Replacement for `elmo-imap4-select-folder').
8828         (elmo-imap4-auth-login): Simplify.
8829         (Assume current buffer as process buffer)
8830         (elmo-imap4-auth-cram-md5): Ditto.
8831         (elmo-imap4-auth-digest-md5): Ditto.
8832         (elmo-imap4-login): Ditto.
8833         (elmo-imap4-open-connection): Abolished.
8834         (elmo-imap4-open-connection-1): Abolished.
8835         (elmo-network-initialize-sessoin): Define.
8836         (elmo-network-authenticate-session): Ditto.
8837         (elmo-network-setup-session): Ditto.
8838
8839         * elmo-net.el: New module.
8840
8841 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8842
8843         * elmo-util.el (elmo-define-error): New function.
8844
8845         * elmo2.el (elmo-error): Define.
8846         (elmo-open-error): Define.
8847         (elmo-authenticate-error): Define.
8848
8849         * elmo-imap4.el (elmo-imap4-error): Abolish.
8850         (elmo-imap4-error-type): Abolish.
8851         (elmo-imap4-error-process): Abolish.
8852         (elmo-imap4-error-message): Abolish
8853         (elmo-imap4-list-folders): Don't quote lambda.
8854         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8855         (elmo-imap4-parse-namespace): Ditto.
8856         (elmo-imap4-open-connection): Rewrite.
8857         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8858         (elmo-imap4-get-connection): Abolish local variable `result'.
8859
8860 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8861
8862         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8863         wrong-type-argument error when auth is nil.
8864
8865 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8866
8867         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8868         (elmo-default-nntp-stream-type): Ditto.
8869         (elmo-default-pop3-stream-type): Ditto.
8870         (elmo-network-stream-type-alist): Ditto.
8871         (elmo-default-imap4-ssl): Abolished.
8872         (elmo-default-nntp-ssl): Ditto.
8873         (elmo-default-pop3-ssl): Ditto.
8874
8875         * elmo-util.el: (toplevel): Removed needless requires.
8876         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8877         (elmo-open-network-stream): Open network stream according to
8878         the value of `elmo-network-stream-type-alist'.
8879         (elmo-get-network-stream-type): New function.
8880         (elmo-network-stream-type-spec-string): New macro.
8881         (elmo-network-stream-type-symbol): Ditto.
8882         (elmo-network-stream-type-function): Ditto.
8883
8884         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8885         network-stream-type. All other related portions are changed.
8886         (elmo-pop3-open-connection): Ditto.
8887
8888         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8889         network-stream-type. All other related portions are changed.
8890
8891         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8892         network-stream-type.All other related portions are changed.
8893         (elmo-imap4-error): New macro.
8894         (elmo-imap4-error-type): Ditto.
8895         (elmo-imap4-error-process): Ditto.
8896         (elmo-imap4-error-message): Ditto.
8897         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8898         (elmo-imap4-auth-cram-md5): Ditto.
8899         (elmo-imap4-auth-digest-md5): Ditto.
8900         (elmo-imap4-login): Ditto.
8901         (elmo-imap4-open-connection): Remove password entry if authentication
8902         was in vain.
8903         (elmo-imap4-user-at-host): Abolished.
8904         (elmo-imap4-password-key): New buffer local variable.
8905         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8906         using protocol, port, auth and stream-type.
8907
8908         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8909
8910 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8911
8912         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8913
8914         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8915
8916         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8917         (elmo-imap4-authenticator-alist): New variable.
8918         (elmo-imap4-open-connection-1): Rename from
8919         elmo-imap4-open-connection.
8920         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8921         only wraps elmo-imap4-open-connection-1.
8922         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8923         user-at-host.
8924         (elmo-imap4-auth-login): New function.
8925         (elmo-imap4-auth-cram-md5): New function.
8926         (elmo-imap4-auth-digest-md5): New function.
8927         (elmo-imap4-login): New function.
8928
8929 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8930
8931         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8932         function `error'.
8933
8934 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8935
8936         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8937
8938 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8939
8940         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8941
8942 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8943
8944         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8945         for server responses, quote `*' regardless of where it appears.
8946
8947 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8948
8949         * elmo-maildir.el (elmo-maildir-commit): New alias.
8950
8951 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8952
8953         * elmo-util.el (elmo-display-progress):
8954                 Use `progress-feedback-with-label'.
8955
8956 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8957
8958         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8959         (elmo-imap4-non-atom-char-regex): Ditto.
8960         (elmo-imap4-non-text-char-regex): Ditto.
8961         (elmo-imap4-literal-threshold): Ditto.
8962         (elmo-imap4-atom-p): New function.
8963         (elmo-imap4-quotable-p): Ditto.
8964         (elmo-imap4-nil): Ditto.
8965         (elmo-imap4-atom): Ditto.
8966         (elmo-imap4-quoted): Ditto.
8967         (elmo-imap4-literal-subr): Ditto.
8968         (elmo-imap4-literal): Ditto.
8969         (elmo-imap4-buffer-literal): Ditto.
8970         (elmo-imap4-string-subr): Ditto.
8971         (elmo-imap4-string): Ditto.
8972         (elmo-imap4-buffer-string): Ditto.
8973         (elmo-imap4-astring-subr): Ditto.
8974         (elmo-imap4-astring): Ditto.
8975         (elmo-imap4-buffer-astring): Ditto.
8976         (elmo-imap4-nstring): Ditto.
8977         (elmo-imap4-buffer-nstring): Ditto.
8978         (elmo-imap4-mailbox): New alias.
8979         (elmo-imap4-field-body): Ditto.
8980         (elmo-imap4-userid): Ditto.
8981         (elmo-imap4-password): Ditto.
8982         (elmo-imap4-format-quoted): New function.
8983         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8984         arguments and handle "atom", "quoted" and "literal" string here.
8985         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8986         `elmo-imap4-send-command'.
8987         (elmo-imap4-folder-exists-p): Likewise.
8988         (elmo-imap4-create-folder): Likewise.
8989         (elmo-imap4-delete-folder): Likewise.
8990         (elmo-imap4-rename-folder): Likewise.
8991         (elmo-imap4-max-of-folder): Likewise.
8992         (elmo-imap4-check-validity): Likewise.
8993         (elmo-imap4-sync-validity): Likewise.
8994         (elmo-imap4-server-diff): Likewise.
8995         (elmo-imap4-select-folder): Likewise.
8996         (elmo-imap4-copy-msgs): Likewise.
8997         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8998         (elmo-imap4-mark-set-on-msgs): Likewise.
8999         (elmo-imap4-read-part): Likewise.
9000         (elmo-imap4-read-msg): Likewise.
9001         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
9002         `elmo-imap4-password' for `elmo-imap4-send-command'.
9003         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
9004         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
9005         `elmo-imap4-buffer-literal'.
9006         (elmo-imap4-append-msg): Likewise.
9007
9008         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
9009         `delete' for removing dead connection from the connection cache.
9010         Move deletion of the process buffer after that.
9011         (elmo-imap4-list): Change `defsubst' to `defun'.
9012         (elmo-imap4-commit): Make error message verbose.
9013         (elmo-imap4-search): Ditto.
9014         (elmo-imap4-list): Ditto.
9015         (elmo-imap4-select-folder): Ditto.
9016         (elmo-imap4-copy-msgs): Ditto.
9017         (elmo-imap4-delete-msg-by-id): Ditto.
9018         (elmo-imap4-append-msg-by-id): Ditto.
9019         (elmo-imap4-append-msg): Ditto.
9020
9021 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
9022
9023         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
9024         when dired is used on XEmacs.
9025
9026 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
9027
9028         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
9029         instead of `append'.
9030         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
9031         `elmo-plugged-p' directly.
9032         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
9033         of `elmo-plugged-p' directly.
9034
9035         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
9036         Eliminate unused variable.  Use `memq' for checking a process status.
9037         Use `cons' instead of `append' for updating the connection cache.
9038         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
9039         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
9040
9041 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
9042
9043         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
9044         `elmo-imap4-read-point' exactly.
9045
9046         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
9047         the local variable `folder' to `mailbox'.
9048         Rename the argument `fld' to `folder'.
9049
9050 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
9051
9052         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
9053         * elmo-imap4.el (elmo-imap4-commit): Ditto.
9054
9055 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
9056
9057         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
9058         (elmo-pop3-number-uidl-hash): New buffer-local variable.
9059         (elmo-pop3-uidl-number-hash): Ditto.
9060         (elmo-pop3-size-hash): Ditto.
9061         (elmo-pop3-uidl-done): Ditto.
9062         (elmo-pop3-list-done): Ditto.
9063         (elmo-pop3-connection-get-process): New defmacro.
9064         (elmo-pop3-connection-get-buffer): Ditto.
9065         (elmo-pop3-close-connection): Delete buffer and process.
9066         (elmo-pop3-flush-connection): Don't delete buffer and process.
9067         (elmo-pop3-get-connection): Added optional argument `if-exists'.
9068         Setup UIDL and size hash.
9069         (elmo-pop3-send-command-no-erase): Deleted
9070         (elmo-pop3-send-command): Added optional argument `no-erase'.
9071         (elmo-pop3-parse-uidl-response): New function.
9072         (elmo-pop3-parse-list-response): Set size hash.
9073         (elmo-pop3-list-location): New function.
9074         (elmo-pop3-list-by-uidl-subr): Ditto.
9075         (elmo-pop3-list-by-list): Ditto.
9076         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
9077         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
9078         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
9079         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
9080         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
9081         Use uidl.
9082         (elmo-pop3-uidl-to-number): New function.
9083         (elmo-pop3-number-to-uidl): Ditto.
9084         (elmo-pop3-number-to-size): Ditto.
9085         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
9086         Set number by use of uidl.
9087         (elmo-pop3-msgdb-create-message): Likewise.
9088         Set size, loc-alist in msgdb.
9089         (elmo-pop3-read-msg): Set number by use of uidl.
9090         Added optional argument `msgdb'.
9091         (elmo-pop3-delete-msg): Ditto.
9092         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
9093         (elmo-pop3-commit): Close connection.
9094
9095         * elmo-pipe.el (elmo-pipe-max-of-folder):
9096         Bind `elmo-pop3-use-uidl' as nil.
9097         (elmo-pipe-drain): Ditto.
9098         Call `elmo-commit'.
9099
9100         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
9101         (elmo-msgdb-overview-entity-set-size): New defsubst.
9102
9103 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
9104
9105         * elmo-vars.el (elmo-use-killed-list): New variable
9106         (Renamed from `elmo-nntp-use-killed-list').
9107         (elmo-nntp-use-killed-list): Eliminated.
9108
9109         * elmo-msgdb.el (elmo-msgdb-expand-path):
9110         Changed expanding msgdb path for elmo-multi.
9111
9112         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
9113         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
9114         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
9115         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
9116         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
9117         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
9118         (toplevel): Deleted time-stamp line.
9119
9120         * elmo2.el (elmo-clear-killed ): Defined as function
9121         (Abolished defining as a backend function).
9122         All other related modules are changed.
9123
9124 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
9125
9126         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
9127
9128 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
9129
9130         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
9131
9132 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
9133
9134         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
9135
9136 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
9137
9138         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
9139         asynchronous folder check.
9140
9141         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
9142
9143         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
9144         `elmo-nntp-use-killed-list'.
9145         (elmo-nntp-list-folder): Use killed list.
9146         (elmo-nntp-max-of-folder): Ditto.
9147         (elmo-nntp-msgdb-create): Set killed list.
9148
9149         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
9150
9151         * elmo2.el (elmo-clear-killed): New backend function.
9152         All other related modules are changed.
9153
9154 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
9155
9156         * elmo-util.el (elmo-imap4-spec-folder): Use
9157         `elmo-imap4-spec-mailbox'; Mark as obsolete.
9158         All callers changed.
9159
9160 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
9161
9162         * mmelmo-2.el (initialize-instance):
9163         Use `mime-buffer-entity-buffer-internal' instead of
9164         `mime-entity-buffer'.
9165
9166         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
9167         (mime-entity-body): Implemented.
9168         (mime-goto-header-start-point): Deleted.
9169         (mime-goto-body-end-point): Ditto.
9170         (mime-entity-point-min): Ditto.
9171         (mime-entity-point-max): Ditto.
9172         (mime-entity-children): Ditto.
9173         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
9174         instead of `mime-entity-buffer'.
9175         (mime-entity-header-buffer): Ditto.
9176         (mime-entity-body-buffer): Ditto.
9177         (mime-write-entity-content): Ditto.
9178
9179         * pldap.el (ldap-static-if): New macro.
9180         (toplevel): Use it instead of `static-if'.
9181
9182 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
9183
9184         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
9185         included in `attrs' argument.
9186
9187 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
9188
9189         * elmo-util.el (elmo-get-passwd): Use old backquote style.
9190
9191         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
9192         (ldap-ldif-safe-init-char-regexp): Ditto.
9193         (ldap-ldif-safe-string-regexp): Ditto.
9194         (ldap/ldif-safe-string-p): New macro.
9195         (ldap/ldif-insert-field): Ditto.
9196         (ldap-modify): Use it.
9197         (ldap-add): Ditto.
9198         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
9199         (ldap-decode-attribute): Decode only when `attr' is consp.
9200         (ldap-delete): Bind `ret'.
9201         (toplevel): Require 'cl at compile time.
9202         Removed (require 'poe) and (require 'std11).
9203         (pldap-version): Eliminated.
9204         (ldap-search-basic): Removed auth and dn binding.
9205         (ldap-ldif-field-name-regexp): New constant.
9206         (ldap-ldif-field-head-regexp): Ditto.
9207         (ldap-ldif-next-field-head-regexp): Ditto.
9208         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
9209         (ldap/field-end): New function.
9210         (ldap/field-body): Use it.
9211         (ldap/collect-field): Ditto.
9212         (ldap-search-basic): Use `ldap/field-body'.
9213
9214 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
9215
9216         * pldap.el (ldap-default-attribute-encoder): New user option.
9217         (ldap/field-body): Decode base64 string.
9218         (ldap/collect-field): Ditto.
9219         (ldap-encode-attribute): New function.
9220         (ldap-add-entries): Use it.
9221         (ldap-modify-entries): Ditto.
9222         (ldap-search-entries): Enclosed decoding function with
9223         `with-temp-buffer' and set as unibyte.
9224         (ldap-search-basic): Set process buffer as unibyte.
9225
9226         * elmo-util.el (elmo-folder-identical-system-p):
9227         Eliminated name space checking.
9228
9229         * pldap.el: New module.
9230         toplevel: Changed condition to detect built-in ldap feature.
9231         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
9232         (ldap-add): Added error handling.
9233         (ldap-modify): Ditto.
9234         (ldap-delete): Ditto.
9235
9236 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
9237
9238         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
9239         Initialize local variables with `let'.  Inline a temporary
9240         variable for the progress percentage.  Sort `setq' to reduce
9241         function call in the while-loop.
9242
9243         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
9244         into the conditional branch.
9245
9246 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
9247
9248         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
9249         Move a conditional out of the while-loop.
9250
9251 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9252
9253         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
9254         elmo-msgdb-overview-get-entity-by-number.
9255         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
9256         throw.
9257
9258 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
9259
9260         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
9261         the local variable for a packed number self descriptively.
9262
9263 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9264
9265         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
9266         * elmo-localdir.el (elmo-localdir-pack-number): Use
9267         `elmo-msgdb-overview-get-entity' instead of
9268         `elmo-msgdb-overview-get-entity-by-number'.
9269         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
9270         (elmo-msgdb-search-overview-entity): Removed.
9271         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
9272         by message-id or number.
9273         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
9274         instead of `elmo-msgdb-overview-get-entity-by-number'.
9275
9276 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9277
9278         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
9279         non-nil, use hash table for overview.
9280         (elmo-hash-maximum-size): New variable.
9281         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
9282         (elmo-msgdb-make-overview-hashtb): New function.
9283         (elmo-msgdb-clear-overview-hashtb): New function.
9284         (elmo-clear-hash-val): New macro.
9285         All other related modules are changed.
9286
9287 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
9288
9289         * elmo2.el (elmo-move-msgs): If there's other message with
9290         same message-id, don't use cache.
9291
9292 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
9293
9294         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
9295         number is already packed.
9296
9297 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
9298
9299         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
9300
9301 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9302
9303         * elmo-vars.el (elmo-display-progress-threshold): New variable.
9304         All other related modules are changed.
9305
9306 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
9307
9308         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
9309         of refiling failure on Maildir.
9310
9311 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9312
9313         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
9314         decoded mime-charset with cache.
9315         (elmo-msgdb-overview-entity-get-from): Ditto.
9316         (elmo-msgdb-overview-entity-get-subject): Ditto.
9317         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9318
9319 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9320
9321         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9322         (elmo-remove-passwd): Fill password with 0 before erase.
9323         * elmo-vars.el (elmo-passwd-life-time): New variable.
9324
9325 \f
9326 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9327
9328         * elmo-cache.el (elmo-buffer-cache-add):
9329         Set message cache buffer as unibyte.
9330
9331 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9332
9333         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9334         become nil.
9335
9336 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9337
9338         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9339         when display is finished.
9340         (elmo-nntp-msgdb-create): Ditto.
9341         (elmo-nntp-groups-read-response): Ditto.
9342         (elmo-nntp-retrieve-headers): Ditto.
9343         (elmo-nntp-msgdb-create-message): Ditto.
9344         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9345         (elmo-pop3-msgdb-create-message): Ditto.
9346
9347 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9348
9349         * elmo-maildir.el (elmo-maildir-msgdb-create):
9350         Use `elmo-msgdb-sort-by-date'.
9351
9352 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9353
9354         * elmo2.el (elmo-read-msg-no-cache):
9355         Eliminated arguments after `outbuf'.
9356         Don't use cache even if it exists.
9357         (elmo-read-msg): Don't pass arguments after `outbuf' to
9358         `elmo-read-msg-no-cache'.
9359
9360 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9361
9362         * elmo-archive.el (elmo-archive-list-folders):
9363         Use `file-name-directory' if base folder does not exist.
9364
9365 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9366
9367         * elmo-archive.el (elmo-archive-list-folders): Don't use
9368         `file-name-directory'.
9369
9370 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9371
9372         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9373         If `force' is non-nil, try flushing all operation queues.
9374
9375 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9376
9377         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9378         as-binary-process.
9379
9380 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9381
9382         * elmo-util.el (elmo-display-progress): Fixed.
9383
9384 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9385
9386         * elmo-util.el (elmo-display-progress): New function.
9387         All other related modules are changed.