* mmimap.el: Remove (require 'static).
[elisp/wanderlust.git] / elmo / ChangeLog
1 2008-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2
3         * mmimap.el: Remove (require 'static).
4         * acap.el: Ditto.
5
6         * elmo-flag.el: Move ';;; Code:' comment.
7         * elmo-imap4.el: Ditto.
8         * elmo-net.el: Ditto.
9
10         * elmo-version.el (product-provide): Fix comment.
11
12 2008-02-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
13
14         * slp.el: Add (eval-when-compile (require 'cl)).
15         * elmo-date.el: Ditto.
16         * elmo-pop3.el: Ditto.
17         * elmo-mime.el: Add (eval-when-compile (require 'elmo)).
18
19 2008-02-17  TAKAHASHI Kaoru  <kaoru@kaisei.org>
20
21         * modb.el (elmo-msgdb-match-condition-primitive): Use
22         `string-to-number' instead of `string-to-int'.
23
24         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer)
25         (elmo-msgdb-message-match-condition)
26         (elmo-msgdb-create-message-entity-from-buffer): Use
27         `string-to-number' instead of `string-to-int'.
28
29         * elmo.el (elmo-folder-confirm-appends): Use `string-to-number'
30         instead of `string-to-int'.
31
32         * elmo-util.el (elmo-cache-expire-by-age): Use `string-to-number'
33         instead of `string-to-int'.
34
35         * elmo-pop3.el (elmo-pop3-list-by-list, elmo-folder-status): Use
36         `string-to-number' instead of `string-to-int'.
37
38         * elmo-nntp.el (elmo-nntp-make-msglist)
39         (elmo-folder-list-messages-plugged, elmo-nntp-folder-status)
40         (elmo-nntp-create-msgdb-from-overview-string)
41         (elmo-nntp-parse-xhdr-response, elmo-nntp-msgdb-create-message)
42         (elmo-nntp-search-primitive): Use `string-to-number' instead of
43         `string-to-int'.
44
45         * elmo-net.el (elmo-net-folder-set-parameters): Use
46         `string-to-number' instead of `string-to-int'.
47
48         * elmo-localdir.el (elmo-localdir-list-subr): Use
49         `string-to-number' instead of `string-to-int'.
50
51         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Use
52         `string-to-number' instead of `string-to-int'.
53
54         * elmo-date.el (elmo-date-get-datevec): Use `string-to-number'
55         instead of `string-to-int'.
56
57         * elmo-archive.el (elmo-archive-list-folder-subr): Use
58         `string-to-number' instead of `string-to-int'.
59
60 2008-02-16  TAKAHASHI Kaoru  <kaoru@kaisei.org>
61
62         * elmo-util.el (elmo-get-passwd): Fix typo.
63
64         * elmo-nntp.el (elmo-nntp-get-server-command)
65         (elmo-nntp-set-server-command, elmo-nntp-xover-p)
66         (elmo-nntp-listgroup-p, elmo-nntp-set-listgroup)
67         (elmo-nntp-list-active-p, elmo-nntp-set-list-active)
68         (elmo-nntp-xhdr-p, elmo-nntp-set-xhdr): New backquote style.
69
70         * elmo-imap4.el (elmo-imap4-debug)
71         (elmo-imap4-response-continue-req-p, elmo-imap4-response-ok-p)
72         (elmo-imap4-response-bye-p, elmo-imap4-response-garbage-p)
73         (elmo-imap4-response-value, elmo-imap4-response-error-text)
74         (elmo-imap4-response-bodydetail-text, elmo-imap4-value)
75         (elmo-imap4-nth, elmo-imap4-detect-search-charset)
76         (elmo-imap4-identical-system-p): New backquote style.
77
78 2008-02-15  TAKAHASHI Kaoru  <kaoru@kaisei.org>
79
80         * elmo-dop.el (elmo-make-dop-queue): New backquote style.
81         (elmo-dop-queue-fname, elmo-dop-queue-method): Ditto.
82         (elmo-dop-queue-arguments): Ditto.
83
84         * elmo-date.el (elmo-match-substring): New backquote style.
85         (elmo-match-string, elmo-match-buffer): Ditto.
86         (elmo-date-make-sortable-string): Ditto.
87
88         * elmo-archive.el (elmo-archive-get-method):New backquote style.
89         (elmo-archive-get-suffix, elmo-archive-get-regexp): Ditto.
90
91         * elmo-multi.el (elmo-multi-real-folder-number): New backquote
92         style.
93
94         * elmo-net.el (elmo-network-stream-type-spec-string): New
95         backquote style.
96         (elmo-network-stream-type-symbol): Ditto.
97         (elmo-network-stream-type-feature): Ditto.
98         (elmo-network-stream-type-function): Ditto.
99         (elmo-network-session-buffer): Ditto.
100
101         * elmo-util.el (elmo-file-cache-expand-path): New backquote style.
102         (elmo-file-cache-status, elmo-file-cache-path): Ditto.
103         (elmo-make-file-cache, elmo-string, elmo-get-passwd): Ditto.
104         (elmo-bind-directory, elmo-set-work-buf): Ditto.
105
106         * elmo.el (elmo-folder-send): New backquote style.
107
108 2008-02-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
109
110         * pldap.el (ldap-static-if): New backquote style.
111         (ldap/ldif-safe-string-p): Ditto.
112         (ldap/ldif-insert-field): Ditto.
113
114         * elmo-version.el (elmo-version): Up to 2.15.6.
115
116 2008-01-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
117
118         * elmo-imap4.el (elmo-folder-list-messages-plugged): Don't include
119         messages with \Deleted flag.
120         (elmo-folder-delete-messages-plugged): Ask before sending expunge
121         command if there are messages with \Deleted flag.
122
123 2007-04-24  Yoichi NAKAYAMA  <yoichi@geiin.org>
124
125         * elmo-pop3.el (elmo-pop3-auth-apop): Use more strict regexp.
126         http://seclists.org/bugtraq/2007/Apr/0018.html
127         (Suggested by Tatsuya Kinoshita)
128
129 2007-04-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
130
131         * elmo-imap4.el (elmo-folder-delete): Don't call close for mailbox
132         with \Noselect attribute.
133
134 2007-04-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
135
136         * elmo-imap4.el (elmo-folder-list-subfolders): Fix handling of
137         hierarchical folder structure with UW-imapd.
138
139 2007-02-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
140
141         * elmo-imap4.el (elmo-imap4-clear-login): Don't send LOGIN command
142         when the LOGINDISABLED capability is advertised.
143
144 2007-01-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
145
146         * elmo-msgdb.el (elmo-msgdb-extra-fields): Make it non-destructive.
147
148 2007-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
149
150         * elmo-shimbun.el (elmo-shimbun-update-overview): Add argnument
151         `entity'.
152         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview' only
153         if the message entity is exists.
154
155 2007-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
156
157         * elmo-util.el (elmo-msgdb-insert-file-header): Call
158         `elmo-delete-cr-buffer'.
159
160         * elmo-localdir.el (elmo-message-fetch-internal): Use
161         `insert-file-contents-as-raw-text' instead of
162         `insert-file-contents-as-binary'.
163
164         * elmo-maildir.el (elmo-map-message-fetch): Ditto.
165
166 2006-12-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
167
168         * elmo-imap4.el (elmo-network-initialize-session): Check to
169         retrieve a whole greeting message.
170
171 2006-11-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
172
173         * elmo-flag.el (elmo-folder-commit): Encode `.minfo' at save.
174
175 2006-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
176
177         * elmo-util.el (elmo-safe-plist-get): New alias or macro.
178         (elmo-progress-notify): Use it instead of `plist-get'.
179
180 2006-11-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
181
182         * elmo.el (elmo-generic-folder-append-messages): Remove unused
183         variable `table'.
184
185 2006-11-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
186
187         * elmo-pipe.el (elmo-folder-set-plugged): Define.
188
189 2006-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
190
191         * elsp-bsfilter.el (elmo-spam-bsfilter-use-remote): New user option.
192         (elmo-spam-list-spam-messages): Check it option.
193
194 2006-11-08  Tetsurou Okazaki  <okazaki@be.to>
195
196         * elmo-util.el (elmo-with-progress-display): Return the value
197         of the last form in `body'.
198
199 2006-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
200
201         * elmo-util.el (elmo-progress-start): Accept nil for `total'.  Set
202         `elmo-progress-counter' as t when a query callback returns nil.
203         (elmo-progress-clear): New function.
204         (elmo-progress-done): Split into `elmo-progress-clear'.
205         (elmo-progress-notify): Update a total slot when it is nil.
206         (elmo-with-progress-display): Call `elmo-progress-clear' in
207         unwind-protect and move calling `elmo-progress-done' to outside.
208
209         * elmo-imap4.el (elmo-imap4-find-next-line): Call
210         `elmo-progress-notify' with :total parameter instead of
211         `elmo-progress-counter-set-total'.
212
213 2006-11-07  Tetsurou Okazaki  <okazaki@be.to>
214
215         * elmo-util.el (elmo-cache-expire-by-age): Add docstring.
216         Make it interactive.
217         (elmo-progress-start): Avoid updating `elmo-progress-counter'
218         when a query callback returns nil.  Return a progress counter
219         instead of t whenever a start callback was called.
220
221 2006-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
222
223         * elmo-imap4.el (elmo-imap4-session-capable-p): New macro.
224         (elmo-imap4-send-command): Use it.
225         (elmo-network-initialize-session): Ditto.
226         (elmo-network-setup-session): Ditto.
227         (elmo-folder-msgdb-create-plugged): Ditto.
228
229 2006-11-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
230
231         * elmo-util.el (elmo-progress-done): Fix a miss refer to
232         `elmo-progress-counter'.
233
234 2006-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
235
236         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Abolish.
237         (elsp-bsfilter-list-spam-filter): New function.
238         (elsp-bsfilter-start-list-spam): Ditto.
239         (elsp-bsfilter-read-list-spam): Ditto.
240         (elmo-spam-list-spam-messages): Use async process to display
241         progress message by each message.
242
243 2006-11-03  Yoichi NAKAYAMA  <yoichi@geiin.org>
244
245         * elmo-spam.el (elmo-spam-process-messages-as-mbox): Fix problem
246         of flushing previously inserted message contents.
247
248         * elmo-imap4.el (elmo-folder-search): Fix return value.
249
250 2006-11-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
251
252         * elmo-imap4.el (elmo-imap4-find-next-line): Check whether a label
253         of reporter is enable or not.
254
255 2006-10-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
256
257         * elmo-util.el (elmo-list-bigger-diff): Abolish.
258         (elmo-display-progress): Ditto.
259         (elmo-progress-counter-alist): Ditto.
260         (elmo-progress-set): Ditto.
261         (elmo-progress-clear): Ditto.
262         (elmo-progress-counter-all-value): Rename to
263         `elmo-progress-counter-total'.
264         (elmo-progress-counter-format): Rename to
265         `elmo-progress-counter-action'.
266         (elmo-progress-counter): New internal variable.
267         (elmo-progress-callback-function): Ditto.
268         (elmo-progress-counter-label): New function.
269         (elmo-progress-counter-set-total): Ditto.
270         (elmo-progress-counter-set-action): Ditto.
271         (elmo-progress-call-callback): Ditto.
272         (elmo-progress-start): Ditto.
273         (elmo-progress-done): Ditto.
274         (elmo-progress-notify): Rewrite.
275         (elmo-with-progress-display): Remove first argument
276         `condition'. Add optional argument `var' in `spec'.
277
278         * elmo-vars.el (elmo-display-progress-threshold): Abolish.
279         (elmo-display-retrieval-progress-threshold): Ditto.
280         (elmo-inhibit-display-retrieval-progress): Ditto.
281
282         * Replace all pair of `elmo-progress-set' and
283         `elmo-progress-clear' into `elmo-with-progress-display'.
284
285         * Replace to call `elmo-display-progress' into pair of
286         `elmo-progress-notify' and `elmo-with-progress-display'.
287
288         * elmo-version.el (elmo-version): Up to 2.15.5.
289
290 2006-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
291
292         * elmo-imap4.el (elmo-imap4-arrival-filter): Use `case' instead of
293         `cond'.
294
295 2006-10-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
296
297         * elmo-imap4.el (elmo-imap4-arrival-filter): Call delete-region in
298         cleanup-forms [wl:14027].
299
300 2006-10-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
301
302         * elmo-flag.el (elmo-global-flag-set-internal): Use
303         `elmo-copy-file' by priority when the message is a file.
304
305 2006-10-01  Yoichi NAKAYAMA  <yoichi@geiin.org>
306
307         * elmo.el: Fix typo: disptch -> dispatch.
308
309 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
310
311         * elmo.el (elmo-file-tag): New class.
312         (elmo-append-messages-disptch-table): New constant.
313         (elmo-folder-type-p): New function.
314         (elmo-folder-append-messages): Redefine as function.
315
316         * elmo-null.el (elmo-folder-append-messages): Renamed from
317         `elmo-folder-append-messages'.
318
319         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
320         (elmo-folder-append-messages-*-maildir): Renamed from
321         `elmo-folder-append-messages'.
322
323         * elmo-localdir.el (elmo-localdir-folder): Inherit
324         `elmo-file-tag'.
325         (elmo-folder-append-messages-*-localdir): Renamed from
326         `elmo-folder-append-messages'.
327
328         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
329         from `elmo-folder-append-messages'.
330
331         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
332         `elmo-folder-append-messages'.
333
334         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
335         function.
336         (elmo-folder-append-messages-*-filter): Ditto.
337
338         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
339
340         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
341         (elmo-folder-append-messages-*-pipe): Renamed from
342         `elmo-folder-append-messages'.
343
344         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
345
346         * elmo-file.el (elmo-file-folder): Ditto.
347
348         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
349
350         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
351         from `elmo-folder-append-messages'
352
353 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
354
355         * elmo-map.el (elmo-location-map-setup): Change an argument
356         `locations' to optional.
357         (elmo-location-map-clear): Abolish.
358         (elmo-folder-clear): Follow the API change.
359
360         * elmo-pop3.el (elmo-folder-clear): Ditto.
361
362         * elmo-pop3.el (toplevel): Require elmo-map.
363         (elmo-pop3-folder): Inherit elmo-location-map and abolish
364         location-alist slot (All other related portions are changed).
365         (elmo-pop3-folder-use-uidl): New function.
366         (elmo-folder-msgdb-create): Don't sort message entities.
367         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
368         (elmo-pop3-number-to-size): Convert return value to number.
369         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
370         working buffer.
371
372         * elmo-map.el: Use `location-map' as a variable name for instance
373         instead of `mapper'.
374         (elmo-location-map-setup): Return location alist.
375         (elmo-location-map-update): Ditto.
376
377 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
378
379         * elmo-map.el (elmo-location-map): New class; split location and
380         number mapping from elmo-map-folder (All other related portions
381         are changed).
382
383         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
384         change.
385
386         * elmo-version.el (elmo-version): Up to 2.15.4.
387
388 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
389
390         * elmo-vars.el (elmo-use-hardlink): New user option.
391
392         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
393         `elmo-use-hardlink'.
394
395         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
396         killed-list.
397         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
398         instead of `*-internal'. Use `elmo-with-progress-display'.
399
400 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
401
402         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
403         `elmo-spam-process-messages-as-mbox'.
404
405         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
406
407 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
408
409         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
410         argument BUFFER of `call-process'.
411
412 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
413
414         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
415         args.
416         (elsp-bsfilter-list-spam-files): Ditto.
417
418 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
419
420         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
421         (elmo-spam-bsfilter-max-messages-per-process): New use option.
422         (elmo-spam-bsfilter-debug): Fix a group.
423         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
424         `--homedir'.
425         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
426         (elsp-bsfilter-list-spam-files): New function.
427         (elmo-spam-list-spam-messages): Define.
428         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
429         (elmo-spam-bsfilter-register-messages): New function.
430         (elmo-spam-register-spam-messages): Define.
431         (elmo-spam-register-good-messages): Ditto.
432
433         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
434
435         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
436         `nconc' and `consp'.
437
438 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
439
440         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
441         hash table to test whether a location is exists.
442
443 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
444
445         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
446         even if some error occurred.
447
448         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
449         meaningless unwind-protect.
450
451         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
452         start-number correctly.
453         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
454         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
455
456 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
457
458         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
459         (elmo-folder-initialize): Use it.
460         (elmo-global-flag-replace-referrer): New function.
461
462         * elmo.el (toplevel): Added autoload setting for
463         `elmo-global-flag-replace-referrer'.
464         (elmo-folder-rename): Rewrite the last change use
465         `elmo-global-flag-replace-referrer'.
466
467         * elmo-pipe.el (elmo-folder-rename): Call
468         `elmo-global-flag-replace-referrer'.
469
470 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
471
472         * elmo.el (elmo-folder-rename): Set meta data for global flags
473         follow the rename.
474
475 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
476
477         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
478         as 'not-loaded.
479         (elmo-folder-close): Ditto.
480         (elmo-filter-folder-number-list-loaded-p): New function.
481         (elmo-filter-folder-number-list): Check whether loaded or not.
482         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
483         of `elmo-filter-folder-number-list-internal'.
484         (elmo-folder-delete-messages): Ditto.
485         (elmo-folder-length): Check whether number-list is loaded or not.
486
487 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
488
489         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
490         field `real field' into each element of list.
491         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
492         (elmo-msgdb-message-entity-field): Ditto.
493         (modb-entity-ml-info-real-fields): New function.
494
495         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
496
497         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
498         `elmo-msgdb-extra-fields'.
499
500 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
501
502         * elmo-util.el (elmo-passwd-alist-load): Move point to min
503         position before read.
504
505 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
506
507         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
508         (elmo-global-flags-initialize): Ditto.
509
510 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
511
512         * elmo-archive.el (toplevel): Don't require emu, std11
513         and elmo-localdir.
514
515         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
516         definition.
517
518 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
519
520         * elmo.el (elmo-folder-confirm-appends): Display folder name.
521
522 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
523
524         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
525         literals.
526
527 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
528
529         * elmo-maildir.el (elmo-maildir-list-location): Reduce
530         `elmo-get-last-modification-time' call.
531
532 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
533
534         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
535         expression.
536         (elmo-maildir-set-mark): Ditto.
537         (elmo-maildir-delete-mark): Ditto.
538
539 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
540
541         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
542         optional argument `separators'.
543
544 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
545
546         * elmo.el (cache-changed): Abolish.
547         (status-changed): New signal.
548         (elmo-message-killed-p): New generic function and define for
549         elmo-folder.
550         (elmo-folder-recover-messages): Ditto.
551         (elmo-message-set-cached): Emit signal `status-changed' instead of
552         `cache-changed'.
553         (elmo-message-status): New macro.
554         (elmo-message-status-folder): Ditto.
555         (elmo-message-status-number): Ditto.
556         (elmo-message-status-set-flags): Ditto.
557         (elmo-message-status-set-killed): Ditto.
558         (elmo-message-status-flags): New function.
559         (elmo-message-status-cached-p): Ditto.
560         (elmo-message-status-killed-p): Ditto.
561
562         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
563         `status-changed' instead of `cache-changed'.
564         (elmo-folder-recover-messages): Define.
565         (elmo-message-killed-p): Ditto.
566
567         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
568         `status-changed' instead of `cache-changed'.
569
570         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
571         (elmo-message-killed-p): Define.
572         (elmo-folder-recover-messages): Ditto.
573
574         * elmo-version.el (elmo-version): Up to 2.15.3.
575
576 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
577
578         * elmo-signal.el (elmo-signal-bindings): Use cons to append
579         element into list.
580         (elmo-define-signal-handler): Add docstring.
581         (elmo-define-signal-filter): Ditto.
582
583         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
584
585 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
586
587         * elmo-util.el (elmo-flatten): Don't use recursive call.
588
589         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
590         assignment.
591         (elmo-folder-message-make-temp-files): Use `number-to-string'
592         instead of `int-to-string'.
593
594 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
595
596         * elmo-search.el (elmo-folder-delete-messages): Define.
597
598 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
599
600         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
601         customization type.
602         (elmo-mailing-list-count-spec-list): Ditto.
603
604         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
605         for `list-id'.
606
607 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
608
609         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
610         handling.
611
612 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
613
614         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
615         (elmo-mailing-list-count-spec-list): Ditto.
616
617         * elmo-util.el (elmo-map-until-success): New function.
618         (elmo-string-match-substring): Ditto.
619         (elmo-find-list-match-value): Ditto.
620
621         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
622         Removed.
623         (modb-entity-extract-ml-info-from-subject): Ditto.
624         (modb-entity-extract-ml-info-from-return-path): Ditto.
625         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
626         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
627         (modb-entity-extract-ml-info-from-mailman): Ditto.
628         (modb-entity-extract-mailing-list-info-functions): Ditto.
629         (modb-entity-extract-mailing-list-info): Rewrite with
630         `elmo-find-list-match-value'.
631
632 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
633
634         * elmo-net.el (elmo-network-session-retry-count): New user option.
635         (elmo-network-session-buffer-name): New internal function.
636         (elmo-network-session-buffer-create): Ditto.
637         (elmo-network-open-session): Retry open network session
638         `elmo-network-session-retry-count' times.
639
640 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
641
642         * elmo-util.el (elmo-list-filter): Rewritten.
643
644 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
645
646         * elmo-util.el (elmo-string-member): Allow symbol element in list.
647
648 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
649
650         * elmo-search.el (elmo-make-search-engine): Use prefix
651         `elmo-search-' for require symbol instead of `else-'.
652         (elmo-search-engine-extprog): New class.
653         (elmo-search-engine-do-search): Remove nil from argument
654         list. Added argument pattern to evaluate element as function.
655         (elmo-search-engine-local-file): Derived from
656         `elmo-search-engine-extprog'.
657         (elmo-search-engine-create-message-entity): Check existance of file.
658         (elmo-search-engine-fetch-message): Ditto.
659         (elmo-search-namazu-index): Follow the API change.
660         (elmo-search-grep-target): Ditto.
661
662 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
663
664         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
665         characters of working buffer.
666
667         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
668         Does not bind `default-mime-charset'.
669         (elmo-msgdb-create-message-entity-from-buffer): Removed
670         unnecessary local bind.
671
672         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
673         function.
674         (modb-entity-extract-mailing-list-info-functions): Added it.
675
676 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
677
678         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
679         when number and message-id are non-nil.
680
681         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
682
683         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
684         conditional steatment.
685         (elmo-pop3-auth-apop): Likewise.
686         (elmo-network-authenticate-session): Likewise.
687
688 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
689
690         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
691         symbol `fill-column'.
692         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
693         decode field value.
694
695         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
696         (elmo-decoded-field-body): Ditto.
697
698 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
699
700         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
701         `tokens' to `params'.
702
703 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
704
705         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
706         working buffer.
707
708 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
709
710         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
711         decide index.
712
713 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
714
715         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
716         Set default value as nil.
717         (toplevel): Register search engines by
718         `elmo-search-register-engine' if there are not defined.
719
720         * elmo.el (autoload): Added autoload setting for
721         `elmo-search-register-engine'.
722
723 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
724
725         * elmo.el (toplevel): `[' is redefined as the prefix of the search
726         folder instead of nmz folder.
727         (elmo-nmz-default-index-path): Added obsolete variable setting.
728         (elmo-nmz-index-alias-alist): Ditto.
729         (elmo-nmz-use-drive-letter): Ditto.
730
731         * elmo-search.el (elmo-search-register-engine): New function.
732
733         * elmo-nmz.el: Removed.
734
735         * elmo-version.el (elmo-version): Up to 2.15.2.
736
737 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
738
739         * elmo-search.el: New file.
740
741 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
742
743         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
744         condition `larger' and `smaller'.
745
746 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
747
748         * elmo-util.el (elmo-safe-filename): Rewrite to replace
749         `"' (double quote) into "_Q_".
750
751 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
752
753         * elmo-net.el (elmo-net-quote-chars): Abolish.
754         (elmo-net-format-quoted): Ditto.
755
756 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
757
758         * elmo.el (elmo-get-folder-function): New variable.
759         (elmo-get-folder): New function.
760         (elmo-folder-rename): Call `elmo-make-folder' with specified
761         mime-charset.
762
763         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
764         `elmo-make-folder'.
765         (elmo-split-subr): Ditto.
766
767         * elmo-multi.el (elmo-folder-initialize): Ditto.
768
769         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
770
771         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
772         (elmo-flag-get-folder): Ditto.
773
774         * elmo-filter.el (elmo-folder-initialize): Ditto.
775
776         * elmo-access.el (elmo-folder-initialize): Ditto.
777         (elmo-access-folder-update-children): Ditto.
778
779         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
780         (elmo-dop-queue-flush): Ditto.
781         (elmo-folder-append-buffer-dop-delayed): Ditto.
782         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
783         mime-charset.
784
785         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
786         instead of `elmo-make-folder'.
787         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
788         destination folder instead of send `elmo-folder-rename-internal'.
789
790         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
791         slot of subfolder instead of create it.
792
793 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
794
795         * elmo-util.el (elmo-collect-separators): New function.
796         (elmo-collect-separators-internal): Ditto.
797         (elmo-collect-trail-separators): Ditto.
798         (elmo-parse-separated-tokens): Ditto.
799         (elmo-parse-separated-tokens-internal): Ditto.
800         (elmo-quote-syntactical-element): Ditto.
801
802         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
803         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
804
805         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
806         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
807         (elmo-nntp-folder-list-subfolders): Quote a user name.
808
809         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
810         (elmo-net-parse-network): Abolish.
811         (elmo-net-folder-set-parameters): New function.
812         (elmo-folder-initialize): Follow the above change.
813
814         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
815         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
816         (elmo-folder-list-subfolders): Use
817         `elmo-quote-syntactical-element' instead of
818         `elmo-net-format-quoted' to quote mailbox and user name.
819
820 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
821
822         * elmo-util.el (elmo-token-valid-p): New function.
823         (elmo-parse-token): Add optional argument `requirement'.
824         (elmo-parse-prefixed-element): Likewise.
825
826         * elmo-net.el (elmo-net-quote-chars): Renamed from
827         `elmo-net-quote-chars-regexp'.
828         (elmo-net-format-quoted): Add optional argument `extra-chars'.
829
830         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
831         by info document. Check token `uidl' is started an alphabet.
832
833         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
834         by info document. Check token `user' is started an alphabet.
835
836         * elmo-imap4.el (elmo-folder-initialize): Ditto.
837         (elmo-folder-list-subfolders): Quote user.
838
839 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
840
841         * elmo-util.el (elmo-quoted-specials-list): New constant.
842         (elmo-quoted-token): New function.
843
844         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
845         (elmo-net-format-quoted): New function.
846         (elmo-net-parse-network): Ditto.
847         (elmo-folder-initialize): Use it.
848
849         * elmo-nntp.el (elmo-folder-initialize): Use
850         `elmo-net-parse-network' to parse network specification instead of
851         `elmo-folder-initialize#elmo-net'.
852
853         * elmo-pop3.el (elmo-folder-initialize): Ditto.
854
855         * elmo-imap4.el (elmo-folder-initialize): Ditto.
856         (elmo-folder-list-subfolders): Quote folder name by
857         `elmo-net-format-quoted'.
858
859 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
860
861         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
862         (elmo-folder-search): Use it.
863
864 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
865
866         * modb-standard.el (modb-standard-loaded-message-id): Use
867         `elmo-msgdb-message-entity-field'.
868
869 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
870
871         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
872         without filename.
873
874 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
875
876         * elmo-util.el (elmo-set-auto-coding): New function.
877         (elmo-object-load): Use it.
878
879 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
880
881         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
882         (elmo-time<): Define as alias of `elmo-time-less-p'.
883         (elmo-time-to-datevec): New function.
884
885         * elmo-date.el (elmo-time-to-days): New function.
886
887 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
888
889         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
890         is not cons cell.
891
892 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
893
894         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
895         parenthesis.
896
897         * elmo-util.el (elmo-map-recursive): New function.
898
899         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
900         (modb-entity-encode-string-recursive): Ditto.
901
902 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
903
904         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
905         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
906         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
907         compare sequence number when last modified time is nil.
908
909 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
910
911         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
912
913         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
914
915 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
916
917         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
918         modification time of the file.
919
920 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
921
922         * elmo-util.el (elmo-condition-optimize): Discriminated against
923         preserved fields, extra fields and the other weight.
924
925 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
926
927         * modb-entity.el (initialize-instance): Define.
928         (modb-entity-handler-mime-charset): New internal function.
929         (modb-standard-entity-set-field): Use it.
930         (elmo-msgdb-message-entity-field): Ditto.
931         (elmo-msgdb-message-entity-field): Ditto.
932
933         * modb.el (elmo-msgdb-match-condition): Rewrite with
934         `elmo-condition-match'.
935         (elmo-msgdb-match-condition-primitive): New function.
936
937         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
938         arguments `flags' and `numbers'.
939         (elmo-msgdb-match-condition-primitive): Abolished (merged to
940         `elmo-msgdb-message-match-condition').
941         (modb-buffer-entity-handler): New class.
942
943         * elmo.el (elmo-folder-search): Optimize condition to use
944         `elmo-condition-optimize'.
945         (elmo-message-buffer-match-condition): New function.
946         (elmo-message-match-condition): Use
947         `elmo-message-buffer-match-condition' instead of
948         `elmo-buffer-field-condition-match'.
949
950         * elmo-util.el (elmo-condition-match): New function.
951         (elmo-condition-optimize): Ditto.
952         (elmo-buffer-field-primitive-condition-match): Abolish.
953         (elmo-buffer-field-condition-match): Ditto.
954
955         * elmo-archive.el (elmo-archive-field-condition-match): Use
956         `elmo-message-buffer-match-condition' instead of
957         `elmo-buffer-field-condition-match'.
958
959 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
960
961         * elmo-flag.el (elmo-global-flags-initialize): Check the
962         existence of the flag directory.
963
964 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
965
966         * elmo-access.el (elmo-folder-initialize): Call
967         `elmo-multi-connect-signals'.
968
969         * elmo-pipe.el (elmo-folder-close): Define.
970
971         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
972         children folders.
973
974         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
975         with target folder.
976
977         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
978         `number'.
979
980         * elmo-multi.el (elmo-message-entity): Don't use return value of
981         `elmo-message-entity-set-number'.
982
983 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
984
985         * modb.el (modb-generic): Added slot `mime-charset'.
986
987         * modb-standard.el (modb-standard): Added slot `overview-handler'.
988         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
989         and `modb-entity-handler-dump-parameters'.
990         (modb-standard-default-entity-handler): Abolish.
991         (elmo-msgdb-message-entity-handler): Save created handler by
992         instance slot.
993
994         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
995         (modb-entity-handler-list-parameters): New method.
996         (modb-entity-handler-equal-p): New function.
997         (modb-entity-handler-dump-parameters): Ditto.
998         (modb-entity-parse-address-string): Encode return value.
999         (modb-entity-make-address-string): Decode argument value.
1000         (modb-entity-decode-string-recursive): New function.
1001         (modb-entity-encode-string-recursive): Ditto.
1002         (modb-standard-entity-normalizer): Set to encode field value.
1003         (modb-standard-entity-specializer): Follow the above change.
1004         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
1005         mime-charset of handler.
1006         (elmo-msgdb-message-entity-field): Ditto.
1007         (elmo-msgdb-copy-message-entity): Fixed reference to internal
1008         structure.
1009         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
1010
1011         * elmo.el (elmo-folder): Added slot `mime-charset'.
1012         (elmo-make-folder): Added argument `mime-charset'.
1013         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
1014         `mime-charest'.
1015
1016         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
1017         (elmo-make-msgdb): Likewise.
1018
1019         * elmo-internal.el (elmo-internal-folder-initialize): Call
1020         `luna-make-entity' with :mime-charset parameter.
1021
1022 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
1023
1024         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
1025         encoded words in `from' and `subject' field.
1026
1027 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1028
1029         * modb.el (elmo-msgdb-message-field): Add argument `type'.
1030         (elmo-msgdb-match-condition): Get handler from entity instead of
1031         msgdb.
1032
1033         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
1034         (modb-standard-load-entity): Treat new file format.
1035         (modb-standard-save-entity-1): Save as new file format.
1036         (modb-standard-save-entity): Split messages into section here.
1037         (elmo-msgdb-message-field): Follow the API change.
1038         (modb-standard-default-entity-handler): New internal variable.
1039         (elmo-msgdb-message-entity-handler): Define.
1040
1041         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1042         to `elmo-vars.el'.
1043         (modb-entity-field-extractor-alist): New user option.
1044         (elmo-msgdb-message-entity-field): Removed argument `decode' and
1045         added argument `type'.
1046         (elmo-msgdb-copy-message-entity): Add optional argument
1047         `make-handler'.
1048         (modb-set-field-converter): New function.
1049         (modb-convert-field-value): Ditto.
1050         (modb-entity-string-decoder): Ditto.
1051         (modb-entity-string-encoder): Ditto.
1052         (modb-entity-parse-date-string): Ditto.
1053         (modb-entity-make-date-string): Ditto.
1054         (modb-entity-mime-decoder): Ditto.
1055         (modb-entity-mime-encoder): Ditto.
1056         (modb-entity-address-list-decoder): Ditto.
1057         (modb-entity-address-list-encoder): Ditto.
1058         (modb-entity-parse-address-string): Ditto.
1059         (modb-entity-make-address-string): Ditto.
1060         (modb-entity-create-field-indices): Ditto.
1061         (modb-legacy-entity-field-slots): New constant.
1062         (modb-legacy-entity-field-indices): Ditto.
1063         (modb-legacy-entity-normalizer): New variable.
1064         (modb-legacy-entity-specializer): Ditto.
1065         (modb-legacy-entity-field-index): New macro.
1066         (modb-legacy-entity-set-field): New function.
1067         (modb-legacy-make-message-entity): Rewrite.
1068         (elmo-msgdb-create-message-entity-from-buffer): Use
1069         `elmo-msgdb-get-references-from-buffer'. Use
1070         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
1071         Use `modb-legacy-entity-set-field' instead of
1072         `elmo-msgdb-message-entity-set-field'.
1073         (elmo-msgdb-message-entity-field): Rewrite.
1074         (elmo-msgdb-message-entity-set-field): Ditto.
1075         (elmo-msgdb-copy-message-entity): Make new entity by
1076         `make-handler' if it specified.
1077         (elmo-msgdb-message-match-condition): Define a method of
1078         `modb-entity-handler' and follow the API change.
1079         (modb-standard-entity-handler): New class.
1080         (modb-entity-extract-ml-info-from-x-sequence): New function.
1081         (modb-entity-extract-ml-info-from-subject): Ditto.
1082         (modb-entity-extract-ml-info-from-return-path): Ditto.
1083         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
1084         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
1085         (modb-entity-extract-mailing-list-info): Ditto.
1086         (modb-entity-extract-mailing-list-info-functions): New variable.
1087
1088         * elmo.el (elmo-message-field): Add optional argument `type'.
1089
1090         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1091         from `modb-entity.el'.
1092
1093         * elmo-util.el (elmo-object-load): Decode by coding-system from
1094         `set-auto-coding-function'.
1095         (elmo-object-save): Use `detect-mime-charset-region' and add
1096         coding cookie if encode.
1097         (elmo-msgdb-get-references-from-buffer): New function.
1098         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
1099
1100         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
1101
1102         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
1103         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
1104         instead of `shimbun-make-header' and follow the API change.
1105         (elmo-shimbun-update-overview): Follow the API change.
1106         (elmo-map-folder-list-message-locations): Ditto.
1107
1108         * elmo-pipe.el (elmo-message-field): Ditto.
1109
1110         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
1111         Ditto.
1112
1113         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1114
1115         * elmo-multi.el (elmo-message-field): Ditto.
1116
1117         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
1118         (elmo-msgdb-sort-by-date): Ditto.
1119         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
1120         `elmo-message-entity-field'.
1121         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
1122         change.
1123         (elmo-msgdb-overview-entity-get-from): Ditto.
1124         (elmo-msgdb-overview-entity-get-subject): Ditto.
1125         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1126         (elmo-msgdb-overview-entity-get-date): Ditto.
1127         (elmo-msgdb-overview-entity-get-to): Ditto.
1128         (elmo-msgdb-overview-entity-get-cc): Ditto.
1129
1130         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1131         (elmo-mime-collect-message/partial-pieces): Ditto.
1132
1133         * elmo-filter.el (elmo-message-field): Ditto.
1134
1135         * elmo-date.el (elmo-datevec-to-time): New function.
1136         (elmo-time-parse-date-string): Ditto.
1137         (elmo-time-make-date-string): Ditto.
1138         (elmo-time<): Ditto.
1139
1140         * elmo-version.el (elmo-version): Up to 2.15.1.
1141
1142 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
1143
1144         * elmo-flag.el (elmo-global-flags-initialize): Don't include
1145         member of elmo-local-flags.
1146
1147 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
1148
1149         * elmo-version.el (elmo-version): Up to 2.15.0.
1150
1151 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1152
1153         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
1154         `ignore-msgdb' is non-nil.
1155
1156 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1157
1158         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
1159         (elmo-condition-in-msgdb-p): Ditto.
1160         (elmo-file-field-primitive-condition-match): Ditto.
1161         (elmo-file-field-condition-match): Ditto.
1162
1163         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
1164
1165 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1166
1167         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
1168         subdirectories here.
1169         (elmo-global-flags-initialize): New function.
1170
1171         * elmo.el (toplevel): Added autoload setting for
1172         `elmo-global-flags-initialize'.
1173
1174 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
1175
1176         * elmo.el (message-number-changed): Define new signal.
1177         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
1178         message-number-changed signal.
1179         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1180         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1181         Respect `elmo-pack-number-check-strict'.
1182
1183 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1184
1185         * elmo-signal.el (elmo-connect-signal): Document.
1186         (elmo-emit-signal): Ditto.
1187         (elmo-emit-signal): It should pass source argument to filter and
1188         handler, not slot-source.
1189
1190 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1191
1192         * modb.el (elmo-msgdb-update-entity): New API and define generic
1193         implement.
1194
1195         * modb-standard.el (elmo-msgdb-update-entity): Define.
1196
1197         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
1198         API and define generic implement.
1199
1200         * elmo.el (update-overview): New singnal.
1201
1202         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
1203         `elmo-msgdb-update-entity' and emit signal `update-overview'.
1204         (elmo-message-entity-parent): Define.
1205
1206         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
1207         `update-overview'.
1208
1209         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
1210
1211         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
1212
1213 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
1214
1215         * elmo.el (elmo-folder-synchronize): Sort the return value of
1216         `elmo-list-diff'.
1217
1218         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
1219         list.
1220
1221 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1222
1223         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
1224         `default-enable-multibyte-characters'.
1225         (elmo-object-load): Use `with-temp-buffer' instead of
1226         `elmo-set-work-buf'.
1227         (elmo-object-save): Ditto.
1228         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
1229         `elmo-set-work-buf'.
1230         (elmo-decoded-field-body): Ditto.
1231
1232         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
1233
1234         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
1235         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
1236
1237         * elmo-version.el (elmo-version): Up to 2.13.3.
1238
1239 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
1240
1241         * elmo-util.el (elmo-list-diff): Fix the last change.
1242         Reverse order of result lists.
1243
1244 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
1245
1246         * modb-standard.el (elmo-msgdb-set-flag): Use
1247         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
1248         (elmo-msgdb-unset-flag): Ditto.
1249
1250         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
1251         `elmo-list-diff'.
1252
1253         * elmo-util.el (elmo-list-diff): Rewrite.
1254         (elmo-list-diff-nonsortable): New function.
1255
1256 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
1257
1258         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
1259         `elmo-multibypte-buffer-name'.  All referers are updated.
1260
1261 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1262
1263         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
1264         (elmo-mime-entity-fragment-p): New function.
1265         (mime-elmo-buffer-entity): Added slot `reassembled'.
1266         (elmo-message-mime-entity): Added 4th argument `reassemble'.
1267         (elmo-message-mime-entity-internal): New function (renamed from
1268         `elmo-message-mime-entity').
1269         (elmo-mime-inherit-field-list-from-enclosed): New constant.
1270         (elmo-mime-make-reassembled-mime-entity): New function.
1271         (elmo-message-reassembled-mime-entity): Ditto.
1272         (elmo-mime-collect-message/partial-pieces): Ditto.
1273
1274 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1275
1276         * elmo.el (elmo-message-fetch-string): Disable multibyte.
1277
1278         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
1279         (elmo-with-enable-multibyte): New macro.
1280
1281         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
1282
1283 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1284
1285         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
1286         argument `number'.
1287         (elmo-filter-connect-signals): Follow the above change.
1288
1289 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
1290
1291         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
1292
1293         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
1294         that only the first flag is used.
1295
1296 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1297
1298         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
1299         if available.
1300
1301 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1302
1303         * elmo-signal.el: New file.
1304
1305         * elmo.el (toplevel): Require elmo-signal.
1306         (flag-changing, flag-changed, cache-changed): New signal.
1307         (elmo-folder): Remove slog `handlers'.
1308         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1309         `elmo-folder-notify-event'.
1310         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1311         (elmo-folder-unset-flag): Ditto.
1312         (elmo-event-handler): Abolish.
1313         (elmo-event-handler-flag-changed): Ditto.
1314         (elmo-event-handler-cache-changed): Ditto.
1315         (elmo-folder-add-handler): Ditto.
1316         (elmo-folder-remove-handler): Ditto.
1317         (elmo-folder-notify-event): Ditto.
1318
1319         * elmo-pipe.el (toplevel): Require elmo-signal.
1320         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1321         (elmo-pipe-connect-signals): New function.
1322         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1323         (elmo-folder-set-flag): Ditto.
1324         (elmo-folder-unset-flag): Ditto.
1325         (elmo-message-set-cached): Ditto.
1326
1327         * elmo-multi.el (toplevel): Require elmo-signal.
1328         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1329         (elmo-multi-connect-signals): New function.
1330         (elmo-multi-map-numbers): Ditto.
1331         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1332         (elmo-message-fetch): Ditto.
1333         (elmo-folder-set-flag): Ditto.
1334         (elmo-folder-unset-flag): Ditto.
1335
1336         * elmo-filter.el (toplevel): Require elmo-signal.
1337         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1338         (elmo-filter-connect-signals): New function.
1339         (elmo-filter-add-flag-count): Ditto.
1340         (elmo-message-fetch): Does not call
1341         `elmo-filter-folder-countup-message-flags' and
1342         `elmo-folder-notify-event'.
1343         (elmo-message-set-cached): Ditto.
1344         (elmo-folder-set-flag): Ditto.
1345         (elmo-folder-unset-flag): Ditto.
1346
1347         * elmo-version.el (elmo-version): Up to 2.13.2.
1348
1349 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1350
1351         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1352         `flags'.
1353
1354 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1355
1356         * elmo-filter.el (elmo-message-set-cached): Call
1357         `elmo-folder-notify-event' with event `cache-changed'.
1358
1359         * elmo-multi.el (elmo-message-set-cached): Ditto.
1360
1361         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1362
1363 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1364
1365         * elmo.el (elmo-folder-encache): Abolish.
1366
1367 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1368
1369         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1370         (elmo-folder-next-message-number-dop): Return appropriate negative
1371         integer.
1372
1373 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1374
1375         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1376         clearing pending operations.
1377         (elmo-folder-next-message-number-dop): Return appropriate negative
1378         integer.
1379
1380 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1381
1382         * elmo.el (toplevel): Added autoload setting for `md5'.
1383         (elmo-msgdb-path-encode-threshold): New user option.
1384         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1385         longer than `elmo-msgdb-path-encode-threshold'.
1386
1387         * elmo-flag.el (elmo-global-mark-migrate): Use
1388         `elmo-folder-expand-msgdb-path' instead of
1389         `elmo-folder-msgdb-path'.
1390
1391 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1392
1393         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1394         element of the difference is nil.
1395
1396 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1397
1398         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1399         to the check logic of file systems which are weak in colon character.
1400
1401 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1402
1403         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1404
1405 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1406
1407         * elmo-maildir.el (elmo-maildir-move-file): New function.
1408         (elmo-folder-append-buffer): Use it.
1409         (elmo-folder-append-messages): Ditto.
1410         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1411
1412         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1413         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1414
1415         * elmo-maildir.el (elmo-maildir-separator): New user option.
1416         (elmo-maildir-adjust-separator): New macro.
1417         (elmo-maildir-list-location): Use it.
1418         (elmo-maildir-update-current): Ditto.
1419         (elmo-maildir-set-mark): Ditto.
1420         (elmo-maildir-delete-mark): Ditto.
1421         (These changes are based on Hiroya Murata's patch [wl: 13437])
1422
1423 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1424
1425         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1426
1427 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1428
1429         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1430         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1431         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1432
1433 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1434
1435         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1436         Use `with-temp-buffer'.
1437
1438 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1439
1440         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1441
1442         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1443         `wl-read-search-condition').
1444         (elmo-read-search-condition-internal): Likewise.
1445
1446         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1447         (elmo-flag-valid-p): New function.
1448         (elmo-folder-initialize): Check flag name is valid.
1449
1450 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1451
1452         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1453         delimiter to obtain root mailbox itself.
1454
1455 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1456
1457         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1458         type mismatch.
1459
1460 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1461
1462         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1463         as t.
1464
1465 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1466
1467         * elmo-shimbun.el (toplevel): Require cl at compile.
1468
1469         * elmo-nntp.el (toplevel): Ditto.
1470
1471         * elmo-nmz.el (toplevel): Ditto.
1472
1473         * elmo-multi.el (toplevel): Ditto.
1474
1475         * elmo-file.el (toplevel): Ditto.
1476
1477         * elmo-dop.el (toplevel): Ditto.
1478
1479         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1480
1481 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1482
1483         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1484         as nil.
1485
1486         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1487         size of elmo-message-fetch-internal is 0 byte.
1488
1489 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1490
1491         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1492
1493 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1494
1495         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1496         always plugged.
1497
1498 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1499
1500         * elmo-maildir.el (elmo-map-message-fetch): Call
1501         `elmo-map-folder-set-flag'.
1502
1503         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1504         (elmo-message-fetch): Merge from
1505         `elmo-message-fetch-with-cache-process'.
1506
1507         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1508         (elmo-message-fetch): Define.
1509
1510         * elmo-nntp.el (elmo-message-fetch): Renamed from
1511         `elmo-message-fetch-with-cache-process'.
1512
1513         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1514         (elmo-message-fetch): Define.
1515
1516         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1517         search-key.
1518
1519         * elmo-shimbun.el (shimbun-mua-search-id): Use
1520         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1521         (elmo-shimbun-folder-shimbun-header): Ditto.
1522         (elmo-shimbun-get-headers): Ditto.
1523         (elmo-shimbun-update-overview): Ditto.
1524
1525         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1526
1527         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1528         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1529
1530 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1531
1532         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1533         message is cached.
1534         (elmo-message-fetch-string): Fixed argument.
1535
1536 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1537
1538         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1539         exchange order of arguments `section' and `unread'.
1540         (elmo-message-encache): Follow the API change.
1541         (elmo-message-match-condition): Ditto.
1542         (elmo-generic-folder-append-messages): Ditto.
1543         (elmo-message-fetch-string): New function.
1544
1545         * elmo-split.el (elmo-split-subr): Ditto.
1546
1547         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1548
1549         * elmo-pipe.el (elmo-message-fetch): Ditto.
1550
1551         * elmo-multi.el (elmo-message-fetch): Ditto.
1552
1553         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1554
1555         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1556
1557         * elmo-filter.el (elmo-message-fetch): Ditto.
1558
1559         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1560
1561         * elmo-imap4.el (mime-imap-location-section-body): Use
1562         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1563         follow the API change.
1564
1565 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1566
1567         * elmo-access.el: New file.
1568
1569         * elmo-null.el: Ditto.
1570
1571         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1572
1573 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1574
1575         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1576         (elmo-network-session): New attribute `last-accessed'.
1577         (elmo-network-get-session): Discard network cache if elapsed time
1578         since last-accessed is larger than elmo-network-session-idle-timeout.
1579
1580 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1581
1582         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1583         and added `number', `require-entireness'.
1584         (elmo-find-fetch-strategy): Rewrite.
1585         (elmo-message-fetch): Unset `unread' flag when argument unread is
1586         non-nil.
1587
1588         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1589
1590         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1591         (elmo-message-fetch): Notify event `flag-changed'.
1592
1593         * elmo-pipe.el: Likewise.
1594
1595         * elmo-mime.el (elmo-mime-entity): New class.
1596         (elmo-mime-entity-display-p): New generic function.
1597         (elmo-mime-entity-display): Ditto.
1598         (elmo-mime-entity-display-as-is): Ditto.
1599         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1600         elmo-mime-entity.
1601         (elmo-make-mime-message-location): Removed.
1602         (elmo-mime-message-display): Ditto.
1603         (elmo-mime-display-as-is): Ditto.
1604         (elmo-message-mime-entity): New function.
1605
1606         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1607
1608         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1609         change.
1610         (elmo-message-fetch): Re-count flagged message number and notify
1611         event `flag-changed'.
1612
1613         * elmo-version.el (elmo-version): Up to 2.13.1.
1614
1615 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1616
1617         * elmo-filter.el (elmo-message-field): Define.
1618         (elmo-message-set-field): Ditto.
1619
1620 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1621
1622         * elmo.el (elmo-message-set-cached): Call
1623         `elmo-folder-notify-event' with cache-changed.
1624         (elmo-event-handler-cache-changed): New generic function.
1625
1626 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1627
1628         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1629         instead of elmo-add-name-to-file.
1630         (elmo-folder-append-messages): Ditto.
1631
1632 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1633
1634         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1635
1636 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1637
1638         * elmo-version.el (elmo-version): Up to 2.13.0.
1639
1640         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1641         `auto'.
1642
1643         * modb-standard.el (modb-standard-economize-entity-size): Changed
1644         default value to `t'.
1645
1646         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1647         `standard'.
1648
1649         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1650         after parsing greeting string.
1651
1652 2004-11-23  Daishi Kato <daishi@axlight.com>
1653
1654         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1655         New user option.
1656         (elmo-spam-spamoracle-call): Use it.
1657
1658 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1659
1660         * elmo.el (elmo-message-accessible-p): Message in dop spool
1661         is accessible.
1662
1663 2004-11-23  Daishi Kato <daishi@axlight.com>
1664
1665         * elsp-spamoracle.el: New file.
1666
1667 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1668
1669         * elmo.el (elmo-message-flags-for-append): New function.
1670         (elmo-generic-folder-append-messages): Use it.
1671
1672         * elmo-split.el (elmo-split-subr): Ditto.
1673
1674         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1675         `flags' and use elmo-folder-append-buffer instead of
1676         write-region-as-binary.
1677         (elmo-dop-filter-pending-messages): New function.
1678         (elmo-folder-append-buffer-dop): Call
1679         elmo-dop-spool-folder-append-buffer with `flag'.
1680         (elmo-folder-set-flag-dop): Filter messages by
1681         elmo-dop-filter-pending-messages.
1682         (elmo-folder-unset-flag-dop): Ditto.
1683         (elmo-folder-append-buffer-dop-delayed): Use
1684         elmo-message-flags-for-append to get flags of the message and
1685         simplify.
1686
1687 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1688
1689         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1690
1691 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1692
1693         * elmo.el (elmo-folder): Added handlers slot.
1694         (elmo-event-handler): New class.
1695         (elmo-event-handler-flag-changed): New API.
1696         (elmo-folder-add-handler): New function.
1697         (elmo-folder-remove-handler): Ditto.
1698         (elmo-folder-notify-event): Ditto.
1699         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1700         `flag-changed'.
1701         (elmo-folder-unset-flag): Ditto.
1702
1703         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1704         (elmo-folder-unset-flag): Ditto.
1705
1706         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1707         (elmo-folder-unset-flag): Ditto.
1708
1709         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1710         (elmo-folder-unset-flag): Ditto.
1711
1712         * elmo-version.el (elmo-version): Up to 2.11.33.
1713
1714 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1715
1716         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1717
1718 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1719
1720         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1721
1722         * elmo-flag.el (elmo-folder-unset-flag): Define.
1723         (elmo-global-flag-detach): Do process when the flag is not target
1724         flag.
1725
1726 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1727
1728         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1729         variable.
1730         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1731
1732 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1733
1734         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1735         function.
1736         (elmo-folder-delete-messages): Detach messages before delete
1737         messages from target folder.
1738         (elmo-folder-detach-messages): Set updated number-list to slot.
1739
1740 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1741
1742         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1743
1744 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1745
1746         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1747
1748 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1749
1750         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1751         internal use only).
1752         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1753         not modified.
1754         (elmo-folder-delete-messages): Define.
1755         (elmo-folder-move-messages): Don't call
1756         `elmo-folder-detach-messages'.
1757         (elmo-folder-synchronize): Rewrite.
1758         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1759
1760         * elmo-util.el (elmo-last): New function.
1761         (elmo-set-list): Ditto.
1762         (elmo-number-set-delete-list): Ditto.
1763         (elmo-number-set-delete): Ditto.
1764
1765         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1766
1767         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1768         `elmo-folder-delete-messages' and don't delete location map.
1769         (elmo-folder-detach-messages): Define.
1770
1771         * elmo-imap4.el (elmo-folder-delete): Use
1772         `elmo-folder-delete-messages-internal' instead of
1773         `elmo-folder-delete-messages'.
1774
1775         * elmo-filter.el (elmo-folder-delete-messages): Call
1776         `elmo-folder-detach-messages'.
1777         (elmo-folder-detach-messages): Don't call
1778         `elmo-folder-detach-messages' for target folder.
1779
1780         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1781         message deletion is succeeded.
1782
1783         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1784
1785         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1786         from `elmo-folder-delete-messages'.
1787
1788         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1789
1790         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1791
1792         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1793
1794         * elmo-version.el (elmo-version): Up to 2.11.32.
1795
1796 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1797
1798         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1799         (elmo-global-flag-list): Added obsolete variable setting.
1800
1801         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1802
1803         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1804         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1805         `elmo-mime-display-header-analysis' is nil.
1806
1807         * elmo-flag.el (elmo-global-flags): Renamed from
1808         `elmo-global-flag-list' (All other related portions are changed).
1809         (elmo-local-flags): New variable.
1810         (elmo-local-flag-p): New function.
1811         (elmo-global-flag-set-internal): Cause an error when flag is not
1812         global.
1813
1814 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1815
1816         * elmo-util.el (elmo-concat-path): Treat empty path.
1817
1818 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1819
1820         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1821         field-or-fields).
1822         (elmo-split-address-match): Ditto.
1823         (elmo-split-equal): Ditto.
1824         (elmo-split-match): Ditto.
1825
1826 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1827
1828         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1829         (elmo-generic-folder-append-messages): If src message exists but
1830         has no flag, pass (read) for the FLAG argument of
1831         `elmo-folder-append-buffer'. Otherwise, pass nil.
1832
1833         * elmo-split.el (elmo-split-subr): Likewise.
1834
1835         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1836
1837         * elmo-multi.el (elmo-message-flags): Ditto.
1838
1839         * elmo-filter.el (elmo-message-flags): Ditto.
1840
1841         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1842         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1843         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1844         
1845 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1846
1847         * elmo-split.el (elmo-split-rule): Update comment.
1848         (elmo-split-address-equal): Allow 2nd argument to be a list.
1849         (elmo-split-address-match): Ditto.
1850         (elmo-split-equal): Ditto.
1851         (elmo-split-match): Ditto.
1852
1853 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1854
1855         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1856         (elmo-folder-append-msgdb): Don't treat `read'.
1857         (elmo-message-flags): Don't return `read'.
1858
1859         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1860         (elmo-folder-unset-read-delayed): Ditto.
1861
1862         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1863
1864 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1865
1866         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1867         deletion.
1868
1869 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1870
1871         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1872         header.
1873
1874 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1875
1876         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1877         here.
1878         (elmo-msgdb-save): Bind inhibit-quit.
1879         (modb-standard-message-entity): Ditto.
1880
1881 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1882
1883         * elmo-database.el: No need to require elmo-msgdb.
1884
1885 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1886
1887         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1888         instead of `elmo-list-subdirectories'.
1889
1890 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1891
1892         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1893         group entry.
1894         (elmo-folder-exists-p): "[" is empty.
1895         (elmo-folder-list-subfolders): Define.
1896         (elmo-folder-have-subfolder-p): Ditto.
1897
1898 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1899
1900         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1901
1902 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1903
1904         * elmo-filter.el (elmo-folder-local-p): Define.
1905
1906 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1907
1908         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1909         when entity is garbaged.
1910         (modb-standard-save-entity-1): Don't modify the original entity.
1911
1912 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1913
1914         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1915
1916 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1917
1918         * elmo.el (elmo-strict-folder-diff): Use
1919         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1920
1921 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1922
1923         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1924         (elmo-msgdb-message-number): Ditto.
1925         (elmo-msgdb-message-field): Ditto.
1926
1927         * modb-standard.el (modb-standard-economize-entity-size): New user
1928         option.
1929         (modb-standard-loaded-message-id): New inline function.
1930         (modb-standard-load-entity): Use it.
1931         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1932         throw message-id string away.
1933         (elmo-msgdb-flag-available-p): Define.
1934         (elmo-msgdb-message-number): Ditto.
1935         (elmo-msgdb-message-field): Ditto.
1936
1937         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1938         (suppoted -> supported).
1939         (modb-legacy-supported-flag-p): Ditto.
1940         (elmo-msgdb-set-flag): Ditto.
1941         (elmo-msgdb-unset-flag): Ditto.
1942         (elmo-msgdb-flag-available-p): Define.
1943
1944         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1945         is `t', treat it as legacy entity.
1946         
1947         * elmo.el (elmo-message-flag-available-p): New generic function.
1948         (elmo-message-number): Ditto.
1949         (elmo-message-field): Use `elmo-msgdb-message-field'.
1950
1951         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1952
1953         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1954         (elmo-message-number): Ditto.
1955
1956         * elmo-multi.el (elmo-message-number): Define.
1957         (elmo-message-flag-available-p): Ditto.
1958
1959         * elmo-filter.el (elmo-message-flag-available-p): Define.
1960         (elmo-message-number): Ditto.
1961
1962         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1963         (elmo-folder-initialize): Load `max-number'.
1964         (elmo-folder-commit): Save it.
1965         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1966         (elmo-global-flag-set-internal): Set up max-number slot.
1967
1968 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1969
1970         * elmo-version.el (elmo-version): Up to 2.11.31.
1971
1972 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1973
1974         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1975         unibyte string of the current buffer for the argument of `md5'
1976         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1977
1978 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1979
1980         * modb-legacy.el (modb-legacy-flag-list): New constant.
1981         (modb-legacy-suppoted-flag-p): New internal function.
1982         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1983         (elmo-msgdb-unset-flag): Ditto.
1984
1985 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1986
1987         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1988
1989         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1990         from msgdb.
1991
1992 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1993
1994         * elmo-multi.el (elmo-folder-count-flags): Changed return value
1995         (follow the API change).
1996
1997         * elmo-filter.el (elmo-folder-count-flags): Ditto.
1998
1999 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
2000
2001         * modb-standard.el (modb-standard-digest-flags): Abolish.
2002         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
2003
2004         * elmo-vars.el (elmo-digest-flags): New variable.
2005         (elmo-preserved-flags): Moved from elmo-flag.el.
2006
2007         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
2008         (elmo-imap4-flag-to-imap-criteria): Ditto.
2009         (elmo-imap4-folder-list-flagged): Use it.
2010
2011         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
2012
2013         * elmo.el (elmo-folder-count-flags): Changed return value.
2014
2015         * elmo-flag.el (elmo-preserved-flags): New variable.
2016         (elmo-get-global-flags): Use it.
2017
2018         * modb-standard.el (modb-standard-digest-flags): New variable.
2019         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
2020         Changed behavior of `any'.
2021
2022         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
2023         which are defined the Internet draft
2024         (draft-melnikov-imap-keywords-03.txt).
2025         (elmo-imap4-flags-to-imap): New function.
2026         (elmo-folder-append-buffer): Use it.
2027
2028         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
2029         in the docstring.
2030
2031         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
2032         avoid the bug of Emacs 21.3.
2033
2034 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
2035
2036         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
2037         function find-coding-system does not exist.
2038
2039 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2040
2041         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
2042         parsing.
2043
2044 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2045
2046         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
2047         response codes.
2048
2049 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2050
2051         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
2052         (elmo-network-close-session): Follow the changes in
2053         `elmo-pop3-read-response'.
2054         (elmo-pop3-auth-user): Ditto.
2055         (elmo-pop3-auth-apop): Ditto.
2056         (elmo-network-initialize-session): Ditto.
2057         (elmo-network-authenticate-session): Ditto.
2058         (elmo-network-setup-session): Ditto.
2059         (elmo-folder-status): Ditto.
2060         (elmo-message-fetch-plugged): Ditto.
2061         (elmo-pop3-delete-msg): Ditto.
2062
2063 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
2064
2065         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
2066         on failure.
2067
2068 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2069
2070         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
2071         style.
2072         (elmo-bind-directory): Ditto.
2073
2074 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2075
2076         * elmo.el (elmo-folder-append-messages): Note on return value.
2077         * elmo-archive.el (elmo-folder-append-messages): Don't return
2078         message numbers which could not be appended.
2079
2080 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2081
2082         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
2083
2084 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2085
2086         * elmo-version.el (elmo-version): Up to 2.11.30.
2087
2088 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2089
2090         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
2091         `mask'.
2092
2093         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
2094
2095         * elmo-multi.el (elmo-folder-synchronize): Likewise.
2096         (elmo-multi-split-numbers): Add elmo-folder object into each
2097         element of return value at first.
2098         (elmo-folder-delete-messages): Follow the above change.
2099         (elmo-folder-detach-messages): Ditto.
2100
2101         * elmo-filter.el (elmo-folder-synchronize): Minimize message
2102         number which is synchronized in target folder.
2103
2104 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2105
2106         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
2107         Change default value to symbol `all'.
2108         (elmo-map-message-fetch): Change condition to update overview
2109         follow the above.
2110
2111 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2112
2113         * elmo-shimbun.el (elmo-map-message-fetch): Change default
2114         behavior to update overview.
2115         (elmo-shimbun-update-overview-folder-list): Note it.
2116
2117 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2118
2119         * modb-standard.el (modb-standard-message-entity): Avoid infinite
2120         recursive call.
2121
2122 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2123
2124         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
2125         buffer-disable-undo, it is unnecessary.
2126         (elmo-spam-register-good-messages): Ditto.
2127
2128         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2129         Ditto.
2130
2131         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
2132
2133 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2134
2135         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
2136         (elmo-set-work-buf): Use set-buffer-multibyte instead of
2137         elmo-set-buffer-multibyte.
2138         (elmo-object-load): Ditto.
2139         (elmo-save-buffer): Ditto.
2140         (elmo-delete-char): Ditto.
2141         (elmo-file-field-primitive-condition-match): Ditto.
2142         (elmo-mime-string): Ditto.
2143
2144         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
2145         (elmo-archive-field-condition-match): Ditto.
2146
2147         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
2148
2149         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
2150
2151         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
2152         (elmo-nntp-msgdb-create-message): Ditto.
2153
2154         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2155
2156         * elmo.el (elmo-message-match-condition): Ditto.
2157         (elmo-message-match-condition): Ditto.
2158
2159         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2160         Ditto.
2161
2162         * elmo-version.el (elmo-version): Up to 2.11.29.
2163
2164         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
2165         (elsp-header): New backend.
2166
2167         * elmo-util.el (elmo-decoded-field-body): New function.
2168
2169 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2170
2171         * elmo-version.el (elmo-version): Up to 2.11.28.
2172
2173 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2174
2175         * elmo-filter.el: Rewrite.
2176
2177         * elmo-version.el (elmo-version): Up to 2.11.27.
2178
2179 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
2180
2181         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
2182         msgdb path for the localdir folder with absolute path.
2183
2184         * utf7.el: Synch up with latest gnus/utf7.el;
2185         Modified for latest Emacs.
2186
2187 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2188
2189         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
2190         shimbun backend couldn't open.
2191
2192 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
2193
2194         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
2195         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
2196         when a destination folder is a filter folder.
2197
2198 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2199
2200         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
2201         (elmo-generic-folder-append-messages): Call elmo-message-flags
2202         with argument `msgid'.
2203
2204         * elmo-split.el (elmo-split-subr): Ditto.
2205
2206         * elmo-pipe.el (elmo-message-flags): Follow the API change.
2207
2208         * elmo-multi.el (elmo-message-flags): Ditto.
2209
2210 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2211
2212         * elmo.el (elmo-folder): Add new slot `flag-table'.
2213         (elmo-folder-flag-table): New API.
2214         (elmo-folder-close-flag-table): Ditto.
2215         (elmo-folder-preserve-flags): New function.
2216         (elmo-generic-folder-append-messages): Use
2217         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
2218         Flag of a non-registered message, it sets to nil.
2219         Does not set flag to flag-table.
2220
2221         * elmo-maildir.el (elmo-folder-append-buffer): Use
2222         `elmo-folder-preserve-flags'.
2223         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2224         `elmo-folder-close-flag-table'.
2225
2226         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
2227         (elmo-archive-folder-append-buffer): Use
2228         `elmo-folder-preserve-flags'.
2229
2230         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
2231
2232         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
2233
2234         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2235         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2236         `elmo-folder-close-flag-table'.
2237
2238         * elmo-version.el (elmo-version): Up to 2.11.26.
2239
2240 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2241
2242         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
2243
2244         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
2245         md5's 4th and 5th argument (non-existent in flim one).
2246
2247 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2248
2249         * elmo-split.el (elmo-split-subr): Flag of a non-registered
2250         message, It sets to nil.
2251
2252 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2253
2254         * elmo.el (elmo-folder-list-messages): Merge lists only if both
2255         list is non-nil.
2256
2257 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
2258
2259         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
2260
2261         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
2262
2263         * elmo-util.el (elmo-uniq-sorted-list): New function.
2264         (elmo-make-number-list): Ditto.
2265         (elmo-number-set-to-number-list): Use elmo-make-number-list
2266         and don't use nreverse.
2267
2268 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2269
2270         * elmo-version.el (elmo-version): Up to 2.11.25.
2271
2272 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2273
2274         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
2275         field not exists in message, Use md5 message digest of header.
2276
2277 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2278
2279         * elmo.el (elmo-folder-append-buffer): Add note on return value.
2280         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
2281         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2282         * elmo-split.el (elmo-split-subr): Check return value of
2283         elmo-folder-append-buffer.
2284
2285         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
2286         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2287
2288         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
2289         message-id.
2290
2291 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
2292
2293         * elmo-split.el (elmo-split-subr): Append message with flag.
2294
2295         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
2296         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
2297         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2298
2299 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
2300
2301         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
2302         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
2303         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2304
2305 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
2306
2307         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2308         with a function call of `process-buffer'.  All callers are updated.
2309         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2310         Remove redundant `set-buffer' in a while loop.
2311
2312 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2313
2314         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2315         calls.
2316
2317 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2318
2319         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2320         elsp-spamfilter-register-buffer-internal with current buffer.
2321         (elmo-spam-register-spam-buffer): Ditto.
2322         (elmo-spam-register-good-buffer): Ditto.
2323
2324 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2325
2326         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2327         if it is not contained in the response(A workaround for courier-imap).
2328
2329 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2330
2331         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2332         parenthesis.
2333
2334 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2335
2336         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2337         range.
2338
2339 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2340
2341         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2342         of nconc.
2343
2344         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2345         argument handler.
2346         (elmo-msgdb-message-match-condition): Follow the change above.
2347
2348 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2349
2350         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2351         folder name.
2352
2353 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2354
2355         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2356
2357 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2358
2359         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2360
2361 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2362
2363         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2364         not found.
2365
2366 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2367
2368         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2369         value.
2370         (elmo-file-command-argument): Undo last change for cygwin.
2371         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2372         Don't return nil.
2373         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2374
2375 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2376
2377         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2378         value returned from elmo-file-find is nil.
2379
2380 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2381
2382         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2383         to elmo-vars.el.
2384
2385         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2386         instead of insert-file-contents-as-binary.
2387         (elmo-message-set-field): New generic function.
2388
2389         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2390         behavior change on `split-string'.
2391
2392         * elmo-file.el (elmo-file-find): New function.
2393         (elmo-file-command): New user option.
2394         (elmo-file-command-argument): Ditto.
2395         (elmo-file-fetch-max-size): Ditto.
2396         (elmo-file-detect-format): New function.
2397         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2398         Use elmo-file-detect-format.
2399         (elmo-map-folder-list-message-locations): Don't treat directories.
2400
2401 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2402
2403         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2404         (elmo-passwd-alist-clear): Shred password before clear.
2405         (elmo-remove-passwd): Remove all mached pair.
2406
2407 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2408
2409         * elmo.el (elmo-folder-synchronize): Fix description of the return
2410         value.
2411
2412 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2413
2414         * elmo.el (elmo-message-fetch-bodystructure): New method.
2415         (elmo-message-fetch-bodystructure): Define default.
2416
2417         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2418         elmo-message-fetch-bodystructure.
2419         (elmo-message-fetch-bodystructure): Define.
2420
2421         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2422
2423 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2424
2425         * elmo-filter.el (elmo-message-folder): Define.
2426
2427 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2428
2429         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2430         elmo-delete-cr-buffer.
2431
2432         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2433
2434         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2435
2436         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2437
2438         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2439         type seems to be a text.
2440
2441 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2442
2443         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2444         (elmo-spam-register-good-buffer): Ditto.
2445         (elmo-spam-spamassassin-register-messages): Ditto.
2446
2447         * elmo-util.el (elmo-string-member-ignore-case): Define with
2448         static-cond.
2449
2450 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2451
2452         * elmo.el (elmo-folder-type): Undo last change.
2453
2454         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2455
2456         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2457         warnings.
2458
2459         * elmo-file.el: New file.
2460         
2461         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2462
2463         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2464         variable.
2465         (elmo-spam-spamassassin-register-messages): New inline function.
2466         (elmo-spam-register-spam-messages): Define.
2467         (elmo-spam-register-good-messages): Ditto.
2468
2469         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2470         Fixed typo.
2471
2472         * elmo.el (toplevel): Added autoload setting for
2473         `elmo-get-global-flags'.
2474         (elmo-message-has-global-flag-p): New function.
2475         (elmo-message-set-global-flags): Ditto.
2476         (elmo-folder-type): Improvement for name: format.
2477
2478         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2479         availability of keyword flags.
2480         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2481         (elmo-folder-list-flagged-plugged): Renamed from
2482         elmo-folder-list-flagged-unplugged.
2483         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2484         accept any flag as keyword flag.
2485         (elmo-folder-set-flag-plugged): Accept keyword flags.
2486         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2487
2488         * elmo-flag.el (elmo-get-global-flags): New function.
2489
2490         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2491         folders.
2492
2493         * elmo-version.el (elmo-version): Up to 2.11.24.
2494
2495 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2496
2497         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2498         elmo-multiple-field-body instead of std11-field-body to check all
2499         headers.
2500
2501 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2502
2503         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2504         or "size".
2505
2506 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2507
2508         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2509         unintern is unbound.
2510
2511 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2512
2513         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2514         Protect from infinite loop.
2515
2516 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2517
2518         * elsp-bogofilter.el
2519         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2520         (elmo-spam-bogofilter-register-messages): New internal function.
2521         (elmo-spam-register-spam-messages): Define.
2522         (elmo-spam-register-good-messages): Ditto.
2523
2524 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2525
2526         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2527         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2528         (elmo-spam-bogofilter-call): Fixed the last change.
2529         (elmo-spam-bogofilter-arguments): Ditto.
2530
2531         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2532         Follow the options change of latest bogofilter.
2533
2534         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2535         (elmo-spam-bogofilter-good-switch): Ditto.
2536         (elmo-spam-bogofilter-arguments-alist): New user option.
2537         (elmo-spam-bogofilter-debug): Ditto.
2538         (elmo-spam-bogofilter-call): Renamed from
2539         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2540         is non-nil, insert output in buffer for debug.
2541         (elmo-spam-bogofilter-arguments): New macro.
2542         (elmo-spam-buffer-spam-p): Use it.
2543         (elsp-bogofilter-register-buffer): Ditto.
2544
2545 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2546
2547         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2548         regexp.
2549
2550 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2551
2552         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2553         value as "ruby".
2554         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2555         (elmo-spam-bsfilter-program): Set default value as full path for
2556         `bsfilter'.
2557         (elmo-spam-bsfilter-debug): New user option.
2558         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2559         non-nil, insert output in buffer for debug. Fix treating of
2560         argument.
2561
2562 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2563
2564         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2565         `elmo-maildir-flag-specs' element instead of one.
2566         (elmo-map-folder-unset-flag): Ditto.
2567         (Reported by Ken Makimura <macky@astem.or.jp>)
2568
2569         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2570         (elmo-folder-unset-flag-plugged): Ditto.
2571
2572 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2573
2574         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2575         to `reads' slot only if `in-msgdb' is nil.
2576
2577 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2578
2579         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2580         and complement argument list.
2581
2582 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2583
2584         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2585         instead of elmo-folder-list-flagged.
2586
2587 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2588
2589         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2590
2591         * elsp-bsfilter.el: New file.
2592
2593         * elmo-pipe.el (elmo-folder-list-unreads,
2594         elmo-folder-list-answereds,
2595         elmo-folder-list-importants,
2596         elmo-folder-flag-as-important,
2597         elmo-folder-unflag-important,
2598         elmo-folder-flag-as-read,
2599         elmo-folder-unflag-read,
2600         elmo-folder-flag-as-answered,
2601         elmo-folder-unflag-answered): Remove.
2602         (elmo-folder-set-flag): Define.
2603         (elmo-folder-unset-flag): Ditto.
2604
2605         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2606         (elmo-folder-set-flag): Define.
2607         (elmo-folder-unset-flag): Ditto.
2608         (elmo-folder-list-unreads): Remove.
2609         (elmo-folder-list-flagged): Define.
2610
2611         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2612         (elmo-folder-list-unreads,
2613         elmo-folder-list-importants,
2614         elmo-folder-list-answereds,
2615         elmo-folder-list-unreads-plugged,
2616         elmo-folder-list-importants-plugged,
2617         elmo-folder-list-answereds-plugged): Remove.
2618         (elmo-folder-list-flagged-plugged): New method.
2619         (elmo-folder-unflag-important,
2620         elmo-folder-flag-as-important,
2621         elmo-folder-unflag-read,
2622         elmo-folder-flag-as-read,
2623         elmo-folder-unflag-answered,
2624         elmo-folder-flag-as-answered,
2625         elmo-folder-flag-as-read-unplugged,
2626         elmo-folder-unflag-read-unplugged,
2627         elmo-folder-flag-as-important-unplugged,
2628         elmo-folder-unflag-important-unplugged,
2629         elmo-folder-flag-as-answered-unplugged,
2630         elmo-folder-unflag-answered-unplugged): Remove.
2631         (elmo-folder-set-flag): Define.
2632         (elmo-folder-unset-flag): Ditto.
2633         (elmo-folder-set-flag-unplugged): Ditto.
2634         (elmo-folder-unset-flag-unplugged): Ditto.
2635
2636         * elmo-multi.el (elmo-folder-list-unreads,
2637         elmo-folder-list-answereds,
2638         elmo-folder-list-importants,
2639         elmo-folder-flag-as-important,
2640         elmo-folder-unflag-important,
2641         elmo-folder-flag-as-read,
2642         elmo-folder-unflag-read,
2643         elmo-folder-flag-as-answered,
2644         elmo-folder-unflag-answered): Remove.
2645         (elmo-folder-set-flag): Define.
2646         (elmo-folder-unset-flag): Ditto.
2647
2648         * elmo-map.el (elmo-map-folder-unflag-important,
2649         elmo-map-folder-flag-as-important,
2650         elmo-map-folder-unflag-read,
2651         elmo-map-folder-flag-as-read,
2652         elmo-map-folder-unflag-answered,
2653         elmo-map-folder-flag-as-answered): Remove.
2654         (elmo-map-folder-set-flag): New method.
2655         (elmo-map-folder-unset-flag): Ditto.
2656         (elmo-map-folder-list-unreads,
2657         elmo-map-folder-list-importants,
2658         elmo-map-folder-list-answereds): Remove.
2659         (elmo-folder-list-flagged-internal): Define.
2660         (elmo-map-folder-list-flagged): New method.
2661
2662         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2663         (elmo-map-folder-list-unreads,
2664         elmo-map-folder-list-importants,
2665         elmo-map-folder-list-flagged): Remove.
2666         (elmo-map-folder-list-flagged): Define.
2667         (elmo-map-folder-flag-as-important,
2668         elmo-map-folder-unflag-important,
2669         elmo-map-folder-flag-as-read,
2670         elmo-map-folder-unflag-read,
2671         elmo-map-folder-flag-as-answered,
2672         elmo-map-folder-unflag-answered): Remove.
2673         (elmo-maildir-set-mark-messages): New internal function.
2674         (elmo-map-folder-set-flag): Define.
2675         (elmo-map-folder-unset-flag): Ditto.
2676
2677         * elmo.el (toplevel): Added autoload setting for
2678         `elmo-folder-list-global-flag-messages'.
2679         (elmo-folder-list-unreads,
2680         elmo-folder-list-importants,
2681         elmo-folder-list-answereds): Remove.
2682         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2683         Return a list whitch merged with messages have global flag.
2684         (elmo-folder-list-flagged-internal): New method.
2685         (elmo-folder-unflag-important,
2686         elmo-folder-flag-as-important,
2687         elmo-folder-unflag-read,
2688         elmo-folder-flag-as-read,
2689         elmo-folder-unflag-answered,
2690         elmo-folder-flag-as-answered): Remove.
2691         (elmo-folder-set-flag): New method.
2692         (elmo-folder-unset-flag): Ditto.
2693         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2694         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2695
2696         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2697         (elmo-folder-list-unreads-plugged,
2698         elmo-folder-list-importants-plugged,
2699         elmo-folder-list-answereds-plugged,
2700         elmo-folder-list-flagged-unplugged,
2701         elmo-folder-unflag-important-plugged,
2702         elmo-folder-flag-as-important-plugged,
2703         elmo-folder-unflag-read-plugged,
2704         elmo-folder-flag-as-read-plugged,
2705         elmo-folder-unflag-answered-plugged,
2706         elmo-folder-flag-as-answered-plugged): Remove.
2707         (elmo-folder-set-flag-plugged,
2708         elmo-folder-unset-flag-plugged): Define.
2709
2710         * elmo-flag.el (elmo-folder-initialize): Register to
2711         `elmo-global-flag-list' if flag is not global.
2712         (elmo-folder-append-messages): Set flag to source messages.
2713
2714         * elmo-filter.el (elmo-filter-folder-list-unreads,
2715         elmo-folder-list-unreads,
2716         elmo-filter-folder-list-importants,
2717         elmo-folder-list-importants,
2718         elmo-folder-flag-as-read,
2719         elmo-folder-unflag-read,
2720         elmo-folder-flag-as-important,
2721         elmo-folder-unflag-important,
2722         elmo-folder-flag-as-answered,
2723         elmo-folder-unflag-answered): Remove.
2724         (elmo-folder-set-flag): Define.
2725         (elmo-folder-unset-flag): Ditto.
2726
2727         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2728         elmo-folder-unflag-read-dop,
2729         elmo-folder-flag-as-important-dop,
2730         elmo-folder-unflag-important-dop,
2731         elmo-folder-flag-as-answered-dop,
2732         elmo-folder-unflag-answered-dop): Remove.
2733         (elmo-folder-set-flag-dop,
2734         elmo-folder-unset-flag-dop,
2735         elmo-folder-set-important-delayed,
2736         elmo-folder-unset-important-delayed,
2737         elmo-folder-set-read-delayed,
2738         elmo-folder-unset-read-delayed,
2739         elmo-folder-set-answered-delayed,
2740         elmo-folder-unset-answered-delayed): New function.
2741         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2742         (elmo-dop-queue-method-name-alist): Ditto.
2743
2744         * elmo-version.el (elmo-version): Up to 2.11.23.
2745
2746 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2747
2748         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2749
2750         * elsp-sa.el: New file.
2751
2752 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2753
2754         * modb-standard.el (modb-standard-message-entity): New function.
2755         (elmo-msgdb-message-entity): Use it.
2756
2757 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2758
2759         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2760         behavior when one-level is nil.
2761
2762         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2763
2764         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2765
2766 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2767
2768         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2769         get max number.
2770         (elmo-generic-folder-diff): Ditto.
2771
2772         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2773         (elmo-folder-update-number): Ditto.
2774
2775         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2776         (elmo-folder-next-message-number-dop): Ditto.
2777
2778 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2779
2780         * elmo-filter.el (elmo-folder-msgdb-create): Use
2781         `elmo-message-entity' and `elmo-message-flags' instead of
2782         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2783
2784 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2785
2786         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2787         `if-exists'.
2788
2789 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2790
2791         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2792
2793         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2794
2795         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2796
2797 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2798
2799         * elmo-version.el (elmo-version): Up to 2.11.22.
2800
2801 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2802
2803         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2804
2805 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2806
2807         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2808         if the message dose not exist.
2809
2810 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2811
2812         * elmo-version.el (elmo-version): Up to 2.11.21.
2813
2814 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2815
2816         * modb-standard.el (toplevel): Don't require mime.
2817
2818 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2819
2820         * elsp-bogofilter.el (toplevel): Don't require path-util.
2821         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2822         (elmo-spam-bogofilter-header): Abolish.
2823         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2824         (elmo-spam-bogofilter-args): New user option.
2825         (elsp-bogofilter-call-bogofilter): New internal function.
2826         (elmo-spam-buffer-spam-p): Use it.
2827         (elsp-bogofilter-register-buffer): Renamed from
2828         `elmo-spam-bogofilter-register-buffer';
2829         Use `elsp-bogofilter-call-bogofilter'.
2830         (elmo-spam-register-spam-buffer): Follow the change above.
2831         (elmo-spam-register-good-buffer): Ditto.
2832
2833 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2834
2835         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2836         message-id is nil do nothing.
2837
2838 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2839
2840         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2841         Revival.
2842         (elmo-imap4-session): Removed use-flag slot.
2843         (elmo-imap4-session-select-mailbox): Undo last change.
2844         (elmo-folder-use-flag-p): Use
2845         elmo-imap4-disuse-server-flag-mailbox-regexp.
2846
2847 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2848
2849         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2850         (elmo-imap4-session-select-mailbox): Set it up.
2851         (elmo-folder-use-flag-p): Return value of use-flag slot.
2852
2853 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2854
2855         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2856         message-id is nil.
2857         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2858
2859         * modb-entity.el (elmo-message-entity-handler): Likewise.
2860
2861 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2862
2863         * elmo.el (toplevel): Remove setting of autoloding for
2864         elmo-global-flag-initialize.
2865         (elmo-init): Don't call elmo-global-flag-initialize.
2866         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2867
2868         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2869         (elmo-global-mark-migrate): Don't call it.
2870         (elmo-global-mark-upgrade): Ditto.
2871
2872 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2873
2874         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2875         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2876
2877         * elmo-vars.el (elmo-init-hook): New user option.
2878
2879         * elmo.el (elmo-init): Run the elmo-init-hook.
2880
2881         * elmo-flag.el (elmo-global-mark-migrate): New function.
2882
2883 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2884
2885         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2886         Undo last change (move to elmo-msgdb-unset-flag).
2887         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2888         flag is unset.
2889
2890 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2891
2892         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2893         read flag is set.
2894         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2895         (elmo-msgdb-unset-flag): Ditto.
2896
2897 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2898
2899         * elmo-split.el (elmo-split): Return split message count.
2900
2901 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2902
2903         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2904         is nil.
2905
2906 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2907
2908         * elmo.el (elmo-folder-unflag-important): Call
2909         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2910         a symbol `always'.
2911
2912         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2913         before unset flag.
2914         (elmo-global-flag-detach): Delete the message from flag folder, if
2915         `delete-if-none' is a symbol `always'.
2916
2917 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2918
2919         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2920         `elmo-spam-spamfilter-decode-buffer'.
2921         (elsp-spamfilter-register-buffer-internal): New internal function.
2922         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2923         (elmo-spam-register-spam-buffer): Ditto.
2924         (elmo-spam-register-good-buffer): Ditto.
2925
2926         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2927         change.
2928         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2929         (elmo-spam-register-spam-buffer): Follow the API change.
2930         (elmo-spam-register-good-buffer): Ditto.
2931
2932         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2933         (elmo-split-spam-p): Added argument plist; Call
2934         `elmo-spam-buffer-spam-p' with new argument register.
2935
2936         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2937         `register'.
2938         (elmo-spam-message-spam-p): Ditto.
2939         (elmo-spam-register-spam-buffer): Added optional argument
2940         `restore'.
2941         (elmo-spam-register-good-buffer): Ditto.
2942         (elmo-spam-register-spam-messages): Ditto.
2943         (elmo-spam-register-good-messages): Ditto.
2944
2945 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2946
2947         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2948         register into good corpus.
2949         (elmo-spam-register-good-buffer): Fixed to register into bad
2950         corpus.
2951
2952 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2953
2954         * elmo-version.el (elmo-version): Up to 2.11.20.
2955
2956         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2957         change.
2958
2959         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2960         flag without depending on \Recent flag.
2961
2962 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2963
2964         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2965         (elmo-spam-modified-p): Defined.
2966         (elmo-spam-save-status): Set `modified' slot to nil.
2967         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2968         (elmo-spam-register-good-buffer): Ditto.
2969
2970         * elmo-spam.el (elmo-spam-modified-p): New API.
2971
2972 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2973
2974         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2975         duplicate definition.
2976
2977         * elmo-util.el (elmo-unfold-field-body): New function.
2978         (elmo-msgdb-get-message-id-from-buffer): Use it.
2979
2980         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2981         Fixed the last change; Use elmo-unfold-field-body.
2982
2983 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2984
2985         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2986         Unfold date value.
2987
2988 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2989
2990         * elmo-spam.el (elmo-spam-save-status): New API.
2991
2992         * elsp-spamfilter.el: New file.
2993
2994 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2995
2996         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2997
2998 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2999
3000         * elmo-split.el (elmo-split-spam-p): New function.
3001
3002         * elmo-spam.el: New file.
3003
3004         * elsp-bogofilter.el: Ditto.
3005
3006 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
3007
3008         * elmo.el (elmo-folder-next-message-number): New API.
3009         (elmo-folder-next-message-number): Define.
3010         (elmo-message-field): Don't check folder length.
3011
3012         * elmo-net.el (elmo-folder-next-message-number): Define.
3013         (elmo-folder-next-message-number-unplugged): Define.
3014
3015         * elmo-map.el (elmo-folder-next-message-number): Define.
3016         (elmo-folder-delete-messages): Clear hash value.
3017
3018         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
3019
3020         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
3021         (elmo-folder-delete-messages-dop-delayed): Always return t.
3022
3023         * elmo-version.el (elmo-version): Up to 2.11.19.
3024
3025 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3026
3027         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
3028         change.
3029
3030         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
3031         identical cons cell into the mark-alist and the hash table.
3032
3033 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
3034
3035         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
3036         elmo-folder-list-messages with argument `visible-only' as t.
3037
3038         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
3039         (elmo-folder-msgdb-create): Check the target folder.
3040
3041 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
3042
3043         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
3044         `permanentflag' instead of `flags'.
3045         (elmo-folder-open): Ditto.
3046         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
3047         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
3048         (elmo-folder-use-flag-p): Always return t.
3049         (elmo-imap4-session-select-mailbox): Use value of `flags' if
3050         `permanentflags' does not exist.
3051         (elmo-folder-open): Ditto.
3052
3053 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
3054
3055         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
3056         is nil.
3057         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
3058
3059         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
3060         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
3061         response.
3062         (elmo-folder-open): Ditto.
3063         (elmo-imap4-set-flag): Send store flag command only when the `flags'
3064         slot of the session includes the flag.
3065         (elmo-imap4-session-flag-available-p): New function.
3066         (elmo-imap4-folder-list-flagged): Ditto.
3067         (elmo-folder-list-unreads-plugged): Use it.
3068         (elmo-folder-list-importants-plugged): Ditto.
3069         (elmo-folder-list-answereds-plugged): Ditto.
3070         (elmo-imap4-search-internal-primitive): Ditto.
3071         (elmo-imap4-folder-list-any-plugged,
3072         elmo-imap4-folder-list-digest-plugged): Abolish.
3073
3074         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
3075         if numbers is nil.
3076
3077 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3078
3079         * elmo-util.el (toplevel): Require emu for char-list-to-string.
3080
3081 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
3082
3083         * elmo-util.el (elmo-get-hash-val): Simplify.
3084         (elmo-set-hash-val): Rewrite.
3085
3086 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3087
3088         * elmo.el (elmo-folder-list-messages): Append killed messages into
3089         result if `visible-only' is nil and `in-msgdb' is non-nil.
3090
3091         * elmo-util.el (elmo-uniq-list): Added optional argument
3092         `delete-function'.
3093
3094         * modb.el (elmo-msgdb-flag-count): New API.
3095
3096         * modb-standard.el (modb-standard): Added slot flag-count.
3097         (modb-standard-countup-flags): New function.
3098         (modb-standard-load-flag): Call it.
3099         (elmo-msgdb-append): Ditto.
3100         (elmo-msgdb-clear): Clear slot flag-count.
3101         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
3102         (elmo-msgdb-unset-flag): Treat `all' flag and call
3103         modb-standard-countup-flags.
3104         (elmo-msgdb-flag-count): Define.
3105         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
3106         (elmo-msgdb-delete-messages): Ditto.
3107
3108         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
3109         (elmo-msgdb-flag-count): Define.
3110
3111         * elmo.el (elmo-folder-list-messages): Undo last change.
3112         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
3113         (elmo-folder-kill-messages): Unset all flags to numbers.
3114
3115         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
3116         elmo-folder-kill-messages.
3117
3118         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
3119         (elmo-nntp-folder-delete-messages): Abolish.
3120
3121         * elmo-version.el (elmo-version): Up to 2.11.18.
3122
3123 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3124
3125         * elmo.el (elmo-folder-kill-messages-before): Abolish.
3126         (elmo-folder-kill-messages-range): New function.
3127         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
3128         instead of elmo-folder-kill-messages-before.
3129
3130 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
3131
3132         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
3133         elmo-imap4-current-msgdb to decide entity handler.
3134
3135 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3136
3137         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
3138
3139         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
3140         inline function.
3141         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
3142         (elmo-msgdb-overview-entity-set-number,
3143         elmo-msgdb-overview-entity-get-references,
3144         elmo-msgdb-overview-entity-set-references,
3145         elmo-msgdb-overview-entity-get-from-no-decode,
3146         elmo-msgdb-overview-entity-get-from,
3147         elmo-msgdb-overview-entity-set-from,
3148         elmo-msgdb-overview-entity-get-subject,
3149         elmo-msgdb-overview-entity-get-subject-no-decode,
3150         elmo-msgdb-overview-entity-set-subject,
3151         elmo-msgdb-overview-entity-get-date,
3152         elmo-msgdb-overview-entity-set-date,
3153         elmo-msgdb-overview-entity-get-to,
3154         elmo-msgdb-overview-entity-get-cc,
3155         elmo-msgdb-overview-entity-get-size,
3156         elmo-msgdb-overview-entity-set-size,
3157         elmo-msgdb-overview-entity-get-extra,
3158         elmo-msgdb-overview-entity-set-extra,
3159         elmo-msgdb-overview-entity-get-extra-field,
3160         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
3161         (elmo-msgdb-make-index): Use
3162         `elmo-msgdb-overview-entity-get-number-internal'.
3163         (elmo-msgdb-clear-index): Ditto.
3164         (elmo-msgdb-append-entity): Ditto;
3165         Use `elmo-msgdb-overview-entity-get-id-internal'.
3166
3167         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
3168         elmo-msgdb-overview-entity-set-number,
3169         elmo-msgdb-overview-entity-get-references,
3170         elmo-msgdb-overview-entity-set-references,
3171         elmo-msgdb-overview-entity-get-from-no-decode,
3172         elmo-msgdb-overview-entity-get-from,
3173         elmo-msgdb-overview-entity-set-from,
3174         elmo-msgdb-overview-entity-get-subject,
3175         elmo-msgdb-overview-entity-get-subject-no-decode,
3176         elmo-msgdb-overview-entity-set-subject,
3177         elmo-msgdb-overview-entity-get-date,
3178         elmo-msgdb-overview-entity-set-date,
3179         elmo-msgdb-overview-entity-get-to,
3180         elmo-msgdb-overview-entity-get-cc,
3181         elmo-msgdb-overview-entity-get-size,
3182         elmo-msgdb-overview-entity-set-size,
3183         elmo-msgdb-overview-entity-get-extra,
3184         elmo-msgdb-overview-entity-set-extra,
3185         elmo-msgdb-overview-entity-get-extra-field,
3186         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
3187         and rewrote for backward compatibility.
3188
3189 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3190
3191         * elmo.el (elmo-message-entity-number,
3192         elmo-message-entity-set-number,
3193         elmo-message-entity-field,
3194         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
3195
3196         * elmo-msgdb.el (elmo-message-entity-number,
3197         elmo-message-entity-set-number,
3198         elmo-message-entity-field,
3199         elmo-message-entity-set-field): Moved from elmo.el.
3200
3201 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3202
3203         * elmo.el (toplevel): Changed definition orders.
3204
3205 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3206
3207         * modb.el (elmo-msgdb-search): New API .
3208         (elmo-msgdb-match-condition): Ditto.
3209
3210         * modb-standard.el (elmo-msgdb-search): Define.
3211
3212         * modb-legacy.el (elmo-msgdb-search): Ditto.
3213
3214         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
3215         from elmo-msgdb-match-condition-internal.
3216
3217         * elmo.el (elmo-folder-search-fast): Abolish.
3218         (elmo-folder-search): Use elmo-msgdb-search and
3219         elmo-with-progress-display.
3220
3221         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
3222         as msgdb API.
3223
3224         * elmo.el (elmo-folder): Remove slot message-modified and
3225         flag-modified.
3226         (elmo-folder-set-message-modified): Abolish.
3227         (elmo-generic-folder-commit): Follow the change above.
3228         (elmo-folder-synchronize): Ditto.
3229
3230         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
3231
3232         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3233
3234         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
3235
3236 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3237
3238         * modb-standard.el (modb-standard-make-message-entity,
3239         elmo-msgdb-make-message-entity,
3240         elmo-msgdb-create-message-entity-from-buffer,
3241         elmo-msgdb-message-entity-number,
3242         elmo-msgdb-message-entity-set-number,
3243         elmo-msgdb-message-entity-field,
3244         elmo-msgdb-message-entity-set-field,
3245         elmo-msgdb-copy-message-entity,
3246         elmo-msgdb-match-condition-internal): Remove.
3247
3248         * modb-entity.el: New file (again).
3249
3250         * modb.el (toplevel): Require modb-entity.
3251         (elmo-msgdb-message-entity-handler): New method.
3252
3253         * modb-standard.el (modb-standard-entity-id): Use
3254         elmo-message-entity-handler.
3255         (modb-standard-load-entity): Ditto.
3256         (elmo-msgdb-append-entity): Ditto.
3257         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3258
3259         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
3260         elmo-msgdb-decoded-cache-hashtb,
3261         (modb-legacy-make-message-entity,
3262         elmo-msgdb-make-message-entity,
3263         elmo-msgdb-create-message-entity-from-buffer,
3264         elmo-msgdb-message-entity-number,
3265         elmo-msgdb-message-entity-set-number,
3266         elmo-msgdb-message-entity-field,
3267         elmo-msgdb-message-entity-set-field,
3268         elmo-msgdb-copy-message-entity,
3269         elmo-msgdb-match-condition-internal,
3270         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
3271
3272         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
3273         (elmo-message-entity-set-number): Ditto.
3274         (elmo-message-entity-field): Ditto.
3275         (elmo-message-entity-set-field): Ditto.
3276
3277         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
3278
3279         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3280
3281         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3282
3283         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3284         (elmo-nntp-msgdb-create-message): Ditto.
3285
3286         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
3287         (elmo-folder-msgdb-create): Add unread flag.
3288
3289         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3290
3291         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
3292
3293         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
3294
3295         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3296
3297         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
3298         elmo-msgdb-messge-entity-handler.
3299         * elmo-version.el (elmo-version): Up to 2.11.17.
3300
3301 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3302
3303         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
3304         change.
3305
3306 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3307
3308         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3309
3310         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3311         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3312         (elmo-msgdb-flag-table): Ditto.
3313         (elmo-msgdb-sort-by-date): Ditto.
3314
3315         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3316
3317         * modb-standard.el (toplevel): Require mime.
3318         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3319         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3320         elmo-msgdb-message-entity-number.
3321         (elmo-msgdb-append-entity): Ditto.
3322         (elmo-msgdb-create-message-entity-from-file): Remove.
3323         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3324         corresponds to the entity.
3325         (elmo-msgdb-message-entity-number): Do nothing currently.
3326         (elmo-msgdb-message-entity-field): Ditto.
3327         (elmo-msgdb-message-entity-set-field): Ditto.
3328         (elmo-msgdb-copy-message-entity): Ditto.
3329         (elmo-msgdb-match-condition-internal): Ditto.
3330
3331         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3332         elmo-util.el.
3333         (elmo-msgdb-create-message-entity-from-file): Remove.
3334
3335         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3336         modb-legacy.el.
3337         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3338
3339         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3340
3341 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3342
3343         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3344         (elmo-msgdb-message-entity-field): Ditto.
3345         (elmo-msgdb-message-entity-number): Ditto.
3346
3347 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3348
3349         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3350         Fixed how to set extra field into entity.
3351         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3352         symbol.
3353
3354         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3355         Fixed how to set extra field into entity.
3356         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3357         symbol.
3358
3359 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3360
3361         * modb.el (elmo-message-entity-db): New function.
3362         (elmo-msgdb-make-message-entity): New API.
3363         (elmo-msgdb-message-entity-number): Ditto.
3364         (elmo-msgdb-message-entity-set-number): Ditto.
3365         (elmo-msgdb-message-entity-field): Ditto.
3366         (elmo-msgdb-message-entity-set-field): Ditto.
3367         (elmo-msgdb-copy-message-entity): Ditto.
3368         (elmo-msgdb-create-message-entity-from-file): Ditto.
3369         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3370         (elmo-msgdb-match-condition-internal): Ditto.
3371
3372         * modb-standard.el (modb-legacy): Require modb-legacy.
3373         (modb-standard-make-message-entity): New inline function.
3374         (elmo-msgdb-make-message-entity): Define.
3375         (elmo-msgdb-create-message-entity-from-file): Ditto.
3376         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3377         (elmo-msgdb-message-entity-field): Ditto.
3378         (elmo-msgdb-message-entity-set-field): Ditto.
3379         (elmo-msgdb-copy-message-entity): Ditto.
3380         (elmo-msgdb-match-condition-internal): Ditto.
3381
3382         * modb-legacy.el: Don't require modb-entity.
3383         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3384         (elmo-msgdb-match-condition-primitive): Ditto.
3385         (elmo-msgdb-get-decoded-cache): Ditto.
3386         (elmo-msgdb-overview-entity-get-id): Ditto.
3387         (elmo-msgdb-overview-entity-get-number): Ditto.
3388         (elmo-msgdb-overview-entity-set-number): Ditto.
3389         (elmo-msgdb-overview-entity-get-references): Ditto.
3390         (elmo-msgdb-overview-entity-set-references): Ditto.
3391         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3392         (elmo-msgdb-overview-entity-get-from): Ditto.
3393         (elmo-msgdb-overview-entity-set-from): Ditto.
3394         (elmo-msgdb-overview-entity-get-subject): Ditto.
3395         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3396         (elmo-msgdb-overview-entity-set-subject): Ditto.
3397         (elmo-msgdb-overview-entity-get-date): Ditto.
3398         (elmo-msgdb-overview-entity-set-date): Ditto.
3399         (elmo-msgdb-overview-entity-get-to): Ditto.
3400         (elmo-msgdb-overview-entity-get-cc): Ditto.
3401         (elmo-msgdb-overview-entity-get-size): Ditto.
3402         (elmo-msgdb-overview-entity-set-size): Ditto.
3403         (elmo-msgdb-overview-entity-get-extra): Ditto.
3404         (elmo-msgdb-overview-entity-set-extra): Ditto.
3405         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3406         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3407         (elmo-msgdb-number-load): Ditto.
3408         (elmo-msgdb-overview-load): Ditto.
3409         (elmo-msgdb-mark-load): Ditto.
3410         (elmo-msgdb-number-save): Ditto.
3411         (elmo-msgdb-mark-save): Ditto.
3412         (elmo-msgdb-overview-save): Ditto.
3413         (modb-legacy-make-message-entity): New inline function.
3414         (elmo-msgdb-insert-file-header): Ditto.
3415         (elmo-msgdb-make-message-entity): Define.
3416         (elmo-msgdb-create-message-entity-from-file): Ditto.
3417         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3418         (elmo-msgdb-message-entity-number): Ditto.
3419         (elmo-msgdb-message-entity-set-number): Ditto.
3420         (elmo-msgdb-message-entity-field): Ditto.
3421         (elmo-msgdb-message-entity-set-field): Ditto.
3422         (elmo-msgdb-copy-message-entity): Ditto.
3423         (elmo-msgdb-match-condition-internal): Ditto.
3424
3425         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3426         (elmo-message-copy-entity): Rewrite.
3427         (elmo-message-entity-number): Ditto.
3428         (elmo-message-entity-set-number): Ditto.
3429         (elmo-message-entity-field): Use elmo-message-entity-db.
3430         (elmo-message-entity-set-field): Ditto.
3431         (elmo-message-field): Rewrite.
3432
3433         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3434         elmo-msgdb.el
3435         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3436
3437         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3438         elmo-message-entity-field.
3439         (elmo-shimbun-folder-shimbun-header): Ditto.
3440         (elmo-shimbun-entity-to-header): Ditto.
3441         (elmo-folder-msgdb-create): Ditto.
3442         (elmo-shimbun-msgdb-create-entity): Ditto;
3443         Use elmo-msgdb-create-message-entity-from-buffer.
3444         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3445         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3446
3447         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3448         elmo-msgdb-create-message-entity-from-file and 
3449         elmo-message-entity-field.
3450
3451         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3452         elmo-message-entity-number.
3453         (elmo-pop3-msgdb-create-message): Use
3454         elmo-msgdb-create-message-entity-from-buffer,
3455         elmo-message-entity-set-field, elmo-message-entity-number and
3456         elmo-message-entity-set-number.
3457
3458         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3459         the API change in elmo-msgdb-make-message-entity.
3460         (elmo-nntp-msgdb-create-message): Use
3461         elmo-msgdb-create-message-entity-from-buffer.
3462
3463         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3464         elmo-message-entity-field and
3465         elmo-msgdb-create-message-entity-from-file.
3466
3467         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3468         (elmo-msgdb-get-field): Abolish.
3469         (elmo-msgdb-get-number): Rewrite.
3470         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3471         (elmo-msgdb-flag-table): Ditto.
3472         (elmo-msgdb-get-last-message-id,
3473         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3474         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3475         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3476         (elmo-msgdb-create-overview-from-buffer,
3477         elmo-msgdb-overview-get-parent-entity): Abolish.
3478
3479         * elmo-mime.el (elmo-mime-display-as-is): Use
3480         elmo-message-entity-field.
3481
3482         * elmo-map.el (elmo-folder-pack-numbers): Use
3483         elmo-message-entity-set-number.
3484
3485         * elmo-maildir.el (elmo-folder-msgdb-create): 
3486         elmo-msgdb-create-message-entity-from-file instead of
3487         elmo-msgdb-create-overview-entity-from-file.
3488
3489         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3490         msgdb.
3491         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3492         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3493
3494         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3495         elmo-messge-entity-field and elmo-message-entity-number.
3496         (elmo-imap4-fetch-callback-1): Call
3497         elmo-msgdb-create-message-entity-from-buffer instead of
3498         elmo-msgdb-create-overview-from-buffer. 
3499         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3500         (elmo-find-fetch-strategy): Likewise.
3501
3502         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3503         elmo-localdir-msgdb-create-entity with argument msgdb.
3504
3505         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3506         and elmo-message-entity-set-number.
3507
3508         * elmo-cache.el (elmo-folder-msgdb-create): Use
3509         elmo-message-entity-field.
3510         (elmo-folder-msgdb-create): Call
3511         elmo-msgdb-create-message-entity-from-file instead of
3512         elmo-msgdb-create-overview-entity-from-file.
3513
3514         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3515         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3516         instead of elmo-msgdb-create-overview-from-buffer.
3517         (elmo-archive-msgdb-create-entity): Ditto.
3518         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3519         elmo-message-entity-field.
3520         (elmo-archive-parse-mmdf): Ditto.
3521
3522         * modb-entity.el: Removed.
3523
3524         * elmo-version.el (elmo-version): Up to 2.11.16.
3525
3526 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3527
3528         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3529         `is-local'.
3530         (elmo-folder-flag-as-answered): Ditto.
3531
3532 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3533
3534         * modb-standard.el: New file.
3535
3536         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3537         elmo-msgdb-convert-type is `sync'.
3538
3539         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3540         (elmo-msgdb-convert-type): New user option.
3541
3542         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3543         (elmo-load-msgdb): Auto detect saved type.
3544
3545         * elmo-version.el (elmo-version): Up to 2.11.15.
3546
3547 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3548
3549         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3550
3551         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3552         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3553         with argument `delete-if-none' when dst-folder is 'null.
3554
3555         * elmo-flag.el (elmo-folder-append-messages): Defined.
3556         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3557
3558 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3559
3560         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3561
3562 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3563
3564         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3565         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3566         (elmo-folder-commit): Ditto.
3567
3568 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3569
3570         * elmo-flag.el: New file.
3571
3572         * elmo-mark.el: Removed.
3573
3574         * modb-legacy.el (modb-legacy-new-mark,
3575         modb-legacy-unread-uncached-mark,
3576         modb-legacy-unread-cached-mark,
3577         modb-legacy-read-uncached-mark,
3578         modb-legacy-answered-cached-mark,
3579         modb-legacy-answered-uncached-mark,
3580         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3581         All other related portions are changed.
3582
3583         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3584         (elmo-folder-list-messages-with-global-mark): Abolish.
3585         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3586         (elmo-folder-flag-as-important): Ditto.
3587         (elmo-folder-unflag-read): Ditto.
3588         (elmo-folder-flag-as-read): Ditto.
3589         (elmo-folder-unflag-answered): Ditto.
3590         (elmo-folder-flag-as-answered): Ditto.
3591         (elmo-message-encache): Return the cache path.
3592         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3593         (elmo-message-set-flag): Transitional implementation.
3594         (elmo-message-unset-flag): Ditto.
3595         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3596         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3597         (elmo-init): Call elmo-global-flag-initialize.
3598         (toplevel): Added autoload settings for elmo-flag.
3599
3600         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3601
3602         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3603         (elmo-file-cache-delete): Don't treat global-mark.
3604
3605         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3606
3607         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3608
3609         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3610         `elmo-global-flags-set'.
3611
3612         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3613         `flag'.
3614         (elmo-folder-unflag-read): Ditto.
3615         (elmo-folder-unflag-important): Ditto.
3616         (elmo-folder-flag-as-important): Ditto.
3617         (elmo-folder-unflag-answered): Ditto.
3618         (elmo-folder-flag-as-answered): Ditto.
3619
3620         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3621         `elmo-global-flags-set'.
3622         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3623
3624         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3625
3626         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3627         `flag'.
3628         (elmo-folder-flag-as-important): Ditto.
3629         (elmo-folder-unflag-important): Ditto.
3630         (elmo-folder-flag-as-important): Ditto.
3631         (elmo-folder-unflag-read): Ditto.
3632         (elmo-folder-flag-as-read): Ditto.
3633         (elmo-folder-unflag-answered): Ditto.
3634         (elmo-folder-flag-as-answered): Ditto.
3635
3636         * elmo-multi.el (elmo-folder-list-importants): Don't call
3637         elmo-folder-list-messages-with-global-mark.
3638         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3639         (elmo-folder-unflag-important): Ditto.
3640         (elmo-folder-flag-as-read): Ditto.
3641         (elmo-folder-unflag-read): Ditto.
3642         (elmo-folder-flag-as-answered): Ditto.
3643         (elmo-folder-unflag-answered): Ditto.
3644
3645         * elmo-msgdb.el (elmo-msgdb-new-mark,
3646         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3647         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3648         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3649         (Moved to modb-legacy.el).
3650         (elmo-flag-table-get): Treat important flag too.
3651
3652         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3653         `mark' to `flag'.
3654         (elmo-map-folder-flag-as-important): Ditto.
3655         (elmo-map-folder-unflag-read): Ditto.
3656         (elmo-map-folder-flag-as-read): Ditto.
3657         (elmo-map-folder-unflag-answered): Ditto.
3658         (elmo-map-folder-flag-as-answered): Ditto.
3659         (elmo-folder-unflag-important): Ditto.
3660         (elmo-folder-flag-as-important): Ditto.
3661         (elmo-folder-unflag-read): Ditto.
3662         (elmo-folder-flag-as-read): Ditto.
3663         (elmo-folder-unflag-answered): Ditto.
3664         (elmo-folder-flag-as-answered): Ditto.
3665
3666         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3667         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3668         `flag'.
3669         (elmo-map-folder-unflag-important): Ditto.
3670         (elmo-map-folder-flag-as-read): Ditto.
3671         (elmo-map-folder-unflag-read): Ditto.
3672         (elmo-map-folder-flag-as-answered): Ditto.
3673         (elmo-map-folder-unflag-answered): Ditto.
3674
3675         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3676         `elmo-global-flags-set'.
3677         (elmo-global-flags-set): Added autoload setting.
3678
3679         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3680         `flag'.
3681
3682         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3683         `elmo-msgdb-global-mark-set'.
3684         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3685         Call `elmo-global-flags-set'.
3686         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3687         `flag'.
3688         (elmo-folder-flag-as-important-plugged): Ditto.
3689         (elmo-folder-unflag-read-plugged): Ditto.
3690         (elmo-folder-flag-as-read-plugged): Ditto.
3691         (elmo-folder-unflag-answered-plugged): Ditto.
3692         (elmo-folder-flag-as-answered-plugged): Ditto.
3693         (elmo-global-flags-set): Added autoload setting.
3694
3695         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3696         `flag'.
3697         (elmo-folder-unflag-read): Ditto.
3698         (elmo-folder-flag-as-important): Ditto.
3699         (elmo-folder-unflag-important): Ditto.
3700         (elmo-folder-flag-as-answered): Ditto.
3701         (elmo-folder-unflag-answered): Ditto.
3702
3703         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3704         change of `mark'->`flag'.
3705         (elmo-dop-queue-method-name-alist): Ditto.
3706         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3707         (elmo-folder-unflag-read-dop): Ditto.
3708         (elmo-folder-flag-as-important-dop): Ditto.
3709         (elmo-folder-unflag-important-dop): Ditto.
3710         (elmo-folder-flag-as-answered-dop): Ditto.
3711         (elmo-folder-unflag-answered-dop): Ditto.
3712
3713         * elmo-cache.el (elmo-folder-msgdb-create): Call
3714         `elmo-global-flags-set'.
3715
3716         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3717         Call `elmo-global-flags-set'.
3718         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3719         elmo-archive-parse-mmdf with argument `folder'.
3720         (elmo-archive-parse-mmdf): Added argument `folder';
3721         Call `elmo-global-flags-set'.
3722
3723         * elmo-version.el (elmo-version): Up to 2.11.14.
3724
3725 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3726
3727         * modb.el (elmo-msgdb-length): Define.
3728
3729         * elmo.el (elmo-make-folder): Fixed.
3730         (elmo-generic-folder-append-messages): Follow the API change.
3731
3732         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3733         API change.
3734
3735 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3736
3737         * modb.el: New file.
3738
3739         * modb-entity.el: Ditto.
3740
3741         * modb-legacy.el: Ditto.
3742
3743         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3744         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3745         of `elmo-msgdb-overview-get-entity'.
3746         (elmo-msgdb-get-field): Ditto.
3747         (elmo-msgdb-merge): Moved to `elmo.el'.
3748         (elmo-msgdb-length): Removed; redefine as modb method.
3749         (elmo-msgdb-change-mark): Abolish.
3750         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3751         (elmo-msgdb-match-condition): Don't use mark.
3752         (elmo-msgdb-overview-get-entity): Abolish.
3753         Split modb part into `modb*.el'.
3754
3755         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3756
3757         * elmo-shimbun.el (shimbun-mua-search-id): Use
3758         `elmo-msgdb-message-entity' instead of
3759         `elmo-msgdb-overview-get-entity'.
3760         (elmo-shimbun-folder-shimbun-header): Ditto.
3761         (elmo-shimbun-get-headers): Ditto.
3762         (elmo-shimbun-update-overview): Ditto.
3763
3764         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3765
3766         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3767
3768         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3769         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3770
3771         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3772         `elmo-msgdb-mark-to-flags'.
3773
3774         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3775         `elmo-msgdb-set-path'.
3776
3777         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3778  
3779         * elmo-version.el (elmo-version): Up to 2.11.13.
3780
3781         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3782
3783         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3784         of mark.
3785
3786 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3787
3788         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3789         mismatch.
3790
3791 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3792
3793         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3794         instead of `elmo-msgdb-get-cached'.
3795         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3796
3797         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3798         (elmo-msgdb-set-cached): Ditto.
3799         (elmo-msgdb-set-flag): Rewrite.
3800         (elmo-msgdb-unset-flag): Ditto.
3801
3802         * elmo-msgdb.el: Rewrite with luna.
3803
3804         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3805         (elmo-folder-msgdb): Follow the change above.
3806         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3807         (elmo-folder-unmark-important): Follow the API change.
3808         (elmo-folder-mark-as-important): Ditto.
3809         (elmo-folder-unmark-read): Ditto.
3810         (elmo-folder-mark-as-read): Ditto.
3811         (elmo-folder-unmark-answered): Ditto.
3812         (elmo-folder-mark-as-answered): Ditto.
3813         (elmo-folder-clear): Likewise.
3814
3815         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3816         instead of `elmo-msgdb-load' (renamed).
3817
3818         * elmo-version.el (elmo-version): Up to 2.11.12.
3819
3820 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3821
3822         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3823         change.
3824         (elmo-message-mark): Abolish.
3825         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3826         instead of `elmo-msgdb-change-mark'.
3827
3828         * elmo-pipe.el (elmo-message-mark): Abolish.
3829
3830         * elmo-multi.el (elmo-message-mark): Ditto.
3831
3832         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3833         (elmo-msgdb-unread-uncached-mark): Ditto.
3834         (elmo-msgdb-unread-cached-mark): Ditto.
3835         (elmo-msgdb-read-uncached-mark): Ditto.
3836         (elmo-msgdb-answered-cached-mark): Ditto.
3837         (elmo-msgdb-answered-uncached-mark): Ditto.
3838         (elmo-msgdb-important-mark): Ditto.
3839         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3840         `use-cache'.
3841         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3842         `flags'.
3843         (elmo-flag-table-load): Changed flag to list of flag.
3844         (elmo-flag-table-set): If flags is nil, set read flag.
3845         (elmo-flag-table-get): Return derived flags from global mark,
3846         cache status and saved flags.
3847         (elmo-msgdb-flag-table): Follow the change above.
3848         (elmo-msgdb-out-of-date-messages): New function.
3849
3850         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3851
3852         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3853
3854         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3855
3856         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3857         (elmo-nntp-msgdb-create-message): Ditto.
3858
3859         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3860
3861         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3862         independent.
3863         (elmo-folder-msgdb-create): Follow the API change.
3864
3865         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3866         (elmo-folder-append-messages): Ditto.
3867
3868         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3869         (elmo-folder-append-buffer): Ditto.
3870
3871         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3872
3873         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3874
3875         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3876         (elmo-archive-parse-mmdf): Ditto.
3877
3878         * elmo-version.el (elmo-version): Up to 2.11.11.
3879
3880 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3881
3882         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3883         `elmo-msgdb-mark'.
3884
3885         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3886
3887         * elmo-pipe.el (elmo-message-flags): Defined.
3888
3889         * elmo-multi.el (elmo-message-flags): Ditto.
3890
3891 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3892
3893         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3894         `elmo-msgdb-delete-msgs'.
3895
3896         * elmo.el (elmo-folder-count-flags): Don't use
3897         `elmo-msgdb-get-mark-alist'.
3898         (elmo-folder-detach-messages): Follow the API change.
3899
3900         * elmo.el (elmo-folder-list-messages): Append killed messages into
3901         result if `visible-only' is nil.
3902
3903         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3904         canceled messages.
3905         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3906         (elmo-folder-update-number): Likewise.
3907
3908         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3909         (elmo-pop3-sort-msgdb-by-original-number): Use
3910         `elmo-msgdb-sort-entities'.
3911
3912         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3913         (elmo-msgdb-sort-by-date): Use it.
3914         (elmo-msgdb-overview-sort-by-date): Abolish.
3915
3916         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3917
3918         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3919         (elmo-msgdb-flags): New function.
3920         (elmo-msgdb-merge): Use elmo-msgdb-append.
3921
3922         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3923         change.
3924
3925         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3926
3927         * elmo-dop.el (elmo-folder-status-dop): Use
3928         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3929
3930 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3931
3932         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3933
3934         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3935
3936         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3937
3938         * elmo-util.el (elmo-with-progress-display): New macro.
3939
3940         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3941
3942 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3943
3944         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3945         `elmo-folder-list-message-entities' instead of
3946         `elmo-msgdb-get-overview'.
3947         (elmo-map-folder-list-message-locations): Ditto.
3948
3949         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3950         methods instead of treat directly).
3951         (elmo-msgdb-clear): Ditto.
3952         (elmo-msgdb-delete-msgs): Ditto.
3953         (elmo-msgdb-sort-by-date): Ditto.
3954
3955         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3956         local variables.
3957         (elmo-nntp-folder-msgdb-create): Follow the API change.
3958
3959         * elmo-version.el (elmo-version): Up to 2.11.10.
3960
3961 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3962
3963         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3964         (elmo-msgdb-flags-to-mark): Ditto.
3965         (elmo-msgdb-append-entity): Ditto.
3966
3967         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3968         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3969         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3970         (elmo-archive-parse-mmdf): Ditto.
3971
3972         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3973
3974         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3975
3976         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3977
3978         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3979
3980         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3981
3982         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3983
3984         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3985
3986         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3987
3988         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3989         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3990         to empty msgdb.
3991
3992         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3993         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3994         instead of directly construction.
3995         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3996         instead of construct msgdb.
3997
3998         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3999         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
4000         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
4001         instead of construct msgdb.
4002
4003 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4004
4005         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
4006         when field is from or subject.
4007
4008 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
4009
4010         * elmo-multi.el (elmo-message-entity-parent): Define.
4011         (elmo-folder-search): Rewrite.
4012
4013 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4014
4015         * elmo-multi.el (elmo-message-cached-p): Define.
4016
4017         * elmo.el (elmo-message-cached-p): New method.
4018         (elmo-message-accessible-p): Use it instead of msgdb API directly.
4019         (elmo-message-flags): New method.
4020         (elmo-message-flagged-p): New function.
4021
4022         * elmo-version.el (elmo-version): Up to 2.11.9.
4023
4024 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4025
4026         * elmo-version.el (elmo-version): Up to 2.11.8.
4027
4028         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
4029
4030         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
4031
4032 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
4033
4034         * elmo.el (elmo-folder-detach-messages): Undo last change.
4035
4036 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
4037
4038         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
4039
4040         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
4041         only when src folder type is pop3.
4042
4043 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
4044
4045         * elmo-msgdb.el (elmo-msgdb-make-index): Use
4046         elmo-msgdb-overview-entity-get-number instead of
4047         elmo-message-entity-number.
4048
4049 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4050
4051         * elmo-version.el (elmo-version): Up to 2.11.7.
4052
4053 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
4054
4055         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
4056         function.
4057
4058         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
4059         (elmo-msgdb-merge): New function.
4060         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
4061         (elmo-msgdb-make-index): Rewrite.
4062
4063         * elmo-version.el (elmo-version): Up to 2.11.6.
4064
4065         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
4066         use it as a the path for loading message entities.
4067
4068         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
4069
4070 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
4071
4072         * elmo-filter.el (elmo-folder-set-message-modified): Set 
4073         message-modified slot of itself if it does not require target msgdb.
4074
4075         * elmo-mime.el (elmo-mime-message-display): Display message entirely
4076         if folder length is zero.
4077         (elmo-mime-display-as-is): Ditto.
4078
4079         * elmo-filter.el (elmo-folder-set-message-modified): Define.
4080
4081         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
4082
4083 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4084
4085         * elmo.el (elmo-folder-set-message-modified): New method.
4086         (elmo-generic-folder-commit): Use it.
4087         (elmo-folder-synchronize): Ditto.
4088
4089         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
4090         (elmo-folder-commit): Remove duplicate definition.
4091
4092 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4093
4094         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
4095
4096 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4097
4098         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
4099         (elmo-strict-folder-diff): Ditto.
4100         (elmo-folder-set-info-max-by-numdb): Simplify.
4101
4102         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
4103         elmo-msgdb-list-messages.
4104
4105         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
4106         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
4107
4108 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4109
4110         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
4111         visible-only is non-nil.
4112         (elmo-folder-confirm-appends): Changed message.
4113         (elmo-folder-synchronize): Added argument disable-killed.
4114
4115         * elmo-multi.el (elmo-folder-synchronize): Added argument
4116         disable-killed.
4117
4118         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
4119
4120         * elmo-version.el (elmo-version): Up to 2.11.5.
4121
4122         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
4123         elmo-list-filter.
4124
4125         * elmo-util.el (elmo-list-filter): Simplify.
4126
4127         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
4128         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
4129         (elmo-generic-folder-diff): Abolish argument.
4130         (elmo-msgdb-load): Don't use number-alist.
4131
4132         * elmo-filter.el (elmo-folder-diff): Abolish argument.
4133
4134         * elmo-pipe.el (elmo-folder-diff): Ditto.
4135
4136         * elmo-nmz.el (elmo-folder-diff): Ditto.
4137
4138         * elmo-net.el (elmo-folder-diff): Ditto.
4139
4140         * elmo-maildir.el (elmo-folder-diff): Ditto.
4141
4142         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
4143
4144         * elmo-multi.el (elmo-folder-diff): Ditto
4145         (elmo-multi-folder-diff): Rewrite.
4146
4147 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4148
4149         * elmo-pipe.el (elmo-folder-msgdb): Define.
4150
4151 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
4152
4153         * elmo.el (elmo-message-set-cached): Define as a method.
4154
4155         * elmo-pipe.el (elmo-message-set-cached): Define.
4156         (elmo-find-fetch-strategy): Ditto.
4157
4158         * elmo-multi.el (elmo-message-set-cached): Define.
4159         (elmo-find-fetch-strategy): Rewrite.
4160
4161         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
4162
4163         * elmo-pipe.el (elmo-message-folder): Fixed definition.
4164
4165 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4166
4167         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
4168         instead of number-alist.
4169
4170         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
4171         mark nor message-id when msgdb of source folder is not loaded.
4172
4173         * elmo.el (elmo-generic-folder-append-messages): Ditto.
4174
4175         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4176
4177 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
4178
4179         * elmo.el (elmo-folder-length): Don't require msgdb.
4180
4181 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
4182
4183         * elmo.el (elmo-message-mark): Cause an error when empty folder.
4184         (elmo-message-field): Ditto.
4185
4186         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
4187         (elmo-map-folder-list-message-locations): Setup `answered-locations'
4188         slot.
4189         (elmo-map-folder-list-answereds): Define.
4190         (elmo-maildir-list-location): Treat 'R' info.
4191         (elmo-folder-msgdb-create): Treat flag-table.
4192         (elmo-folder-append-messages): Save flag-table.
4193
4194 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
4195
4196         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
4197         Use SELECT when elmo-imap4-use-select-to-update-status is t.
4198
4199 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4200
4201         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
4202
4203         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
4204         'read when mark is null.
4205
4206 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
4207
4208         * elmo-version.el (elmo-version): Up to 2.11.4.
4209
4210 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4211
4212         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
4213         (elmo-folder-mark-as-answered): Ditto.
4214
4215 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
4216
4217         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
4218         (elmo-pop3-get-session): Make msgdb directory after session.
4219         (elmo-folder-exists-p): Check exactly at the first time even when the
4220         elmo-pop3-exists-exactly is nil.
4221
4222         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
4223         (elmo-folder-list-messages): Define instead of
4224         elmo-folder-list-messages-internal.
4225         (elmo-folder-check): Check destination folder.
4226         (elmo-folder-synchronize): Drain the pipe.
4227
4228         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
4229         when msgdb is not loaded.
4230
4231         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
4232
4233         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
4234         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
4235         messages.
4236
4237         * elmo.el (elmo-folder-kill-messages-before): New function.
4238         (elmo-folder-kill-messages): Ditto.
4239         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
4240
4241         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
4242         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
4243         killed not by synchronize (e.g. scoring).
4244
4245 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4246
4247         * elmo.el (elmo-folder-search-fast): Return t if condition is not
4248         treated.
4249         (elmo-folder-search): Follow the change above.
4250
4251         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
4252         into the candidates of search field.
4253
4254 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
4255
4256         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
4257         (elmo-msgdb-unset-flag): Ditto.
4258
4259         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
4260
4261 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
4262
4263         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
4264         (elmo-folder-commit): Define.
4265         (elmo-folder-synchronize): Ditto.
4266         (elmo-folder-list-flagged): Ditto.
4267         (elmo-folder-commit): Ditto.
4268         (elmo-folder-length): Ditto.
4269         (elmo-folder-count-flags): Ditto.
4270         (elmo-message-mark): Ditto.
4271         (elmo-message-field): Ditto.
4272         (elmo-message-entity): Ditto.
4273         (elmo-message-folder): Ditto.
4274
4275 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
4276
4277         * elmo.el (elmo-message-field): Define as a method.
4278
4279         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
4280         (elmo-message-field): Define.
4281
4282         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
4283         (elmo-folder-list-importants): Ditto.
4284         (elmo-folder-list-answereds): Ditto.
4285
4286         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
4287         qualifier.
4288         (elmo-folder-mark-as-read): Ditto.
4289         (elmo-folder-unmark-read): Ditto.
4290         (elmo-folder-mark-as-answered): Ditto.
4291         (elmo-folder-unmark-answered): Ditto.
4292         (elmo-folder-list-flagged): Define.
4293         (elmo-folder-commit): Ditto.
4294         (elmo-folder-length): Ditto.
4295         (elmo-folder-count-flags): Ditto.
4296
4297 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4298
4299         * elmo.el (elmo-folder-detach-messages): New method.
4300         (elmo-folder-move-messages): Use it.
4301         (elmo-folder-synchronize): Ditto.
4302
4303         * elmo-multi.el (elmo-folder-detach-messages): Define.
4304
4305         * elmo.el (elmo-message-copy-entity): New function.
4306         (elmo-message-entity-set-number): Ditto.
4307         (elmo-message-mark): Define as method.
4308
4309         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4310         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4311         (elmo-message-entity): Fixed last change.
4312         (elmo-message-mark): Define.
4313         (elmo-folder-msgdb-create): Abolish.
4314         (elmo-multi-folder-append-msgdb): Ditto.
4315         (elmo-multi-folder-diff): Fixed.
4316         (elmo-multi-split-number-alist): Removed.
4317         (elmo-multi-split-mark-alist): Removed.
4318         (elmo-folder-list-messages): Define.
4319         (elmo-folder-list-messages-internal): Removed.
4320
4321         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4322         local file messages.
4323         (elmo-folder-msgdb-create): Fixed read mark.
4324
4325 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4326
4327         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4328         if mark is nil.
4329
4330 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4331
4332         * elmo.el (elmo-folder-list-message-entities): Define as inline
4333         function.
4334         (elmo-folder-messages): Abolish.
4335
4336         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4337         folder.
4338         (elmo-folder-synchronize): Define.
4339         (elmo-message-entity): Define.
4340
4341 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4342
4343         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4344         elmo-imap4-session-select-mailbox.
4345
4346         * elmo.el (elmo-folder-move-messages): Don't display any message.
4347
4348         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4349         parsing.
4350         (elmo-imap4-session-check): Don't wait CHECK response.
4351         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4352
4353 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4354
4355         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4356
4357 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4358
4359         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4360         API.
4361         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4362
4363
4364         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4365         (elmo-folder-list-message-entities): Added argument in-msgdb and
4366         numbers.
4367         (elmo-folder-synchronize): Define as a method.
4368
4369         * elmo-nntp.el (elmo-folder-initialize): Don't use
4370         elmo-nntp-default-user if zero-length username is specified
4371         explicitly.
4372
4373 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4374
4375         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4376         server name in case with username.
4377         (XXX: this is ad-hoc fix against username includes "@", it
4378         should be solved fundamentally)
4379
4380 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4381
4382         * elmo-nntp.el (elmo-nntp-debug): New function.
4383         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4384         (elmo-network-authenticate-session): Hide auth-info from the log.
4385
4386         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4387         user name if it is equal to elmo-nntp-default-user.
4388
4389 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4390
4391         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4392         instead of shimbun-server-internal;
4393         Use shimbun-current-group instead of shimbun-current-group-internal.
4394         (elmo-folder-plugged-p): Use shimbun-server instead of
4395         shimbun-server-internal.
4396         (elmo-folder-set-plugged): Ditto.
4397         (elmo-net-port-info): Ditto.
4398         (elmo-folder-check): Ditto.
4399         (elmo-folder-expand-msgdb-path): Ditto.
4400         (elmo-folder-list-subfolders): Ditto.
4401
4402 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4403
4404         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4405         Convert field-name to lower case.
4406         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4407
4408 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4409
4410         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4411         `message' and `error' take format string.
4412
4413 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4414
4415         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4416
4417 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4418
4419         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4420         recursive call (can't byte compile on emacs 20.7).
4421
4422 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4423
4424         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4425         (elmo-folder-list-message-entities): New API.
4426         (elmo-message-entity): Ditto.
4427         (elmo-message-entity-parent): Ditto.
4428         (elmo-folder-do-each-message-entity): Ditto.
4429         (elmo-message-entity-number): Ditto.
4430         (elmo-message-entity-field): Ditto.
4431         (elmo-message-entity-set-field): Ditto.
4432         (elmo-folder-count-flags): Ditto.
4433         (elmo-folder-length): Ditto.
4434
4435         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4436         not.
4437
4438         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4439         (elmo-msgdb-count-marks): Abolish.
4440         (elmo-msgdb-make-entity): Ditto.
4441         (elmo-msgdb-do-each-entity): Ditto.
4442         (elmo-msgdb-message-entity): New inline function.
4443         (elmo-msgdb-message-entity-field): Ditto.
4444         (elmo-msgdb-message-entity-set-field): Ditto.
4445         (elmo-msgdb-make-message-entity): New function.
4446
4447 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4448
4449         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4450         to flag. (All other related portions are changed.)
4451         (elmo-folder-msgdb-create): Likewise.
4452         (elmo-generic-folder-append-messages): Use flag-table instead of
4453         seen-list.
4454         (elmo-folder-move-messages): Removed redundant process.
4455         (elmo-folder-synchronize): Likewise.
4456
4457         * elmo-msgdb.el (elmo-flag-table-get): New function.
4458         (elmo-flag-table-save): Fixed.
4459         (elmo-msgdb-length): New inline function.
4460         (elmo-msgdb-flag-table): New function.
4461         (elmo-msgdb-mark): Add optional argument new.
4462         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4463         (elmo-msgdb-seen-list): Ditto.
4464         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4465
4466
4467 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4468
4469         * elmo.el (elmo-message-set-mark): Abolish.
4470         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4471         (All related portions are changed.)
4472
4473         * elmo-msgdb.el (toplevel): Added comment.
4474         (elmo-load-msgdb): Added 4th element `path'.
4475         (elmo-msgdb-append): Follow the change above.
4476         (elmo-msgdb-clear): Ditto.
4477         (elmo-msgdb-delete-msgs): Ditto.
4478         (elmo-msgdb-get-path): New inline function.
4479         (elmo-msgdb-set-path): Ditto.
4480         (elmo-flag-table-filename): New variable.
4481         (elmo-flag-table-load): New function.
4482         (elmo-flag-table-set): Ditto.
4483         (elmo-flag-table-save): Ditto.
4484         (elmo-msgdb-get-field-value): Abolish.
4485         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4486
4487 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4488
4489         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4490         the folder has been deleted successfully.
4491         * elmo-imap4.el (elmo-folder-delete): Ditto.
4492         * elmo-archive.el (elmo-folder-delete): Ditto.
4493         * elmo-localdir.el (elmo-folder-delete): Ditto.
4494         * elmo-maildir.el (elmo-folder-delete): Ditto.
4495
4496 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4497
4498         * elmo-util.el (elmo-string-member-ignore-case): New function.
4499         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4500         (elmo-imap4-fetch-callback-1-subr): Likewise.
4501
4502 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4503
4504         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4505         the case of the name attribute "\Noselect".
4506
4507 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4508
4509         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4510
4511         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4512         flist, is not always a member of onum-alist.
4513
4514 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4515
4516         * elmo-version.el (elmo-version): Up to 2.11.3.
4517
4518 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4519
4520         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4521         copied from localdir's one.
4522
4523         * elmo-pipe.el (elmo-folder-rename): New method, rename
4524         destination folder with leaving source folder as it is.
4525
4526 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4527
4528         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4529         replace-regexp.
4530
4531 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4532
4533         * elmo-version.el (elmo-version): Up to 2.11.2.
4534
4535 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4536
4537         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4538         shimbun-open in case of "@".
4539         (elmo-folder-open-internal): Cope with shimbun = nil case.
4540         (elmo-folder-plugged-p): Ditto.
4541         (elmo-folder-list-subfolders): Make list for "@/" group.
4542
4543 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4544
4545         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4546         mailbox (e.g. for %~/something).
4547
4548 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4549
4550         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4551         Replace nested conditional with guard clauses.
4552
4553 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4554
4555         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4556         error [wl:11327].
4557
4558         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4559         print-depth.
4560
4561 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4562
4563         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4564         Replace nested conditional with guard clauses.
4565
4566 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4567
4568         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4569         (elmo-passwd-alist-save): Ditto.
4570         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4571
4572 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4573
4574         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4575         dir-name only if it is absolute path.
4576         (TODO: distinguish +/something and +something)
4577
4578 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4579
4580         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4581         path for "+~/something".
4582
4583 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4584
4585         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4586         as non-directory, cause error before rename-file.
4587         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4588         apropriately, mimic localdir's one.
4589         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4590
4591 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4592
4593         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4594
4595 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4596
4597         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4598
4599         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4600         
4601         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4602         is included in the global-mark or not.
4603
4604 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4605
4606         * utf7.el (toplevel): Avoid error when the function
4607         find-coding-system does not exist.
4608
4609 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4610
4611         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4612         cache even if the folder is plugged.
4613         (elmo-nntp-search-primitive): Do nothing when body search is
4614         invoked (although it is not used by the change above).
4615         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4616
4617 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4618
4619         * elmo-version.el (elmo-version): Up to 2.11.1.
4620
4621 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4622
4623         * elmo-archive.el: Specify charset.
4624
4625 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4626
4627         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4628         process buffer lives or not.
4629
4630         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4631         while flushing queues (It causes infinite loop).
4632
4633 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4634
4635         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4636
4637 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4638
4639         * utf7.el (toplevel): Check the ucs features dynamically.
4640         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4641
4642         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4643         folder is creatabe or not if it already exists.
4644
4645 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4646
4647         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4648
4649         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4650
4651         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4652         (elmo-imap4-read-response): Take care of garbage response.
4653
4654 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4655
4656         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4657         just return nil instead of error.
4658
4659 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4660
4661         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4662         search-key is "body".
4663
4664 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4665
4666         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4667         of elmo-string-matched-assoc to use match-data.
4668         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4669
4670 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4671
4672         * elmo-split.el (elmo-split->): New function.
4673         (elmo-split-<): Ditto.
4674
4675 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4676
4677         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4678         workaround for invalid message-id.
4679
4680 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4681
4682         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4683         return normal pop3 session or pop3 biff session.
4684
4685 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4686
4687         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4688         info part to the cur files when the new files already have it.
4689         (Adviced by Jared Rhine <jared@wordzoo.com>)
4690
4691 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4692
4693         * elmo-split.el (elmo-split-default-action): New variable.
4694         (elmo-split-subr): Use it if all other conditions are passed.
4695         Extend `fname' and rename it as `action'. (implemented
4696         Teranishi-san's idea in [wl:10800])
4697
4698 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4699
4700         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4701         * elmo-util.el: Ditto.
4702
4703 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4704
4705         * elmo.el (elmo-message-accessible-p): Renamed from
4706         elmo-message-cached-p and rewritten.
4707
4708 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4709
4710         * elmo.el (elmo-folder-list-flagged): New generic function.
4711         (elmo-folder-list-importants): New implementation.
4712         (elmo-folder-list-answereds): Ditto.
4713         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4714         Added 'digest'.
4715         (elmo-message-cached-p): New function.
4716         (elmo-message-set-flag): Ditto (no content).
4717         (elmo-message-unset-flag): Ditto.
4718         (elmo-folder-list-messages-mark-match): Abolish.
4719
4720         * elmo-util.el (elmo-regexp-opt): New function.
4721
4722         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4723         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4724         Added 'digest'.
4725         (elmo-msgdb-list-flagged): New function.
4726
4727         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4728         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4729         Added 'digest'.
4730
4731         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4732
4733 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4734
4735         * elmo-version.el (elmo-version): Up to 2.11.0.
4736
4737 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4738
4739         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4740         `elmo-file-cache-exists-p'; use proper mark that depends on
4741         `use-cache'.
4742         (elmo-msgdb-unset-flag): Ditto.
4743         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4744
4745         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4746         with 4th argument `use-cache'.
4747
4748 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4749
4750         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4751         (elmo-folder-mark-as-important): Ditto.
4752         (elmo-folder-unmark-read): Ditto.
4753         (elmo-folder-mark-as-read): Ditto.
4754         (elmo-folder-unmark-answered): Ditto.
4755         (elmo-folder-mark-as-answered): Ditto.
4756
4757         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4758         message status.
4759         (elmo-msgdb-mark): Likewise.
4760         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4761         (elmo-msgdb-unset-flag): Likewise.
4762
4763         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4764
4765 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4766
4767         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4768         `last:' filter.
4769
4770 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4771
4772         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4773         set spool-length to 0.
4774
4775 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4776
4777         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4778         (elmo-dop-queue-flush): Fixed last change.
4779
4780 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4781
4782         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4783         if require-msgdb slot is nil.
4784         (elmo-folder-list-importants): Likewise.
4785
4786 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4787
4788         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4789         mark is changed.
4790
4791         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4792         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4793         is changed.
4794
4795 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4796
4797         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4798
4799 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4800
4801         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4802
4803         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4804
4805 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4806
4807         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4808         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4809
4810 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4811
4812         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4813         the problem reported by Sean Rima [wl-en:180].
4814
4815 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4816
4817         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4818
4819         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4820
4821         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4822
4823         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4824
4825         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4826
4827         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4828
4829         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4830
4831 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4832
4833         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4834         status number.
4835
4836 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4837
4838         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4839         (elmo-folder-mark-as-read): Follow the API change.
4840         (elmo-message-set-cached): New function.
4841
4842         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4843
4844         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4845
4846         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4847         (elmo-folder-mark-as-important): Ditto.
4848         (elmo-folder-unmark-read): Ditto.
4849         (elmo-folder-mark-as-read): Ditto.
4850         (elmo-folder-unmark-answered): Ditto.
4851         (elmo-folder-mark-as-answered): Ditto.
4852
4853         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4854         (elmo-folder-unmark-important): Ditto.
4855         (elmo-folder-mark-as-read): Ditto.
4856         (elmo-folder-unmark-read): Ditto.
4857         (elmo-folder-mark-as-answered): Ditto.
4858         (elmo-folder-unmark-answered): Ditto.
4859
4860         * elmo-mark.el (toplevel): Removed some mark method definitions.
4861
4862         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4863         (elmo-map-folder-mark-as-answered): Ditto.
4864         (elmo-folder-unmark-important): Add :before qualifier.
4865         (elmo-folder-mark-as-important): Ditto.
4866         (elmo-folder-unmark-read): Ditto.
4867         (elmo-folder-mark-as-read): Ditto.
4868         (elmo-folder-unmark-answered): Define.
4869         (elmo-folder-mark-as-answered): Ditto.
4870
4871         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4872         (elmo-map-folder-unmark-answered): Ditto.
4873
4874         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4875
4876         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4877         (elmo-folder-mark-as-important): Ditto.
4878         (elmo-folder-unmark-read): Ditto.
4879         (elmo-folder-mark-as-read): Ditto.
4880         (elmo-folder-unmark-answered): Ditto.
4881         (elmo-folder-mark-as-answered): Ditto.
4882
4883         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4884         `mark'; evaluate mark condition.
4885         (elmo-msgdb-match-condition-internal): New function.
4886         (elmo-msgdb-match-condition): Call it; changed argument.
4887
4888         * elmo.el (elmo-folder-search): Follow the API change on
4889         `elmo-msgdb-match-condition'.
4890
4891 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4892
4893         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4894         original mark is non-nil.
4895
4896 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4897
4898         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4899         (elmo-map-folder-list-answereds): New method.
4900         (elmo-folder-list-unreads): Add :around qualifier.
4901         (elmo-folder-list-importants): Ditto.
4902         (elmo-folder-list-answereds): Ditto.
4903
4904 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4905
4906         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4907
4908         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4909         method if msgdb is not required.
4910         (elmo-filter-folder-list-importants): Don't treat global-mark.
4911
4912         * elmo.el (elmo-folder-list-importants): Ditto.
4913
4914         * elmo-net.el (elmo-folder-list-importants): Ditto.
4915
4916         * elmo-map.el (elmo-folder-list-importants): Ditto.
4917
4918         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4919
4920         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4921         (elmo-imap4-folder-list-any-plugged): New function.
4922         (elmo-imap4-search-internal-primitive): Use it.
4923
4924         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4925         only when require-msgdb slot is non-nil.
4926         (elmo-folder-close): Clear target folder's msgdb.
4927
4928 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4929
4930         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4931         (elmo-pop3-msgdb-create-by-header): Ditto.
4932         (elmo-pop3-msgdb-create-message): Ditto.
4933
4934         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4935
4936         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4937
4938         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4939
4940         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4941         (elmo-folder-msgdb-create): Ditto.
4942         (elmo-nntp-folder-msgdb-create): Ditto.
4943         (elmo-nntp-msgdb-create-by-header): Ditto.
4944         (elmo-nntp-msgdb-create-message): Ditto.
4945         (elmo-folder-list-unreads): Define.
4946
4947         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4948         (elmo-folder-append-messages): Ditto.
4949         (elmo-folder-list-unreads): Define.
4950         (elmo-folder-list-importants): Ditto.
4951         (elmo-folder-list-answereds): Ditto.
4952
4953         * elmo-net.el (elmo-folder-list-unreads): Define.
4954         (elmo-folder-list-importants): Ditto.
4955         (elmo-folder-list-answereds): Ditto.
4956         (elmo-folder-list-answereds-plugged): Ditto.
4957         (elmo-folder-msgdb-create): Follow the API change.
4958         (elmo-folder-msgdb-create-unplugged): Ditto.
4959         (elmo-folder-unmark-answered): Define.
4960         (elmo-folder-mark-as-answered-unplugged): Ditto.
4961         (elmo-folder-unmark-answered-unplugged): Ditto.
4962
4963         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4964         (elmo-msgdb-unread-uncached-mark): Ditto.
4965         (elmo-msgdb-unread-cached-mark): Ditto.
4966         (elmo-msgdb-read-uncached-mark): Ditto.
4967         (elmo-msgdb-answered-cached-mark): Ditto.
4968         (elmo-msgdb-answered-uncached-mark): Ditto.
4969         (elmo-msgdb-important-mark): Ditto.
4970         (elmo-msgdb-set-mark): Rewrite.
4971         (elmo-msgdb-count-marks): Rewrite.
4972         (elmo-msgdb-mark-alist-set): Abolish.
4973         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4974         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4975
4976         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4977         (elmo-folder-close): Define.
4978         (elmo-folder-msgdb-create): Follow the API change.
4979         (elmo-folder-list-unreads): Rewrite.
4980         (elmo-folder-mark-as-important): Ditto.
4981         (elmo-folder-unmark-important): Ditto.
4982         (elmo-folder-mark-as-read): Ditto.
4983         (elmo-folder-unmark-read): Ditto.
4984         (elmo-folder-mark-as-answered): Define.
4985         (elmo-folder-unmark-answered): Ditto.
4986
4987         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4988         (elmo-folder-append-messages): Ditto.
4989
4990         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4991
4992         * elmo-map.el (elmo-folder-list-unreads): Ditto.
4993         (elmo-folder-list-importants): Ditto.
4994
4995         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4996         (elmo-folder-append-messages): Ditto.
4997
4998         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4999         change.
5000         (elmo-folder-msgdb-create-plugged): Ditto.
5001         (elmo-folder-append-messages): Ditto.
5002         (elmo-folder-list-answereds-plugged): Define.
5003         (elmo-imap4-search-internal-primitive): Add `mark' processing.
5004         (elmo-folder-unmark-answered-plugged): Define.
5005         (elmo-folder-mark-as-answered-plugged): Ditto.
5006         (elmo-folder-search-requires-msgdb-p): Ditto.
5007
5008         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
5009         (elmo-folder-initialize): Set it.
5010         (elmo-folder-msgdb): Define.
5011         (elmo-folder-check): Call elmo-folder-synchronize.
5012         (elmo-folder-close): Define.
5013         (elmo-folder-commit): Ditto.
5014         (elmo-folder-msgdb-create): Rewrite.
5015         (elmo-folder-list-unreads): Ditto.
5016         (elmo-folder-list-importants): Ditto.
5017         (elmo-folder-mark-as-read): Ditto.
5018         (elmo-folder-unmark-read): Ditto.
5019         (elmo-folder-mark-as-important): Ditto.
5020         (elmo-folder-unmark-important): Ditto.
5021         (elmo-folder-mark-as-answered): Define.
5022         (elmo-folder-unmark-answered): Ditto.
5023
5024         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
5025         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
5026         (elmo-dop-queue-method-name-alist): Likewise.
5027         (elmo-folder-mark-as-answered-dop): New inline function.
5028         (elmo-folder-unmark-answered-dop): Ditto.
5029         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
5030
5031         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
5032         (elmo-folder-msgdb-create): Ditto.
5033         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
5034         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
5035         (elmo-archive-parse-mmdf): Ditto.
5036
5037         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
5038         (elmo-folder-list-unreads-internal): Ditto.
5039
5040         * elmo.el (elmo-folder-msgdb): Define as generic function.
5041         (elmo-folder-list-messages): Added argument `in-msgdb'.
5042         (elmo-folder-list-unreads): Define as generic function.
5043         (elmo-folder-list-importants): Ditto.
5044         (elmo-folder-list-answereds): Ditto.
5045         (elmo-folder-list-messages-with-global-mark): New function.
5046         (elmo-folder-msgdb-create): Removed mark arguments.
5047         (elmo-folder-unmark-answered): New generic function.
5048         (elmo-folder-mark-as-answered): Ditto.
5049         (elmo-folder-append-messages): Removed argunment `unread-marks'
5050         (elmo-folder-list-unreads-internal): Abolish.
5051         (elmo-folder-list-importants-internal): Ditto.
5052         (elmo-folder-search-requires-msgdb-p): New generic function.
5053         (elmo-folder-search-requires-msgdb-p-internal): New function.
5054         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
5055         elmo-msgdb-load.
5056         (elmo-folder-search-fast): Added key 'mark'.
5057         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
5058         instead of unread-marks argument.
5059         (elmo-folder-move-messages): Removed argunment `unread-marks'
5060         (elmo-folder-unmark-important): Define.
5061         (elmo-folder-mark-as-important): Ditto.
5062         (elmo-folder-unmark-read): Ditto.
5063         (elmo-folder-mark-as-read): Ditto.
5064         (elmo-folder-unmark-answered): Ditto.
5065         (elmo-folder-mark-as-answered): Ditto.
5066         (elmo-folder-replace-marks): Abolish.
5067         (elmo-generic-folder-append-msgdb): Append msgdb before checking
5068         duplicates.
5069         (elmo-folder-synchronize): Removed mark arguments;
5070         return crosspost only number.
5071
5072 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5073
5074         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
5075         Remove redundunt connectivity check.
5076
5077 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5078
5079         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
5080         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
5081
5082 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
5083
5084         * pldap.el (ldap-decode-string): Return string as-is if
5085         `ldap-coding-system' is nil.
5086         (ldap-encode-string): Ditto.
5087         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
5088         (ldap-default-host): Fixed docstring.
5089
5090 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
5091
5092         * elmo-util.el (elmo-warning): Define as a macro which uses
5093         `display-warning' if it is defined as a function.
5094
5095         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
5096         (elmo-split-equal): Use it.
5097         (elmo-split-match): Ditto.
5098         (elmo-split-message-entity): New buffer-local variable.
5099         (elmo-split-subr): Set it.
5100
5101         * elmo-version.el (elmo-version): Up to 2.9.15.
5102
5103 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
5104
5105         * elmo-imap4.el (elmo-network-initialize-session):
5106         Check capability after starttls.
5107
5108 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
5109
5110         * elmo-util.el (elmo-list-delete): Added optional argument
5111         DELETE-FUNCTION.
5112
5113         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
5114
5115         * elmo-util.el (elmo-warning): Ignore errors while recenter.
5116
5117         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
5118
5119         * elmo-imap4.el (elmo-folder-initialize): Don't use
5120         elmo-imap4-default-mailbox.
5121
5122 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5123
5124         * elmo-split.el (toplevel): Use `product-provide'.
5125         (elmo-split): Checkdoc.
5126
5127 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
5128
5129         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
5130         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
5131         the function `elmo-imap4-debug-1'.
5132
5133 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5134
5135         * elmo-split.el (elmo-split): Moved to run hooks and to show
5136         message from elmo-split-subr.
5137         (elmo-split-subr): Follow the change above.
5138
5139         * elmo-split.el (elmo-split-subr): New function (renamed from
5140         elmo-split-subr).
5141         (elmo-split): Changed to call elmo-split-subr by element of
5142         elmo-split-folder.
5143         (elmo-split-folder): Changed customization type to choice.
5144
5145 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5146
5147         * elmo-split.el (elmo-split-and): Fixed condition.
5148
5149 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5150
5151         * elmo-split.el: New file.
5152         (elmo-split): Fixed logic.
5153         Display "Test:" instead of "Folder:" when reharsal.
5154
5155         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
5156         explicitly.
5157
5158         * elmo-version.el (elmo-version): Up to 2.9.14.
5159
5160         * elmo-util.el (elmo-expand-newtext): New function (renamed from
5161         wl-expand-newtext).
5162
5163 2002-06-10  Kenichi Sato <ksato@sonycom.com>
5164
5165         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
5166         message with no message-id field.
5167
5168 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
5169
5170         * elmo-version.el (elmo-version): Up to 2.9.13.
5171
5172         * elmo-dop.el (elmo-folder-status-dop): Fix.
5173
5174 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
5175
5176         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
5177
5178         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
5179         changing default value of default-mime-charset.
5180         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
5181
5182         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
5183
5184         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
5185         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
5186         instead of elmo-dop-queue-method-name-alist to check merging queue.
5187         (elmo-folder-delete-messages-dop): Delete from queue if negative
5188         message number.
5189         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
5190         file is already removed.
5191
5192 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
5193
5194         * elmo-vars.el: Bind colon keywords for old Emacsen.
5195
5196 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5197
5198         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
5199         against non-exsisting charset.
5200
5201 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
5202
5203         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
5204         Use eword-decode-and-unfold-unstructured-field-body.
5205
5206         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
5207         (elmo-msgdb-create-overview-from-buffer): Use document charset if
5208         exists to decode raw subject string.
5209         (toplevel): Require 'mime.
5210
5211         * elmo-version.el (elmo-version): Up to 2.9.12.
5212
5213 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
5214
5215         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
5216         (elmo-msgdb-set-mark): Ditto.
5217
5218         * elmo-version.el (elmo-version): Up to 2.9.11.
5219
5220 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
5221
5222         * elmo-util.el (elmo-delete-match-files): New function.
5223
5224         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
5225         instead of elmo-delete-directory.
5226
5227         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
5228         elmo-hash-minimun-size as 63.
5229
5230         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
5231         elmo-diff-unread is nil.
5232
5233         * elmo-imap4.el (elmo-folder-open): Fix.
5234
5235         * elmo.el (elmo-message-mark): Rewrite.
5236         (elmo-message-field): Ditto.
5237         (elmo-message-set-mark): Ditto.
5238         (elmo-folder-replace-marks): New function.
5239         (elmo-generic-folder-append-msgdb): Removed third argument for
5240         elmo-msgdb-append.
5241         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
5242         (elmo-msgdb-load): New implementation.
5243
5244         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
5245
5246         * elmo-util.el (elmo-list-insert): New implementation.
5247
5248         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
5249         argument for elmo-msgdb-append.
5250         
5251
5252         * elmo-msgdb.el (elmo-load-msgdb): New function.
5253         (elmo-make-msgdb): Ditto.
5254         (elmo-msgdb-get-index): New inline function.
5255         (elmo-msgdb-set-index): Ditto.
5256         (elmo-msgdb-get-entity-hashtb): Ditto.
5257         (elmo-msgdb-get-mark-hashtb): Ditto.
5258         (elmo-msgdb-get-mark): Ditto.
5259         (elmo-msgdb-set-mark): Ditto.
5260         (elmo-msgdb-count-marks): Ditto.
5261         (elmo-msgdb-get-number): Ditto.
5262         (elmo-msgdb-get-field): Ditto.
5263         (elmo-msgdb-seen-list): Ditto.
5264         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
5265         (elmo-msgdb-delete-msgs): Follow the changes above.
5266         (elmo-msgdb-overview-get-entity): Ditto.
5267         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
5268         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
5269         and rewritten.
5270         (elmo-msgdb-make-index): Likewise.
5271         (elmo-msgdb-append): Removed third argument.
5272         (elmo-msgdb-clear): Clear index as nil.
5273         (elmo-folder-set-info-hashtb): Removed.
5274         (elmo-folder-set-info-max-by-numdb): Ditto.
5275         (elmo-folder-info-make-hashtb): Ditto.
5276
5277         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
5278
5279         * elmo-map.el (elmo-folder-pack-number): Ditto.
5280
5281 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
5282
5283         * elmo-version.el (elmo-version): Up to 2.9.10.
5284
5285         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
5286
5287         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
5288
5289 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
5290
5291         * elmo-utils.el (elmo-make-directory): Add option.
5292         Default file mode is 700.
5293
5294 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5295
5296         * elmo-shimbun.el (elmo-folder-local-p): Defined.
5297
5298 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
5299
5300         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
5301         mime-charset.
5302
5303         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
5304         and "smaller".
5305
5306 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5307
5308         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5309         (elmo-shimbun-folder-entity-hash): New function.
5310         (elmo-shimbun-folder-shimbun-header): Ditto.
5311         (elmo-shimbun-entity-to-header): Ditto.
5312         (elmo-shimbun-msgdb-to-headers): Removed.
5313         (elmo-shimbun-folder-setup): Ditto.
5314         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5315         for hash key.
5316         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5317         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5318         Removed useless local bind.
5319         (elmo-folder-open-internal): Don't call
5320         `elmo-shimbun-folder-setup'.
5321         (elmo-folder-close-internal): Clear entity-hash slot.
5322         (elmo-folder-clear): Ditto.
5323         (elmo-shimbun-msgdb-create-entity): Use
5324         `elmo-shimbun-folder-shimbun-header'.
5325         (elmo-map-message-fetch): Ditto.
5326         (elmo-shimbun-update-overview): Use overview entity instead of
5327         shimbun header to lookup id by references.
5328         (elmo-map-folder-list-message-locations): Use not only headers but
5329         also overviews to list locations.
5330
5331 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5332
5333         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5334         msgdb path.
5335
5336         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5337
5338 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5339
5340         * elmo-util.el (elmo-read-search-condition-internal): Give default
5341         value for date.
5342
5343 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5344
5345         * elmo-util.el (elmo-condition-parse-search-value): Accept
5346         YYYY-MM-DD format to search.
5347         * elmo-date.el (elmo-date-get-datevec): Likewise.
5348
5349 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5350
5351         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5352         debugging code.
5353
5354 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5355
5356         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5357         from t.
5358
5359         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5360
5361         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5362         case from `elmo-folder-exists-p'.
5363         (elmo-folder-exists-p): Removed.
5364         (elmo-folder-creatable-p) Ditto.
5365
5366         * elmo-net.el (elmo-folder-create): Defined.
5367         (elmo-folder-create-unplugged): New function.
5368         (elmo-folder-exists-p): Changed default value to nil from t.
5369
5370         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5371         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5372
5373         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5374         `elmo-create-folder-dop' and append queue
5375         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5376         (elmo-folder-create-dop-delayed): New function.
5377
5378         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5379
5380         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5381
5382         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5383         (elmo-folder-writable-p) : Ditto.
5384
5385         * elmo-version.el (elmo-version): Up to 2.9.9.
5386
5387 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5388
5389         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5390         `elmo-message-use-cache-p' returns nil.
5391         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5392         (ignore cache file and refer the substance in local folders)
5393
5394 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5395
5396         * elmo-version.el (elmo-version): Up to 2.9.8.
5397
5398 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5399
5400         * elmo-version.el (elmo-version): Up to 2.9.7.
5401
5402         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5403
5404 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5405
5406         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5407
5408 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5409
5410         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5411         from --early.
5412         (elmo-map-folder-list-message-locations): Reverse location list.
5413
5414 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5415
5416         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5417
5418 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5419
5420         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5421         as a key.
5422         (elmo-nntp-folder-list-subfolders): Follow the change above.
5423
5424 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5425
5426         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5427         name if authentication type is specified.
5428
5429 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5430
5431         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5432         variable.
5433         (elmo-default-nntp-stream-type): Ditto.
5434         (elmo-default-pop3-stream-type): Ditto.
5435
5436 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5437
5438         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5439
5440 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5441
5442         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5443         elmo-vars.el.
5444         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5445
5446         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5447         (elmo-maildir-folder-path): Ditto.
5448         (elmo-maildir-list): Ditto (abolished).
5449
5450 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5451
5452         * elmo-version.el (elmo-version): Up to 2.9.6.
5453
5454 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5455
5456         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5457         (elmo-maildir-folder-path): Ditto.
5458         (elmo-msgdb-directory): Ditto.
5459         (elmo-passwd-life-time): Ditto.
5460         (elmo-msgdb-extra-fields): Ditto.
5461         (elmo-enable-disconnected-operation): Ditto.
5462
5463 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5464
5465         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5466         other choices.
5467         (elmo-pop3-default-authenticate-type): Ditto.
5468
5469 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5470
5471         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5472         choices for custom.
5473         (elmo-pop3-default-authenticate-type): Ditto.
5474
5475 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5476
5477         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5478         mailbox to new-folder.
5479
5480 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5481
5482         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5483         less than new, set new as unread.
5484
5485         * elmo-util.el (elmo-string): Don't put text-property if nil.
5486
5487 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5488
5489         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5490         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5491
5492 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5493
5494         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5495         is nil on `completing-read'.
5496
5497 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5498
5499         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5500         for namespace part.
5501         (elmo-imap4-parse-namespace-subr): Ditto.
5502         (elmo-folder-list-subfolders): Append a delimiter when the specified
5503         folder path is a root with namespace and does not end with delimiter.
5504
5505 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5506
5507         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5508         was used.
5509
5510 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5511
5512         * elmo-util.el (elmo-save-buffer): The first argument of message
5513         is a format control string.
5514
5515 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5516
5517         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5518         `elmo-folder-diff').
5519         (elmo-diff-unread): Likewise.
5520
5521 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5522
5523         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5524         is t on `completing-read'.
5525
5526 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5527
5528         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5529         method of target folder with self mark-alist if MARK-ALIST is nil.
5530
5531 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5532
5533         * elmo-version.el (elmo-version): Up to 2.9.5.
5534
5535 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5536
5537         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5538         (elmo-dop-merge-funcs): Remove.
5539
5540 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5541
5542         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5543         Return t if PATH is directory, too.
5544         Use `dolist' instead of while loop.
5545
5546 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5547
5548         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5549         is deleted.
5550
5551 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5552
5553         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5554         return value to t.
5555         (elmo-folder-list-messages-unplugged): Return t if
5556         elmo-enable-disconnected-operation is nil.
5557
5558         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5559         `elmo-folder-list-messages-internal'.
5560
5561 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5562
5563         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5564         Change to looking-at `[23][0-9]+'.
5565         (elmo-network-initialize-session): Use 'error-msg'
5566         * elmo-net.el (elmo-network-open-session): Set unplugged
5567         if elmo-network-initialize-session returns 'elmo-open-err.
5568
5569 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5570
5571         * elmo-version.el (elmo-version): Up to 2.9.4.
5572
5573 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5574
5575         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5576         `elmo-folder-list-messages-internal'.
5577
5578 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5579
5580         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5581         (elmo-message-match-condition): New method.
5582         (elmo-folder-search-fast): New inline function.
5583         (elmo-msgdb-search): Removed.
5584
5585         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5586         target folder if it is unplugged.
5587         (elmo-folder-list-messages-internal): Return t if target folder is
5588         unplugged and itself is persistent; In this case, use list be
5589         searched already.
5590
5591         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5592         (elmo-msgdb-search-internal-primitive): Ditto.
5593         (elmo-msgdb-match-condition): New function.
5594         (elmo-msgdb-match-condition-primitive): Ditto.
5595
5596         * elmo-util.el (elmo-filter-condition-p): New macro.
5597
5598         * elmo-cache.el (elmo-folder-search): Removed.
5599
5600         * elmo-localdir.el (elmo-folder-search): Ditto.
5601
5602         * elmo-maildir.el (elmo-folder-search): Ditto.
5603
5604         * elmo-mark.el (elmo-folder-search): Ditto.
5605
5606         * elmo-nmz.el (elmo-folder-search): Ditto.
5607
5608         * elmo-sendlog.el (elmo-folder-search): Ditto.
5609
5610         * elmo-shimbun.el (elmo-folder-search): Ditto.
5611
5612         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5613         if folder is unplugged.
5614
5615         * elmo-nntp.el (elmo-folder-search): Likewise.
5616         (elmo-nntp-search-internal): New function.
5617
5618         * elmo-version.el (elmo-version): Up to 2.9.3.
5619
5620 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5621
5622         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5623
5624 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5625
5626         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5627
5628 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5629
5630         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5631
5632 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5633
5634         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5635         (elmo-map-folder-list-message-locations): Do drive letter conversion
5636         on Windows environment.
5637         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5638         (elmo-map-message-fetch): Ditto.
5639
5640 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5641
5642         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5643         (elmo-network-initialize-session): Ditto.
5644
5645 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5646
5647         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5648
5649         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5650
5651         * elmo-util.el (elmo-progress-clear): Ditto.
5652
5653         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5654         `DD-Mon-YYYY' type date.
5655
5656 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5657
5658         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5659         `elmo-date-make-sortable-string' instead of
5660         `timezone-make-date-sortable'.
5661
5662         * elmo-date.el (elmo-date-make-sortable-string): Use
5663         `timezone-make-time-string'.
5664
5665 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5666
5667         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5668
5669         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5670         `since'; Fix timezone.
5671
5672         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5673
5674         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5675
5676 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5677
5678         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5679
5680 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5681
5682         * elmo.el (elmo-generic-folder-append-messages): Make
5683         fetch-strategy with `use-cache' as 'maybe. Check return value of
5684         `elmo-message-fetch'.
5685         (elmo-message-fetch): Return return value of
5686         `elmo-message-fetch-with-cache-process'.
5687         (elmo-message-fetch-with-cache-process): Return non-nil if
5688         fetching was succeed. Load cache when fetching was failed and
5689         fetch-strategy-use-cache is 'maybe.
5690
5691         * elmo-util.el (elmo-file-cache-load): New function.
5692
5693         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5694         defun.
5695
5696         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5697         non-nil if fetching was succeed.
5698
5699         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5700
5701         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5702
5703         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5704         (elmo-message-fetch-with-cache-process): Likwise.
5705
5706         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5707
5708         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5709
5710         * elmo-version.el (elmo-version): Up to 2.9.2.
5711
5712 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5713
5714         * elmo.el (elmo-folder-delete): Delete msgdb path.
5715
5716         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5717
5718         * elmo-maildir.el (elmo-folder-delete): Ditto.
5719
5720         * elmo-localdir.el (elmo-folder-delete): Ditto.
5721
5722         * elmo-imap4.el (elmo-folder-delete): Ditto.
5723
5724 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5725
5726         * elmo.el (luna-define-class): Added `biff' slot.
5727
5728         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5729         (elmo-pop3-debug-inhibit-logging): Abolished.
5730         (elmo-network-close-session): Eliminated needless let.
5731         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5732         (elmo-pop3-send-command): Added `no-log' argument.
5733         (elmo-pop3-process-filter): Use `with-current-buffer'.
5734         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5735         if login failure.
5736         (elmo-pop3-auth-apop): Likewise.
5737         (elmo-network-authenticate-session): Likewise.
5738
5739         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5740         if biff folder.
5741
5742         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5743         string to determine protocol.
5744         (elmo-network-session-name-prefix): Abolished.
5745         (elmo-network-session-cache-key): Follow the change above.
5746         (elmo-network-open-session): Ditto.
5747
5748         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5749         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5750
5751         * elmo-version.el (elmo-version): Up to 2.9.1.
5752
5753         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5754         unmatch condition checking.
5755
5756         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5757         condition.
5758
5759 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5760
5761         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5762
5763 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5764
5765         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5766         test for while loop to execute at least one SEARCH command.
5767
5768 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5769
5770         * elmo-version.el (elmo-version): Up to 2.9.0.
5771
5772 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5773
5774         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5775         (elmo-archive-folder-path): Define.
5776         (elmo-folder-initialize): Setup `dir-name' slot.
5777         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5778         Use `dir-name' as prefix of each subfolders.
5779         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5780
5781 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5782
5783         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5784         (elmo-pipe-folder-list-target-messages): New internal function.
5785         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5786         `killed-list'.
5787         (elmo-pipe-folder-copied-list-load): New function.
5788         (elmo-pipe-folder-copied-list-save): Ditto.
5789         (elmo-folder-open-internal): Follow the change above.
5790         (elmo-folder-status): Fixed for copy.
5791
5792 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5793
5794         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5795
5796 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5797
5798         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5799         elmo-copy-file instead of elmo-add-name-to-file.
5800
5801         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5802
5803         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5804         "file://..." index.
5805
5806         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5807         of accept-process-output as 1.
5808         (elmo-pop3-read-contents): Ditto.
5809         (elmo-pop3-read-body): Ditto.
5810
5811 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5812
5813         * elmo-version.el (product-version-as-string): Remove define.
5814
5815 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5816
5817         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5818         (elmo-imap4-copy-messages): Chop number set using
5819         `elmo-imap4-number-set-chop-length'.
5820         (elmo-imap4-set-flag): Ditto.
5821         (elmo-imap4-search-internal-primitive): Ditto.
5822
5823 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5824
5825         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5826         `elmo-folder-make-temp-dir'
5827
5828         * elmo-vars.el (elmo-cache-directory): New variable.
5829         (elmo-cache-dir): Abolished.
5830         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5831
5832         * elmo-version.el (elmo-version): Up to 2.7.7.
5833
5834 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5835
5836         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5837         defcustom; Set default value as t.
5838
5839 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5840
5841         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5842         (ldap-search-program-arguments): Changed default value.
5843         (ldap-search-basic): Accept exit status 4.
5844         (ldap/field-body): Parse options.
5845         (ldap/collect-field): Ditto.
5846         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5847
5848         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5849         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5850         (elmo-imap4-accept-ok): Ditto.
5851         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5852         'notify-bye, only BYE error is reported.
5853         (elmo-folder-exists-p-plugged): Set no-error argument of
5854         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5855
5856         * elmo.el (elmo-imap4-bye-error): Changed message.
5857
5858         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5859         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5860         queues (It causes infinite loop).
5861
5862 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5863
5864         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5865         (RECENT UNSEEN MESSAGES) extension.
5866
5867 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5868
5869         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5870         Check number of overview fields.
5871
5872 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5873
5874         * elmo.el (elmo-folder-confirm-appends): Changed message.
5875         (elmo-folder-confirm-appends): Ditto.
5876
5877         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5878         `with-temp-buffer'.
5879         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5880
5881 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5882
5883         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5884         of elmo-folder-update-threshold is nil, which can be set by
5885         wl-summary-update-confirm-threshold.
5886
5887 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5888
5889         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5890         (elmo-nmz-index-alias-alist): Ditto.
5891         (elmo-map-folder-list-message-locations): Follow the change above.
5892
5893 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5894
5895         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5896
5897         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5898
5899         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5900
5901         * elmo-util.el (elmo-read): Ditto.
5902         (elmo-display-error): Ditto.
5903
5904         * elmo-vars.el (elmo-date-match): Ditto.
5905
5906         * pldap.el (ldap-coding-system): Ditto.
5907
5908         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5909         `elmo-inhibit-number-mapping' as nil.
5910
5911 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5912
5913         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5914         space delimiter for list response.
5915
5916 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5917
5918         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5919
5920 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5921
5922         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5923         (elmo-map-message-fetch): Fix.
5924         * elmo-map.el (elmo-folder-status): Fix for killed.
5925
5926 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5927
5928         * elmo-sendlog.el: New file.
5929         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5930
5931 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5932
5933         * acap.el (acap-logging-out): New buffer local variable.
5934         (acap-close): Set it.
5935         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5936         an error.
5937
5938 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5939
5940         * acap.el (acap-response-bye-p): New function.
5941         (acap-response-bye-message): Ditto.
5942         (acap-wait-for-response): If bye response is received, cause an error.
5943         (acap-parse-response): Make bye response when 'Bye' is received.
5944
5945 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5946
5947         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5948
5949 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5950
5951         * elmo-util.el (elmo-copy-file): Added argument
5952         `ok-if-already-exists'.
5953         (elmo-copy-file): Fixed typo.
5954
5955 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5956
5957         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5958
5959 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5960
5961         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5962
5963 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5964
5965         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5966         to killed-list.
5967
5968 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5969
5970         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5971         (elmo-folder-initialize): Fix for `copy'.
5972         (elmo-pipe-drain): Ditto.
5973         (elmo-folder-open-internal): Ditto.
5974         (elmo-folder-newsgroups): Fix.
5975
5976 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5977
5978         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5979         for each message.
5980
5981         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5982         recent value is returned from imap folder.
5983
5984         * elmo.el (elmo-folder-newsgroups): New generic function.
5985
5986         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5987         (elmo-folder-initialize): Set it.
5988         (elmo-folder-expand-msgdb-path): Use it.
5989         (elmo-folder-newsgroups): Define.
5990
5991         * elmo-filter.el (elmo-folder-newsgroups): Define.
5992
5993         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5994
5995         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5996
5997         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5998
5999 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6000
6001         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
6002         user option.
6003         (elmo-shimbun-header-extra-field): New inline function.
6004         (elmo-shimbun-header-set-extra-field): Ditto.
6005         (elmo-shimbun-folder-header-hash-setup): Ditto.
6006         (elmo-shimbun-update-overview): Ditto.
6007         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
6008         (elmo-shimbun-folder-setup): Use
6009         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
6010         (elmo-shimbun-get-headers): Ditto.
6011         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
6012         Insert `X-Shimbun-Id:' header if extra field is set.
6013         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
6014         field's value instead of `shimbun-header-id'.
6015
6016         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
6017         inline function.
6018         (elmo-msgdb-overview-entity-set-date): Ditto.
6019         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
6020
6021 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
6022
6023         * mmimap.el (mmimap-entity-section): Changed body node number from
6024         "0" to "1".
6025
6026 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6027
6028         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
6029         `elmo-folder-delete-messages'.
6030
6031         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
6032         (elmo-folder-initialize): Changed to expand alias into index path.
6033
6034         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
6035         `elmo-mime-insert-header-from-buffer' with 6th arg
6036         `sorted-fields'.
6037
6038 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
6039
6040         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
6041
6042         * elmo.el (elmo-diff-new): New inline function.
6043         (elmo-diff-unread): Ditto.
6044         (elmo-diff-all): Ditto.
6045
6046         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
6047         value from responseb.
6048         (elmo-imap4-folder-diff-plugged): Ditto.
6049         (elmo-imap4-server-diff-async): Added recent argument.
6050         (elmo-server-diff-async): Ditto.
6051         (elmo-imap4-folder-diff-plugged): Ditto.
6052
6053         * elmo-version.el (elmo-version): Up to 2.7.6.
6054
6055 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6056
6057         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
6058         in quoted-stirng.
6059
6060 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
6061
6062         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
6063
6064         * elmo-imap4.el (elmo-folder-initialize): Ditto.
6065
6066         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6067
6068         * elmo-multi.el (elmo-folder-initialize): Ditto.
6069
6070         * elmo-util.el (elmo-parse-token): New function.
6071         (elmo-parse-prefixed-element): Ditto.
6072
6073 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6074
6075         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
6076         delete process.
6077         (elmo-imap4-accept-ok): Ditto.
6078
6079 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6080
6081         * mmimap.el (mime-imap-entity-header-string): Don't check first
6082         element of node-id is `0' (Follow last change).
6083
6084 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6085
6086         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
6087         assigned irregular node-id to nested multipart section.
6088         (initialize-instance): Followed above change.
6089
6090 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6091
6092         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
6093         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
6094         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
6095         `elmo-shimbun-get-headers');
6096         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
6097         visible article on summary exists in headers).
6098         (elmo-map-message-fetch): Cause an error when folder is unplugged.
6099
6100 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
6101
6102         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
6103         definition.
6104
6105 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
6106
6107         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
6108
6109 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6110
6111         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
6112         header separator into loop condition.
6113
6114 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6115
6116         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
6117         Return duplicate folder if it has subfolder.
6118
6119 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6120
6121         * elmo.el (elmo-make-folder): Add folder name error check.
6122
6123         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
6124         (elmo-nntp-encode-group-string): New inline function.
6125         (elmo-nntp-decode-group-string): Ditto.
6126         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
6127         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
6128         Use `not' instead of `null';
6129         Use elmo-nntp-decode-group-string.
6130
6131         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
6132
6133         * elmo-version.el (elmo-version): Up to 2.7.5.
6134
6135 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6136
6137         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
6138         Hide progress gauge if `elmo-folder-move-messages' exits
6139         nonlocally.
6140
6141 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6142
6143         * elmo-imap4.el (elmo-folder-initialize): Use
6144         `elmo-imap4-encode-folder-string' for folder name.
6145
6146 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6147
6148         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
6149         `done'.
6150
6151 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6152
6153         * elmo-util.el (elmo-progress-counter-alist): New internal
6154         variable.
6155         (elmo-progress-counter-value): New macro.
6156         (elmo-progress-counter-all-value): Ditto.
6157         (elmo-progress-counter-format): Ditto.
6158         (elmo-progress-counter-set-value): Ditto.
6159         (elmo-progress-set): New function.
6160         (elmo-progress-clear): Ditto.
6161         (elmo-progress-notify): Ditto.
6162
6163         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
6164         counter.
6165
6166         * elmo.el (elmo-generic-folder-append-messages): Call
6167         `elmo-progress-notify'.
6168         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
6169
6170         * elmo-archive.el (elmo-folder-append-messages): Call
6171         `elmo-progress-notify'.
6172
6173         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
6174
6175         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
6176
6177         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
6178
6179 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6180
6181         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
6182         'Create'.
6183         (elmo-message-encache-dop): Added argument `read'.
6184
6185         * elmo-shimbun.el (elmo-message-encache): Ditto.
6186
6187         * elmo-net.el (elmo-message-encache): Ditto.
6188
6189         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
6190         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
6191         elmo-imap4-seen-messages.
6192         (elmo-folder-msgdb-create-plugged): Initialize
6193         elmo-imap4-seen-messages;
6194         Set seen mark on elmo-imap4-seen-messages.
6195
6196         * elmo-pipe.el (elmo-folder-message-file-p): Define.
6197
6198         * elmo.el (elmo-generic-folder-append-messages): Check return value of
6199         elmo-folder-append-buffer.
6200         (elmo-folder-encache): Added optional argument `read'.
6201         (elmo-message-encache): Ditto.
6202
6203         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
6204
6205         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
6206
6207         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
6208         if append buffer content succeds.
6209
6210 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6211
6212         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
6213         elmo-display-progress.
6214
6215         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
6216         Set 4th argument of mime-display-message.
6217         (elmo-mime-display-as-is): Ditto.
6218
6219 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
6220
6221         * elmo-nmz.el (toplevel): Require 'mime-edit.
6222         (elmo-nmz-content-type-alist): Abolished.
6223         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
6224         content is not a message.
6225         (elmo-map-message-fetch): Changed behavior exept for message content;
6226         Detect mime-charset automatically, Use `mime-find-file-type' to detect
6227         content-type, Add From: and Subject: field.
6228
6229 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6230
6231         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
6232         (elmo-map-message-fetch): Add `Content-Type' field if contents is
6233         not a message.
6234
6235 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6236
6237         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
6238         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
6239
6240         * elmo-archive.el (elmo-folder-writable-p): Defined.
6241
6242         * elmo-cache.el (elmo-folder-writable-p): Ditto.
6243
6244         * elmo-filter.el (elmo-folder-writable-p): Ditto.
6245
6246         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
6247
6248         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
6249
6250         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
6251
6252         * elmo-mark.el (elmo-folder-writable-p): Ditto.
6253
6254         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
6255
6256         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
6257
6258 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
6259
6260         * elmo-util.el (elmo-address-quote-specials): New function;
6261         Renamed from `wl-address-quote-specials'.
6262
6263 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6264
6265         * elmo-version.el (elmo-version): Up to 2.7.4.
6266
6267 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
6268
6269         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
6270
6271 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6272
6273         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
6274         both compile-time and run-time to avoid byte-compile warning.
6275
6276 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
6277
6278         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
6279
6280 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6281
6282         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
6283         option.
6284         (elmo-mime-display-as-is-internal): Use it.
6285
6286         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
6287         if `read-passwd' is not defined.
6288
6289 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6290
6291         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
6292         by original number.
6293         (elmo-folder-status): Call `elmo-folder-open-internal';
6294         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
6295         (elmo-folder-close-internal): Set location-alist as nil.
6296         (elmo-folder-clear): Define.
6297         (elmo-folder-check): Don't set location-alist as nil.
6298
6299         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
6300
6301 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
6302
6303         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
6304         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
6305
6306         * mmimap.el (mime-imap-entity::requested): New slot.
6307         (mime-imap-location-fetch-entity-p): New generic function.
6308         (mime-decode-parameters): Define using `defun-maybe'.
6309         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6310         content-type structure.
6311         (mime-entity-body): Return empty body if
6312         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6313
6314         * elmo.el (elmo-message-displaying): New variable.
6315
6316         * elmo-mime.el (elmo-mime-message-display): Bind
6317         elmo-message-displaying as t.
6318
6319         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6320
6321 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6322
6323         * acap.el (acap-open): erase buffer before starting network process.
6324         (acap-store): Rewrite.
6325
6326 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6327
6328         * elmo-imap4.el (elmo-imap4-default-mailbox,
6329         elmo-imap4-default-server
6330         elmo-imap4-default-authenticate-type,
6331         elmo-imap4-default-user,
6332         elmo-imap4-default-port,
6333         elmo-imap4-default-stream-type,
6334         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6335
6336         * elmo-pop3.el (elmo-pop3-default-user,
6337         elmo-pop3-default-server,
6338         elmo-pop3-default-authenticate-type,
6339         elmo-pop3-default-port,
6340         elmo-pop3-default-stream-type,
6341         elmo-pop3-stream-type-alist): Ditto.
6342
6343         * elmo-nntp.el (elmo-nntp-default-server,
6344         elmo-nntp-default-user,
6345         elmo-nntp-default-port,
6346         elmo-nntp-default-stream-type,
6347         elmo-nntp-stream-type-alist): Ditto.
6348
6349         * elmo-vars.el: Follow changes above.
6350         (elmo-setting): New custom group; added 'elmo-setting group to
6351         above variables.
6352
6353         * elmo-version.el (elmo-version): Up to 2.7.3.
6354
6355         * acap.el (acap-parse-response): Don't delete process when BYE
6356         response (It causes hang-up on slow network environment).
6357         (toplevel): Added comment.
6358
6359 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6360
6361         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6362
6363         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6364         parsing NIL.
6365         (acap-parse-return-metadata): Ditto.
6366
6367         * slp.el: New file.
6368         (toplevel): Fixed typo.
6369
6370         * acap.el: New file.
6371         (acap-network-stream-open): Show "Connecting..." message.
6372         (acap-parse-response): Fixed problem for BYE untagged response.
6373         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6374         (toplevel): Added tiny comments.
6375
6376 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6377
6378         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6379         space delimiter for uidl response.
6380
6381 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6382
6383         * elmo-vars.el (elmo-use-semi): Eliminated.
6384
6385         * elmo-util.el (elmo-string-assoc-all): New function.
6386
6387 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6388
6389         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6390         property 'mime-preview-situation for `mime-preview-quit'.
6391
6392 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6393
6394         * elmo.el (elmo-message-fetch-with-cache-process): Call
6395         elmo-message-fetch-internal instead of causing an error when fetch
6396         strategy is 'entire but only 'section cache is available.
6397
6398 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6399
6400         * elmo-version.el (elmo-version): Up to 2.7.2.
6401
6402         * elmo.el (elmo-generic-folder-append-messages): Make
6403         fetch-strategy with `use-cache'.
6404
6405         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6406         (elmo-dop-queue-method-name): New macro.
6407
6408 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6409
6410         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6411         unbalanced parenthesis.
6412
6413 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6414
6415         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6416
6417 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6418
6419         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6420         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6421
6422 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6423
6424         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6425         local variables.
6426
6427 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6428
6429         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6430         (elmo-message-use-cache-p): Define.
6431         (elmo-folder-msgdb-create): Treat cache.
6432
6433 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6434
6435         * elmo-nntp.el (elmo-network-initialize-session): Call
6436         `elmo-nntp-send-mode-reader'.
6437         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6438
6439 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6440
6441         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6442         alist.
6443         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6444         assoc.
6445
6446         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6447         for `elmo-plugged-p'.
6448         (elmo-open-network-stream): Fixed stream-type argument.
6449
6450 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6451
6452         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6453         unknown archive type is specified.
6454
6455 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6456
6457         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6458
6459         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6460         while loading msgdb.
6461
6462         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6463         (elmo-folder-open-internal): Rewrite.
6464
6465 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6466
6467         * elmo-mime.el (elmo-mime-display-as-is-internal):
6468         Adjust buffer-multibyte status.
6469
6470 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6471
6472         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6473         of elmo-condition-find-key.
6474
6475         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6476         (elmo-condition-in-msgdb-p): Ditto.
6477         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6478         argument.
6479
6480 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6481
6482         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6483
6484 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6485
6486         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6487         label for elmo-display-progress.
6488
6489 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6490
6491         * elmo.el (elmo-folder-clear): New method.
6492         (elmo-folder-clear): Define.
6493         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6494
6495         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6496         (elmo-folder-clear): Define.
6497
6498         * elmo-map.el (elmo-folder-clear): Define.
6499
6500         * elmo-version.el (elmo-version): Up to 2.7.1.
6501
6502 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6503
6504         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6505         updates.
6506
6507 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6508
6509         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6510         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6511
6512 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6513
6514         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6515
6516         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6517         and re-written.
6518
6519         * elmo-imap4.el (elmo-folder-initialize): Use
6520         elmo-get-network-stream-type.
6521
6522         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6523
6524         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6525
6526 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6527
6528         * elmo.el (elmo-message-encache): Set unread argument for
6529         elmo-message-fetch.
6530
6531         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6532
6533         * elmo.el (elmo-net-port-info): New method.
6534
6535         * elmo-shimbun.el (elmo-net-port-info): Define.
6536         (elmo-message-encache): Ditto.
6537
6538         * elmo-net.el (elmo-net-port-info): Define as method.
6539
6540         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6541         unplugged status when elmo-enable-disconnected-operation is t.
6542
6543         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6544         of spool folder before checking new number.
6545
6546 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6547
6548         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6549         (elmo-network-setup-session): Ditto.
6550         (elmo-message-fetch-plugged): Ditto.
6551         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6552         (elmo-network-initialize-session): Ditto.
6553         (elmo-pop3-read-response): Abolish 3rd argument.
6554         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6555         (elmo-pop3-read-contents): Ditto.
6556         (elmo-pop3-read-body): Ditto.
6557         (elmo-folder-status): Call elmo-folder-close.
6558         (elmo-pop3-lock): Abolish.
6559         (elmo-pop3-unlock): Ditto.
6560         (elmo-pop3-locked-p): Ditto.
6561         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6562
6563 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6564
6565         * elmo-version.el (elmo-version): Up to 2.7.0.
6566
6567         * elmo-pop3.el (elmo-pop3-debug): New variable.
6568         (elmo-pop3-debug-inhibit-logging): Ditto.
6569         (elmo-pop3-debug): New function.
6570         (elmo-pop3-send-command): Call elmo-pop3-debug.
6571         (elmo-pop3-read-response): Added keep-lock optional argument;
6572         Don't unlock if keep-lock is non-nil.
6573         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6574         (elmo-network-authenticate-session): Bind
6575         elmo-pop3-debug-inhibit-logging as t.
6576         (elmo-network-setup-session): Call elmo-pop3-read-response with
6577         keep-lock argument.
6578         (elmo-pop3-read-msg): Ditto.
6579         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6580         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6581         (elmo-network-initialize-session): Call elmo-pop3-lock.
6582         (elmo-folder-close-internal): Don't clear location-alist slot.
6583         (elmo-folder-check): Clear location-alist slot.
6584
6585 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6586
6587         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6588         (elmo-pop3-send-command): Call elmo-pop3-lock.
6589         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6590         (elmo-pop3-read-contents): Ditto.
6591         (elmo-pop3-lock): New function.
6592         (elmo-pop3-unlock): Ditto.
6593         (elmo-pop3-locked-p): Ditto.
6594         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6595         returns t.
6596
6597 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6598
6599         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6600
6601         * elmo-util.el (elmo-file-field-primitive-condition-match):
6602         New inline function (Don't fetch file content if "first" or "last").
6603         (elmo-file-field-condition-match): Use
6604         elmo-file-field-primitive-condition-match.
6605
6606         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6607         "first".
6608
6609         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6610         (elmo-message-fetch-plugged): Fixed.
6611
6612         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6613
6614 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6615
6616         * elmo.el (elmo-folder-move-messages): Bind
6617         elmo-inhibit-display-retrieval-progress as t while moving messages.
6618
6619         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6620         New variable.
6621         (elmo-inhibit-display-retrieval-progress): Ditto.
6622
6623         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6624         for retrieval progress;
6625         Don't display progress when total buffer size is smaller than
6626         elmo-display-retrieval-progress-threshold.
6627         (elmo-message-fetch-plugged): Don't display progress when
6628         elmo-inhibit-display-retrieval-progress is non-nil.
6629
6630         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6631         for retrieval progress;
6632         Don't display progress when literal size is smaller than
6633         elmo-display-retrieval-progress-threshold.
6634         (elmo-imap4-message-fetch): Don't display progress when
6635         elmo-inhibit-display-retrieval-progress is non-nil.
6636
6637 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6638
6639         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6640         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6641         (elmo-imap4-message-fetch): Likewise.
6642
6643         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6644         (elmo-shimbun-index-range-alist): Ditto.
6645         (elmo-shimbun-use-entire-index): Abolish.
6646         (shimbun-mua-use-entire-index): Ditto.
6647         (elmo-shimbun-folder): Added new slot `range'.
6648         (elmo-folder-initialize): Setup slot `range'.
6649
6650 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6651
6652         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6653         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6654         (elmo-shimbun-get-headers): Use return value of
6655         `shimbun-article-expiration-days'.
6656         (elmo-folder-close-internal): Clean up last-check slot.
6657
6658         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6659         (elmo-pop3-total-size): New variable.
6660         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6661
6662         * elmo.el (elmo-folder-reserve-status-p): New method.
6663
6664         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6665         (elmo-shimbun-use-entire-index): New user option.
6666         (shimbun-elmo-mua): New class.
6667         (shimbun-mua-search-id): Define.
6668         (shimbun-mua-use-entire-index): Ditto.
6669         (elmo-shimbun-folder:last-check): New slot.
6670         (elmo-shimbun-headers-cache-header-list): Abolish.
6671         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6672         (elmo-shimbun-headers-cache-header-hash): Ditto.
6673         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6674         (elmo-shimbun-headers-cache-last-check): Ditto.
6675         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6676         (elmo-shimbun-headers-check-p): Rewrite.
6677         (elmo-shimbun-msgdb-to-headers): New function.
6678         (elmo-shimbun-get-headers): Rewrite.
6679         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6680         (elmo-folder-open-internal): Get headers only if
6681         `elmo-shimbun-headers-check-p' is non-nil.
6682         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6683         is non-nil.
6684         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6685         (elmo-quit): Removed.
6686
6687         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6688         function.
6689         (elmo-msgdb-overview-entity-set-extra): Ditto.
6690         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6691
6692         * elmo-map.el (elmo-folder-status): Don't call
6693         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6694         is non-nil.
6695
6696 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6697
6698         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6699         of `elmo-msgdb-search-internal-primitive' when condition's car is
6700         `and' or `or'.
6701
6702 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6703
6704         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6705
6706 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6707
6708         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6709         call `elmo-pipe-drain'.
6710
6711 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6712
6713         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6714         typo. (elmo-cache-folder -> elmo-mark-folder)
6715
6716 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6717
6718         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6719         `elmo-message-fetch'.
6720
6721 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6722
6723         * elmo-net.el (elmo-message-encache): Fixed typo.
6724         (elmo-message-fetch-unplugged): Changed call
6725         `elmo-message-fetch-internal' without argument `outbuf'.
6726
6727 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6728
6729         * elmo.el (elmo-message-encache): Define as generic function.
6730         (elmo-message-fetch-field): New generic function.
6731         (elmo-message-fetch-with-cache-process): Cause an error when
6732         fetch strategy is 'entire but only 'section cache is available.
6733         (toplevel): Fixed nmz folder definition.
6734
6735         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6736         (elmo-msgdb-resume-list-filename): Ditto.
6737         (elmo-queue-filename): Ditto.
6738         (elmo-enable-disconnected-operation): Changed default value to t.
6739
6740         * elmo-util.el (elmo-cache-path-section-p): New function.
6741         (elmo-file-cache-get): Use it.
6742         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6743         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6744         (elmo-dop-queue-save): Ditto.
6745
6746         * elmo-net.el (elmo-folder-status-unplugged): Call
6747         elmo-folder-status-dop.
6748         (elmo-folder-list-messages-unplugged): Implemented.
6749         (elmo-folder-delete-messages-unplugged): Define.
6750         (elmo-folder-msgdb-create): Define.
6751         (elmo-folder-msgdb-create-unplugged): Define.
6752         (elmo-folder-mark-as-read-unplugged): Ditto.
6753         (elmo-folder-unmark-read-unplugged): Ditto.
6754         (elmo-folder-mark-as-important-unplugged): Ditto.
6755         (elmo-folder-unmark-important-unplugged): Ditto.
6756         (elmo-message-encache): Ditto.
6757
6758         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6759         (elmo-dop-queue-save): Ditto.
6760
6761         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6762         `elmo-folder-msgdb-create'.
6763         (elmo-folder-append-buffer): Implemented unplugged operation.
6764         (elmo-folder-append-messages): Call parent method in unplugged status.
6765         (elmo-message-fetch-unplugged): Removed definition.
6766         (elmo-message-fetch-field): Implemented.
6767
6768         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6769         (elmo-dop-folder): Removed variable definition.
6770         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6771         (elmo-dop-queue-flush): Implemented.
6772         (elmo-dop-queue-merge): Removed definition (TODO).
6773         (elmo-dop-spool-folder): New function.
6774         (elmo-dop-spool-folder-append-buffer): Ditto.
6775         (elmo-dop-spool-folder-list-messages): Ditto.
6776         (elmo-dop-list-deleting-messages): Ditto.
6777         (elmo-folder-append-buffer-dop): Ditto.
6778         (elmo-folder-delete-messages-dop): Ditto.
6779         (elmo-message-encache-dop): New inline function.
6780         (elmo-create-folder-dop): Ditto.
6781         (elmo-folder-mark-as-read-dop): Ditto.
6782         (elmo-folder-unmark-read-dop): Ditto.
6783         (elmo-folder-mark-as-important-dop): Ditto.
6784         (elmo-folder-unmark-important-dop): Ditto.
6785         (elmo-folder-status-dop): Fixed.
6786         (elmo-folder-append-buffer-dop-delayed): New function.
6787         (elmo-folder-delete-messages-dop-delayed): Ditto.
6788         (elmo-dop-msgdb): Ditto.
6789
6790 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6791
6792         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6793
6794 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6795
6796         * elmo.el (elmo-folder-move-messages): Fixed problem when
6797         `dst-folder' is 'null.
6798
6799 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6800
6801         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6802         instead of current mark.
6803
6804         * elmo-multi.el (elmo-folder-list-importants-internal): No
6805         operation if importants is not list.
6806
6807         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6808         Return t if importants is not list.
6809
6810         * elmo-map.el (elmo-map-folder-list-importants): Define.
6811         (elmo-folder-list-importants-internal): Check return value of
6812         `elmo-map-folder-list-importants-internal'.
6813
6814         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6815
6816         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6817
6818         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6819
6820         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6821
6822 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6823
6824         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6825         (Patch is provided by <kita@coe.nttdata.co.jp>).
6826
6827 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6828
6829         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6830         mark folder.
6831
6832 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6833
6834         * elmo.el (elmo-message-fetch): Define.
6835         (elmo-message-fetch-with-cache-process): New generic method.
6836         (elmo-message-fetch-internal): New generic method.
6837         (elmo-folder-synchronize):
6838
6839         * elmo-archive.el (elmo-message-fetch-internal): Define.
6840         (elmo-message-fetch): Eliminated.
6841
6842         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6843         (elmo-message-fetch): Eliminated.
6844
6845         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6846         argument OUTBUF.
6847         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6848
6849         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6850         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6851
6852         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6853         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6854
6855         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6856
6857         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6858
6859         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6860
6861         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6862         (elmo-message-fetch-unplugged): New generic method.
6863         (elmo-message-fetch-internal): Remove cache process (Renamed from
6864         `elmo-message-fetch').
6865
6866         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6867         (elmo-message-fetch): Eliminated.
6868         (elmo-message-fetch-unplugged): Ditto.
6869
6870         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6871
6872 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6873
6874         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6875         of `to-be-deleted' from number-alist to number-list.
6876
6877 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6878
6879         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6880         (elmo-folder-mark-as-important): Ditto.
6881
6882 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6883
6884         * elmo.el (elmo-folder): Added process-duplicates slot.
6885
6886         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6887         (elmo-folder-unmark-read): Ditto.
6888         (elmo-folder-unmark-important): Ditto.
6889         (elmo-folder-mark-as-important): Ditto.
6890
6891         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6892         duplicated message processing.
6893
6894         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6895
6896 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6897
6898         * elmo-util.el (elmo-list-subdirectories-1): New function.
6899         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6900         (elmo-mapcar-list-of-list): New function.
6901
6902         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6903         `elmo-mapcar-list-of-list' instead of `mapcar'.
6904
6905         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6906
6907         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6908         `elmo-have-link-count'. Return the fully qualified folder name.
6909
6910 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6911
6912         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6913         (elmo-shimbun-headers-cache): New internal variable.
6914         (elmo-shimbun-headers-cache-header-list): New inline function.
6915         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6916         (elmo-shimbun-headers-cache-header-hash): Ditto.
6917         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6918         (elmo-shimbun-headers-cache-last-check): Ditto.
6919         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6920         (elmo-shimbun-lapse-seconds): Ditto.
6921         (elmo-shimbun-headers-cache-check-p): Ditto.
6922         (elmo-shimbun-get-headers): New function.
6923         (elmo-folder-open-internal): Call it.
6924         (elmo-quit): Define (Clear headers-cache).
6925
6926 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6927
6928         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6929
6930         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6931         (elmo-msgdb-flist-save): Ditto.
6932
6933         * elmo-shimbun.el (elmo-folder-list-subfolders):
6934         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6935         (elmo-folder-exists-p): Ditto.
6936
6937         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6938         argument for `shimbun-header-insert'.
6939
6940 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6941
6942         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6943         at first time.
6944
6945         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6946         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6947
6948 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6949
6950         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6951         (elmo-folder-plugged-p): Define.
6952         (elmo-folder-set-plugged): Ditto.
6953         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6954         (elmo-folder-list-messages-internal): Return t if unplugged.
6955         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6956
6957         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6958         when elmo-folder-list-messages-internal method of children returns t.
6959
6960         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6961         pair is nil.
6962         (elmo-folder-open-internal): Don't update if unplugged status.
6963
6964 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6965
6966         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6967         new message.
6968
6969 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6970
6971         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6972
6973         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6974         saving.
6975
6976 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6977
6978         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6979
6980         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6981         (elmo-folder-open-internal): Set up headers slot.
6982         (elmo-folder-check): Call elmo-folder-close-internal and
6983         elmo-folder-open-internal.
6984         (elmo-folder-close-internal): Clean up headers slot.
6985
6986 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6987
6988         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6989         exactly folder list.
6990         (elmo-folder-append-messages): Fixed append archive with prefix.
6991
6992         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6993         make temp files with start-number.
6994
6995         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6996
6997 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6998
6999         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
7000         argument `visible-only'.
7001         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
7002         instead of `if'.
7003
7004         * elmo-pop3.el (elmo-folder-open-internal): Check
7005         `elmo-inhibit-number-mapping' is non-nil.
7006
7007         * elmo-pipe.el (elmo-folder-status): Fixed.
7008
7009 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
7010
7011         * elmo.el (elmo-dop-queue-flush): Added autload setting.
7012
7013         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
7014         (elmo-folder-open-internal): Setup `header-hash' slot.
7015         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
7016         information.
7017         (elmo-map-message-fetch): Ditto.
7018
7019 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
7020
7021         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7022         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7023         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7024         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
7025
7026         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
7027
7028 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
7029
7030         * sb-airs.el: Added footer.
7031
7032         * shimbun.el (shimbun-article): Define as luna-method.
7033
7034         * sb-tcup.el: New file.
7035
7036         * sb-airs.el (toplevel): Require 'sb-mhonarc.
7037         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
7038
7039 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
7040
7041         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
7042         (shimbun-get-headers): Ditto.
7043
7044         * elmo.el: Moved obsolete variable definitions from
7045         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
7046
7047         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
7048         groups.
7049
7050         * shimbun.el: New file.
7051
7052         * elmo-shimbun.el: New file.
7053
7054         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7055         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7056         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7057         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
7058
7059 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
7060
7061         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
7062         hierarchy is t.
7063
7064 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
7065
7066         * elmo.el (elmo-folder-msgdb): Define as macro.
7067         (elmo-folder-open): Added argument `load-msgdb'.
7068         (elmo-generic-folder-open): Ditto.
7069         (elmo-folder-encache): New function.
7070
7071         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
7072
7073         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
7074
7075         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
7076         Eliminated argument FOLDER and added argument MSGDB.
7077         (elmo-dop-queue-load): Moved from elmo-dop.el.
7078         (elmo-dop-queue-save): Ditto.
7079
7080         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
7081
7082         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
7083
7084         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
7085         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
7086         (elmo-filter-folder-list-importants-internal): Ditto.
7087
7088         * elmo-map.el (elmo-folder-pack-number): Ditto.
7089
7090         * elmo-mime.el (elmo-mime-message-display): Ditto.
7091
7092         * elmo.el (elmo-generic-folder-commit): Ditto.
7093         (elmo-folder-list-unreads): Ditto.
7094         (elmo-folder-list-importants): Ditto.
7095         (elmo-generic-folder-commit): Ditto.
7096         (elmo-message-set-mark): Ditto.
7097         (elmo-generic-folder-append-msgdb): Ditto.
7098         (elmo-folder-synchronize): Ditto.
7099         (elmo-folder-messages): Ditto.
7100         (elmo-init): Call elmo-dop-queue-load.
7101         (elmo-folder-list-messages): Ditto.
7102
7103         * elmo-nntp.el (elmo-folder-update-number): Ditto.
7104         (elmo-nntp-folder-process-crosspost): Ditto.
7105         (elmo-folder-list-unreads-internal): Ditto.
7106
7107         * elmo-dop.el: Removed old functions.
7108
7109 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
7110
7111         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
7112         `folder' to `msgdb'.
7113
7114 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
7115
7116         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
7117         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
7118
7119         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
7120         case-fold-search.
7121
7122 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
7123
7124         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
7125         defined.
7126
7127         * mmimap.el (toplevel): Require 'mime-parse and 'static.
7128         (mmimap-parse-parameters-from-list): Define as alias for
7129         `mime-decode-parameter-plist' if it is defined as function.
7130         (mmimap-make-mime-entity): Added argument `number'.
7131         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
7132         as 0.
7133         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
7134
7135         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
7136
7137         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
7138
7139         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
7140
7141 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
7142
7143         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
7144
7145         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
7146         when elmo-imap4-default-authenticate-type is nil.
7147         (elmo-folder-list-subfolders): Ditto
7148         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
7149         (elmo-imap4-fetch-callback-1-subr): Renamed from
7150         `elmo-imap4-fetch-callback-1' and define as inline function.
7151         (elmo-imap4-fetch-callback-1):
7152         Renamed from `elmo-imap4-fetch-callback'.
7153         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
7154
7155         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
7156         msgdb path (To keep compatibility with main trunk).
7157
7158         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
7159
7160         * elmo-util.el (elmo-make-file-cache): Moved position of
7161         some macros.
7162
7163         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
7164         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
7165         instead of `elmo-pop3-inhibit-uidl'.
7166         (elmo-folder-exists-p): Ditto.
7167         (elmo-pop3-folder-list-messages): Ditto.
7168
7169         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
7170         instead of `elmo-pop3-inhibit-uidl'.
7171         (elmo-folder-status): Ditto.
7172
7173         * elmo-dop.el (elmo-dop-folder): New variable.
7174         (elmo-dop-lock-message): Eliminated.
7175         (elmo-dop-unlock-message): Ditto.
7176         (elmo-dop-lock-list-load): Ditto.
7177         (elmo-dop-lock-list-save): Ditto.
7178         (elmo-dop-delete-folder): Ditto.
7179         (elmo-dop-rename-folder): Ditto.
7180
7181         * elmo.el: Removed incomplete commentary.
7182
7183 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7184
7185         * elmo.el (toplevel): Require 'elmo-version first;
7186         for little `recursive-load-depth' settings.
7187         Fix "ends here" comment.
7188
7189 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
7190
7191         * elmo-util.el (toplevel): Require 'poem;
7192         Some functions are moved from elmo-cache.el.
7193
7194         * elmo-net.el (toplevel): Require 'elmo-cache.
7195
7196         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
7197
7198         * elmo.el (toplevel): Ditto.
7199
7200         * elmo-cache.el: Rewrite with luna;
7201         Some functions are moved to elmo-util.el.
7202
7203         * elmo-internal.el (elmo-internal-folder-list): New variable.
7204         (elmo-internal-folder-initialize): Rewrite.
7205         (elmo-folder-list-subfolders): Ditto.
7206
7207         * elmo-cache.el (elmo-cache-search-all): Eliminated.
7208         (elmo-cache-collect-sub-directories): Ditto.
7209
7210 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
7211
7212         * elmo-version.el (elmo-version): Up to 2.5.8.
7213
7214         * elmo.el (elmo-folder-list-messages-mark-match): New function.
7215
7216         * elmo-util.el (elmo-list-insert): New function.
7217
7218 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
7219
7220         * elmo.el (elmo-init): New function.
7221         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
7222
7223         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
7224         (Renamed from `elmo-localdir-header-chop-length').
7225
7226         * elmo-pop3.el (elmo-pop3-use-cache,
7227         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
7228
7229         * elmo-nntp.el (elmo-message-fetch): Define.
7230         (elmo-message-fetch-unplugged): Ditto.
7231         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
7232         (elmo-nntp-use-cache): Ditto.
7233         (elmo-nntp-max-number-precedes-list-active): Ditto.
7234
7235         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
7236
7237         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
7238         `elmo-msgdb-insert-file-header'.
7239         Use `elmo-msgdb-file-header-chop-length'.
7240
7241         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
7242         `elmo-vars.el'.
7243
7244         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
7245         (elmo-cache-msgdb-create-overview-entity-from-file): Use
7246         `elmo-msgdb-insert-file-header'.
7247
7248         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
7249         Use new variable;
7250         Define obsolete variables with `elmo-define-obsolete-variable',
7251
7252         * elmo-util.el (elmo-warning-buffer-name): New constant.
7253         (elmo-warning): New function.
7254         (elmo-obsolete-variable-alist): New variable.
7255         (elmo-obsolete-variable-show-warnings): New variable.
7256         (elmo-define-obsolete-variable): New function.
7257         (elmo-resque-obsolete-variable): Ditto.
7258         (elmo-resque-obsolete-variables): Ditto.
7259
7260 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7261
7262         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
7263         Eliminated.
7264
7265         * elmo-pop3.el, elmo-nntp.el: Use custom.
7266
7267 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7268
7269         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
7270         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
7271
7272 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7273
7274         * Luna-fy Kenichi OKADA's following changes.
7275         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
7276         `nohide'.
7277         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
7278
7279 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
7280
7281         * elmo-util.el (elmo-display-progress): Prefer
7282         `progress-feedback-with-label' to `lprogress-display'.
7283
7284 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7285
7286         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
7287
7288 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
7289
7290         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
7291         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
7292         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7293         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7294         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
7295         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
7296         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7297         * elmo-filter.el (elmo-filter-list-folder): Ditto.
7298         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7299         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7300         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7301         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7302         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7303
7304 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7305
7306         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
7307         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7308
7309 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7310
7311         * elmo.el (elmo-folder-process-crosspost): New generic method.
7312         (elmo-folder-writable-p): Ditto.
7313         (elmo-folder-message-appendable-p): Eliminated.
7314         (elmo-generic-folder-append-msgdb): Rewrite.
7315         (elmo-newsgroups-hashtb): New internal variable.
7316         (elmo-crosspost-message-set): Eliminated.
7317         (elmo-crosspost-message-delete): Ditto.
7318         (elmo-setup-subscribed-newsgroups): New function.
7319         (elmo-crosspost-message-alist-modified): New internal variable.
7320         (elmo-crosspost-message-alist-load): New function (Renamed from
7321         `wl-crosspost-alist-load').
7322         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7323         `wl-crosspost-alist-save').
7324
7325         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7326
7327         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7328         `unreads'.
7329         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7330         elmo-newsgroups-hashtb).
7331         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7332         `elmo-nntp-folder-update-crosspost-message-alist'.
7333         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7334         `elmo-nntp-groups-hashtb'.
7335         (elmo-nntp-make-groups-hashtb): Eliminated.
7336         (elmo-nntp-parse-newsgroups): New function (Renamed from
7337         `wl-parse-newsgroups').
7338         (elmo-folder-creatable-p, elmo-folder-writable-p,
7339         elmo-folder-close-internal, elmo-folder-mark-as-read,
7340         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7341         Define.
7342         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7343
7344         * elmo-net.el (elmo-message-fetch): Check buffer size.
7345
7346         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7347
7348         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7349
7350         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7351         before `close' command.
7352
7353         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7354         `mark-alist' (All other related portions are changed).
7355
7356 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7357
7358         * elmo-util.el (elmo-create-hash-size): Eliminated.
7359         (elmo-make-hash) Make a hash with `one less than a power of two'
7360         length.
7361
7362         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7363         (elmo-hash-maximum-size): Changed value.
7364
7365 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7366
7367         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7368         (elmo-mime-message-display-as-is): Ditto.
7369
7370 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7371
7372         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7373         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7374
7375 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7376
7377         * elmo-mark.el: New file.
7378
7379         * elmo-internal.el: Rewrite (Almost empty).
7380
7381 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7382
7383         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7384         (mime-imap-entity-header-string): Ditto.
7385         (mmimap-entity-section): Rewrite.
7386
7387 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7388
7389         * elmo-nmz.el: New file.
7390
7391         * elmo-pipe.el: Rewrite with luna.
7392
7393 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7394
7395         * elmo-archive.el: Rewrite with luna.
7396
7397         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7398         (elmo-folder-list-importants-internal): Ditto.
7399
7400 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7401
7402         * elmo-archive.el (elmo-archive-version): Abolish.
7403         (toplevel) Removed `boso' comment.
7404
7405 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7406
7407         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7408         elmo-msgdb-add-msgs-to-seen-list-subr;
7409         Changed argument seen-marks to unread-marks.
7410
7411         * elmo-nntp.el: Rewrite with luna.
7412
7413 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7414
7415         * elmo-filter.el: Rewrite with luna.
7416
7417 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7418
7419         * elmo-pop3.el: Rewrite with luna.
7420
7421 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7422
7423         * elmo-multi.el: Rewrite with luna.
7424
7425         * elmo-vars.el (elmo-use-killed-list): Abolish.
7426         All other related portions are changed.
7427         (elmo-filename-replace-string-alist): Renamed from
7428         elmo-msgid-replace-string-alist.
7429
7430 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7431
7432         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7433
7434         * elmo-map.el: New file.
7435         * elmo-maildir.el: Rewrite with luna.
7436
7437 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7438
7439         * elmo.el: Changed meaning of `elmo-folder-commit'.
7440         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7441
7442 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7443
7444         * elmo.el (elmo-folder-append-buffer): New function.
7445         (Renamed from `elmo-append-msg')
7446
7447 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7448
7449         * elmo-mime.el: New file.
7450
7451 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7452
7453         * elmo-cache.el: Rewrite.
7454
7455 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7456
7457         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7458
7459 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7460
7461         * elmo-vars.el (elmo): New group.
7462         (elmo-strict-diff-folder-regexp): New variable.
7463
7464         * elmo-util.el (elmo-call-func): Abolish.
7465         (elmo-folder-get-type): Ditto.
7466         (elmo-*-get-spec): Ditto.
7467         (elmo-*-spec-*): Ditto.
7468         (elmo-imap4-identical-name-space-p): Ditto.
7469         (elmo-folder-identical-system-p): Ditto.
7470         (elmo-folder-direct-copy-alist): Ditto.
7471         (elmo-folder-direct-copy-p): Ditto.
7472
7473         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7474         (elmo-folder-initialize): Define.
7475         (elmo-folder-get-primitive-list): Ditto.
7476
7477         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7478         (elmo-folder-initialize): Define.
7479         Renamed `elmo-network-session-host-internal' to
7480         `elmo-network-session-server-internal'.
7481
7482         * elmo-multi.el (elmo-multi-folder): New luna class.
7483         (elmo-folder-initialize): Define.
7484         (elmo-folder-get-primitive-list): Ditto.
7485         (elmo-folder-contains-type): Ditto.
7486         (elmo-message-use-cache-p): Ditto.
7487
7488         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7489         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7490
7491         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7492         (elmo-folder-initialize): Define.
7493
7494         * elmo-filter.el (elmo-filter-folder): New luna class.
7495         (elmo-folder-initialize): Define.
7496         (elmo-folder-get-primitive-list): Ditto.
7497         (elmo-folder-contains-type): Ditto.
7498
7499 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7500
7501         * elmo-imap4.el: Rewrite with luna.
7502
7503         * mmimap.el: New file.
7504
7505         * mmelmo.el, mmelmo-imap4.el: Removed.
7506
7507         * elmo-net.el: Ditto.
7508
7509         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7510         (elmo-folder-initialize): Define.
7511
7512         * elmo-archive.el (elmo-archive-folder): New luna class.
7513         (elmo-folder-initialize): Define.
7514
7515         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7516         `elmo-folder-msgdb-path'.
7517         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7518         `elmo-make-folder'.
7519
7520 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7521
7522         * elmo.el: New file.
7523
7524         * elmo2.el: Renamed to elmo.el.
7525
7526 \f
7527 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7528
7529         * elmo-cache.el (elmo-cache-expire-by-size): Count
7530         a disk usage for a cache file entry in KB even when
7531         its kind is a directory.
7532
7533 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7534
7535         * elmo-version.el (elmo-version): Up to 2.5.7.
7536
7537 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7538
7539         * elmo-version.el (elmo-version): Up to 2.5.6.
7540
7541 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7542
7543         * elmo-version.el (elmo-version): Up to 2.5.5.
7544
7545 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7546
7547         * elmo-imap4.el (elmo-network-authenticate-session):
7548         Fixed a logic for response checking.
7549
7550 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7551
7552         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7553         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7554         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7555         `sasl-mechanisms'.
7556
7557         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7558         for `starttls-open-stream' and `starttls-negotiate'.
7559
7560         * elmo-nntp.el: Remove autoload settings for
7561         `starttls-open-stream' and `starttls-negotiate'.
7562
7563         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7564         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7565         `luna-define-class' with `eval-and-compile'.
7566
7567 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7568
7569         * elmo-util.el (elmo-read-search-condition-internal):
7570         Require an element of table for searching field.
7571
7572 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7573
7574         * elmo-version.el (elmo-version): Up to 2.5.4.
7575
7576 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7577
7578         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7579
7580 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7581
7582         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7583
7584 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7585
7586         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7587         before greeting.
7588
7589 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7590
7591         * elmo-imap4.el (elmo-imap4-delete-folder):
7592         Send "close" before "delete" (Use commented out line).
7593         (elmo-imap4-rename-folder): Ditto.
7594
7595         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7596         folder string itself.
7597         (elmo-dop-list-deleted): New function.
7598         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7599         killed.
7600
7601         * elmo-util.el (elmo-string-rassoc-all): New function.
7602
7603 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7604
7605         * elmo-version.el (elmo-version): Up to 2.5.3.
7606
7607         * elmo-net.el (elmo-network-get-session): Changed logic for
7608         checking process status.
7609
7610         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7611         process is nil;
7612         Changed logic for checking process status.
7613
7614 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7615
7616         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7617         before greeting.
7618         (elmo-network-setup-session): Set UIDL hash size according to
7619         the length of list response.
7620         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7621         according to the length of list response;
7622         Return the length of list response.
7623         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7624
7625 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7626
7627         * elmo-imap4.el (toplevel): Require 'ssl.
7628         Add autoload 'starttls.
7629         * elmo-pop3.el (toplevel): Ditto.
7630         * elmo-nntp.el (toplevel): Ditto.
7631
7632 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7633
7634         * elmo-imap4.el (toplevel): defun at compile time.
7635         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7636         sasl-next-step, sasl-step-data, sasl-step-set-data.
7637         * elmo-pop3.el (toplevel): Ditto.
7638
7639 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7640
7641         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7642
7643 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7644
7645         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7646         if error.
7647         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7648         and `elmo-pop-auth-apop'.
7649
7650 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7651
7652         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7653
7654 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7655
7656         * elmo-pop3.el (elmo-network-authenticate-session): Split
7657         encoded response value.
7658
7659 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7660
7661         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7662         `elmo-pop3-force-login'.
7663         Redefine `sasl-mechanisms'.
7664         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7665
7666 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7667
7668         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7669         Delete `elmo-imap4-authenticator-alist'.
7670         (elmo-imap4-auth-cram-md5): Delete.
7671         (elmo-imap4-auth-digest-md5): Delete.
7672
7673 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7674
7675         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7676         (elmo-pop3-auth-scram-md5): Ditto.
7677         (elmo-pop3-auth-cram-md5): Ditto.
7678
7679 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7680
7681         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7682         Delete `elmo-pop3-authenticator-alist'.
7683
7684 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7685
7686         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7687         new SASL API.
7688         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7689
7690 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7691
7692         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7693
7694 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7695
7696         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7697         Fixed problem when `elmo-pop3-use-uidl' is nil.
7698         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7699
7700 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7701
7702         * elmo-version.el (elmo-version): Up to 2.5.2.
7703
7704 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7705
7706         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7707         New function.
7708         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7709         (elmo-pop3-msgdb-create-as-numlist): Use it.
7710
7711         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7712         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7713
7714         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7715         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7716
7717 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7718
7719         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7720         when elmo-mark-as-read is called with second argument nil.
7721
7722 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7723
7724         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7725         Moved to elmo-util.el.
7726
7727         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7728         Moved from elmo-pipe.el
7729
7730         * elmo-archive.el (elmo-archive-call-process): Enclose with
7731         static-if.
7732
7733         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7734         "RFC822" (because RFC822.PEEK is obsolete).
7735         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7736
7737 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7738
7739         * elmo-archive.el (elmo-archive-call-process): Don't check for
7740         the exit status when Nemacs is running.
7741
7742 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7743
7744         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7745         'plain.
7746
7747         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7748         (elmo-pop3-get-spec): Set default of auth to 'user.
7749
7750         * elmo-imap4.el (elmo-imap4-session-check):
7751         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7752         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7753         (elmo-imap4-auth-login): New function; Revival.
7754         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7755         `elmo-imap4-auth-login'.
7756
7757 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7758
7759         * elmo2.el (toplevel): Move `product-provide' declare.
7760         * mmelmo.el (toplevel): Ditto.
7761
7762 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7763
7764         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7765
7766 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7767
7768         * elmo-util.el (elmo-folder-get-store-type): New function.
7769         (elmo-folder-direct-copy-p): Use it.
7770
7771 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7772
7773         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7774         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7775         and result of `elmo-imap4-use-flag-p'.
7776         (elmo-imap4-fetch-callback-1): Set mark according to
7777         the result of `elmo-imap4-use-flag-p'.
7778
7779 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7780
7781         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7782         (elmo-generic-list-folder-unread): Ditto.
7783         (elmo-folder-get-info): Ditto.
7784         (elmo-folder-set-info-max-by-numdb): Ditto.
7785         (elmo-folder-get-info-max): Ditto.
7786         (elmo-folder-get-info-length): Ditto.
7787         (elmo-folder-get-info-unread): Ditto.
7788         (elmo-folder-info-make-hashtb): Ditto.
7789
7790         * elmo2.el: Removed above functions.
7791
7792 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7793
7794         * elmo-imap4.el (toplevel): Require 'ssl.
7795         Add autoload 'starttls.
7796         * elmo-pop3.el (toplevel): Ditto.
7797         * elmo-nntp.el (toplevel): Ditto.
7798
7799 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7800
7801         * elmo-imap4.el (toplevel): defun at compile time.
7802         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7803         sasl-next-step, sasl-step-data, sasl-step-set-data.
7804         * elmo-pop3.el (toplevel): Ditto.
7805
7806 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7807
7808         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7809
7810 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7811
7812         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7813         if error.
7814         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7815         and `elmo-pop-auth-apop'.
7816
7817 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7818
7819         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7820
7821 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7822
7823         * elmo-pop3.el (elmo-network-authenticate-session): Split
7824         encoded response value.
7825
7826 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7827
7828         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7829         `elmo-pop3-force-login'.
7830         Redefine `sasl-mechanisms'.
7831         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7832
7833 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7834
7835         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7836         Delete `elmo-imap4-authenticator-alist'.
7837         (elmo-imap4-auth-cram-md5): Delete.
7838         (elmo-imap4-auth-digest-md5): Delete.
7839
7840 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7841
7842         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7843         (elmo-pop3-auth-scram-md5): Ditto.
7844         (elmo-pop3-auth-cram-md5): Ditto.
7845
7846 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7847
7848         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7849         Delete `elmo-pop3-authenticator-alist'.
7850
7851 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7852
7853         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7854         new SASL API.
7855         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7856
7857 \f
7858 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7859
7860         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7861
7862 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7863
7864         * elmo-nntp.el (elmo-nntp-get-folders-info):
7865         Fixed problem when '\' character is contained in user-id.
7866         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7867
7868 \f
7869 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7870
7871         * elmo-imap4.el (elmo-imap4-delete-folder):
7872         Send "close" before "delete" (Use commented out line).
7873         (elmo-imap4-rename-folder): Ditto.
7874
7875         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7876         folder string itself.
7877         (elmo-dop-list-deleted): New function.
7878         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7879         killed.
7880
7881         * elmo-util.el (elmo-string-rassoc-all): New function.
7882
7883         * elmo-version.el (elmo-version): Up to 2.5.1.
7884
7885 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7886
7887         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7888
7889         * elmo-internal.el (elmo-internal-search): Fix last change.
7890
7891 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7892
7893         * elmo-internal.el (elmo-internal-search): Rewrite.
7894         (Fixed problem which is pointed out by Akihiro MOTOKI
7895         <motoki@da.jp.nec.com>)
7896
7897         * elmo-version.el (elmo-version): Up to 2.5.0.
7898
7899 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7900
7901         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7902
7903 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7904
7905         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7906         non-nil, make hierarchy.
7907
7908 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7909
7910         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7911         `elmo-pop3-use-uidl' must be bound to nil.
7912         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7913
7914 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7915
7916         * elmo-util.el (elmo-copy-file): Don't cause an error after
7917         `add-name-to-file' failed.
7918
7919         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7920         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7921
7922 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7923
7924         * elmo-version.el (elmo-version): Up to 2.3.93.
7925
7926 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7927
7928         * elmo-util.el (elmo-flatten): New function.
7929
7930 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7931
7932         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7933         sync Author header.
7934         * elmo-cache.el (toplevel): Ditto.
7935         * elmo-database.el (toplevel): Ditto.
7936         * elmo-date.el (toplevel): Ditto.
7937         * elmo-dop.el (toplevel): Ditto.
7938         * elmo-filter.el (toplevel): Ditto.
7939         * elmo-imap4.el (toplevel): Ditto.
7940         * elmo-internal.el (toplevel): Ditto.
7941         * elmo-localdir.el (toplevel): Ditto.
7942         * elmo-localnews.el (toplevel): Ditto.
7943         * elmo-maildir.el (toplevel): Ditto.
7944         * elmo-msgdb.el (toplevel): Ditto.
7945         * elmo-multi.el (toplevel): Ditto.
7946         * elmo-net.el (toplevel): Ditto.
7947         * elmo-nntp.el (toplevel): Ditto.
7948         * elmo-pipe.el (toplevel): Ditto.
7949         * elmo-pop3.el (toplevel): Ditto.
7950         * elmo-util.el (toplevel): Ditto.
7951         * elmo-vars.el (toplevel): Ditto.
7952         * elmo2.el (toplevel): Ditto.
7953         * mmelmo-imap4.el (toplevel): Ditto.
7954         * mmelmo.el (toplevel): Ditto.
7955
7956         * elmo-version.el (elmo-version): Move to top.
7957
7958         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7959         * elmo-imap4.el (toplevel): Ditto.
7960         * elmo-localdir.el (toplevel): Ditto.
7961         * elmo-msgdb.el (toplevel): Ditto.
7962         * elmo-nntp.el (toplevel): Ditto.
7963         * elmo-pop3.el (toplevel): Ditto.
7964         * elmo-version.el (toplevel): Ditto.
7965
7966         * elmo-localnews.el (toplevel): Added Keyword header.
7967
7968 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7969
7970         * elmo-version.el (product-version-as-string): Defined using
7971         `defun-maybe'.
7972         (toplevel): Use it.
7973
7974         * elmo-localdir.el (toplevel): Updated copyright notice.
7975         * elmo-version.el (toplevel): Ditto.
7976         * elmo-msgdb.el (toplevel): Ditto.
7977         * elmo-imap4.el (toplevel): Ditto.
7978         * elmo-nntp.el (toplevel): Ditto.
7979         * elmo-pop3.el (toplevel): Ditto.
7980
7981 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7982
7983         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7984         messages.
7985
7986         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7987         parameter value (It sometimes contains raw kanji).
7988
7989 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7990
7991         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7992         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7993
7994 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7995
7996         * elmo-imap4.el (elmo-network-initialize-session): Fix.
7997
7998 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7999
8000         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
8001         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
8002
8003 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
8004
8005         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
8006         value if selecting folder succceeded.
8007         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
8008
8009 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8010
8011         * elmo-util.el (elmo-make-directory): Fixed permission lateral
8012         representation.
8013
8014         * elmo-util.el (elmo-string-matched-member): New function.
8015
8016 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
8017
8018         * elmo-util.el (elmo-unintern): New macro.
8019         (elmo-number-set-member): Fixed docstring.
8020
8021         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
8022         tag token.
8023
8024 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
8025
8026         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
8027         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
8028
8029 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
8030
8031         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
8032         `no-error'.
8033         Added docstring.
8034         Return non-nil if selecting folder succeeded.
8035         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
8036
8037 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
8038
8039         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
8040         `file-name-completion' returns t.
8041         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
8042         (elmo-maildir-set-mark): Put `info' part to the files in the cur
8043         directory if it does not exist.
8044         (elmo-maildir-update-current): Use `while' instead of `mapcar'
8045         for iteration.
8046
8047 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
8048
8049         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
8050         enclosure (It's harmful in unplugged status).
8051
8052         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
8053
8054         * mmelmo-1.el: Removed.
8055
8056         * mmelmo-2.el: Ditto.
8057
8058         * mmelmo-imap4-1.el: Ditto.
8059
8060         * mmelmo-imap4-2.el: Ditto.
8061
8062         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
8063
8064         * mmelmo.el: Merged mmelmo-2.el.
8065
8066         * elmo-version.el (elmo-version): Up to 2.3.92.
8067
8068 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8069
8070         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
8071         elmo-update-number): Remove last period in "...done." message.
8072         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
8073         Ditto.
8074         * elmo-cache.el (elmo-cache-expire-by-size,
8075         elmo-cache-get-sorted-cache-file-list,
8076         elmo-cache-msgdb-create-as-numlist): Ditto.
8077         * elmo-dop.el (elmo-dop-save-pending-messages,
8078         (elmo-dop-flush-pending-append-operations): Ditto.
8079         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
8080         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
8081         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
8082         (elmo-localdir-pack-number): Ditto.
8083         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
8084         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
8085         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
8086         mime-write-entity-content): Ditto.
8087         * pldap.el (ldap-search-basic): Ditto.
8088
8089 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
8090
8091         * elmo-version.el (elmo-version): Up to 2.3.91.
8092
8093         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
8094         Only when filter is 'last'.
8095
8096         * elmo-util.el (elmo-condition-atom-regexp): New constant.
8097         (elmo-condition-parse-search-value): Use it.
8098         (elmo-read-search-condition-internal): Quote value only when
8099         it is not an atom.
8100
8101 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
8102
8103         * elmo2.el (elmo-generic-folder-diff): Fix.
8104
8105 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
8106
8107         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
8108         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
8109         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
8110         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8111         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
8112         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
8113
8114 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
8115
8116         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
8117         extra-fields.
8118
8119 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
8120
8121         * elmo-version.el (elmo-version): Up to 2.3.90.
8122
8123         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
8124         (elmo-imap4-list-folder-important): Ditto.
8125
8126 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8127
8128         * elmo-nntp.el (elmo-network-initialize-session): Fix.
8129
8130 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8131
8132         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
8133
8134 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
8135
8136         * elmo-nntp.el (elmo-network-initialize-session):
8137         Add starttls negotiation.
8138
8139 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8140
8141         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
8142         response.
8143         (elmo-network-setup-session): Define.
8144         Call `elmo-nntp-send-mode-reader' when session opened.
8145
8146 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8147
8148         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
8149
8150 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
8151
8152         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
8153         an invalid SPACE character ahead of `SEARCH' command.  Move
8154         a valid SPACE character following `SEARCH' from conditional
8155         `format' arguments to control-strings.
8156
8157 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8158
8159         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
8160         was succeeded.
8161
8162         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
8163
8164 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
8165
8166         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
8167         `w32-get-true-file-link-count' as t.
8168
8169         * elmo-imap4.el (elmo-imap4-read): Abolished.
8170         (Renamed to `elmo-read' and moved to elmo-util.el)
8171         All other related portions are changed.
8172
8173         * elmo-util.el (elmo-read): New function.
8174         (elmo-condition-parse-search-value): Use it.
8175
8176 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
8177
8178         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
8179
8180         * elmo-nntp.el (elmo-nntp-session): Define.
8181         (elmo-nntp-setting): Abolished.
8182         All other related portions are changed.
8183         (elmo-nntp-get-server-command): Changed argument.
8184         (elmo-nntp-set-server-command): Ditto.
8185         (elmo-nntp-xover-p): Ditto.
8186         (elmo-nntp-set-xover): Ditto.
8187         (elmo-nntp-listgroup-p): Ditto.
8188         (elmo-nntp-set-listgroup): Ditto.
8189         (elmo-nntp-list-active-p): Ditto.
8190         (elmo-nntp-set-list-active): Ditto.
8191         (elmo-nntp-xhdr-p): Ditto.
8192         (elmo-nntp-set-xhdr): Ditto.
8193         (elmo-nntp-flush-connection): Abolished.
8194         (elmo-nntp-get-connection): Abolished.
8195         (elmo-nntp-get-session): New function.
8196         (elmo-network-initialize-session): Defined.
8197         (elmo-network-authenticate-session): Ditto.
8198         (elmo-nntp-send-mode-reader): Changed argument.
8199         (elmo-nntp-send-command): Changed argument.
8200         All other related portions are changed.
8201         (elmo-nntp-read-response): Ditto.
8202         (elmo-nntp-read-raw-response): Ditto.
8203         (elmo-nntp-read-contents): Ditto.
8204         (elmo-nntp-read-body): Ditto.
8205         (elmo-nntp-goto-folder): Abolished.
8206         (elmo-nntp-select-group): New function.
8207         All other related portions are changed.
8208         (This function substitutes `elmo-nntp-goto-folder')
8209         (elmo-nntp-msgdb-create-by-header): Rewrite.
8210         (elmo-nntp-get-overview): Eliminated.
8211         (elmo-nntp-get-message): Ditto.
8212         (elmo-nntp-open-connection) Abolished.
8213         (elmo-nntp-read-msg): Rewrite.
8214         (elmo-nntp-post): Ditto.
8215         (elmo-nntp-send-data): Abolished.
8216         (elmo-nntp-send-buffer): New function.
8217         (elmo-nntp-send-data-line): Define as inline function.
8218         (elmo-nntp-get-folders-info-prepare): Use session as key.
8219         (elmo-nntp-groups-read-response): Changed argument.
8220         (elmo-nntp-retrieve-headers): Ditto.
8221         (elmo-nntp-msgdb-create-message): Ditto.
8222
8223         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
8224         when searching by 'since' or 'before'.
8225
8226 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8227
8228         * elmo-version.el (toplevel): Use product-version-as-string for set
8229         verstion-string, if defined.
8230
8231 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
8232
8233         * elmo-util.el: Doc fixes.
8234
8235 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8236
8237         * elmo-archive.el (toplevel): Use product-provide.
8238         * elmo-cache.el (toplevel): Ditto.
8239         * elmo-database.el (toplevel): Ditto.
8240         * elmo-date.el (toplevel): Ditto.
8241         * elmo-dop.el (toplevel): Ditto.
8242         * elmo-filter.el (toplevel): Ditto.
8243         * elmo-imap4.el (toplevel): Ditto.
8244         * elmo-internal.el (toplevel): Ditto.
8245         * elmo-localdir.el (toplevel): Ditto.
8246         * elmo-localnews.el (toplevel): Ditto.
8247         * elmo-maildir.el (toplevel): Ditto.
8248         * elmo-msgdb.el (toplevel): Ditto.
8249         * elmo-multi.el (toplevel): Ditto.
8250         * elmo-net.el (toplevel): Ditto.
8251         * elmo-nntp.el (toplevel): Ditto.
8252         * elmo-pipe.el (toplevel): Ditto.
8253         * elmo-pop3.el (toplevel): Ditto.
8254         * elmo-util.el (toplevel): Ditto.
8255         * elmo-vars.el (toplevel): Ditto.
8256         * elmo2.el (toplevel): Ditto.
8257         * mmelmo-1.el (toplevel): Ditto.
8258         * mmelmo-2.el (toplevel): Ditto.
8259         * mmelmo-imap4-1.el (toplevel): Ditto.
8260         * mmelmo-imap4-2.el (toplevel): Ditto.
8261         * mmelmo-imap4.el (toplevel): Ditto.
8262         * mmelmo.el (toplevel): Ditto.
8263
8264 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
8265
8266         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
8267         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
8268
8269 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
8270
8271         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
8272         before splitting.
8273         (elmo-multi-split-number-alist): Ditto.
8274
8275 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8276
8277         * elmo-version.el: New file.  Use product.el.
8278         * elmo2.el: Add (require 'elmo-version).
8279         * elmo-vars.el (elmo-appname, elmo-version): Move to
8280         elmo-version.el
8281
8282 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
8283
8284         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
8285         `elmo-msgdb-expand-path'.
8286         (elmo-msgdb-load): Ditto.
8287         Abolished 2nd argument. If 1st argument is not string, treat as spec.
8288         (elmo-generic-list-folder-unread): Rewrite.
8289         (elmo-generic-list-folder-important): Changed argument.
8290         (elmo-list-folder-unread): Ditto.
8291         (elmo-list-folder-important): Ditto.
8292         (elmo-folder-diff): Rewrite.
8293         (elmo-generic-folder-diff): New function.
8294         (elmo-multi-get-number-alist-list): Abolished
8295         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
8296         (elmo-multi-folder-diff): Moved to elmo-multi.el
8297         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
8298
8299         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
8300         `elmo-msgdb-expand-path'.
8301         (elmo-pop3-msgdb-create-as-numlist): Ditto.
8302         (elmo-pop3-read-msg): Ditto.
8303         (elmo-pop3-delete-msgs): Ditto.
8304         (elmo-pop3-folder-diff): New alias.
8305
8306         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
8307         `elmo-msgdb-expand-path'.
8308         (elmo-pipe-list-folder-unread): Changed arguments.
8309         (elmo-pipe-list-folder-important): Ditto.
8310         (elmo-pipe-folder-diff): New alias.
8311
8312         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8313         `elmo-msgdb-expand-path'.
8314         (elmo-nntp-max-of-folder): Ditto.
8315         (elmo-nntp-msgdb-create): Ditto.
8316         (elmo-nntp-delete-msgs): Ditto.
8317         (elmo-nntp-folder-diff): New alias.
8318
8319         * elmo-multi.el (elmo-multi-folder-diff): New function.
8320         (elmo-multi-split-mark-alist): Ditto.
8321         (elmo-multi-split-number-alist): Ditto.
8322         (elmo-multi-mark-alist-list): Abolished (Renamed to
8323         elmo-multi-split-mark-alist).
8324         (elmo-multi-list-folder-unread): Rewrite.
8325         (elmo-multi-list-folder-important): Ditto.
8326         (elmo-multi-list-folder): Set `spec' as 1st argument for
8327         `elmo-msgdb-expand-path'.
8328         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8329         instead of `elmo-multi-get-number-alist-list'.
8330
8331         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8332         If 1st argument is not string, treat as spec.
8333         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8334         `elmo-msgdb-expand-path'.
8335         (elmo-msgdb-flist-load): Ditto.
8336         (elmo-msgdb-flist-save): Ditto.
8337         (elmo-msgdb-delete-path): Ditto.
8338         (elmo-msgdb-rename-path): Ditto.
8339
8340         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8341         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8342         (elmo-maildir-delete-mark-msgs): Ditto.
8343         (elmo-maildir-msgdb-create): Ditto.
8344         (elmo-maildir-read-msg): Ditto.
8345         (elmo-maildir-delete-msgs): Ditto.
8346         (elmo-maildir-list-folder-subr): Ditto.
8347         (elmo-maildir-search): Ditto.
8348         (elmo-maildir-get-msg-filename): Ditto.
8349         (elmo-maildir-pack-number): Ditto.
8350         (elmo-maildir-folder-diff): New alias.
8351
8352         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8353
8354         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8355         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8356         (elmo-localdir-folder-diff): New alias.
8357
8358         * elmo-internal.el (elmo-internal-list-folder-subr):
8359         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8360         (elmo-internal-list-folder-by-location): Ditto.
8361         (elmo-internal-msgdb-create): Ditto.
8362         (elmo-internal-delete-msgs): Ditto.
8363         (elmo-internal-read-msg): Ditto.
8364         (elmo-internal-folder-diff): New alias.
8365
8366         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8367         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8368         `elmo-msgdb-expand-path'.
8369         (elmo-imap4-list-folder-unread): Changed arguments.
8370         (elmo-imap4-list-folder-important): Ditto.
8371
8372         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8373         (elmo-filter-list-folder-important): Ditto.
8374         (elmo-filter-folder-diff): New function.
8375
8376         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8377
8378         * elmo-cache.el (elmo-cache-list-folder):
8379         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8380         (elmo-cache-copy-msgs): Ditto.
8381         (elmo-cache-folder-diff): New alias.
8382
8383         * elmo-archive.el (elmo-archive-list-folder-subr):
8384         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8385         (elmo-archive-get-archive-name): Ditto.
8386         (elmo-archive-create-file): Ditto.
8387         (elmo-archive-append-msg): Ditto.
8388         (elmo-archive-copy-msgs): Ditto.
8389         (elmo-archive-copy-msgs-froms): Ditto.
8390         (elmo-archive-get-msg-filename): Ditto.
8391         (elmo-archive-folder-diff): New alias.
8392
8393 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8394
8395         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8396         (elmo-pop3-stream-type-alist): New variable.
8397         (elmo-nntp-stream-type-alist): New variable.
8398
8399         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8400         (elmo-kill-buffer): Ditto.
8401         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8402         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8403         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8404         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8405         (elmo-imap4-get-spec): Take into account
8406         `elmo-imap4-stream-type-alist'.
8407
8408 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8409
8410         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8411         (elmo-nntp-list-folders-get-cache): Ditto.
8412
8413 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8414
8415         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8416         character before 'uid'.
8417
8418 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8419
8420         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8421
8422         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8423
8424         * elmo-util.el (elmo-number-set-member): New function.
8425         (elmo-number-set-append-list): Ditto.
8426         (elmo-number-set-append): Ditto.
8427
8428         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8429         Use `elmo-number-set-member'.
8430         (elmo-living-messages): Ditto.
8431         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8432         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8433
8434         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8435         (elmo-imap4-add-to-cont-list): Abolished.
8436         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8437         instead of elmo-imap4-add-to-cont-list.
8438
8439         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8440         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8441
8442         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8443
8444 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8445
8446         * elmo-util.el (elmo-condition-parse-search-value):
8447         Fixed date parsing.
8448
8449 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8450
8451         * elmo-util.el (elmo-condition-find-key-internal): New function.
8452         (elmo-condition-find-key): Ditto.
8453
8454         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8455         (elmo-msgdb-search-internal): Ditto.
8456         (elmo-msgdb-search): Ditto.
8457
8458 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8459
8460         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8461         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8462
8463         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8464         (elmo-nntp-search-primitive): Fixed problem when condition is
8465         'unmatch'.
8466
8467         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8468
8469         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8470         (elmo-nntp-xhdr-p): New macro.
8471         (elmo-nntp-set-xhdr): Ditto.
8472         (elmo-nntp-parse-xhdr-response): New function.
8473         (elmo-nntp-retrieve-field): Ditto.
8474         (elmo-nntp-search-primitive): Ditto.
8475         (elmo-nntp-search): Implemented.
8476
8477         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8478
8479         * elmo-archive.el (elmo-archive-search): Set all number list to
8480         `elmo-archive-field-condition-match'
8481
8482         * elmo-localdir.el (elmo-localdir-search): Likewise.
8483
8484         * elmo-maildir.el (elmo-maildir-search): Likewise.
8485
8486 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8487
8488         * elmo-msgdb.el (elmo-living-messages): New function.
8489         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8490         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8491         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8492         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8493         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8494         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8495         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8496         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8497         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8498         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8499         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8500
8501 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8502
8503         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8504
8505         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8506
8507         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8508
8509         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8510         arguments for `SEARCH' command.
8511         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8512         All other related portions are changed.
8513
8514         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8515
8516         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8517         (elmo-list-folder-unread): Rewrite.
8518         (elmo-list-folder-important): Ditto.
8519
8520         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8521         (elmo-condition-parse-error): New inline function.
8522         (elmo-read-search-condition): New function.
8523         (elmo-read-search-condition-internal): Ditto.
8524         (elmo-parse-search-condition): Rewrite.
8525         (elmo-condition-parse): New function.
8526         (elmo-condition-parse-or-expr): Ditto.
8527         (elmo-condition-parse-and-expr): Ditto.
8528         (elmo-condition-parse-primitive): Ditto.
8529         (elmo-condition-parse-search-value): Ditto.
8530         (elmo-buffer-field-primitive-condition-match): Ditto.
8531         (elmo-buffer-field-condition-match): Rewrite.
8532         (elmo-file-field-condition-match): Ditto.
8533
8534         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8535         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8536
8537         * elmo-internal.el (elmo-internal-search): Set `number' and
8538         `number-list' argument of `elmo-file-field-condition-match'.
8539
8540         * elmo-maildir.el (elmo-maildir-search): Ditto.
8541
8542         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8543         `msgdb' as argument instead of `mark-alist'.
8544         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8545         `overview'.
8546
8547         * elmo-multi.el: Likewise.
8548
8549         * elmo-pipe.el: Likewise.
8550
8551         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8552         (elmo-imap4-search-internal): Rewrite.
8553         (elmo-imap4-search): Ditto.
8554
8555         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8556         (elmo-filter-list-folder-unread): Ditto.
8557         (elmo-filter-list-folder-important): Ditto.
8558         (elmo-filter-search): Rewrite.
8559
8560         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8561         `number-list' argument of `elmo-file-field-condition-match'.
8562         (elmo-cache-search): Ditto.
8563
8564         * elmo-localdir.el: Likewise.
8565
8566         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8567         number-list and pass it to `elmo-buffer-field-condition-match'.
8568         (elmo-archive-field-condition-match): Pass `number-list' to
8569         `elmo-archive-field-condition-match'
8570
8571 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8572
8573         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8574         `listgroup'.
8575
8576         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8577         (elmo-folder-diff-async-callback-data): Ditto.
8578         (elmo-folder-diff-async): New function.
8579
8580         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8581         (elmo-network-session-cache-key): Use it as a prefix of the session
8582         name.
8583         (elmo-network-open-session): Ditto.
8584
8585         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8586         (elmo-imap4-status-callback-data): Ditto.
8587         (elmo-imap4-server-diff-async-callback): New variable.
8588         (elmo-imap4-server-diff-async-callback-data): Ditto.
8589         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8590         `elmo-imap4-status-callback-data'.
8591         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8592         `elmo-imap4-status-callback-data' as nil.
8593         (elmo-imap4-server-diff): Ditto.
8594         (elmo-imap4-server-diff-async-callback-1): New function.
8595         (elmo-imap4-server-diff-async): Ditto.
8596         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8597
8598 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8599
8600         * elmo-util.el (elmo-list-delete): Doc fix.
8601         (elmo-delete-lists): Abolish.
8602         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8603         instead of `elmo-delete-lists'.
8604
8605 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8606
8607         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8608         before `sort'.
8609
8610 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8611
8612         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8613         `elmo-imap4-literal-subr'.
8614         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8615         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8616
8617 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8618
8619         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8620         (elmo-archive-list-folder): Fix.
8621         (elmo-archive-max-of-folder): Fix.
8622
8623 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8624
8625         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8626          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8627         (elmo-localdir-append-msg): Ditto.
8628         (elmo-localdir-list-folder): Fix for `nonsort'.
8629         (elmo-localdir-list-folder-subr): Fix for `killed'.
8630         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8631         (elmo-maildir-list-folder-subr): Ditto.
8632         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8633         (elmo-archive-list-folder-subr): Ditto.
8634         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8635         (elmo-internal-list-folder-subr): Ditto.
8636
8637 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8638
8639         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8640
8641 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8642
8643         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8644
8645 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8646
8647         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8648         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8649
8650         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8651         before greeting.
8652         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8653         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8654
8655 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8656
8657         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8658
8659         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8660         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8661         before STORE command.
8662
8663 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8664
8665         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8666
8667         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8668         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8669         of `response'.
8670         (elmo-imap4-list-folders): Removed unused local variable.
8671         (elmo-network-initialize-session): Ditto.
8672         (elmo-imap4-delete-msg-by-id): Ditto.
8673         (elmo-imap4-parse-fetch): Ditto.
8674         (elmo-imap4-copy-msgs): Ditto.
8675         Use `dst-spec' instead of `dst-folder'.
8676         (elmo-network-authenticate-session): Check authenticate type `plain'.
8677
8678 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8679
8680         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8681         garbage checking.
8682         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8683         `elmo-imap4-response-value'.
8684         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8685
8686 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8687
8688         * elmo-imap4.el (elmo-imap4-send-command):
8689         Cause elmo-imap4-bye-error when current response is BYE.
8690         (elmo-imap4-arrival-filter): Changed greeting response value.
8691
8692         * elmo2.el (elmo-imap4-bye-error): Define.
8693
8694         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8695         (elmo-imap4-server-diff): Ditto.
8696         (elmo-imap4-response-bye-p): New macro.
8697         (elmo-imap4-response-error-text): Get text from BYE response.
8698         (elmo-imap4-read-response): Return if BYE response.
8699         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8700         (elmo-imap4-folder-exists-p): Ditto.
8701         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8702         (elmo-imap4-parse-bye): New function.
8703         (elmo-imap4-parse-response): Remove needless let.
8704         Call `elmo-imap4-parse-bye'.
8705
8706 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8707
8708         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8709         the mailbox does not exist.
8710         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8711
8712 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8713
8714         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8715
8716 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8717
8718         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8719
8720         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8721         (elmo-network-initialize-session-buffer): Defined.
8722
8723         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8724         Abolished.
8725         (mmelmo-imap4-get-mime-entity): Rewrite.
8726
8727         * elmo2.el (elmo-error): Capitalize error message.
8728
8729         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8730         (elmo-network-session-buffer): New macro.
8731         (elmo-network-open-session): Use it.
8732
8733         * elmo-imap4.el: Rewrite.
8734
8735 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8736
8737         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8738
8739 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8740
8741         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8742         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8743         (elmo-imap4-create-msgdb-from-overview-string): Use
8744         `elmo-msgdb-create-overview-from-buffer'.
8745
8746 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8747
8748         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8749         (elmo-imap4-default-hierarchy-delimiter): New variable.
8750         (elmo-imap4-list-folders): Use it.
8751
8752 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8753
8754         * elmo-net.el (elmo-network-open-session): Add user and
8755         stream-type for process-buffer name.
8756
8757         * elmo-pop3.el (elmo-network-initialize-session): Call
8758         buffer-disable-undo.
8759
8760         * elmo-imap4.el (elmo-network-initialize-session):
8761         Set current-buffer as an argument for `buffer-disable-undo'.
8762
8763         * elmo-pop3.el (elmo-network-close-session): Don't use
8764         `process-live-p'.
8765
8766         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8767         Set default as 'user.
8768
8769         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8770
8771         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8772         and `elmo-imap4-flush-connection'.
8773
8774         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8775         (elmo-pop3-get-spec): Assume auth as symbol.
8776         (elmo-open-network-stream): Moved to `elmo-net'.
8777
8778         * elmo-pop3.el (toplevel): Require 'elmo-net.
8779         Define `sasl-cram-md5' to silence byte compilier.
8780         (elmo-pop3-connection-cache) Abolished.
8781         (elmo-pop3-authenticator-alist) New variable.
8782         (elmo-pop3-session): Define.
8783         (elmo-pop3-connection-get-process): Abolished.
8784         (elmo-pop3-connection-get-buffer): Ditto.
8785         (elmo-pop3-close-connection): Ditto.
8786         (elmo-pop3-flush-connection): Ditto.
8787         (elmo-pop3-get-connection): Ditto.
8788         (elmo-pop3-get-session): New function.
8789         (Replacement for `elmo-pop3-get-connection').
8790         All other related modules are changed.
8791         (elmo-network-close-session): Define.
8792         (elmo-pop3-send-command): Abolished argument `buffer'.
8793         All other related modules are changed.
8794         (elmo-pop3-read-response): Likewise.
8795         (elmo-pop3-open-connection): Abolished.
8796         (elmo-pop3-auth-user): New function.
8797         (elmo-pop3-auth-apop): Ditto.
8798         (elmo-pop3-auth-cram-md5): Ditto.
8799         (elmo-pop3-auth-scram-md5): Ditto.
8800         (elmo-pop3-auth-digest-md5): Ditto.
8801         (elmo-network-initialize-session): Define.
8802         (elmo-network-authenticate-session): Ditto.
8803         (elmo-network-setup-session): Ditto.
8804
8805         * elmo-imap4.el (toplevel): Require 'elmo-net.
8806         (elmo-imap4-session): Define.
8807         (elmo-imap4-connection-cache): Abolished.
8808         (elmo-imap4-password-key): Ditto.
8809         (elmo-imap4-flush-connection): Ditto.
8810         (elmo-imap4-get-connection): Ditto.
8811         All other related modules are changed.
8812         (elmo-imap4-get-session): New function
8813         (Replacement for `elmo-imap4-get-connection').
8814         (elmo-imap4-read-response): Abolished argument `buffer'.
8815         All other related modules are changed.
8816         (elmo-imap4-send-command): Likewise.
8817         (elmo-imap4-select-folder): Abolished.
8818         All other related modules are changed.
8819         (elmo-imap4-select-mailbox): New function.
8820         (Replacement for `elmo-imap4-select-folder').
8821         (elmo-imap4-auth-login): Simplify.
8822         (Assume current buffer as process buffer)
8823         (elmo-imap4-auth-cram-md5): Ditto.
8824         (elmo-imap4-auth-digest-md5): Ditto.
8825         (elmo-imap4-login): Ditto.
8826         (elmo-imap4-open-connection): Abolished.
8827         (elmo-imap4-open-connection-1): Abolished.
8828         (elmo-network-initialize-sessoin): Define.
8829         (elmo-network-authenticate-session): Ditto.
8830         (elmo-network-setup-session): Ditto.
8831
8832         * elmo-net.el: New module.
8833
8834 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8835
8836         * elmo-util.el (elmo-define-error): New function.
8837
8838         * elmo2.el (elmo-error): Define.
8839         (elmo-open-error): Define.
8840         (elmo-authenticate-error): Define.
8841
8842         * elmo-imap4.el (elmo-imap4-error): Abolish.
8843         (elmo-imap4-error-type): Abolish.
8844         (elmo-imap4-error-process): Abolish.
8845         (elmo-imap4-error-message): Abolish
8846         (elmo-imap4-list-folders): Don't quote lambda.
8847         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8848         (elmo-imap4-parse-namespace): Ditto.
8849         (elmo-imap4-open-connection): Rewrite.
8850         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8851         (elmo-imap4-get-connection): Abolish local variable `result'.
8852
8853 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8854
8855         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8856         wrong-type-argument error when auth is nil.
8857
8858 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8859
8860         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8861         (elmo-default-nntp-stream-type): Ditto.
8862         (elmo-default-pop3-stream-type): Ditto.
8863         (elmo-network-stream-type-alist): Ditto.
8864         (elmo-default-imap4-ssl): Abolished.
8865         (elmo-default-nntp-ssl): Ditto.
8866         (elmo-default-pop3-ssl): Ditto.
8867
8868         * elmo-util.el: (toplevel): Removed needless requires.
8869         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8870         (elmo-open-network-stream): Open network stream according to
8871         the value of `elmo-network-stream-type-alist'.
8872         (elmo-get-network-stream-type): New function.
8873         (elmo-network-stream-type-spec-string): New macro.
8874         (elmo-network-stream-type-symbol): Ditto.
8875         (elmo-network-stream-type-function): Ditto.
8876
8877         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8878         network-stream-type. All other related portions are changed.
8879         (elmo-pop3-open-connection): Ditto.
8880
8881         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8882         network-stream-type. All other related portions are changed.
8883
8884         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8885         network-stream-type.All other related portions are changed.
8886         (elmo-imap4-error): New macro.
8887         (elmo-imap4-error-type): Ditto.
8888         (elmo-imap4-error-process): Ditto.
8889         (elmo-imap4-error-message): Ditto.
8890         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8891         (elmo-imap4-auth-cram-md5): Ditto.
8892         (elmo-imap4-auth-digest-md5): Ditto.
8893         (elmo-imap4-login): Ditto.
8894         (elmo-imap4-open-connection): Remove password entry if authentication
8895         was in vain.
8896         (elmo-imap4-user-at-host): Abolished.
8897         (elmo-imap4-password-key): New buffer local variable.
8898         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8899         using protocol, port, auth and stream-type.
8900
8901         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8902
8903 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8904
8905         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8906
8907         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8908
8909         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8910         (elmo-imap4-authenticator-alist): New variable.
8911         (elmo-imap4-open-connection-1): Rename from
8912         elmo-imap4-open-connection.
8913         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8914         only wraps elmo-imap4-open-connection-1.
8915         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8916         user-at-host.
8917         (elmo-imap4-auth-login): New function.
8918         (elmo-imap4-auth-cram-md5): New function.
8919         (elmo-imap4-auth-digest-md5): New function.
8920         (elmo-imap4-login): New function.
8921
8922 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8923
8924         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8925         function `error'.
8926
8927 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8928
8929         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8930
8931 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8932
8933         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8934
8935 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8936
8937         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8938         for server responses, quote `*' regardless of where it appears.
8939
8940 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8941
8942         * elmo-maildir.el (elmo-maildir-commit): New alias.
8943
8944 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8945
8946         * elmo-util.el (elmo-display-progress):
8947                 Use `progress-feedback-with-label'.
8948
8949 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8950
8951         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8952         (elmo-imap4-non-atom-char-regex): Ditto.
8953         (elmo-imap4-non-text-char-regex): Ditto.
8954         (elmo-imap4-literal-threshold): Ditto.
8955         (elmo-imap4-atom-p): New function.
8956         (elmo-imap4-quotable-p): Ditto.
8957         (elmo-imap4-nil): Ditto.
8958         (elmo-imap4-atom): Ditto.
8959         (elmo-imap4-quoted): Ditto.
8960         (elmo-imap4-literal-subr): Ditto.
8961         (elmo-imap4-literal): Ditto.
8962         (elmo-imap4-buffer-literal): Ditto.
8963         (elmo-imap4-string-subr): Ditto.
8964         (elmo-imap4-string): Ditto.
8965         (elmo-imap4-buffer-string): Ditto.
8966         (elmo-imap4-astring-subr): Ditto.
8967         (elmo-imap4-astring): Ditto.
8968         (elmo-imap4-buffer-astring): Ditto.
8969         (elmo-imap4-nstring): Ditto.
8970         (elmo-imap4-buffer-nstring): Ditto.
8971         (elmo-imap4-mailbox): New alias.
8972         (elmo-imap4-field-body): Ditto.
8973         (elmo-imap4-userid): Ditto.
8974         (elmo-imap4-password): Ditto.
8975         (elmo-imap4-format-quoted): New function.
8976         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8977         arguments and handle "atom", "quoted" and "literal" string here.
8978         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8979         `elmo-imap4-send-command'.
8980         (elmo-imap4-folder-exists-p): Likewise.
8981         (elmo-imap4-create-folder): Likewise.
8982         (elmo-imap4-delete-folder): Likewise.
8983         (elmo-imap4-rename-folder): Likewise.
8984         (elmo-imap4-max-of-folder): Likewise.
8985         (elmo-imap4-check-validity): Likewise.
8986         (elmo-imap4-sync-validity): Likewise.
8987         (elmo-imap4-server-diff): Likewise.
8988         (elmo-imap4-select-folder): Likewise.
8989         (elmo-imap4-copy-msgs): Likewise.
8990         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8991         (elmo-imap4-mark-set-on-msgs): Likewise.
8992         (elmo-imap4-read-part): Likewise.
8993         (elmo-imap4-read-msg): Likewise.
8994         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8995         `elmo-imap4-password' for `elmo-imap4-send-command'.
8996         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8997         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8998         `elmo-imap4-buffer-literal'.
8999         (elmo-imap4-append-msg): Likewise.
9000
9001         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
9002         `delete' for removing dead connection from the connection cache.
9003         Move deletion of the process buffer after that.
9004         (elmo-imap4-list): Change `defsubst' to `defun'.
9005         (elmo-imap4-commit): Make error message verbose.
9006         (elmo-imap4-search): Ditto.
9007         (elmo-imap4-list): Ditto.
9008         (elmo-imap4-select-folder): Ditto.
9009         (elmo-imap4-copy-msgs): Ditto.
9010         (elmo-imap4-delete-msg-by-id): Ditto.
9011         (elmo-imap4-append-msg-by-id): Ditto.
9012         (elmo-imap4-append-msg): Ditto.
9013
9014 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
9015
9016         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
9017         when dired is used on XEmacs.
9018
9019 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
9020
9021         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
9022         instead of `append'.
9023         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
9024         `elmo-plugged-p' directly.
9025         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
9026         of `elmo-plugged-p' directly.
9027
9028         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
9029         Eliminate unused variable.  Use `memq' for checking a process status.
9030         Use `cons' instead of `append' for updating the connection cache.
9031         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
9032         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
9033
9034 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
9035
9036         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
9037         `elmo-imap4-read-point' exactly.
9038
9039         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
9040         the local variable `folder' to `mailbox'.
9041         Rename the argument `fld' to `folder'.
9042
9043 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
9044
9045         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
9046         * elmo-imap4.el (elmo-imap4-commit): Ditto.
9047
9048 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
9049
9050         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
9051         (elmo-pop3-number-uidl-hash): New buffer-local variable.
9052         (elmo-pop3-uidl-number-hash): Ditto.
9053         (elmo-pop3-size-hash): Ditto.
9054         (elmo-pop3-uidl-done): Ditto.
9055         (elmo-pop3-list-done): Ditto.
9056         (elmo-pop3-connection-get-process): New defmacro.
9057         (elmo-pop3-connection-get-buffer): Ditto.
9058         (elmo-pop3-close-connection): Delete buffer and process.
9059         (elmo-pop3-flush-connection): Don't delete buffer and process.
9060         (elmo-pop3-get-connection): Added optional argument `if-exists'.
9061         Setup UIDL and size hash.
9062         (elmo-pop3-send-command-no-erase): Deleted
9063         (elmo-pop3-send-command): Added optional argument `no-erase'.
9064         (elmo-pop3-parse-uidl-response): New function.
9065         (elmo-pop3-parse-list-response): Set size hash.
9066         (elmo-pop3-list-location): New function.
9067         (elmo-pop3-list-by-uidl-subr): Ditto.
9068         (elmo-pop3-list-by-list): Ditto.
9069         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
9070         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
9071         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
9072         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
9073         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
9074         Use uidl.
9075         (elmo-pop3-uidl-to-number): New function.
9076         (elmo-pop3-number-to-uidl): Ditto.
9077         (elmo-pop3-number-to-size): Ditto.
9078         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
9079         Set number by use of uidl.
9080         (elmo-pop3-msgdb-create-message): Likewise.
9081         Set size, loc-alist in msgdb.
9082         (elmo-pop3-read-msg): Set number by use of uidl.
9083         Added optional argument `msgdb'.
9084         (elmo-pop3-delete-msg): Ditto.
9085         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
9086         (elmo-pop3-commit): Close connection.
9087
9088         * elmo-pipe.el (elmo-pipe-max-of-folder):
9089         Bind `elmo-pop3-use-uidl' as nil.
9090         (elmo-pipe-drain): Ditto.
9091         Call `elmo-commit'.
9092
9093         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
9094         (elmo-msgdb-overview-entity-set-size): New defsubst.
9095
9096 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
9097
9098         * elmo-vars.el (elmo-use-killed-list): New variable
9099         (Renamed from `elmo-nntp-use-killed-list').
9100         (elmo-nntp-use-killed-list): Eliminated.
9101
9102         * elmo-msgdb.el (elmo-msgdb-expand-path):
9103         Changed expanding msgdb path for elmo-multi.
9104
9105         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
9106         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
9107         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
9108         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
9109         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
9110         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
9111         (toplevel): Deleted time-stamp line.
9112
9113         * elmo2.el (elmo-clear-killed ): Defined as function
9114         (Abolished defining as a backend function).
9115         All other related modules are changed.
9116
9117 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
9118
9119         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
9120
9121 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
9122
9123         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
9124
9125 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
9126
9127         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
9128
9129 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
9130
9131         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
9132         asynchronous folder check.
9133
9134         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
9135
9136         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
9137         `elmo-nntp-use-killed-list'.
9138         (elmo-nntp-list-folder): Use killed list.
9139         (elmo-nntp-max-of-folder): Ditto.
9140         (elmo-nntp-msgdb-create): Set killed list.
9141
9142         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
9143
9144         * elmo2.el (elmo-clear-killed): New backend function.
9145         All other related modules are changed.
9146
9147 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
9148
9149         * elmo-util.el (elmo-imap4-spec-folder): Use
9150         `elmo-imap4-spec-mailbox'; Mark as obsolete.
9151         All callers changed.
9152
9153 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
9154
9155         * mmelmo-2.el (initialize-instance):
9156         Use `mime-buffer-entity-buffer-internal' instead of
9157         `mime-entity-buffer'.
9158
9159         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
9160         (mime-entity-body): Implemented.
9161         (mime-goto-header-start-point): Deleted.
9162         (mime-goto-body-end-point): Ditto.
9163         (mime-entity-point-min): Ditto.
9164         (mime-entity-point-max): Ditto.
9165         (mime-entity-children): Ditto.
9166         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
9167         instead of `mime-entity-buffer'.
9168         (mime-entity-header-buffer): Ditto.
9169         (mime-entity-body-buffer): Ditto.
9170         (mime-write-entity-content): Ditto.
9171
9172         * pldap.el (ldap-static-if): New macro.
9173         (toplevel): Use it instead of `static-if'.
9174
9175 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
9176
9177         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
9178         included in `attrs' argument.
9179
9180 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
9181
9182         * elmo-util.el (elmo-get-passwd): Use old backquote style.
9183
9184         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
9185         (ldap-ldif-safe-init-char-regexp): Ditto.
9186         (ldap-ldif-safe-string-regexp): Ditto.
9187         (ldap/ldif-safe-string-p): New macro.
9188         (ldap/ldif-insert-field): Ditto.
9189         (ldap-modify): Use it.
9190         (ldap-add): Ditto.
9191         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
9192         (ldap-decode-attribute): Decode only when `attr' is consp.
9193         (ldap-delete): Bind `ret'.
9194         (toplevel): Require 'cl at compile time.
9195         Removed (require 'poe) and (require 'std11).
9196         (pldap-version): Eliminated.
9197         (ldap-search-basic): Removed auth and dn binding.
9198         (ldap-ldif-field-name-regexp): New constant.
9199         (ldap-ldif-field-head-regexp): Ditto.
9200         (ldap-ldif-next-field-head-regexp): Ditto.
9201         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
9202         (ldap/field-end): New function.
9203         (ldap/field-body): Use it.
9204         (ldap/collect-field): Ditto.
9205         (ldap-search-basic): Use `ldap/field-body'.
9206
9207 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
9208
9209         * pldap.el (ldap-default-attribute-encoder): New user option.
9210         (ldap/field-body): Decode base64 string.
9211         (ldap/collect-field): Ditto.
9212         (ldap-encode-attribute): New function.
9213         (ldap-add-entries): Use it.
9214         (ldap-modify-entries): Ditto.
9215         (ldap-search-entries): Enclosed decoding function with
9216         `with-temp-buffer' and set as unibyte.
9217         (ldap-search-basic): Set process buffer as unibyte.
9218
9219         * elmo-util.el (elmo-folder-identical-system-p):
9220         Eliminated name space checking.
9221
9222         * pldap.el: New module.
9223         toplevel: Changed condition to detect built-in ldap feature.
9224         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
9225         (ldap-add): Added error handling.
9226         (ldap-modify): Ditto.
9227         (ldap-delete): Ditto.
9228
9229 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
9230
9231         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
9232         Initialize local variables with `let'.  Inline a temporary
9233         variable for the progress percentage.  Sort `setq' to reduce
9234         function call in the while-loop.
9235
9236         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
9237         into the conditional branch.
9238
9239 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
9240
9241         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
9242         Move a conditional out of the while-loop.
9243
9244 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9245
9246         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
9247         elmo-msgdb-overview-get-entity-by-number.
9248         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
9249         throw.
9250
9251 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
9252
9253         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
9254         the local variable for a packed number self descriptively.
9255
9256 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9257
9258         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
9259         * elmo-localdir.el (elmo-localdir-pack-number): Use
9260         `elmo-msgdb-overview-get-entity' instead of
9261         `elmo-msgdb-overview-get-entity-by-number'.
9262         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
9263         (elmo-msgdb-search-overview-entity): Removed.
9264         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
9265         by message-id or number.
9266         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
9267         instead of `elmo-msgdb-overview-get-entity-by-number'.
9268
9269 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9270
9271         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
9272         non-nil, use hash table for overview.
9273         (elmo-hash-maximum-size): New variable.
9274         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
9275         (elmo-msgdb-make-overview-hashtb): New function.
9276         (elmo-msgdb-clear-overview-hashtb): New function.
9277         (elmo-clear-hash-val): New macro.
9278         All other related modules are changed.
9279
9280 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
9281
9282         * elmo2.el (elmo-move-msgs): If there's other message with
9283         same message-id, don't use cache.
9284
9285 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
9286
9287         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
9288         number is already packed.
9289
9290 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
9291
9292         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
9293
9294 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9295
9296         * elmo-vars.el (elmo-display-progress-threshold): New variable.
9297         All other related modules are changed.
9298
9299 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
9300
9301         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
9302         of refiling failure on Maildir.
9303
9304 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9305
9306         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
9307         decoded mime-charset with cache.
9308         (elmo-msgdb-overview-entity-get-from): Ditto.
9309         (elmo-msgdb-overview-entity-get-subject): Ditto.
9310         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9311
9312 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9313
9314         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9315         (elmo-remove-passwd): Fill password with 0 before erase.
9316         * elmo-vars.el (elmo-passwd-life-time): New variable.
9317
9318 \f
9319 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9320
9321         * elmo-cache.el (elmo-buffer-cache-add):
9322         Set message cache buffer as unibyte.
9323
9324 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9325
9326         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9327         become nil.
9328
9329 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9330
9331         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9332         when display is finished.
9333         (elmo-nntp-msgdb-create): Ditto.
9334         (elmo-nntp-groups-read-response): Ditto.
9335         (elmo-nntp-retrieve-headers): Ditto.
9336         (elmo-nntp-msgdb-create-message): Ditto.
9337         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9338         (elmo-pop3-msgdb-create-message): Ditto.
9339
9340 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9341
9342         * elmo-maildir.el (elmo-maildir-msgdb-create):
9343         Use `elmo-msgdb-sort-by-date'.
9344
9345 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9346
9347         * elmo2.el (elmo-read-msg-no-cache):
9348         Eliminated arguments after `outbuf'.
9349         Don't use cache even if it exists.
9350         (elmo-read-msg): Don't pass arguments after `outbuf' to
9351         `elmo-read-msg-no-cache'.
9352
9353 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9354
9355         * elmo-archive.el (elmo-archive-list-folders):
9356         Use `file-name-directory' if base folder does not exist.
9357
9358 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9359
9360         * elmo-archive.el (elmo-archive-list-folders): Don't use
9361         `file-name-directory'.
9362
9363 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9364
9365         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9366         If `force' is non-nil, try flushing all operation queues.
9367
9368 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9369
9370         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9371         as-binary-process.
9372
9373 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9374
9375         * elmo-util.el (elmo-display-progress): Fixed.
9376
9377 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9378
9379         * elmo-util.el (elmo-display-progress): New function.
9380         All other related modules are changed.