Version number is increased to 2.15.8.
[elisp/wanderlust.git] / elmo / ChangeLog
1 2010-01-04  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2
3         * elmo-version.el (elmo-version): Up to 2.15.8.
4
5         * elmo-mime.el (elmo-mime-insert-header-from-buffer): Use
6         `with-current-buffer' instead of `save-excursion' (for suppress
7         compile warnings).
8
9         * elmo.el (elmo-folder-confirm-appends): Use `number-to-string'
10         instead of `int-to-string'.
11         * elmo-archive.el (elmo-archive-message-fetch-internal)
12         (elmo-archive-folder-message-make-temp-files)
13         (elmo-archive-folder-append-buffer)
14         (elmo-folder-delete-messages-internal)
15         (elmo-archive-msgdb-create-entity)
16         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
17         * elmo-util.el (elmo-cache-expire-by-age): Ditto.
18         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
19         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
20         * elmo-imap4.el (elmo-imap4-make-number-set-list)
21         (elmo-folder-list-subfolders): Ditto.
22         * elmo-localdir.el (elmo-message-file-name)
23         (elmo-folder-message-make-temp-files)
24         (elmo-localdir-msgdb-create-entity)
25         (elmo-folder-append-messages-*-localdir)
26         (elmo-folder-pack-numbers): Ditto.
27         * elmo-maildir.el (elmo-folder-message-make-temp-files): Ditto.
28         * elmo-map.el (elmo-location-map-key): Ditto.
29         * elmo-nntp.el (elmo-nntp-folder-postfix)
30         (elmo-nntp-folder-list-subfolders)
31         (elmo-nntp-folder-msgdb-create): Ditto.
32
33         * elmo.el (elmo-crosspost-message-alist-save): Don't use
34         `function' for `lambda'.
35         * elmo-archive.el (elmo-archive-folder-list-subfolders)
36         (elmo-folder-append-messages-*-archive)
37         (elmo-folder-delete-messages-internal): Ditto.
38         * elmo-date.el (elmo-replace-in-string): Ditto.
39         * elmo-multi.el (elmo-folder-list-messages, elmo-folder-search)
40         (elmo-folder-list-flagged): Ditto.
41         * elmo-maildir.el (elmo-maildir-cleanup-temporal): Ditto.
42         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
43         * modb-standard.el (modb-standard-cleanup-stale-entities): Ditto.
44
45 2010-01-02  TAKAHASHI Kaoru  <kaoru@kaisei.org>
46
47         * elmo-dop.el (elmo-dop-spool-folder): Suppress warning "defsubst
48         `elmo-dop-spool-folder' was used before it was defined"; Use
49         `defun' instead.
50
51         * pldap.el (ldap/ldif-safe-string-p): macro to function.
52         * elmo-imap4.el (elmo-imap4-detect-search-charset): Ditto.
53
54         * elmo.el (elmo-folder-info-make-hashtb): Use `mapc' instead of
55         `mapcar'; Suppress compile warning.
56         * elmo-imap4.el (elmo-network-initialize-session-buffer)
57         (elmo-imap4-search-internal-primitive): Ditto.
58         * elmo-nntp.el (elmo-nntp-search-primitive): Ditto.
59         * elmo-archive.el (elmo-archive-exec-msgs-subr2): Ditto.
60
61         * elmo-imap4.el (elmo-imap4-parse-address-list)
62         (elmo-imap4-parse-fetch-body-section, elmo-imap4-parse-body)
63         (elmo-imap4-parse-acl, elmo-imap4-parse-body-extension)
64         (elmo-imap4-parse-body-ext, elmo-imap4-parse-body): Use
65         `(string-to-char " ")' instead of `? ', `?\ '.
66
67 2010-01-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
68
69         * pldap.el (ldap-search-entries): Don't use `function' for lambda.
70         (ldap-add-entries, ldap-modify-entries): Use `mapc' instead of `mapcar'.
71         (ldap-delete-entries): Use `mapc' instead of `mapcar'. Don't use
72         `function' for lambda.
73
74         * modb-standard.el (modb-standard-cleanup-stale-entities): Use
75         `string-to-number' instead of `string-to-int'.
76
77         * elmo-util.el (elmo-set-work-buf): Use `with-current-buffer'
78         instead of `save-excursion' (for suppress compile warnings).
79         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
80         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Ditto.
81         (elmo-nntp-post): Ditto.
82
83 2009-08-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
84
85         * utf7.el (utf7-get-u16char-converter): Revert BOM workaround for
86         Mule-UCS (to-utf-16).
87         (utf7-utf-16-coding-system): Change preference when Mule-UCS on
88         Emacs 23.
89
90 2009-07-11  Taiki SUGAWARA  <buzz.taiki@gmail.com>
91
92         * utf7.el (utf7-find-coding-system-without-bom): New Function.
93         (utf7-utf-16-coding-system): use no-BOM coding system.
94         (utf7-get-u16char-converter): remove workaround for BOM.
95
96 2009-05-26  Vitaly Mayatskikh <v.mayatskih@gmail.com>
97
98         * elmo-util.el (elmo-union): New function, make a union of two lists.
99
100         * elmo-mime.el (elmo-mime-entity-display): Fix Emacs crash in
101         mime-view when displaying malformed base64 attach.
102
103         * elmo-imap4.el (elmo-imap4-folder-list-flagged): Use elmo-imap4-list
104         (removed duplicated code)
105
106         * modb-standard.el (modb-standard-cleanup-stale-entities): New
107         function, Remove stale entities from elmo's cache.
108
109 2009-05-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
110
111         * elmo-version.el (elmo-version): Up to 2.15.7.
112
113 2009-03-22  Tetsurou Okazaki  <okazaki@be.to>
114
115         * elsp-bsfilter.el (elmo-spam-bsfilter-update-switch): Change
116         default value to `--auto-update'.
117
118 2008-07-06  TAKAHASHI Kaoru  <kaoru@kaisei.org>
119
120         * elmo-pop3.el (elmo-pop3-read-contents): Fix double `goto-char'.
121         Add `elmo-pop3-read-point' barrier.
122
123 2008-07-06 YAMASHITA Junji <ysiijj@gmail.com>
124
125         * elmo-pop3.el (elmo-pop3-read-contents): improving performance:
126         goto the previous end-point insead of the head-point, and use
127         `search-forward' instead of `re-search-forward'.
128
129 2008-06-30  Tetsurou Okazaki  <okazaki@be.to>
130
131         * elmo-imap4.el (elmo-imap4-parse-status): Use `case' instead of `cond'.
132
133 2008-06-30  Don Bashford  <Don.Bashford@stjude.org>
134
135         * elmo-imap4.el (elmo-imap4-parse-status): Accept IMAP4 tokens in a
136         case-insensitive fashion.
137
138 2008-03-30  Tetsurou Okazaki  <okazaki@be.to>
139
140         * elmo-imap4.el (elmo-imap4-send-command): Combine `process-send-string' calls.
141
142 2008-02-20  TAKAHASHI Kaoru  <kaoru@kaisei.org>
143
144         * elmo-util.el (elmo-add-name-to-file, elmo-field-body): Use
145         `eval-and-compile' for suppress compile warnings.
146
147         * elmo-vars.el (dynamic-link, dynamic-call): Use `defalias-maybe'
148         instead of `defun-maybe'
149
150         * elmo-util.el: Add (eval-when-compile (require 'static)).
151
152 2008-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
153
154         * mmimap.el: Remove (require 'static).
155         * acap.el: Ditto.
156
157         * elmo-flag.el: Move ';;; Code:' comment.
158         * elmo-imap4.el: Ditto.
159         * elmo-net.el: Ditto.
160
161         * elmo-version.el (product-provide): Fix comment.
162
163 2008-02-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
164
165         * slp.el: Add (eval-when-compile (require 'cl)).
166         * elmo-date.el: Ditto.
167         * elmo-pop3.el: Ditto.
168         * elmo-mime.el: Add (eval-when-compile (require 'elmo)).
169
170 2008-02-17  TAKAHASHI Kaoru  <kaoru@kaisei.org>
171
172         * modb.el (elmo-msgdb-match-condition-primitive): Use
173         `string-to-number' instead of `string-to-int'.
174
175         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer)
176         (elmo-msgdb-message-match-condition)
177         (elmo-msgdb-create-message-entity-from-buffer): Use
178         `string-to-number' instead of `string-to-int'.
179
180         * elmo.el (elmo-folder-confirm-appends): Use `string-to-number'
181         instead of `string-to-int'.
182
183         * elmo-util.el (elmo-cache-expire-by-age): Use `string-to-number'
184         instead of `string-to-int'.
185
186         * elmo-pop3.el (elmo-pop3-list-by-list, elmo-folder-status): Use
187         `string-to-number' instead of `string-to-int'.
188
189         * elmo-nntp.el (elmo-nntp-make-msglist)
190         (elmo-folder-list-messages-plugged, elmo-nntp-folder-status)
191         (elmo-nntp-create-msgdb-from-overview-string)
192         (elmo-nntp-parse-xhdr-response, elmo-nntp-msgdb-create-message)
193         (elmo-nntp-search-primitive): Use `string-to-number' instead of
194         `string-to-int'.
195
196         * elmo-net.el (elmo-net-folder-set-parameters): Use
197         `string-to-number' instead of `string-to-int'.
198
199         * elmo-localdir.el (elmo-localdir-list-subr): Use
200         `string-to-number' instead of `string-to-int'.
201
202         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Use
203         `string-to-number' instead of `string-to-int'.
204
205         * elmo-date.el (elmo-date-get-datevec): Use `string-to-number'
206         instead of `string-to-int'.
207
208         * elmo-archive.el (elmo-archive-list-folder-subr): Use
209         `string-to-number' instead of `string-to-int'.
210
211 2008-02-16  TAKAHASHI Kaoru  <kaoru@kaisei.org>
212
213         * elmo-util.el (elmo-get-passwd): Fix typo.
214
215         * elmo-nntp.el (elmo-nntp-get-server-command)
216         (elmo-nntp-set-server-command, elmo-nntp-xover-p)
217         (elmo-nntp-listgroup-p, elmo-nntp-set-listgroup)
218         (elmo-nntp-list-active-p, elmo-nntp-set-list-active)
219         (elmo-nntp-xhdr-p, elmo-nntp-set-xhdr): New backquote style.
220
221         * elmo-imap4.el (elmo-imap4-debug)
222         (elmo-imap4-response-continue-req-p, elmo-imap4-response-ok-p)
223         (elmo-imap4-response-bye-p, elmo-imap4-response-garbage-p)
224         (elmo-imap4-response-value, elmo-imap4-response-error-text)
225         (elmo-imap4-response-bodydetail-text, elmo-imap4-value)
226         (elmo-imap4-nth, elmo-imap4-detect-search-charset)
227         (elmo-imap4-identical-system-p): New backquote style.
228
229 2008-02-15  TAKAHASHI Kaoru  <kaoru@kaisei.org>
230
231         * elmo-dop.el (elmo-make-dop-queue): New backquote style.
232         (elmo-dop-queue-fname, elmo-dop-queue-method): Ditto.
233         (elmo-dop-queue-arguments): Ditto.
234
235         * elmo-date.el (elmo-match-substring): New backquote style.
236         (elmo-match-string, elmo-match-buffer): Ditto.
237         (elmo-date-make-sortable-string): Ditto.
238
239         * elmo-archive.el (elmo-archive-get-method):New backquote style.
240         (elmo-archive-get-suffix, elmo-archive-get-regexp): Ditto.
241
242         * elmo-multi.el (elmo-multi-real-folder-number): New backquote
243         style.
244
245         * elmo-net.el (elmo-network-stream-type-spec-string): New
246         backquote style.
247         (elmo-network-stream-type-symbol): Ditto.
248         (elmo-network-stream-type-feature): Ditto.
249         (elmo-network-stream-type-function): Ditto.
250         (elmo-network-session-buffer): Ditto.
251
252         * elmo-util.el (elmo-file-cache-expand-path): New backquote style.
253         (elmo-file-cache-status, elmo-file-cache-path): Ditto.
254         (elmo-make-file-cache, elmo-string, elmo-get-passwd): Ditto.
255         (elmo-bind-directory, elmo-set-work-buf): Ditto.
256
257         * elmo.el (elmo-folder-send): New backquote style.
258
259 2008-02-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
260
261         * pldap.el (ldap-static-if): New backquote style.
262         (ldap/ldif-safe-string-p): Ditto.
263         (ldap/ldif-insert-field): Ditto.
264
265         * elmo-version.el (elmo-version): Up to 2.15.6.
266
267 2008-01-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
268
269         * elmo-imap4.el (elmo-folder-list-messages-plugged): Don't include
270         messages with \Deleted flag.
271         (elmo-folder-delete-messages-plugged): Ask before sending expunge
272         command if there are messages with \Deleted flag.
273
274 2007-04-24  Yoichi NAKAYAMA  <yoichi@geiin.org>
275
276         * elmo-pop3.el (elmo-pop3-auth-apop): Use more strict regexp.
277         http://seclists.org/bugtraq/2007/Apr/0018.html
278         (Suggested by Tatsuya Kinoshita)
279
280 2007-04-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
281
282         * elmo-imap4.el (elmo-folder-delete): Don't call close for mailbox
283         with \Noselect attribute.
284
285 2007-04-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
286
287         * elmo-imap4.el (elmo-folder-list-subfolders): Fix handling of
288         hierarchical folder structure with UW-imapd.
289
290 2007-02-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
291
292         * elmo-imap4.el (elmo-imap4-clear-login): Don't send LOGIN command
293         when the LOGINDISABLED capability is advertised.
294
295 2007-01-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
296
297         * elmo-msgdb.el (elmo-msgdb-extra-fields): Make it non-destructive.
298
299 2007-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
300
301         * elmo-shimbun.el (elmo-shimbun-update-overview): Add argnument
302         `entity'.
303         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview' only
304         if the message entity is exists.
305
306 2007-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
307
308         * elmo-util.el (elmo-msgdb-insert-file-header): Call
309         `elmo-delete-cr-buffer'.
310
311         * elmo-localdir.el (elmo-message-fetch-internal): Use
312         `insert-file-contents-as-raw-text' instead of
313         `insert-file-contents-as-binary'.
314
315         * elmo-maildir.el (elmo-map-message-fetch): Ditto.
316
317 2006-12-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
318
319         * elmo-imap4.el (elmo-network-initialize-session): Check to
320         retrieve a whole greeting message.
321
322 2006-11-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
323
324         * elmo-flag.el (elmo-folder-commit): Encode `.minfo' at save.
325
326 2006-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
327
328         * elmo-util.el (elmo-safe-plist-get): New alias or macro.
329         (elmo-progress-notify): Use it instead of `plist-get'.
330
331 2006-11-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
332
333         * elmo.el (elmo-generic-folder-append-messages): Remove unused
334         variable `table'.
335
336 2006-11-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
337
338         * elmo-pipe.el (elmo-folder-set-plugged): Define.
339
340 2006-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
341
342         * elsp-bsfilter.el (elmo-spam-bsfilter-use-remote): New user option.
343         (elmo-spam-list-spam-messages): Check it option.
344
345 2006-11-08  Tetsurou Okazaki  <okazaki@be.to>
346
347         * elmo-util.el (elmo-with-progress-display): Return the value
348         of the last form in `body'.
349
350 2006-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
351
352         * elmo-util.el (elmo-progress-start): Accept nil for `total'.  Set
353         `elmo-progress-counter' as t when a query callback returns nil.
354         (elmo-progress-clear): New function.
355         (elmo-progress-done): Split into `elmo-progress-clear'.
356         (elmo-progress-notify): Update a total slot when it is nil.
357         (elmo-with-progress-display): Call `elmo-progress-clear' in
358         unwind-protect and move calling `elmo-progress-done' to outside.
359
360         * elmo-imap4.el (elmo-imap4-find-next-line): Call
361         `elmo-progress-notify' with :total parameter instead of
362         `elmo-progress-counter-set-total'.
363
364 2006-11-07  Tetsurou Okazaki  <okazaki@be.to>
365
366         * elmo-util.el (elmo-cache-expire-by-age): Add docstring.
367         Make it interactive.
368         (elmo-progress-start): Avoid updating `elmo-progress-counter'
369         when a query callback returns nil.  Return a progress counter
370         instead of t whenever a start callback was called.
371
372 2006-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
373
374         * elmo-imap4.el (elmo-imap4-session-capable-p): New macro.
375         (elmo-imap4-send-command): Use it.
376         (elmo-network-initialize-session): Ditto.
377         (elmo-network-setup-session): Ditto.
378         (elmo-folder-msgdb-create-plugged): Ditto.
379
380 2006-11-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
381
382         * elmo-util.el (elmo-progress-done): Fix a miss refer to
383         `elmo-progress-counter'.
384
385 2006-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
386
387         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Abolish.
388         (elsp-bsfilter-list-spam-filter): New function.
389         (elsp-bsfilter-start-list-spam): Ditto.
390         (elsp-bsfilter-read-list-spam): Ditto.
391         (elmo-spam-list-spam-messages): Use async process to display
392         progress message by each message.
393
394 2006-11-03  Yoichi NAKAYAMA  <yoichi@geiin.org>
395
396         * elmo-spam.el (elmo-spam-process-messages-as-mbox): Fix problem
397         of flushing previously inserted message contents.
398
399         * elmo-imap4.el (elmo-folder-search): Fix return value.
400
401 2006-11-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
402
403         * elmo-imap4.el (elmo-imap4-find-next-line): Check whether a label
404         of reporter is enable or not.
405
406 2006-10-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
407
408         * elmo-util.el (elmo-list-bigger-diff): Abolish.
409         (elmo-display-progress): Ditto.
410         (elmo-progress-counter-alist): Ditto.
411         (elmo-progress-set): Ditto.
412         (elmo-progress-clear): Ditto.
413         (elmo-progress-counter-all-value): Rename to
414         `elmo-progress-counter-total'.
415         (elmo-progress-counter-format): Rename to
416         `elmo-progress-counter-action'.
417         (elmo-progress-counter): New internal variable.
418         (elmo-progress-callback-function): Ditto.
419         (elmo-progress-counter-label): New function.
420         (elmo-progress-counter-set-total): Ditto.
421         (elmo-progress-counter-set-action): Ditto.
422         (elmo-progress-call-callback): Ditto.
423         (elmo-progress-start): Ditto.
424         (elmo-progress-done): Ditto.
425         (elmo-progress-notify): Rewrite.
426         (elmo-with-progress-display): Remove first argument
427         `condition'. Add optional argument `var' in `spec'.
428
429         * elmo-vars.el (elmo-display-progress-threshold): Abolish.
430         (elmo-display-retrieval-progress-threshold): Ditto.
431         (elmo-inhibit-display-retrieval-progress): Ditto.
432
433         * Replace all pair of `elmo-progress-set' and
434         `elmo-progress-clear' into `elmo-with-progress-display'.
435
436         * Replace to call `elmo-display-progress' into pair of
437         `elmo-progress-notify' and `elmo-with-progress-display'.
438
439         * elmo-version.el (elmo-version): Up to 2.15.5.
440
441 2006-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
442
443         * elmo-imap4.el (elmo-imap4-arrival-filter): Use `case' instead of
444         `cond'.
445
446 2006-10-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
447
448         * elmo-imap4.el (elmo-imap4-arrival-filter): Call delete-region in
449         cleanup-forms [wl:14027].
450
451 2006-10-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
452
453         * elmo-flag.el (elmo-global-flag-set-internal): Use
454         `elmo-copy-file' by priority when the message is a file.
455
456 2006-10-01  Yoichi NAKAYAMA  <yoichi@geiin.org>
457
458         * elmo.el: Fix typo: disptch -> dispatch.
459
460 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
461
462         * elmo.el (elmo-file-tag): New class.
463         (elmo-append-messages-disptch-table): New constant.
464         (elmo-folder-type-p): New function.
465         (elmo-folder-append-messages): Redefine as function.
466
467         * elmo-null.el (elmo-folder-append-messages): Renamed from
468         `elmo-folder-append-messages'.
469
470         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
471         (elmo-folder-append-messages-*-maildir): Renamed from
472         `elmo-folder-append-messages'.
473
474         * elmo-localdir.el (elmo-localdir-folder): Inherit
475         `elmo-file-tag'.
476         (elmo-folder-append-messages-*-localdir): Renamed from
477         `elmo-folder-append-messages'.
478
479         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
480         from `elmo-folder-append-messages'.
481
482         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
483         `elmo-folder-append-messages'.
484
485         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
486         function.
487         (elmo-folder-append-messages-*-filter): Ditto.
488
489         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
490
491         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
492         (elmo-folder-append-messages-*-pipe): Renamed from
493         `elmo-folder-append-messages'.
494
495         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
496
497         * elmo-file.el (elmo-file-folder): Ditto.
498
499         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
500
501         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
502         from `elmo-folder-append-messages'
503
504 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
505
506         * elmo-map.el (elmo-location-map-setup): Change an argument
507         `locations' to optional.
508         (elmo-location-map-clear): Abolish.
509         (elmo-folder-clear): Follow the API change.
510
511         * elmo-pop3.el (elmo-folder-clear): Ditto.
512
513         * elmo-pop3.el (toplevel): Require elmo-map.
514         (elmo-pop3-folder): Inherit elmo-location-map and abolish
515         location-alist slot (All other related portions are changed).
516         (elmo-pop3-folder-use-uidl): New function.
517         (elmo-folder-msgdb-create): Don't sort message entities.
518         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
519         (elmo-pop3-number-to-size): Convert return value to number.
520         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
521         working buffer.
522
523         * elmo-map.el: Use `location-map' as a variable name for instance
524         instead of `mapper'.
525         (elmo-location-map-setup): Return location alist.
526         (elmo-location-map-update): Ditto.
527
528 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
529
530         * elmo-map.el (elmo-location-map): New class; split location and
531         number mapping from elmo-map-folder (All other related portions
532         are changed).
533
534         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
535         change.
536
537         * elmo-version.el (elmo-version): Up to 2.15.4.
538
539 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
540
541         * elmo-vars.el (elmo-use-hardlink): New user option.
542
543         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
544         `elmo-use-hardlink'.
545
546         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
547         killed-list.
548         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
549         instead of `*-internal'. Use `elmo-with-progress-display'.
550
551 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
552
553         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
554         `elmo-spam-process-messages-as-mbox'.
555
556         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
557
558 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
559
560         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
561         argument BUFFER of `call-process'.
562
563 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
564
565         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
566         args.
567         (elsp-bsfilter-list-spam-files): Ditto.
568
569 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
570
571         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
572         (elmo-spam-bsfilter-max-messages-per-process): New use option.
573         (elmo-spam-bsfilter-debug): Fix a group.
574         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
575         `--homedir'.
576         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
577         (elsp-bsfilter-list-spam-files): New function.
578         (elmo-spam-list-spam-messages): Define.
579         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
580         (elmo-spam-bsfilter-register-messages): New function.
581         (elmo-spam-register-spam-messages): Define.
582         (elmo-spam-register-good-messages): Ditto.
583
584         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
585
586         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
587         `nconc' and `consp'.
588
589 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
590
591         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
592         hash table to test whether a location is exists.
593
594 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
595
596         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
597         even if some error occurred.
598
599         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
600         meaningless unwind-protect.
601
602         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
603         start-number correctly.
604         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
605         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
606
607 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
608
609         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
610         (elmo-folder-initialize): Use it.
611         (elmo-global-flag-replace-referrer): New function.
612
613         * elmo.el (toplevel): Added autoload setting for
614         `elmo-global-flag-replace-referrer'.
615         (elmo-folder-rename): Rewrite the last change use
616         `elmo-global-flag-replace-referrer'.
617
618         * elmo-pipe.el (elmo-folder-rename): Call
619         `elmo-global-flag-replace-referrer'.
620
621 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
622
623         * elmo.el (elmo-folder-rename): Set meta data for global flags
624         follow the rename.
625
626 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
627
628         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
629         as 'not-loaded.
630         (elmo-folder-close): Ditto.
631         (elmo-filter-folder-number-list-loaded-p): New function.
632         (elmo-filter-folder-number-list): Check whether loaded or not.
633         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
634         of `elmo-filter-folder-number-list-internal'.
635         (elmo-folder-delete-messages): Ditto.
636         (elmo-folder-length): Check whether number-list is loaded or not.
637
638 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
639
640         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
641         field `real field' into each element of list.
642         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
643         (elmo-msgdb-message-entity-field): Ditto.
644         (modb-entity-ml-info-real-fields): New function.
645
646         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
647
648         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
649         `elmo-msgdb-extra-fields'.
650
651 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
652
653         * elmo-util.el (elmo-passwd-alist-load): Move point to min
654         position before read.
655
656 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
657
658         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
659         (elmo-global-flags-initialize): Ditto.
660
661 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
662
663         * elmo-archive.el (toplevel): Don't require emu, std11
664         and elmo-localdir.
665
666         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
667         definition.
668
669 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
670
671         * elmo.el (elmo-folder-confirm-appends): Display folder name.
672
673 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
674
675         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
676         literals.
677
678 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
679
680         * elmo-maildir.el (elmo-maildir-list-location): Reduce
681         `elmo-get-last-modification-time' call.
682
683 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
684
685         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
686         expression.
687         (elmo-maildir-set-mark): Ditto.
688         (elmo-maildir-delete-mark): Ditto.
689
690 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
691
692         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
693         optional argument `separators'.
694
695 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
696
697         * elmo.el (cache-changed): Abolish.
698         (status-changed): New signal.
699         (elmo-message-killed-p): New generic function and define for
700         elmo-folder.
701         (elmo-folder-recover-messages): Ditto.
702         (elmo-message-set-cached): Emit signal `status-changed' instead of
703         `cache-changed'.
704         (elmo-message-status): New macro.
705         (elmo-message-status-folder): Ditto.
706         (elmo-message-status-number): Ditto.
707         (elmo-message-status-set-flags): Ditto.
708         (elmo-message-status-set-killed): Ditto.
709         (elmo-message-status-flags): New function.
710         (elmo-message-status-cached-p): Ditto.
711         (elmo-message-status-killed-p): Ditto.
712
713         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
714         `status-changed' instead of `cache-changed'.
715         (elmo-folder-recover-messages): Define.
716         (elmo-message-killed-p): Ditto.
717
718         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
719         `status-changed' instead of `cache-changed'.
720
721         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
722         (elmo-message-killed-p): Define.
723         (elmo-folder-recover-messages): Ditto.
724
725         * elmo-version.el (elmo-version): Up to 2.15.3.
726
727 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
728
729         * elmo-signal.el (elmo-signal-bindings): Use cons to append
730         element into list.
731         (elmo-define-signal-handler): Add docstring.
732         (elmo-define-signal-filter): Ditto.
733
734         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
735
736 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
737
738         * elmo-util.el (elmo-flatten): Don't use recursive call.
739
740         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
741         assignment.
742         (elmo-folder-message-make-temp-files): Use `number-to-string'
743         instead of `int-to-string'.
744
745 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
746
747         * elmo-search.el (elmo-folder-delete-messages): Define.
748
749 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
750
751         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
752         customization type.
753         (elmo-mailing-list-count-spec-list): Ditto.
754
755         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
756         for `list-id'.
757
758 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
759
760         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
761         handling.
762
763 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
764
765         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
766         (elmo-mailing-list-count-spec-list): Ditto.
767
768         * elmo-util.el (elmo-map-until-success): New function.
769         (elmo-string-match-substring): Ditto.
770         (elmo-find-list-match-value): Ditto.
771
772         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
773         Removed.
774         (modb-entity-extract-ml-info-from-subject): Ditto.
775         (modb-entity-extract-ml-info-from-return-path): Ditto.
776         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
777         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
778         (modb-entity-extract-ml-info-from-mailman): Ditto.
779         (modb-entity-extract-mailing-list-info-functions): Ditto.
780         (modb-entity-extract-mailing-list-info): Rewrite with
781         `elmo-find-list-match-value'.
782
783 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
784
785         * elmo-net.el (elmo-network-session-retry-count): New user option.
786         (elmo-network-session-buffer-name): New internal function.
787         (elmo-network-session-buffer-create): Ditto.
788         (elmo-network-open-session): Retry open network session
789         `elmo-network-session-retry-count' times.
790
791 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
792
793         * elmo-util.el (elmo-list-filter): Rewritten.
794
795 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
796
797         * elmo-util.el (elmo-string-member): Allow symbol element in list.
798
799 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
800
801         * elmo-search.el (elmo-make-search-engine): Use prefix
802         `elmo-search-' for require symbol instead of `else-'.
803         (elmo-search-engine-extprog): New class.
804         (elmo-search-engine-do-search): Remove nil from argument
805         list. Added argument pattern to evaluate element as function.
806         (elmo-search-engine-local-file): Derived from
807         `elmo-search-engine-extprog'.
808         (elmo-search-engine-create-message-entity): Check existance of file.
809         (elmo-search-engine-fetch-message): Ditto.
810         (elmo-search-namazu-index): Follow the API change.
811         (elmo-search-grep-target): Ditto.
812
813 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
814
815         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
816         characters of working buffer.
817
818         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
819         Does not bind `default-mime-charset'.
820         (elmo-msgdb-create-message-entity-from-buffer): Removed
821         unnecessary local bind.
822
823         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
824         function.
825         (modb-entity-extract-mailing-list-info-functions): Added it.
826
827 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
828
829         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
830         when number and message-id are non-nil.
831
832         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
833
834         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
835         conditional steatment.
836         (elmo-pop3-auth-apop): Likewise.
837         (elmo-network-authenticate-session): Likewise.
838
839 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
840
841         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
842         symbol `fill-column'.
843         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
844         decode field value.
845
846         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
847         (elmo-decoded-field-body): Ditto.
848
849 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
850
851         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
852         `tokens' to `params'.
853
854 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
855
856         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
857         working buffer.
858
859 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
860
861         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
862         decide index.
863
864 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
865
866         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
867         Set default value as nil.
868         (toplevel): Register search engines by
869         `elmo-search-register-engine' if there are not defined.
870
871         * elmo.el (autoload): Added autoload setting for
872         `elmo-search-register-engine'.
873
874 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
875
876         * elmo.el (toplevel): `[' is redefined as the prefix of the search
877         folder instead of nmz folder.
878         (elmo-nmz-default-index-path): Added obsolete variable setting.
879         (elmo-nmz-index-alias-alist): Ditto.
880         (elmo-nmz-use-drive-letter): Ditto.
881
882         * elmo-search.el (elmo-search-register-engine): New function.
883
884         * elmo-nmz.el: Removed.
885
886         * elmo-version.el (elmo-version): Up to 2.15.2.
887
888 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
889
890         * elmo-search.el: New file.
891
892 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
893
894         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
895         condition `larger' and `smaller'.
896
897 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
898
899         * elmo-util.el (elmo-safe-filename): Rewrite to replace
900         `"' (double quote) into "_Q_".
901
902 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
903
904         * elmo-net.el (elmo-net-quote-chars): Abolish.
905         (elmo-net-format-quoted): Ditto.
906
907 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
908
909         * elmo.el (elmo-get-folder-function): New variable.
910         (elmo-get-folder): New function.
911         (elmo-folder-rename): Call `elmo-make-folder' with specified
912         mime-charset.
913
914         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
915         `elmo-make-folder'.
916         (elmo-split-subr): Ditto.
917
918         * elmo-multi.el (elmo-folder-initialize): Ditto.
919
920         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
921
922         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
923         (elmo-flag-get-folder): Ditto.
924
925         * elmo-filter.el (elmo-folder-initialize): Ditto.
926
927         * elmo-access.el (elmo-folder-initialize): Ditto.
928         (elmo-access-folder-update-children): Ditto.
929
930         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
931         (elmo-dop-queue-flush): Ditto.
932         (elmo-folder-append-buffer-dop-delayed): Ditto.
933         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
934         mime-charset.
935
936         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
937         instead of `elmo-make-folder'.
938         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
939         destination folder instead of send `elmo-folder-rename-internal'.
940
941         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
942         slot of subfolder instead of create it.
943
944 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
945
946         * elmo-util.el (elmo-collect-separators): New function.
947         (elmo-collect-separators-internal): Ditto.
948         (elmo-collect-trail-separators): Ditto.
949         (elmo-parse-separated-tokens): Ditto.
950         (elmo-parse-separated-tokens-internal): Ditto.
951         (elmo-quote-syntactical-element): Ditto.
952
953         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
954         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
955
956         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
957         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
958         (elmo-nntp-folder-list-subfolders): Quote a user name.
959
960         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
961         (elmo-net-parse-network): Abolish.
962         (elmo-net-folder-set-parameters): New function.
963         (elmo-folder-initialize): Follow the above change.
964
965         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
966         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
967         (elmo-folder-list-subfolders): Use
968         `elmo-quote-syntactical-element' instead of
969         `elmo-net-format-quoted' to quote mailbox and user name.
970
971 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
972
973         * elmo-util.el (elmo-token-valid-p): New function.
974         (elmo-parse-token): Add optional argument `requirement'.
975         (elmo-parse-prefixed-element): Likewise.
976
977         * elmo-net.el (elmo-net-quote-chars): Renamed from
978         `elmo-net-quote-chars-regexp'.
979         (elmo-net-format-quoted): Add optional argument `extra-chars'.
980
981         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
982         by info document. Check token `uidl' is started an alphabet.
983
984         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
985         by info document. Check token `user' is started an alphabet.
986
987         * elmo-imap4.el (elmo-folder-initialize): Ditto.
988         (elmo-folder-list-subfolders): Quote user.
989
990 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
991
992         * elmo-util.el (elmo-quoted-specials-list): New constant.
993         (elmo-quoted-token): New function.
994
995         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
996         (elmo-net-format-quoted): New function.
997         (elmo-net-parse-network): Ditto.
998         (elmo-folder-initialize): Use it.
999
1000         * elmo-nntp.el (elmo-folder-initialize): Use
1001         `elmo-net-parse-network' to parse network specification instead of
1002         `elmo-folder-initialize#elmo-net'.
1003
1004         * elmo-pop3.el (elmo-folder-initialize): Ditto.
1005
1006         * elmo-imap4.el (elmo-folder-initialize): Ditto.
1007         (elmo-folder-list-subfolders): Quote folder name by
1008         `elmo-net-format-quoted'.
1009
1010 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1011
1012         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
1013         (elmo-folder-search): Use it.
1014
1015 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1016
1017         * modb-standard.el (modb-standard-loaded-message-id): Use
1018         `elmo-msgdb-message-entity-field'.
1019
1020 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1021
1022         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
1023         without filename.
1024
1025 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
1026
1027         * elmo-util.el (elmo-set-auto-coding): New function.
1028         (elmo-object-load): Use it.
1029
1030 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1031
1032         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
1033         (elmo-time<): Define as alias of `elmo-time-less-p'.
1034         (elmo-time-to-datevec): New function.
1035
1036         * elmo-date.el (elmo-time-to-days): New function.
1037
1038 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1039
1040         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
1041         is not cons cell.
1042
1043 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1044
1045         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
1046         parenthesis.
1047
1048         * elmo-util.el (elmo-map-recursive): New function.
1049
1050         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
1051         (modb-entity-encode-string-recursive): Ditto.
1052
1053 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
1054
1055         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
1056         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
1057         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
1058         compare sequence number when last modified time is nil.
1059
1060 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
1061
1062         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
1063
1064         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
1065
1066 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
1067
1068         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
1069         modification time of the file.
1070
1071 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1072
1073         * elmo-util.el (elmo-condition-optimize): Discriminated against
1074         preserved fields, extra fields and the other weight.
1075
1076 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1077
1078         * modb-entity.el (initialize-instance): Define.
1079         (modb-entity-handler-mime-charset): New internal function.
1080         (modb-standard-entity-set-field): Use it.
1081         (elmo-msgdb-message-entity-field): Ditto.
1082         (elmo-msgdb-message-entity-field): Ditto.
1083
1084         * modb.el (elmo-msgdb-match-condition): Rewrite with
1085         `elmo-condition-match'.
1086         (elmo-msgdb-match-condition-primitive): New function.
1087
1088         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
1089         arguments `flags' and `numbers'.
1090         (elmo-msgdb-match-condition-primitive): Abolished (merged to
1091         `elmo-msgdb-message-match-condition').
1092         (modb-buffer-entity-handler): New class.
1093
1094         * elmo.el (elmo-folder-search): Optimize condition to use
1095         `elmo-condition-optimize'.
1096         (elmo-message-buffer-match-condition): New function.
1097         (elmo-message-match-condition): Use
1098         `elmo-message-buffer-match-condition' instead of
1099         `elmo-buffer-field-condition-match'.
1100
1101         * elmo-util.el (elmo-condition-match): New function.
1102         (elmo-condition-optimize): Ditto.
1103         (elmo-buffer-field-primitive-condition-match): Abolish.
1104         (elmo-buffer-field-condition-match): Ditto.
1105
1106         * elmo-archive.el (elmo-archive-field-condition-match): Use
1107         `elmo-message-buffer-match-condition' instead of
1108         `elmo-buffer-field-condition-match'.
1109
1110 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1111
1112         * elmo-flag.el (elmo-global-flags-initialize): Check the
1113         existence of the flag directory.
1114
1115 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1116
1117         * elmo-access.el (elmo-folder-initialize): Call
1118         `elmo-multi-connect-signals'.
1119
1120         * elmo-pipe.el (elmo-folder-close): Define.
1121
1122         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
1123         children folders.
1124
1125         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
1126         with target folder.
1127
1128         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
1129         `number'.
1130
1131         * elmo-multi.el (elmo-message-entity): Don't use return value of
1132         `elmo-message-entity-set-number'.
1133
1134 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1135
1136         * modb.el (modb-generic): Added slot `mime-charset'.
1137
1138         * modb-standard.el (modb-standard): Added slot `overview-handler'.
1139         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
1140         and `modb-entity-handler-dump-parameters'.
1141         (modb-standard-default-entity-handler): Abolish.
1142         (elmo-msgdb-message-entity-handler): Save created handler by
1143         instance slot.
1144
1145         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
1146         (modb-entity-handler-list-parameters): New method.
1147         (modb-entity-handler-equal-p): New function.
1148         (modb-entity-handler-dump-parameters): Ditto.
1149         (modb-entity-parse-address-string): Encode return value.
1150         (modb-entity-make-address-string): Decode argument value.
1151         (modb-entity-decode-string-recursive): New function.
1152         (modb-entity-encode-string-recursive): Ditto.
1153         (modb-standard-entity-normalizer): Set to encode field value.
1154         (modb-standard-entity-specializer): Follow the above change.
1155         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
1156         mime-charset of handler.
1157         (elmo-msgdb-message-entity-field): Ditto.
1158         (elmo-msgdb-copy-message-entity): Fixed reference to internal
1159         structure.
1160         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
1161
1162         * elmo.el (elmo-folder): Added slot `mime-charset'.
1163         (elmo-make-folder): Added argument `mime-charset'.
1164         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
1165         `mime-charest'.
1166
1167         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
1168         (elmo-make-msgdb): Likewise.
1169
1170         * elmo-internal.el (elmo-internal-folder-initialize): Call
1171         `luna-make-entity' with :mime-charset parameter.
1172
1173 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
1174
1175         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
1176         encoded words in `from' and `subject' field.
1177
1178 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1179
1180         * modb.el (elmo-msgdb-message-field): Add argument `type'.
1181         (elmo-msgdb-match-condition): Get handler from entity instead of
1182         msgdb.
1183
1184         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
1185         (modb-standard-load-entity): Treat new file format.
1186         (modb-standard-save-entity-1): Save as new file format.
1187         (modb-standard-save-entity): Split messages into section here.
1188         (elmo-msgdb-message-field): Follow the API change.
1189         (modb-standard-default-entity-handler): New internal variable.
1190         (elmo-msgdb-message-entity-handler): Define.
1191
1192         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1193         to `elmo-vars.el'.
1194         (modb-entity-field-extractor-alist): New user option.
1195         (elmo-msgdb-message-entity-field): Removed argument `decode' and
1196         added argument `type'.
1197         (elmo-msgdb-copy-message-entity): Add optional argument
1198         `make-handler'.
1199         (modb-set-field-converter): New function.
1200         (modb-convert-field-value): Ditto.
1201         (modb-entity-string-decoder): Ditto.
1202         (modb-entity-string-encoder): Ditto.
1203         (modb-entity-parse-date-string): Ditto.
1204         (modb-entity-make-date-string): Ditto.
1205         (modb-entity-mime-decoder): Ditto.
1206         (modb-entity-mime-encoder): Ditto.
1207         (modb-entity-address-list-decoder): Ditto.
1208         (modb-entity-address-list-encoder): Ditto.
1209         (modb-entity-parse-address-string): Ditto.
1210         (modb-entity-make-address-string): Ditto.
1211         (modb-entity-create-field-indices): Ditto.
1212         (modb-legacy-entity-field-slots): New constant.
1213         (modb-legacy-entity-field-indices): Ditto.
1214         (modb-legacy-entity-normalizer): New variable.
1215         (modb-legacy-entity-specializer): Ditto.
1216         (modb-legacy-entity-field-index): New macro.
1217         (modb-legacy-entity-set-field): New function.
1218         (modb-legacy-make-message-entity): Rewrite.
1219         (elmo-msgdb-create-message-entity-from-buffer): Use
1220         `elmo-msgdb-get-references-from-buffer'. Use
1221         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
1222         Use `modb-legacy-entity-set-field' instead of
1223         `elmo-msgdb-message-entity-set-field'.
1224         (elmo-msgdb-message-entity-field): Rewrite.
1225         (elmo-msgdb-message-entity-set-field): Ditto.
1226         (elmo-msgdb-copy-message-entity): Make new entity by
1227         `make-handler' if it specified.
1228         (elmo-msgdb-message-match-condition): Define a method of
1229         `modb-entity-handler' and follow the API change.
1230         (modb-standard-entity-handler): New class.
1231         (modb-entity-extract-ml-info-from-x-sequence): New function.
1232         (modb-entity-extract-ml-info-from-subject): Ditto.
1233         (modb-entity-extract-ml-info-from-return-path): Ditto.
1234         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
1235         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
1236         (modb-entity-extract-mailing-list-info): Ditto.
1237         (modb-entity-extract-mailing-list-info-functions): New variable.
1238
1239         * elmo.el (elmo-message-field): Add optional argument `type'.
1240
1241         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1242         from `modb-entity.el'.
1243
1244         * elmo-util.el (elmo-object-load): Decode by coding-system from
1245         `set-auto-coding-function'.
1246         (elmo-object-save): Use `detect-mime-charset-region' and add
1247         coding cookie if encode.
1248         (elmo-msgdb-get-references-from-buffer): New function.
1249         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
1250
1251         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
1252
1253         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
1254         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
1255         instead of `shimbun-make-header' and follow the API change.
1256         (elmo-shimbun-update-overview): Follow the API change.
1257         (elmo-map-folder-list-message-locations): Ditto.
1258
1259         * elmo-pipe.el (elmo-message-field): Ditto.
1260
1261         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
1262         Ditto.
1263
1264         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1265
1266         * elmo-multi.el (elmo-message-field): Ditto.
1267
1268         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
1269         (elmo-msgdb-sort-by-date): Ditto.
1270         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
1271         `elmo-message-entity-field'.
1272         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
1273         change.
1274         (elmo-msgdb-overview-entity-get-from): Ditto.
1275         (elmo-msgdb-overview-entity-get-subject): Ditto.
1276         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1277         (elmo-msgdb-overview-entity-get-date): Ditto.
1278         (elmo-msgdb-overview-entity-get-to): Ditto.
1279         (elmo-msgdb-overview-entity-get-cc): Ditto.
1280
1281         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1282         (elmo-mime-collect-message/partial-pieces): Ditto.
1283
1284         * elmo-filter.el (elmo-message-field): Ditto.
1285
1286         * elmo-date.el (elmo-datevec-to-time): New function.
1287         (elmo-time-parse-date-string): Ditto.
1288         (elmo-time-make-date-string): Ditto.
1289         (elmo-time<): Ditto.
1290
1291         * elmo-version.el (elmo-version): Up to 2.15.1.
1292
1293 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
1294
1295         * elmo-flag.el (elmo-global-flags-initialize): Don't include
1296         member of elmo-local-flags.
1297
1298 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
1299
1300         * elmo-version.el (elmo-version): Up to 2.15.0.
1301
1302 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1303
1304         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
1305         `ignore-msgdb' is non-nil.
1306
1307 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1308
1309         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
1310         (elmo-condition-in-msgdb-p): Ditto.
1311         (elmo-file-field-primitive-condition-match): Ditto.
1312         (elmo-file-field-condition-match): Ditto.
1313
1314         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
1315
1316 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1317
1318         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
1319         subdirectories here.
1320         (elmo-global-flags-initialize): New function.
1321
1322         * elmo.el (toplevel): Added autoload setting for
1323         `elmo-global-flags-initialize'.
1324
1325 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
1326
1327         * elmo.el (message-number-changed): Define new signal.
1328         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
1329         message-number-changed signal.
1330         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1331         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1332         Respect `elmo-pack-number-check-strict'.
1333
1334 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1335
1336         * elmo-signal.el (elmo-connect-signal): Document.
1337         (elmo-emit-signal): Ditto.
1338         (elmo-emit-signal): It should pass source argument to filter and
1339         handler, not slot-source.
1340
1341 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1342
1343         * modb.el (elmo-msgdb-update-entity): New API and define generic
1344         implement.
1345
1346         * modb-standard.el (elmo-msgdb-update-entity): Define.
1347
1348         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
1349         API and define generic implement.
1350
1351         * elmo.el (update-overview): New singnal.
1352
1353         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
1354         `elmo-msgdb-update-entity' and emit signal `update-overview'.
1355         (elmo-message-entity-parent): Define.
1356
1357         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
1358         `update-overview'.
1359
1360         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
1361
1362         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
1363
1364 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
1365
1366         * elmo.el (elmo-folder-synchronize): Sort the return value of
1367         `elmo-list-diff'.
1368
1369         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
1370         list.
1371
1372 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1373
1374         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
1375         `default-enable-multibyte-characters'.
1376         (elmo-object-load): Use `with-temp-buffer' instead of
1377         `elmo-set-work-buf'.
1378         (elmo-object-save): Ditto.
1379         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
1380         `elmo-set-work-buf'.
1381         (elmo-decoded-field-body): Ditto.
1382
1383         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
1384
1385         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
1386         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
1387
1388         * elmo-version.el (elmo-version): Up to 2.13.3.
1389
1390 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
1391
1392         * elmo-util.el (elmo-list-diff): Fix the last change.
1393         Reverse order of result lists.
1394
1395 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
1396
1397         * modb-standard.el (elmo-msgdb-set-flag): Use
1398         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
1399         (elmo-msgdb-unset-flag): Ditto.
1400
1401         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
1402         `elmo-list-diff'.
1403
1404         * elmo-util.el (elmo-list-diff): Rewrite.
1405         (elmo-list-diff-nonsortable): New function.
1406
1407 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
1408
1409         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
1410         `elmo-multibypte-buffer-name'.  All referers are updated.
1411
1412 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1413
1414         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
1415         (elmo-mime-entity-fragment-p): New function.
1416         (mime-elmo-buffer-entity): Added slot `reassembled'.
1417         (elmo-message-mime-entity): Added 4th argument `reassemble'.
1418         (elmo-message-mime-entity-internal): New function (renamed from
1419         `elmo-message-mime-entity').
1420         (elmo-mime-inherit-field-list-from-enclosed): New constant.
1421         (elmo-mime-make-reassembled-mime-entity): New function.
1422         (elmo-message-reassembled-mime-entity): Ditto.
1423         (elmo-mime-collect-message/partial-pieces): Ditto.
1424
1425 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1426
1427         * elmo.el (elmo-message-fetch-string): Disable multibyte.
1428
1429         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
1430         (elmo-with-enable-multibyte): New macro.
1431
1432         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
1433
1434 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1435
1436         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
1437         argument `number'.
1438         (elmo-filter-connect-signals): Follow the above change.
1439
1440 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
1441
1442         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
1443
1444         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
1445         that only the first flag is used.
1446
1447 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1448
1449         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
1450         if available.
1451
1452 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1453
1454         * elmo-signal.el: New file.
1455
1456         * elmo.el (toplevel): Require elmo-signal.
1457         (flag-changing, flag-changed, cache-changed): New signal.
1458         (elmo-folder): Remove slog `handlers'.
1459         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1460         `elmo-folder-notify-event'.
1461         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1462         (elmo-folder-unset-flag): Ditto.
1463         (elmo-event-handler): Abolish.
1464         (elmo-event-handler-flag-changed): Ditto.
1465         (elmo-event-handler-cache-changed): Ditto.
1466         (elmo-folder-add-handler): Ditto.
1467         (elmo-folder-remove-handler): Ditto.
1468         (elmo-folder-notify-event): Ditto.
1469
1470         * elmo-pipe.el (toplevel): Require elmo-signal.
1471         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1472         (elmo-pipe-connect-signals): New function.
1473         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1474         (elmo-folder-set-flag): Ditto.
1475         (elmo-folder-unset-flag): Ditto.
1476         (elmo-message-set-cached): Ditto.
1477
1478         * elmo-multi.el (toplevel): Require elmo-signal.
1479         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1480         (elmo-multi-connect-signals): New function.
1481         (elmo-multi-map-numbers): Ditto.
1482         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1483         (elmo-message-fetch): Ditto.
1484         (elmo-folder-set-flag): Ditto.
1485         (elmo-folder-unset-flag): Ditto.
1486
1487         * elmo-filter.el (toplevel): Require elmo-signal.
1488         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1489         (elmo-filter-connect-signals): New function.
1490         (elmo-filter-add-flag-count): Ditto.
1491         (elmo-message-fetch): Does not call
1492         `elmo-filter-folder-countup-message-flags' and
1493         `elmo-folder-notify-event'.
1494         (elmo-message-set-cached): Ditto.
1495         (elmo-folder-set-flag): Ditto.
1496         (elmo-folder-unset-flag): Ditto.
1497
1498         * elmo-version.el (elmo-version): Up to 2.13.2.
1499
1500 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1501
1502         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1503         `flags'.
1504
1505 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1506
1507         * elmo-filter.el (elmo-message-set-cached): Call
1508         `elmo-folder-notify-event' with event `cache-changed'.
1509
1510         * elmo-multi.el (elmo-message-set-cached): Ditto.
1511
1512         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1513
1514 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1515
1516         * elmo.el (elmo-folder-encache): Abolish.
1517
1518 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1519
1520         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1521         (elmo-folder-next-message-number-dop): Return appropriate negative
1522         integer.
1523
1524 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1525
1526         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1527         clearing pending operations.
1528         (elmo-folder-next-message-number-dop): Return appropriate negative
1529         integer.
1530
1531 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1532
1533         * elmo.el (toplevel): Added autoload setting for `md5'.
1534         (elmo-msgdb-path-encode-threshold): New user option.
1535         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1536         longer than `elmo-msgdb-path-encode-threshold'.
1537
1538         * elmo-flag.el (elmo-global-mark-migrate): Use
1539         `elmo-folder-expand-msgdb-path' instead of
1540         `elmo-folder-msgdb-path'.
1541
1542 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1543
1544         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1545         element of the difference is nil.
1546
1547 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1548
1549         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1550         to the check logic of file systems which are weak in colon character.
1551
1552 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1553
1554         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1555
1556 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1557
1558         * elmo-maildir.el (elmo-maildir-move-file): New function.
1559         (elmo-folder-append-buffer): Use it.
1560         (elmo-folder-append-messages): Ditto.
1561         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1562
1563         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1564         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1565
1566         * elmo-maildir.el (elmo-maildir-separator): New user option.
1567         (elmo-maildir-adjust-separator): New macro.
1568         (elmo-maildir-list-location): Use it.
1569         (elmo-maildir-update-current): Ditto.
1570         (elmo-maildir-set-mark): Ditto.
1571         (elmo-maildir-delete-mark): Ditto.
1572         (These changes are based on Hiroya Murata's patch [wl: 13437])
1573
1574 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1575
1576         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1577
1578 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1579
1580         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1581         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1582         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1583
1584 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1585
1586         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1587         Use `with-temp-buffer'.
1588
1589 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1590
1591         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1592
1593         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1594         `wl-read-search-condition').
1595         (elmo-read-search-condition-internal): Likewise.
1596
1597         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1598         (elmo-flag-valid-p): New function.
1599         (elmo-folder-initialize): Check flag name is valid.
1600
1601 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1602
1603         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1604         delimiter to obtain root mailbox itself.
1605
1606 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1607
1608         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1609         type mismatch.
1610
1611 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1612
1613         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1614         as t.
1615
1616 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1617
1618         * elmo-shimbun.el (toplevel): Require cl at compile.
1619
1620         * elmo-nntp.el (toplevel): Ditto.
1621
1622         * elmo-nmz.el (toplevel): Ditto.
1623
1624         * elmo-multi.el (toplevel): Ditto.
1625
1626         * elmo-file.el (toplevel): Ditto.
1627
1628         * elmo-dop.el (toplevel): Ditto.
1629
1630         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1631
1632 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1633
1634         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1635         as nil.
1636
1637         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1638         size of elmo-message-fetch-internal is 0 byte.
1639
1640 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1641
1642         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1643
1644 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1645
1646         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1647         always plugged.
1648
1649 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1650
1651         * elmo-maildir.el (elmo-map-message-fetch): Call
1652         `elmo-map-folder-set-flag'.
1653
1654         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1655         (elmo-message-fetch): Merge from
1656         `elmo-message-fetch-with-cache-process'.
1657
1658         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1659         (elmo-message-fetch): Define.
1660
1661         * elmo-nntp.el (elmo-message-fetch): Renamed from
1662         `elmo-message-fetch-with-cache-process'.
1663
1664         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1665         (elmo-message-fetch): Define.
1666
1667         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1668         search-key.
1669
1670         * elmo-shimbun.el (shimbun-mua-search-id): Use
1671         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1672         (elmo-shimbun-folder-shimbun-header): Ditto.
1673         (elmo-shimbun-get-headers): Ditto.
1674         (elmo-shimbun-update-overview): Ditto.
1675
1676         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1677
1678         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1679         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1680
1681 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1682
1683         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1684         message is cached.
1685         (elmo-message-fetch-string): Fixed argument.
1686
1687 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1688
1689         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1690         exchange order of arguments `section' and `unread'.
1691         (elmo-message-encache): Follow the API change.
1692         (elmo-message-match-condition): Ditto.
1693         (elmo-generic-folder-append-messages): Ditto.
1694         (elmo-message-fetch-string): New function.
1695
1696         * elmo-split.el (elmo-split-subr): Ditto.
1697
1698         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1699
1700         * elmo-pipe.el (elmo-message-fetch): Ditto.
1701
1702         * elmo-multi.el (elmo-message-fetch): Ditto.
1703
1704         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1705
1706         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1707
1708         * elmo-filter.el (elmo-message-fetch): Ditto.
1709
1710         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1711
1712         * elmo-imap4.el (mime-imap-location-section-body): Use
1713         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1714         follow the API change.
1715
1716 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1717
1718         * elmo-access.el: New file.
1719
1720         * elmo-null.el: Ditto.
1721
1722         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1723
1724 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1725
1726         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1727         (elmo-network-session): New attribute `last-accessed'.
1728         (elmo-network-get-session): Discard network cache if elapsed time
1729         since last-accessed is larger than elmo-network-session-idle-timeout.
1730
1731 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1732
1733         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1734         and added `number', `require-entireness'.
1735         (elmo-find-fetch-strategy): Rewrite.
1736         (elmo-message-fetch): Unset `unread' flag when argument unread is
1737         non-nil.
1738
1739         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1740
1741         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1742         (elmo-message-fetch): Notify event `flag-changed'.
1743
1744         * elmo-pipe.el: Likewise.
1745
1746         * elmo-mime.el (elmo-mime-entity): New class.
1747         (elmo-mime-entity-display-p): New generic function.
1748         (elmo-mime-entity-display): Ditto.
1749         (elmo-mime-entity-display-as-is): Ditto.
1750         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1751         elmo-mime-entity.
1752         (elmo-make-mime-message-location): Removed.
1753         (elmo-mime-message-display): Ditto.
1754         (elmo-mime-display-as-is): Ditto.
1755         (elmo-message-mime-entity): New function.
1756
1757         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1758
1759         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1760         change.
1761         (elmo-message-fetch): Re-count flagged message number and notify
1762         event `flag-changed'.
1763
1764         * elmo-version.el (elmo-version): Up to 2.13.1.
1765
1766 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1767
1768         * elmo-filter.el (elmo-message-field): Define.
1769         (elmo-message-set-field): Ditto.
1770
1771 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1772
1773         * elmo.el (elmo-message-set-cached): Call
1774         `elmo-folder-notify-event' with cache-changed.
1775         (elmo-event-handler-cache-changed): New generic function.
1776
1777 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1778
1779         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1780         instead of elmo-add-name-to-file.
1781         (elmo-folder-append-messages): Ditto.
1782
1783 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1784
1785         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1786
1787 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1788
1789         * elmo-version.el (elmo-version): Up to 2.13.0.
1790
1791         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1792         `auto'.
1793
1794         * modb-standard.el (modb-standard-economize-entity-size): Changed
1795         default value to `t'.
1796
1797         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1798         `standard'.
1799
1800         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1801         after parsing greeting string.
1802
1803 2004-11-23  Daishi Kato <daishi@axlight.com>
1804
1805         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1806         New user option.
1807         (elmo-spam-spamoracle-call): Use it.
1808
1809 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1810
1811         * elmo.el (elmo-message-accessible-p): Message in dop spool
1812         is accessible.
1813
1814 2004-11-23  Daishi Kato <daishi@axlight.com>
1815
1816         * elsp-spamoracle.el: New file.
1817
1818 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1819
1820         * elmo.el (elmo-message-flags-for-append): New function.
1821         (elmo-generic-folder-append-messages): Use it.
1822
1823         * elmo-split.el (elmo-split-subr): Ditto.
1824
1825         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1826         `flags' and use elmo-folder-append-buffer instead of
1827         write-region-as-binary.
1828         (elmo-dop-filter-pending-messages): New function.
1829         (elmo-folder-append-buffer-dop): Call
1830         elmo-dop-spool-folder-append-buffer with `flag'.
1831         (elmo-folder-set-flag-dop): Filter messages by
1832         elmo-dop-filter-pending-messages.
1833         (elmo-folder-unset-flag-dop): Ditto.
1834         (elmo-folder-append-buffer-dop-delayed): Use
1835         elmo-message-flags-for-append to get flags of the message and
1836         simplify.
1837
1838 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1839
1840         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1841
1842 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1843
1844         * elmo.el (elmo-folder): Added handlers slot.
1845         (elmo-event-handler): New class.
1846         (elmo-event-handler-flag-changed): New API.
1847         (elmo-folder-add-handler): New function.
1848         (elmo-folder-remove-handler): Ditto.
1849         (elmo-folder-notify-event): Ditto.
1850         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1851         `flag-changed'.
1852         (elmo-folder-unset-flag): Ditto.
1853
1854         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1855         (elmo-folder-unset-flag): Ditto.
1856
1857         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1858         (elmo-folder-unset-flag): Ditto.
1859
1860         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1861         (elmo-folder-unset-flag): Ditto.
1862
1863         * elmo-version.el (elmo-version): Up to 2.11.33.
1864
1865 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1866
1867         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1868
1869 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1870
1871         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1872
1873         * elmo-flag.el (elmo-folder-unset-flag): Define.
1874         (elmo-global-flag-detach): Do process when the flag is not target
1875         flag.
1876
1877 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1878
1879         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1880         variable.
1881         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1882
1883 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1884
1885         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1886         function.
1887         (elmo-folder-delete-messages): Detach messages before delete
1888         messages from target folder.
1889         (elmo-folder-detach-messages): Set updated number-list to slot.
1890
1891 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1892
1893         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1894
1895 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1896
1897         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1898
1899 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1900
1901         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1902         internal use only).
1903         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1904         not modified.
1905         (elmo-folder-delete-messages): Define.
1906         (elmo-folder-move-messages): Don't call
1907         `elmo-folder-detach-messages'.
1908         (elmo-folder-synchronize): Rewrite.
1909         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1910
1911         * elmo-util.el (elmo-last): New function.
1912         (elmo-set-list): Ditto.
1913         (elmo-number-set-delete-list): Ditto.
1914         (elmo-number-set-delete): Ditto.
1915
1916         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1917
1918         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1919         `elmo-folder-delete-messages' and don't delete location map.
1920         (elmo-folder-detach-messages): Define.
1921
1922         * elmo-imap4.el (elmo-folder-delete): Use
1923         `elmo-folder-delete-messages-internal' instead of
1924         `elmo-folder-delete-messages'.
1925
1926         * elmo-filter.el (elmo-folder-delete-messages): Call
1927         `elmo-folder-detach-messages'.
1928         (elmo-folder-detach-messages): Don't call
1929         `elmo-folder-detach-messages' for target folder.
1930
1931         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1932         message deletion is succeeded.
1933
1934         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1935
1936         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1937         from `elmo-folder-delete-messages'.
1938
1939         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1940
1941         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1942
1943         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1944
1945         * elmo-version.el (elmo-version): Up to 2.11.32.
1946
1947 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1948
1949         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1950         (elmo-global-flag-list): Added obsolete variable setting.
1951
1952         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1953
1954         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1955         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1956         `elmo-mime-display-header-analysis' is nil.
1957
1958         * elmo-flag.el (elmo-global-flags): Renamed from
1959         `elmo-global-flag-list' (All other related portions are changed).
1960         (elmo-local-flags): New variable.
1961         (elmo-local-flag-p): New function.
1962         (elmo-global-flag-set-internal): Cause an error when flag is not
1963         global.
1964
1965 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1966
1967         * elmo-util.el (elmo-concat-path): Treat empty path.
1968
1969 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1970
1971         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1972         field-or-fields).
1973         (elmo-split-address-match): Ditto.
1974         (elmo-split-equal): Ditto.
1975         (elmo-split-match): Ditto.
1976
1977 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1978
1979         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1980         (elmo-generic-folder-append-messages): If src message exists but
1981         has no flag, pass (read) for the FLAG argument of
1982         `elmo-folder-append-buffer'. Otherwise, pass nil.
1983
1984         * elmo-split.el (elmo-split-subr): Likewise.
1985
1986         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1987
1988         * elmo-multi.el (elmo-message-flags): Ditto.
1989
1990         * elmo-filter.el (elmo-message-flags): Ditto.
1991
1992         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1993         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1994         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1995         
1996 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1997
1998         * elmo-split.el (elmo-split-rule): Update comment.
1999         (elmo-split-address-equal): Allow 2nd argument to be a list.
2000         (elmo-split-address-match): Ditto.
2001         (elmo-split-equal): Ditto.
2002         (elmo-split-match): Ditto.
2003
2004 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
2005
2006         * elmo.el (elmo-folder-append-buffer): Fix docstring.
2007         (elmo-folder-append-msgdb): Don't treat `read'.
2008         (elmo-message-flags): Don't return `read'.
2009
2010         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
2011         (elmo-folder-unset-read-delayed): Ditto.
2012
2013         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
2014
2015 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
2016
2017         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
2018         deletion.
2019
2020 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2021
2022         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
2023         header.
2024
2025 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
2026
2027         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
2028         here.
2029         (elmo-msgdb-save): Bind inhibit-quit.
2030         (modb-standard-message-entity): Ditto.
2031
2032 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
2033
2034         * elmo-database.el: No need to require elmo-msgdb.
2035
2036 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2037
2038         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
2039         instead of `elmo-list-subdirectories'.
2040
2041 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
2042
2043         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
2044         group entry.
2045         (elmo-folder-exists-p): "[" is empty.
2046         (elmo-folder-list-subfolders): Define.
2047         (elmo-folder-have-subfolder-p): Ditto.
2048
2049 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
2050
2051         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
2052
2053 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
2054
2055         * elmo-filter.el (elmo-folder-local-p): Define.
2056
2057 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2058
2059         * modb-standard.el (modb-standard-loaded-message-id): Return nil
2060         when entity is garbaged.
2061         (modb-standard-save-entity-1): Don't modify the original entity.
2062
2063 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
2064
2065         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
2066
2067 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2068
2069         * elmo.el (elmo-strict-folder-diff): Use
2070         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
2071
2072 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
2073
2074         * modb.el (elmo-msgdb-flag-available-p): New generic function.
2075         (elmo-msgdb-message-number): Ditto.
2076         (elmo-msgdb-message-field): Ditto.
2077
2078         * modb-standard.el (modb-standard-economize-entity-size): New user
2079         option.
2080         (modb-standard-loaded-message-id): New inline function.
2081         (modb-standard-load-entity): Use it.
2082         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
2083         throw message-id string away.
2084         (elmo-msgdb-flag-available-p): Define.
2085         (elmo-msgdb-message-number): Ditto.
2086         (elmo-msgdb-message-field): Ditto.
2087
2088         * modb-legacy.el (modb-legacy-flag-list): Fix typo
2089         (suppoted -> supported).
2090         (modb-legacy-supported-flag-p): Ditto.
2091         (elmo-msgdb-set-flag): Ditto.
2092         (elmo-msgdb-unset-flag): Ditto.
2093         (elmo-msgdb-flag-available-p): Define.
2094
2095         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
2096         is `t', treat it as legacy entity.
2097         
2098         * elmo.el (elmo-message-flag-available-p): New generic function.
2099         (elmo-message-number): Ditto.
2100         (elmo-message-field): Use `elmo-msgdb-message-field'.
2101
2102         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
2103
2104         * elmo-pipe.el (elmo-message-flag-available-p): Define.
2105         (elmo-message-number): Ditto.
2106
2107         * elmo-multi.el (elmo-message-number): Define.
2108         (elmo-message-flag-available-p): Ditto.
2109
2110         * elmo-filter.el (elmo-message-flag-available-p): Define.
2111         (elmo-message-number): Ditto.
2112
2113         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
2114         (elmo-folder-initialize): Load `max-number'.
2115         (elmo-folder-commit): Save it.
2116         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
2117         (elmo-global-flag-set-internal): Set up max-number slot.
2118
2119 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
2120
2121         * elmo-version.el (elmo-version): Up to 2.11.31.
2122
2123 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
2124
2125         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
2126         unibyte string of the current buffer for the argument of `md5'
2127         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
2128
2129 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2130
2131         * modb-legacy.el (modb-legacy-flag-list): New constant.
2132         (modb-legacy-suppoted-flag-p): New internal function.
2133         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
2134         (elmo-msgdb-unset-flag): Ditto.
2135
2136 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
2137
2138         * elmo.el (elmo-make-folder): Remove text properties for prefix.
2139
2140         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
2141         from msgdb.
2142
2143 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2144
2145         * elmo-multi.el (elmo-folder-count-flags): Changed return value
2146         (follow the API change).
2147
2148         * elmo-filter.el (elmo-folder-count-flags): Ditto.
2149
2150 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
2151
2152         * modb-standard.el (modb-standard-digest-flags): Abolish.
2153         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
2154
2155         * elmo-vars.el (elmo-digest-flags): New variable.
2156         (elmo-preserved-flags): Moved from elmo-flag.el.
2157
2158         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
2159         (elmo-imap4-flag-to-imap-criteria): Ditto.
2160         (elmo-imap4-folder-list-flagged): Use it.
2161
2162         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
2163
2164         * elmo.el (elmo-folder-count-flags): Changed return value.
2165
2166         * elmo-flag.el (elmo-preserved-flags): New variable.
2167         (elmo-get-global-flags): Use it.
2168
2169         * modb-standard.el (modb-standard-digest-flags): New variable.
2170         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
2171         Changed behavior of `any'.
2172
2173         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
2174         which are defined the Internet draft
2175         (draft-melnikov-imap-keywords-03.txt).
2176         (elmo-imap4-flags-to-imap): New function.
2177         (elmo-folder-append-buffer): Use it.
2178
2179         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
2180         in the docstring.
2181
2182         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
2183         avoid the bug of Emacs 21.3.
2184
2185 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
2186
2187         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
2188         function find-coding-system does not exist.
2189
2190 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2191
2192         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
2193         parsing.
2194
2195 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2196
2197         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
2198         response codes.
2199
2200 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2201
2202         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
2203         (elmo-network-close-session): Follow the changes in
2204         `elmo-pop3-read-response'.
2205         (elmo-pop3-auth-user): Ditto.
2206         (elmo-pop3-auth-apop): Ditto.
2207         (elmo-network-initialize-session): Ditto.
2208         (elmo-network-authenticate-session): Ditto.
2209         (elmo-network-setup-session): Ditto.
2210         (elmo-folder-status): Ditto.
2211         (elmo-message-fetch-plugged): Ditto.
2212         (elmo-pop3-delete-msg): Ditto.
2213
2214 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
2215
2216         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
2217         on failure.
2218
2219 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2220
2221         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
2222         style.
2223         (elmo-bind-directory): Ditto.
2224
2225 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2226
2227         * elmo.el (elmo-folder-append-messages): Note on return value.
2228         * elmo-archive.el (elmo-folder-append-messages): Don't return
2229         message numbers which could not be appended.
2230
2231 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2232
2233         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
2234
2235 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2236
2237         * elmo-version.el (elmo-version): Up to 2.11.30.
2238
2239 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2240
2241         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
2242         `mask'.
2243
2244         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
2245
2246         * elmo-multi.el (elmo-folder-synchronize): Likewise.
2247         (elmo-multi-split-numbers): Add elmo-folder object into each
2248         element of return value at first.
2249         (elmo-folder-delete-messages): Follow the above change.
2250         (elmo-folder-detach-messages): Ditto.
2251
2252         * elmo-filter.el (elmo-folder-synchronize): Minimize message
2253         number which is synchronized in target folder.
2254
2255 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2256
2257         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
2258         Change default value to symbol `all'.
2259         (elmo-map-message-fetch): Change condition to update overview
2260         follow the above.
2261
2262 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2263
2264         * elmo-shimbun.el (elmo-map-message-fetch): Change default
2265         behavior to update overview.
2266         (elmo-shimbun-update-overview-folder-list): Note it.
2267
2268 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2269
2270         * modb-standard.el (modb-standard-message-entity): Avoid infinite
2271         recursive call.
2272
2273 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2274
2275         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
2276         buffer-disable-undo, it is unnecessary.
2277         (elmo-spam-register-good-messages): Ditto.
2278
2279         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2280         Ditto.
2281
2282         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
2283
2284 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2285
2286         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
2287         (elmo-set-work-buf): Use set-buffer-multibyte instead of
2288         elmo-set-buffer-multibyte.
2289         (elmo-object-load): Ditto.
2290         (elmo-save-buffer): Ditto.
2291         (elmo-delete-char): Ditto.
2292         (elmo-file-field-primitive-condition-match): Ditto.
2293         (elmo-mime-string): Ditto.
2294
2295         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
2296         (elmo-archive-field-condition-match): Ditto.
2297
2298         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
2299
2300         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
2301
2302         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
2303         (elmo-nntp-msgdb-create-message): Ditto.
2304
2305         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2306
2307         * elmo.el (elmo-message-match-condition): Ditto.
2308         (elmo-message-match-condition): Ditto.
2309
2310         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2311         Ditto.
2312
2313         * elmo-version.el (elmo-version): Up to 2.11.29.
2314
2315         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
2316         (elsp-header): New backend.
2317
2318         * elmo-util.el (elmo-decoded-field-body): New function.
2319
2320 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2321
2322         * elmo-version.el (elmo-version): Up to 2.11.28.
2323
2324 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2325
2326         * elmo-filter.el: Rewrite.
2327
2328         * elmo-version.el (elmo-version): Up to 2.11.27.
2329
2330 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
2331
2332         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
2333         msgdb path for the localdir folder with absolute path.
2334
2335         * utf7.el: Synch up with latest gnus/utf7.el;
2336         Modified for latest Emacs.
2337
2338 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2339
2340         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
2341         shimbun backend couldn't open.
2342
2343 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
2344
2345         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
2346         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
2347         when a destination folder is a filter folder.
2348
2349 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2350
2351         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
2352         (elmo-generic-folder-append-messages): Call elmo-message-flags
2353         with argument `msgid'.
2354
2355         * elmo-split.el (elmo-split-subr): Ditto.
2356
2357         * elmo-pipe.el (elmo-message-flags): Follow the API change.
2358
2359         * elmo-multi.el (elmo-message-flags): Ditto.
2360
2361 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2362
2363         * elmo.el (elmo-folder): Add new slot `flag-table'.
2364         (elmo-folder-flag-table): New API.
2365         (elmo-folder-close-flag-table): Ditto.
2366         (elmo-folder-preserve-flags): New function.
2367         (elmo-generic-folder-append-messages): Use
2368         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
2369         Flag of a non-registered message, it sets to nil.
2370         Does not set flag to flag-table.
2371
2372         * elmo-maildir.el (elmo-folder-append-buffer): Use
2373         `elmo-folder-preserve-flags'.
2374         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2375         `elmo-folder-close-flag-table'.
2376
2377         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
2378         (elmo-archive-folder-append-buffer): Use
2379         `elmo-folder-preserve-flags'.
2380
2381         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
2382
2383         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
2384
2385         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2386         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2387         `elmo-folder-close-flag-table'.
2388
2389         * elmo-version.el (elmo-version): Up to 2.11.26.
2390
2391 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2392
2393         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
2394
2395         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
2396         md5's 4th and 5th argument (non-existent in flim one).
2397
2398 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2399
2400         * elmo-split.el (elmo-split-subr): Flag of a non-registered
2401         message, It sets to nil.
2402
2403 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2404
2405         * elmo.el (elmo-folder-list-messages): Merge lists only if both
2406         list is non-nil.
2407
2408 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
2409
2410         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
2411
2412         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
2413
2414         * elmo-util.el (elmo-uniq-sorted-list): New function.
2415         (elmo-make-number-list): Ditto.
2416         (elmo-number-set-to-number-list): Use elmo-make-number-list
2417         and don't use nreverse.
2418
2419 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2420
2421         * elmo-version.el (elmo-version): Up to 2.11.25.
2422
2423 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2424
2425         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
2426         field not exists in message, Use md5 message digest of header.
2427
2428 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2429
2430         * elmo.el (elmo-folder-append-buffer): Add note on return value.
2431         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
2432         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2433         * elmo-split.el (elmo-split-subr): Check return value of
2434         elmo-folder-append-buffer.
2435
2436         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
2437         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2438
2439         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
2440         message-id.
2441
2442 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
2443
2444         * elmo-split.el (elmo-split-subr): Append message with flag.
2445
2446         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
2447         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
2448         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2449
2450 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
2451
2452         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
2453         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
2454         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2455
2456 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
2457
2458         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2459         with a function call of `process-buffer'.  All callers are updated.
2460         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2461         Remove redundant `set-buffer' in a while loop.
2462
2463 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2464
2465         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2466         calls.
2467
2468 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2469
2470         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2471         elsp-spamfilter-register-buffer-internal with current buffer.
2472         (elmo-spam-register-spam-buffer): Ditto.
2473         (elmo-spam-register-good-buffer): Ditto.
2474
2475 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2476
2477         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2478         if it is not contained in the response(A workaround for courier-imap).
2479
2480 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2481
2482         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2483         parenthesis.
2484
2485 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2486
2487         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2488         range.
2489
2490 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2491
2492         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2493         of nconc.
2494
2495         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2496         argument handler.
2497         (elmo-msgdb-message-match-condition): Follow the change above.
2498
2499 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2500
2501         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2502         folder name.
2503
2504 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2505
2506         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2507
2508 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2509
2510         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2511
2512 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2513
2514         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2515         not found.
2516
2517 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2518
2519         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2520         value.
2521         (elmo-file-command-argument): Undo last change for cygwin.
2522         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2523         Don't return nil.
2524         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2525
2526 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2527
2528         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2529         value returned from elmo-file-find is nil.
2530
2531 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2532
2533         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2534         to elmo-vars.el.
2535
2536         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2537         instead of insert-file-contents-as-binary.
2538         (elmo-message-set-field): New generic function.
2539
2540         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2541         behavior change on `split-string'.
2542
2543         * elmo-file.el (elmo-file-find): New function.
2544         (elmo-file-command): New user option.
2545         (elmo-file-command-argument): Ditto.
2546         (elmo-file-fetch-max-size): Ditto.
2547         (elmo-file-detect-format): New function.
2548         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2549         Use elmo-file-detect-format.
2550         (elmo-map-folder-list-message-locations): Don't treat directories.
2551
2552 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2553
2554         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2555         (elmo-passwd-alist-clear): Shred password before clear.
2556         (elmo-remove-passwd): Remove all mached pair.
2557
2558 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2559
2560         * elmo.el (elmo-folder-synchronize): Fix description of the return
2561         value.
2562
2563 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2564
2565         * elmo.el (elmo-message-fetch-bodystructure): New method.
2566         (elmo-message-fetch-bodystructure): Define default.
2567
2568         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2569         elmo-message-fetch-bodystructure.
2570         (elmo-message-fetch-bodystructure): Define.
2571
2572         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2573
2574 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2575
2576         * elmo-filter.el (elmo-message-folder): Define.
2577
2578 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2579
2580         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2581         elmo-delete-cr-buffer.
2582
2583         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2584
2585         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2586
2587         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2588
2589         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2590         type seems to be a text.
2591
2592 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2593
2594         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2595         (elmo-spam-register-good-buffer): Ditto.
2596         (elmo-spam-spamassassin-register-messages): Ditto.
2597
2598         * elmo-util.el (elmo-string-member-ignore-case): Define with
2599         static-cond.
2600
2601 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2602
2603         * elmo.el (elmo-folder-type): Undo last change.
2604
2605         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2606
2607         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2608         warnings.
2609
2610         * elmo-file.el: New file.
2611         
2612         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2613
2614         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2615         variable.
2616         (elmo-spam-spamassassin-register-messages): New inline function.
2617         (elmo-spam-register-spam-messages): Define.
2618         (elmo-spam-register-good-messages): Ditto.
2619
2620         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2621         Fixed typo.
2622
2623         * elmo.el (toplevel): Added autoload setting for
2624         `elmo-get-global-flags'.
2625         (elmo-message-has-global-flag-p): New function.
2626         (elmo-message-set-global-flags): Ditto.
2627         (elmo-folder-type): Improvement for name: format.
2628
2629         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2630         availability of keyword flags.
2631         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2632         (elmo-folder-list-flagged-plugged): Renamed from
2633         elmo-folder-list-flagged-unplugged.
2634         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2635         accept any flag as keyword flag.
2636         (elmo-folder-set-flag-plugged): Accept keyword flags.
2637         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2638
2639         * elmo-flag.el (elmo-get-global-flags): New function.
2640
2641         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2642         folders.
2643
2644         * elmo-version.el (elmo-version): Up to 2.11.24.
2645
2646 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2647
2648         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2649         elmo-multiple-field-body instead of std11-field-body to check all
2650         headers.
2651
2652 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2653
2654         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2655         or "size".
2656
2657 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2658
2659         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2660         unintern is unbound.
2661
2662 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2663
2664         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2665         Protect from infinite loop.
2666
2667 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2668
2669         * elsp-bogofilter.el
2670         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2671         (elmo-spam-bogofilter-register-messages): New internal function.
2672         (elmo-spam-register-spam-messages): Define.
2673         (elmo-spam-register-good-messages): Ditto.
2674
2675 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2676
2677         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2678         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2679         (elmo-spam-bogofilter-call): Fixed the last change.
2680         (elmo-spam-bogofilter-arguments): Ditto.
2681
2682         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2683         Follow the options change of latest bogofilter.
2684
2685         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2686         (elmo-spam-bogofilter-good-switch): Ditto.
2687         (elmo-spam-bogofilter-arguments-alist): New user option.
2688         (elmo-spam-bogofilter-debug): Ditto.
2689         (elmo-spam-bogofilter-call): Renamed from
2690         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2691         is non-nil, insert output in buffer for debug.
2692         (elmo-spam-bogofilter-arguments): New macro.
2693         (elmo-spam-buffer-spam-p): Use it.
2694         (elsp-bogofilter-register-buffer): Ditto.
2695
2696 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2697
2698         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2699         regexp.
2700
2701 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2702
2703         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2704         value as "ruby".
2705         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2706         (elmo-spam-bsfilter-program): Set default value as full path for
2707         `bsfilter'.
2708         (elmo-spam-bsfilter-debug): New user option.
2709         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2710         non-nil, insert output in buffer for debug. Fix treating of
2711         argument.
2712
2713 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2714
2715         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2716         `elmo-maildir-flag-specs' element instead of one.
2717         (elmo-map-folder-unset-flag): Ditto.
2718         (Reported by Ken Makimura <macky@astem.or.jp>)
2719
2720         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2721         (elmo-folder-unset-flag-plugged): Ditto.
2722
2723 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2724
2725         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2726         to `reads' slot only if `in-msgdb' is nil.
2727
2728 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2729
2730         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2731         and complement argument list.
2732
2733 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2734
2735         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2736         instead of elmo-folder-list-flagged.
2737
2738 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2739
2740         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2741
2742         * elsp-bsfilter.el: New file.
2743
2744         * elmo-pipe.el (elmo-folder-list-unreads,
2745         elmo-folder-list-answereds,
2746         elmo-folder-list-importants,
2747         elmo-folder-flag-as-important,
2748         elmo-folder-unflag-important,
2749         elmo-folder-flag-as-read,
2750         elmo-folder-unflag-read,
2751         elmo-folder-flag-as-answered,
2752         elmo-folder-unflag-answered): Remove.
2753         (elmo-folder-set-flag): Define.
2754         (elmo-folder-unset-flag): Ditto.
2755
2756         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2757         (elmo-folder-set-flag): Define.
2758         (elmo-folder-unset-flag): Ditto.
2759         (elmo-folder-list-unreads): Remove.
2760         (elmo-folder-list-flagged): Define.
2761
2762         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2763         (elmo-folder-list-unreads,
2764         elmo-folder-list-importants,
2765         elmo-folder-list-answereds,
2766         elmo-folder-list-unreads-plugged,
2767         elmo-folder-list-importants-plugged,
2768         elmo-folder-list-answereds-plugged): Remove.
2769         (elmo-folder-list-flagged-plugged): New method.
2770         (elmo-folder-unflag-important,
2771         elmo-folder-flag-as-important,
2772         elmo-folder-unflag-read,
2773         elmo-folder-flag-as-read,
2774         elmo-folder-unflag-answered,
2775         elmo-folder-flag-as-answered,
2776         elmo-folder-flag-as-read-unplugged,
2777         elmo-folder-unflag-read-unplugged,
2778         elmo-folder-flag-as-important-unplugged,
2779         elmo-folder-unflag-important-unplugged,
2780         elmo-folder-flag-as-answered-unplugged,
2781         elmo-folder-unflag-answered-unplugged): Remove.
2782         (elmo-folder-set-flag): Define.
2783         (elmo-folder-unset-flag): Ditto.
2784         (elmo-folder-set-flag-unplugged): Ditto.
2785         (elmo-folder-unset-flag-unplugged): Ditto.
2786
2787         * elmo-multi.el (elmo-folder-list-unreads,
2788         elmo-folder-list-answereds,
2789         elmo-folder-list-importants,
2790         elmo-folder-flag-as-important,
2791         elmo-folder-unflag-important,
2792         elmo-folder-flag-as-read,
2793         elmo-folder-unflag-read,
2794         elmo-folder-flag-as-answered,
2795         elmo-folder-unflag-answered): Remove.
2796         (elmo-folder-set-flag): Define.
2797         (elmo-folder-unset-flag): Ditto.
2798
2799         * elmo-map.el (elmo-map-folder-unflag-important,
2800         elmo-map-folder-flag-as-important,
2801         elmo-map-folder-unflag-read,
2802         elmo-map-folder-flag-as-read,
2803         elmo-map-folder-unflag-answered,
2804         elmo-map-folder-flag-as-answered): Remove.
2805         (elmo-map-folder-set-flag): New method.
2806         (elmo-map-folder-unset-flag): Ditto.
2807         (elmo-map-folder-list-unreads,
2808         elmo-map-folder-list-importants,
2809         elmo-map-folder-list-answereds): Remove.
2810         (elmo-folder-list-flagged-internal): Define.
2811         (elmo-map-folder-list-flagged): New method.
2812
2813         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2814         (elmo-map-folder-list-unreads,
2815         elmo-map-folder-list-importants,
2816         elmo-map-folder-list-flagged): Remove.
2817         (elmo-map-folder-list-flagged): Define.
2818         (elmo-map-folder-flag-as-important,
2819         elmo-map-folder-unflag-important,
2820         elmo-map-folder-flag-as-read,
2821         elmo-map-folder-unflag-read,
2822         elmo-map-folder-flag-as-answered,
2823         elmo-map-folder-unflag-answered): Remove.
2824         (elmo-maildir-set-mark-messages): New internal function.
2825         (elmo-map-folder-set-flag): Define.
2826         (elmo-map-folder-unset-flag): Ditto.
2827
2828         * elmo.el (toplevel): Added autoload setting for
2829         `elmo-folder-list-global-flag-messages'.
2830         (elmo-folder-list-unreads,
2831         elmo-folder-list-importants,
2832         elmo-folder-list-answereds): Remove.
2833         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2834         Return a list whitch merged with messages have global flag.
2835         (elmo-folder-list-flagged-internal): New method.
2836         (elmo-folder-unflag-important,
2837         elmo-folder-flag-as-important,
2838         elmo-folder-unflag-read,
2839         elmo-folder-flag-as-read,
2840         elmo-folder-unflag-answered,
2841         elmo-folder-flag-as-answered): Remove.
2842         (elmo-folder-set-flag): New method.
2843         (elmo-folder-unset-flag): Ditto.
2844         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2845         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2846
2847         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2848         (elmo-folder-list-unreads-plugged,
2849         elmo-folder-list-importants-plugged,
2850         elmo-folder-list-answereds-plugged,
2851         elmo-folder-list-flagged-unplugged,
2852         elmo-folder-unflag-important-plugged,
2853         elmo-folder-flag-as-important-plugged,
2854         elmo-folder-unflag-read-plugged,
2855         elmo-folder-flag-as-read-plugged,
2856         elmo-folder-unflag-answered-plugged,
2857         elmo-folder-flag-as-answered-plugged): Remove.
2858         (elmo-folder-set-flag-plugged,
2859         elmo-folder-unset-flag-plugged): Define.
2860
2861         * elmo-flag.el (elmo-folder-initialize): Register to
2862         `elmo-global-flag-list' if flag is not global.
2863         (elmo-folder-append-messages): Set flag to source messages.
2864
2865         * elmo-filter.el (elmo-filter-folder-list-unreads,
2866         elmo-folder-list-unreads,
2867         elmo-filter-folder-list-importants,
2868         elmo-folder-list-importants,
2869         elmo-folder-flag-as-read,
2870         elmo-folder-unflag-read,
2871         elmo-folder-flag-as-important,
2872         elmo-folder-unflag-important,
2873         elmo-folder-flag-as-answered,
2874         elmo-folder-unflag-answered): Remove.
2875         (elmo-folder-set-flag): Define.
2876         (elmo-folder-unset-flag): Ditto.
2877
2878         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2879         elmo-folder-unflag-read-dop,
2880         elmo-folder-flag-as-important-dop,
2881         elmo-folder-unflag-important-dop,
2882         elmo-folder-flag-as-answered-dop,
2883         elmo-folder-unflag-answered-dop): Remove.
2884         (elmo-folder-set-flag-dop,
2885         elmo-folder-unset-flag-dop,
2886         elmo-folder-set-important-delayed,
2887         elmo-folder-unset-important-delayed,
2888         elmo-folder-set-read-delayed,
2889         elmo-folder-unset-read-delayed,
2890         elmo-folder-set-answered-delayed,
2891         elmo-folder-unset-answered-delayed): New function.
2892         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2893         (elmo-dop-queue-method-name-alist): Ditto.
2894
2895         * elmo-version.el (elmo-version): Up to 2.11.23.
2896
2897 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2898
2899         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2900
2901         * elsp-sa.el: New file.
2902
2903 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2904
2905         * modb-standard.el (modb-standard-message-entity): New function.
2906         (elmo-msgdb-message-entity): Use it.
2907
2908 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2909
2910         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2911         behavior when one-level is nil.
2912
2913         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2914
2915         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2916
2917 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2918
2919         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2920         get max number.
2921         (elmo-generic-folder-diff): Ditto.
2922
2923         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2924         (elmo-folder-update-number): Ditto.
2925
2926         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2927         (elmo-folder-next-message-number-dop): Ditto.
2928
2929 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2930
2931         * elmo-filter.el (elmo-folder-msgdb-create): Use
2932         `elmo-message-entity' and `elmo-message-flags' instead of
2933         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2934
2935 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2936
2937         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2938         `if-exists'.
2939
2940 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2941
2942         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2943
2944         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2945
2946         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2947
2948 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2949
2950         * elmo-version.el (elmo-version): Up to 2.11.22.
2951
2952 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2953
2954         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2955
2956 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2957
2958         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2959         if the message dose not exist.
2960
2961 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2962
2963         * elmo-version.el (elmo-version): Up to 2.11.21.
2964
2965 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2966
2967         * modb-standard.el (toplevel): Don't require mime.
2968
2969 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2970
2971         * elsp-bogofilter.el (toplevel): Don't require path-util.
2972         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2973         (elmo-spam-bogofilter-header): Abolish.
2974         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2975         (elmo-spam-bogofilter-args): New user option.
2976         (elsp-bogofilter-call-bogofilter): New internal function.
2977         (elmo-spam-buffer-spam-p): Use it.
2978         (elsp-bogofilter-register-buffer): Renamed from
2979         `elmo-spam-bogofilter-register-buffer';
2980         Use `elsp-bogofilter-call-bogofilter'.
2981         (elmo-spam-register-spam-buffer): Follow the change above.
2982         (elmo-spam-register-good-buffer): Ditto.
2983
2984 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2985
2986         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2987         message-id is nil do nothing.
2988
2989 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2990
2991         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2992         Revival.
2993         (elmo-imap4-session): Removed use-flag slot.
2994         (elmo-imap4-session-select-mailbox): Undo last change.
2995         (elmo-folder-use-flag-p): Use
2996         elmo-imap4-disuse-server-flag-mailbox-regexp.
2997
2998 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2999
3000         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
3001         (elmo-imap4-session-select-mailbox): Set it up.
3002         (elmo-folder-use-flag-p): Return value of use-flag slot.
3003
3004 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3005
3006         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
3007         message-id is nil.
3008         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
3009
3010         * modb-entity.el (elmo-message-entity-handler): Likewise.
3011
3012 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
3013
3014         * elmo.el (toplevel): Remove setting of autoloding for
3015         elmo-global-flag-initialize.
3016         (elmo-init): Don't call elmo-global-flag-initialize.
3017         (toplevel): Added autoload setting for elmo-global-mark-migrate.
3018
3019         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
3020         (elmo-global-mark-migrate): Don't call it.
3021         (elmo-global-mark-upgrade): Ditto.
3022
3023 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
3024
3025         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
3026         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
3027
3028         * elmo-vars.el (elmo-init-hook): New user option.
3029
3030         * elmo.el (elmo-init): Run the elmo-init-hook.
3031
3032         * elmo-flag.el (elmo-global-mark-migrate): New function.
3033
3034 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3035
3036         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
3037         Undo last change (move to elmo-msgdb-unset-flag).
3038         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
3039         flag is unset.
3040
3041 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
3042
3043         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
3044         read flag is set.
3045         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
3046         (elmo-msgdb-unset-flag): Ditto.
3047
3048 2003-11-05  Andreas Fuchs <asf@boinkor.net>
3049
3050         * elmo-split.el (elmo-split): Return split message count.
3051
3052 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3053
3054         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
3055         is nil.
3056
3057 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3058
3059         * elmo.el (elmo-folder-unflag-important): Call
3060         `elmo-global-flag-detach' with 4th argument delete-if-none that is
3061         a symbol `always'.
3062
3063         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
3064         before unset flag.
3065         (elmo-global-flag-detach): Delete the message from flag folder, if
3066         `delete-if-none' is a symbol `always'.
3067
3068 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3069
3070         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
3071         `elmo-spam-spamfilter-decode-buffer'.
3072         (elsp-spamfilter-register-buffer-internal): New internal function.
3073         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
3074         (elmo-spam-register-spam-buffer): Ditto.
3075         (elmo-spam-register-good-buffer): Ditto.
3076
3077         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
3078         change.
3079         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
3080         (elmo-spam-register-spam-buffer): Follow the API change.
3081         (elmo-spam-register-good-buffer): Ditto.
3082
3083         * elmo-split.el (toplevel): Require elmo-spam when copmile.
3084         (elmo-split-spam-p): Added argument plist; Call
3085         `elmo-spam-buffer-spam-p' with new argument register.
3086
3087         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
3088         `register'.
3089         (elmo-spam-message-spam-p): Ditto.
3090         (elmo-spam-register-spam-buffer): Added optional argument
3091         `restore'.
3092         (elmo-spam-register-good-buffer): Ditto.
3093         (elmo-spam-register-spam-messages): Ditto.
3094         (elmo-spam-register-good-messages): Ditto.
3095
3096 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3097
3098         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
3099         register into good corpus.
3100         (elmo-spam-register-good-buffer): Fixed to register into bad
3101         corpus.
3102
3103 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3104
3105         * elmo-version.el (elmo-version): Up to 2.11.20.
3106
3107         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
3108         change.
3109
3110         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
3111         flag without depending on \Recent flag.
3112
3113 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3114
3115         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
3116         (elmo-spam-modified-p): Defined.
3117         (elmo-spam-save-status): Set `modified' slot to nil.
3118         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
3119         (elmo-spam-register-good-buffer): Ditto.
3120
3121         * elmo-spam.el (elmo-spam-modified-p): New API.
3122
3123 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3124
3125         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
3126         duplicate definition.
3127
3128         * elmo-util.el (elmo-unfold-field-body): New function.
3129         (elmo-msgdb-get-message-id-from-buffer): Use it.
3130
3131         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3132         Fixed the last change; Use elmo-unfold-field-body.
3133
3134 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3135
3136         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3137         Unfold date value.
3138
3139 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3140
3141         * elmo-spam.el (elmo-spam-save-status): New API.
3142
3143         * elsp-spamfilter.el: New file.
3144
3145 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3146
3147         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
3148
3149 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3150
3151         * elmo-split.el (elmo-split-spam-p): New function.
3152
3153         * elmo-spam.el: New file.
3154
3155         * elsp-bogofilter.el: Ditto.
3156
3157 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
3158
3159         * elmo.el (elmo-folder-next-message-number): New API.
3160         (elmo-folder-next-message-number): Define.
3161         (elmo-message-field): Don't check folder length.
3162
3163         * elmo-net.el (elmo-folder-next-message-number): Define.
3164         (elmo-folder-next-message-number-unplugged): Define.
3165
3166         * elmo-map.el (elmo-folder-next-message-number): Define.
3167         (elmo-folder-delete-messages): Clear hash value.
3168
3169         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
3170
3171         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
3172         (elmo-folder-delete-messages-dop-delayed): Always return t.
3173
3174         * elmo-version.el (elmo-version): Up to 2.11.19.
3175
3176 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3177
3178         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
3179         change.
3180
3181         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
3182         identical cons cell into the mark-alist and the hash table.
3183
3184 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
3185
3186         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
3187         elmo-folder-list-messages with argument `visible-only' as t.
3188
3189         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
3190         (elmo-folder-msgdb-create): Check the target folder.
3191
3192 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
3193
3194         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
3195         `permanentflag' instead of `flags'.
3196         (elmo-folder-open): Ditto.
3197         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
3198         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
3199         (elmo-folder-use-flag-p): Always return t.
3200         (elmo-imap4-session-select-mailbox): Use value of `flags' if
3201         `permanentflags' does not exist.
3202         (elmo-folder-open): Ditto.
3203
3204 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
3205
3206         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
3207         is nil.
3208         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
3209
3210         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
3211         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
3212         response.
3213         (elmo-folder-open): Ditto.
3214         (elmo-imap4-set-flag): Send store flag command only when the `flags'
3215         slot of the session includes the flag.
3216         (elmo-imap4-session-flag-available-p): New function.
3217         (elmo-imap4-folder-list-flagged): Ditto.
3218         (elmo-folder-list-unreads-plugged): Use it.
3219         (elmo-folder-list-importants-plugged): Ditto.
3220         (elmo-folder-list-answereds-plugged): Ditto.
3221         (elmo-imap4-search-internal-primitive): Ditto.
3222         (elmo-imap4-folder-list-any-plugged,
3223         elmo-imap4-folder-list-digest-plugged): Abolish.
3224
3225         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
3226         if numbers is nil.
3227
3228 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3229
3230         * elmo-util.el (toplevel): Require emu for char-list-to-string.
3231
3232 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
3233
3234         * elmo-util.el (elmo-get-hash-val): Simplify.
3235         (elmo-set-hash-val): Rewrite.
3236
3237 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3238
3239         * elmo.el (elmo-folder-list-messages): Append killed messages into
3240         result if `visible-only' is nil and `in-msgdb' is non-nil.
3241
3242         * elmo-util.el (elmo-uniq-list): Added optional argument
3243         `delete-function'.
3244
3245         * modb.el (elmo-msgdb-flag-count): New API.
3246
3247         * modb-standard.el (modb-standard): Added slot flag-count.
3248         (modb-standard-countup-flags): New function.
3249         (modb-standard-load-flag): Call it.
3250         (elmo-msgdb-append): Ditto.
3251         (elmo-msgdb-clear): Clear slot flag-count.
3252         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
3253         (elmo-msgdb-unset-flag): Treat `all' flag and call
3254         modb-standard-countup-flags.
3255         (elmo-msgdb-flag-count): Define.
3256         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
3257         (elmo-msgdb-delete-messages): Ditto.
3258
3259         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
3260         (elmo-msgdb-flag-count): Define.
3261
3262         * elmo.el (elmo-folder-list-messages): Undo last change.
3263         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
3264         (elmo-folder-kill-messages): Unset all flags to numbers.
3265
3266         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
3267         elmo-folder-kill-messages.
3268
3269         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
3270         (elmo-nntp-folder-delete-messages): Abolish.
3271
3272         * elmo-version.el (elmo-version): Up to 2.11.18.
3273
3274 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3275
3276         * elmo.el (elmo-folder-kill-messages-before): Abolish.
3277         (elmo-folder-kill-messages-range): New function.
3278         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
3279         instead of elmo-folder-kill-messages-before.
3280
3281 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
3282
3283         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
3284         elmo-imap4-current-msgdb to decide entity handler.
3285
3286 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3287
3288         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
3289
3290         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
3291         inline function.
3292         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
3293         (elmo-msgdb-overview-entity-set-number,
3294         elmo-msgdb-overview-entity-get-references,
3295         elmo-msgdb-overview-entity-set-references,
3296         elmo-msgdb-overview-entity-get-from-no-decode,
3297         elmo-msgdb-overview-entity-get-from,
3298         elmo-msgdb-overview-entity-set-from,
3299         elmo-msgdb-overview-entity-get-subject,
3300         elmo-msgdb-overview-entity-get-subject-no-decode,
3301         elmo-msgdb-overview-entity-set-subject,
3302         elmo-msgdb-overview-entity-get-date,
3303         elmo-msgdb-overview-entity-set-date,
3304         elmo-msgdb-overview-entity-get-to,
3305         elmo-msgdb-overview-entity-get-cc,
3306         elmo-msgdb-overview-entity-get-size,
3307         elmo-msgdb-overview-entity-set-size,
3308         elmo-msgdb-overview-entity-get-extra,
3309         elmo-msgdb-overview-entity-set-extra,
3310         elmo-msgdb-overview-entity-get-extra-field,
3311         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
3312         (elmo-msgdb-make-index): Use
3313         `elmo-msgdb-overview-entity-get-number-internal'.
3314         (elmo-msgdb-clear-index): Ditto.
3315         (elmo-msgdb-append-entity): Ditto;
3316         Use `elmo-msgdb-overview-entity-get-id-internal'.
3317
3318         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
3319         elmo-msgdb-overview-entity-set-number,
3320         elmo-msgdb-overview-entity-get-references,
3321         elmo-msgdb-overview-entity-set-references,
3322         elmo-msgdb-overview-entity-get-from-no-decode,
3323         elmo-msgdb-overview-entity-get-from,
3324         elmo-msgdb-overview-entity-set-from,
3325         elmo-msgdb-overview-entity-get-subject,
3326         elmo-msgdb-overview-entity-get-subject-no-decode,
3327         elmo-msgdb-overview-entity-set-subject,
3328         elmo-msgdb-overview-entity-get-date,
3329         elmo-msgdb-overview-entity-set-date,
3330         elmo-msgdb-overview-entity-get-to,
3331         elmo-msgdb-overview-entity-get-cc,
3332         elmo-msgdb-overview-entity-get-size,
3333         elmo-msgdb-overview-entity-set-size,
3334         elmo-msgdb-overview-entity-get-extra,
3335         elmo-msgdb-overview-entity-set-extra,
3336         elmo-msgdb-overview-entity-get-extra-field,
3337         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
3338         and rewrote for backward compatibility.
3339
3340 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3341
3342         * elmo.el (elmo-message-entity-number,
3343         elmo-message-entity-set-number,
3344         elmo-message-entity-field,
3345         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
3346
3347         * elmo-msgdb.el (elmo-message-entity-number,
3348         elmo-message-entity-set-number,
3349         elmo-message-entity-field,
3350         elmo-message-entity-set-field): Moved from elmo.el.
3351
3352 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3353
3354         * elmo.el (toplevel): Changed definition orders.
3355
3356 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3357
3358         * modb.el (elmo-msgdb-search): New API .
3359         (elmo-msgdb-match-condition): Ditto.
3360
3361         * modb-standard.el (elmo-msgdb-search): Define.
3362
3363         * modb-legacy.el (elmo-msgdb-search): Ditto.
3364
3365         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
3366         from elmo-msgdb-match-condition-internal.
3367
3368         * elmo.el (elmo-folder-search-fast): Abolish.
3369         (elmo-folder-search): Use elmo-msgdb-search and
3370         elmo-with-progress-display.
3371
3372         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
3373         as msgdb API.
3374
3375         * elmo.el (elmo-folder): Remove slot message-modified and
3376         flag-modified.
3377         (elmo-folder-set-message-modified): Abolish.
3378         (elmo-generic-folder-commit): Follow the change above.
3379         (elmo-folder-synchronize): Ditto.
3380
3381         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
3382
3383         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3384
3385         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
3386
3387 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3388
3389         * modb-standard.el (modb-standard-make-message-entity,
3390         elmo-msgdb-make-message-entity,
3391         elmo-msgdb-create-message-entity-from-buffer,
3392         elmo-msgdb-message-entity-number,
3393         elmo-msgdb-message-entity-set-number,
3394         elmo-msgdb-message-entity-field,
3395         elmo-msgdb-message-entity-set-field,
3396         elmo-msgdb-copy-message-entity,
3397         elmo-msgdb-match-condition-internal): Remove.
3398
3399         * modb-entity.el: New file (again).
3400
3401         * modb.el (toplevel): Require modb-entity.
3402         (elmo-msgdb-message-entity-handler): New method.
3403
3404         * modb-standard.el (modb-standard-entity-id): Use
3405         elmo-message-entity-handler.
3406         (modb-standard-load-entity): Ditto.
3407         (elmo-msgdb-append-entity): Ditto.
3408         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3409
3410         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
3411         elmo-msgdb-decoded-cache-hashtb,
3412         (modb-legacy-make-message-entity,
3413         elmo-msgdb-make-message-entity,
3414         elmo-msgdb-create-message-entity-from-buffer,
3415         elmo-msgdb-message-entity-number,
3416         elmo-msgdb-message-entity-set-number,
3417         elmo-msgdb-message-entity-field,
3418         elmo-msgdb-message-entity-set-field,
3419         elmo-msgdb-copy-message-entity,
3420         elmo-msgdb-match-condition-internal,
3421         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
3422
3423         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
3424         (elmo-message-entity-set-number): Ditto.
3425         (elmo-message-entity-field): Ditto.
3426         (elmo-message-entity-set-field): Ditto.
3427
3428         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
3429
3430         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3431
3432         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3433
3434         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3435         (elmo-nntp-msgdb-create-message): Ditto.
3436
3437         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
3438         (elmo-folder-msgdb-create): Add unread flag.
3439
3440         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3441
3442         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
3443
3444         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
3445
3446         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3447
3448         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
3449         elmo-msgdb-messge-entity-handler.
3450         * elmo-version.el (elmo-version): Up to 2.11.17.
3451
3452 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3453
3454         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
3455         change.
3456
3457 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3458
3459         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3460
3461         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3462         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3463         (elmo-msgdb-flag-table): Ditto.
3464         (elmo-msgdb-sort-by-date): Ditto.
3465
3466         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3467
3468         * modb-standard.el (toplevel): Require mime.
3469         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3470         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3471         elmo-msgdb-message-entity-number.
3472         (elmo-msgdb-append-entity): Ditto.
3473         (elmo-msgdb-create-message-entity-from-file): Remove.
3474         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3475         corresponds to the entity.
3476         (elmo-msgdb-message-entity-number): Do nothing currently.
3477         (elmo-msgdb-message-entity-field): Ditto.
3478         (elmo-msgdb-message-entity-set-field): Ditto.
3479         (elmo-msgdb-copy-message-entity): Ditto.
3480         (elmo-msgdb-match-condition-internal): Ditto.
3481
3482         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3483         elmo-util.el.
3484         (elmo-msgdb-create-message-entity-from-file): Remove.
3485
3486         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3487         modb-legacy.el.
3488         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3489
3490         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3491
3492 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3493
3494         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3495         (elmo-msgdb-message-entity-field): Ditto.
3496         (elmo-msgdb-message-entity-number): Ditto.
3497
3498 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3499
3500         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3501         Fixed how to set extra field into entity.
3502         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3503         symbol.
3504
3505         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3506         Fixed how to set extra field into entity.
3507         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3508         symbol.
3509
3510 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3511
3512         * modb.el (elmo-message-entity-db): New function.
3513         (elmo-msgdb-make-message-entity): New API.
3514         (elmo-msgdb-message-entity-number): Ditto.
3515         (elmo-msgdb-message-entity-set-number): Ditto.
3516         (elmo-msgdb-message-entity-field): Ditto.
3517         (elmo-msgdb-message-entity-set-field): Ditto.
3518         (elmo-msgdb-copy-message-entity): Ditto.
3519         (elmo-msgdb-create-message-entity-from-file): Ditto.
3520         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3521         (elmo-msgdb-match-condition-internal): Ditto.
3522
3523         * modb-standard.el (modb-legacy): Require modb-legacy.
3524         (modb-standard-make-message-entity): New inline function.
3525         (elmo-msgdb-make-message-entity): Define.
3526         (elmo-msgdb-create-message-entity-from-file): Ditto.
3527         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3528         (elmo-msgdb-message-entity-field): Ditto.
3529         (elmo-msgdb-message-entity-set-field): Ditto.
3530         (elmo-msgdb-copy-message-entity): Ditto.
3531         (elmo-msgdb-match-condition-internal): Ditto.
3532
3533         * modb-legacy.el: Don't require modb-entity.
3534         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3535         (elmo-msgdb-match-condition-primitive): Ditto.
3536         (elmo-msgdb-get-decoded-cache): Ditto.
3537         (elmo-msgdb-overview-entity-get-id): Ditto.
3538         (elmo-msgdb-overview-entity-get-number): Ditto.
3539         (elmo-msgdb-overview-entity-set-number): Ditto.
3540         (elmo-msgdb-overview-entity-get-references): Ditto.
3541         (elmo-msgdb-overview-entity-set-references): Ditto.
3542         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3543         (elmo-msgdb-overview-entity-get-from): Ditto.
3544         (elmo-msgdb-overview-entity-set-from): Ditto.
3545         (elmo-msgdb-overview-entity-get-subject): Ditto.
3546         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3547         (elmo-msgdb-overview-entity-set-subject): Ditto.
3548         (elmo-msgdb-overview-entity-get-date): Ditto.
3549         (elmo-msgdb-overview-entity-set-date): Ditto.
3550         (elmo-msgdb-overview-entity-get-to): Ditto.
3551         (elmo-msgdb-overview-entity-get-cc): Ditto.
3552         (elmo-msgdb-overview-entity-get-size): Ditto.
3553         (elmo-msgdb-overview-entity-set-size): Ditto.
3554         (elmo-msgdb-overview-entity-get-extra): Ditto.
3555         (elmo-msgdb-overview-entity-set-extra): Ditto.
3556         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3557         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3558         (elmo-msgdb-number-load): Ditto.
3559         (elmo-msgdb-overview-load): Ditto.
3560         (elmo-msgdb-mark-load): Ditto.
3561         (elmo-msgdb-number-save): Ditto.
3562         (elmo-msgdb-mark-save): Ditto.
3563         (elmo-msgdb-overview-save): Ditto.
3564         (modb-legacy-make-message-entity): New inline function.
3565         (elmo-msgdb-insert-file-header): Ditto.
3566         (elmo-msgdb-make-message-entity): Define.
3567         (elmo-msgdb-create-message-entity-from-file): Ditto.
3568         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3569         (elmo-msgdb-message-entity-number): Ditto.
3570         (elmo-msgdb-message-entity-set-number): Ditto.
3571         (elmo-msgdb-message-entity-field): Ditto.
3572         (elmo-msgdb-message-entity-set-field): Ditto.
3573         (elmo-msgdb-copy-message-entity): Ditto.
3574         (elmo-msgdb-match-condition-internal): Ditto.
3575
3576         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3577         (elmo-message-copy-entity): Rewrite.
3578         (elmo-message-entity-number): Ditto.
3579         (elmo-message-entity-set-number): Ditto.
3580         (elmo-message-entity-field): Use elmo-message-entity-db.
3581         (elmo-message-entity-set-field): Ditto.
3582         (elmo-message-field): Rewrite.
3583
3584         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3585         elmo-msgdb.el
3586         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3587
3588         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3589         elmo-message-entity-field.
3590         (elmo-shimbun-folder-shimbun-header): Ditto.
3591         (elmo-shimbun-entity-to-header): Ditto.
3592         (elmo-folder-msgdb-create): Ditto.
3593         (elmo-shimbun-msgdb-create-entity): Ditto;
3594         Use elmo-msgdb-create-message-entity-from-buffer.
3595         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3596         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3597
3598         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3599         elmo-msgdb-create-message-entity-from-file and 
3600         elmo-message-entity-field.
3601
3602         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3603         elmo-message-entity-number.
3604         (elmo-pop3-msgdb-create-message): Use
3605         elmo-msgdb-create-message-entity-from-buffer,
3606         elmo-message-entity-set-field, elmo-message-entity-number and
3607         elmo-message-entity-set-number.
3608
3609         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3610         the API change in elmo-msgdb-make-message-entity.
3611         (elmo-nntp-msgdb-create-message): Use
3612         elmo-msgdb-create-message-entity-from-buffer.
3613
3614         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3615         elmo-message-entity-field and
3616         elmo-msgdb-create-message-entity-from-file.
3617
3618         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3619         (elmo-msgdb-get-field): Abolish.
3620         (elmo-msgdb-get-number): Rewrite.
3621         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3622         (elmo-msgdb-flag-table): Ditto.
3623         (elmo-msgdb-get-last-message-id,
3624         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3625         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3626         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3627         (elmo-msgdb-create-overview-from-buffer,
3628         elmo-msgdb-overview-get-parent-entity): Abolish.
3629
3630         * elmo-mime.el (elmo-mime-display-as-is): Use
3631         elmo-message-entity-field.
3632
3633         * elmo-map.el (elmo-folder-pack-numbers): Use
3634         elmo-message-entity-set-number.
3635
3636         * elmo-maildir.el (elmo-folder-msgdb-create): 
3637         elmo-msgdb-create-message-entity-from-file instead of
3638         elmo-msgdb-create-overview-entity-from-file.
3639
3640         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3641         msgdb.
3642         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3643         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3644
3645         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3646         elmo-messge-entity-field and elmo-message-entity-number.
3647         (elmo-imap4-fetch-callback-1): Call
3648         elmo-msgdb-create-message-entity-from-buffer instead of
3649         elmo-msgdb-create-overview-from-buffer. 
3650         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3651         (elmo-find-fetch-strategy): Likewise.
3652
3653         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3654         elmo-localdir-msgdb-create-entity with argument msgdb.
3655
3656         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3657         and elmo-message-entity-set-number.
3658
3659         * elmo-cache.el (elmo-folder-msgdb-create): Use
3660         elmo-message-entity-field.
3661         (elmo-folder-msgdb-create): Call
3662         elmo-msgdb-create-message-entity-from-file instead of
3663         elmo-msgdb-create-overview-entity-from-file.
3664
3665         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3666         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3667         instead of elmo-msgdb-create-overview-from-buffer.
3668         (elmo-archive-msgdb-create-entity): Ditto.
3669         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3670         elmo-message-entity-field.
3671         (elmo-archive-parse-mmdf): Ditto.
3672
3673         * modb-entity.el: Removed.
3674
3675         * elmo-version.el (elmo-version): Up to 2.11.16.
3676
3677 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3678
3679         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3680         `is-local'.
3681         (elmo-folder-flag-as-answered): Ditto.
3682
3683 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3684
3685         * modb-standard.el: New file.
3686
3687         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3688         elmo-msgdb-convert-type is `sync'.
3689
3690         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3691         (elmo-msgdb-convert-type): New user option.
3692
3693         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3694         (elmo-load-msgdb): Auto detect saved type.
3695
3696         * elmo-version.el (elmo-version): Up to 2.11.15.
3697
3698 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3699
3700         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3701
3702         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3703         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3704         with argument `delete-if-none' when dst-folder is 'null.
3705
3706         * elmo-flag.el (elmo-folder-append-messages): Defined.
3707         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3708
3709 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3710
3711         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3712
3713 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3714
3715         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3716         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3717         (elmo-folder-commit): Ditto.
3718
3719 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3720
3721         * elmo-flag.el: New file.
3722
3723         * elmo-mark.el: Removed.
3724
3725         * modb-legacy.el (modb-legacy-new-mark,
3726         modb-legacy-unread-uncached-mark,
3727         modb-legacy-unread-cached-mark,
3728         modb-legacy-read-uncached-mark,
3729         modb-legacy-answered-cached-mark,
3730         modb-legacy-answered-uncached-mark,
3731         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3732         All other related portions are changed.
3733
3734         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3735         (elmo-folder-list-messages-with-global-mark): Abolish.
3736         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3737         (elmo-folder-flag-as-important): Ditto.
3738         (elmo-folder-unflag-read): Ditto.
3739         (elmo-folder-flag-as-read): Ditto.
3740         (elmo-folder-unflag-answered): Ditto.
3741         (elmo-folder-flag-as-answered): Ditto.
3742         (elmo-message-encache): Return the cache path.
3743         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3744         (elmo-message-set-flag): Transitional implementation.
3745         (elmo-message-unset-flag): Ditto.
3746         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3747         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3748         (elmo-init): Call elmo-global-flag-initialize.
3749         (toplevel): Added autoload settings for elmo-flag.
3750
3751         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3752
3753         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3754         (elmo-file-cache-delete): Don't treat global-mark.
3755
3756         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3757
3758         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3759
3760         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3761         `elmo-global-flags-set'.
3762
3763         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3764         `flag'.
3765         (elmo-folder-unflag-read): Ditto.
3766         (elmo-folder-unflag-important): Ditto.
3767         (elmo-folder-flag-as-important): Ditto.
3768         (elmo-folder-unflag-answered): Ditto.
3769         (elmo-folder-flag-as-answered): Ditto.
3770
3771         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3772         `elmo-global-flags-set'.
3773         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3774
3775         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3776
3777         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3778         `flag'.
3779         (elmo-folder-flag-as-important): Ditto.
3780         (elmo-folder-unflag-important): Ditto.
3781         (elmo-folder-flag-as-important): Ditto.
3782         (elmo-folder-unflag-read): Ditto.
3783         (elmo-folder-flag-as-read): Ditto.
3784         (elmo-folder-unflag-answered): Ditto.
3785         (elmo-folder-flag-as-answered): Ditto.
3786
3787         * elmo-multi.el (elmo-folder-list-importants): Don't call
3788         elmo-folder-list-messages-with-global-mark.
3789         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3790         (elmo-folder-unflag-important): Ditto.
3791         (elmo-folder-flag-as-read): Ditto.
3792         (elmo-folder-unflag-read): Ditto.
3793         (elmo-folder-flag-as-answered): Ditto.
3794         (elmo-folder-unflag-answered): Ditto.
3795
3796         * elmo-msgdb.el (elmo-msgdb-new-mark,
3797         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3798         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3799         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3800         (Moved to modb-legacy.el).
3801         (elmo-flag-table-get): Treat important flag too.
3802
3803         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3804         `mark' to `flag'.
3805         (elmo-map-folder-flag-as-important): Ditto.
3806         (elmo-map-folder-unflag-read): Ditto.
3807         (elmo-map-folder-flag-as-read): Ditto.
3808         (elmo-map-folder-unflag-answered): Ditto.
3809         (elmo-map-folder-flag-as-answered): Ditto.
3810         (elmo-folder-unflag-important): Ditto.
3811         (elmo-folder-flag-as-important): Ditto.
3812         (elmo-folder-unflag-read): Ditto.
3813         (elmo-folder-flag-as-read): Ditto.
3814         (elmo-folder-unflag-answered): Ditto.
3815         (elmo-folder-flag-as-answered): Ditto.
3816
3817         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3818         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3819         `flag'.
3820         (elmo-map-folder-unflag-important): Ditto.
3821         (elmo-map-folder-flag-as-read): Ditto.
3822         (elmo-map-folder-unflag-read): Ditto.
3823         (elmo-map-folder-flag-as-answered): Ditto.
3824         (elmo-map-folder-unflag-answered): Ditto.
3825
3826         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3827         `elmo-global-flags-set'.
3828         (elmo-global-flags-set): Added autoload setting.
3829
3830         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3831         `flag'.
3832
3833         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3834         `elmo-msgdb-global-mark-set'.
3835         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3836         Call `elmo-global-flags-set'.
3837         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3838         `flag'.
3839         (elmo-folder-flag-as-important-plugged): Ditto.
3840         (elmo-folder-unflag-read-plugged): Ditto.
3841         (elmo-folder-flag-as-read-plugged): Ditto.
3842         (elmo-folder-unflag-answered-plugged): Ditto.
3843         (elmo-folder-flag-as-answered-plugged): Ditto.
3844         (elmo-global-flags-set): Added autoload setting.
3845
3846         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3847         `flag'.
3848         (elmo-folder-unflag-read): Ditto.
3849         (elmo-folder-flag-as-important): Ditto.
3850         (elmo-folder-unflag-important): Ditto.
3851         (elmo-folder-flag-as-answered): Ditto.
3852         (elmo-folder-unflag-answered): Ditto.
3853
3854         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3855         change of `mark'->`flag'.
3856         (elmo-dop-queue-method-name-alist): Ditto.
3857         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3858         (elmo-folder-unflag-read-dop): Ditto.
3859         (elmo-folder-flag-as-important-dop): Ditto.
3860         (elmo-folder-unflag-important-dop): Ditto.
3861         (elmo-folder-flag-as-answered-dop): Ditto.
3862         (elmo-folder-unflag-answered-dop): Ditto.
3863
3864         * elmo-cache.el (elmo-folder-msgdb-create): Call
3865         `elmo-global-flags-set'.
3866
3867         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3868         Call `elmo-global-flags-set'.
3869         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3870         elmo-archive-parse-mmdf with argument `folder'.
3871         (elmo-archive-parse-mmdf): Added argument `folder';
3872         Call `elmo-global-flags-set'.
3873
3874         * elmo-version.el (elmo-version): Up to 2.11.14.
3875
3876 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3877
3878         * modb.el (elmo-msgdb-length): Define.
3879
3880         * elmo.el (elmo-make-folder): Fixed.
3881         (elmo-generic-folder-append-messages): Follow the API change.
3882
3883         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3884         API change.
3885
3886 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3887
3888         * modb.el: New file.
3889
3890         * modb-entity.el: Ditto.
3891
3892         * modb-legacy.el: Ditto.
3893
3894         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3895         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3896         of `elmo-msgdb-overview-get-entity'.
3897         (elmo-msgdb-get-field): Ditto.
3898         (elmo-msgdb-merge): Moved to `elmo.el'.
3899         (elmo-msgdb-length): Removed; redefine as modb method.
3900         (elmo-msgdb-change-mark): Abolish.
3901         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3902         (elmo-msgdb-match-condition): Don't use mark.
3903         (elmo-msgdb-overview-get-entity): Abolish.
3904         Split modb part into `modb*.el'.
3905
3906         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3907
3908         * elmo-shimbun.el (shimbun-mua-search-id): Use
3909         `elmo-msgdb-message-entity' instead of
3910         `elmo-msgdb-overview-get-entity'.
3911         (elmo-shimbun-folder-shimbun-header): Ditto.
3912         (elmo-shimbun-get-headers): Ditto.
3913         (elmo-shimbun-update-overview): Ditto.
3914
3915         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3916
3917         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3918
3919         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3920         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3921
3922         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3923         `elmo-msgdb-mark-to-flags'.
3924
3925         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3926         `elmo-msgdb-set-path'.
3927
3928         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3929  
3930         * elmo-version.el (elmo-version): Up to 2.11.13.
3931
3932         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3933
3934         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3935         of mark.
3936
3937 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3938
3939         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3940         mismatch.
3941
3942 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3943
3944         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3945         instead of `elmo-msgdb-get-cached'.
3946         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3947
3948         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3949         (elmo-msgdb-set-cached): Ditto.
3950         (elmo-msgdb-set-flag): Rewrite.
3951         (elmo-msgdb-unset-flag): Ditto.
3952
3953         * elmo-msgdb.el: Rewrite with luna.
3954
3955         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3956         (elmo-folder-msgdb): Follow the change above.
3957         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3958         (elmo-folder-unmark-important): Follow the API change.
3959         (elmo-folder-mark-as-important): Ditto.
3960         (elmo-folder-unmark-read): Ditto.
3961         (elmo-folder-mark-as-read): Ditto.
3962         (elmo-folder-unmark-answered): Ditto.
3963         (elmo-folder-mark-as-answered): Ditto.
3964         (elmo-folder-clear): Likewise.
3965
3966         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3967         instead of `elmo-msgdb-load' (renamed).
3968
3969         * elmo-version.el (elmo-version): Up to 2.11.12.
3970
3971 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3972
3973         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3974         change.
3975         (elmo-message-mark): Abolish.
3976         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3977         instead of `elmo-msgdb-change-mark'.
3978
3979         * elmo-pipe.el (elmo-message-mark): Abolish.
3980
3981         * elmo-multi.el (elmo-message-mark): Ditto.
3982
3983         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3984         (elmo-msgdb-unread-uncached-mark): Ditto.
3985         (elmo-msgdb-unread-cached-mark): Ditto.
3986         (elmo-msgdb-read-uncached-mark): Ditto.
3987         (elmo-msgdb-answered-cached-mark): Ditto.
3988         (elmo-msgdb-answered-uncached-mark): Ditto.
3989         (elmo-msgdb-important-mark): Ditto.
3990         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3991         `use-cache'.
3992         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3993         `flags'.
3994         (elmo-flag-table-load): Changed flag to list of flag.
3995         (elmo-flag-table-set): If flags is nil, set read flag.
3996         (elmo-flag-table-get): Return derived flags from global mark,
3997         cache status and saved flags.
3998         (elmo-msgdb-flag-table): Follow the change above.
3999         (elmo-msgdb-out-of-date-messages): New function.
4000
4001         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
4002
4003         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4004
4005         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
4006
4007         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4008         (elmo-nntp-msgdb-create-message): Ditto.
4009
4010         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
4011
4012         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
4013         independent.
4014         (elmo-folder-msgdb-create): Follow the API change.
4015
4016         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
4017         (elmo-folder-append-messages): Ditto.
4018
4019         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
4020         (elmo-folder-append-buffer): Ditto.
4021
4022         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
4023
4024         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4025
4026         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4027         (elmo-archive-parse-mmdf): Ditto.
4028
4029         * elmo-version.el (elmo-version): Up to 2.11.11.
4030
4031 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4032
4033         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
4034         `elmo-msgdb-mark'.
4035
4036         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
4037
4038         * elmo-pipe.el (elmo-message-flags): Defined.
4039
4040         * elmo-multi.el (elmo-message-flags): Ditto.
4041
4042 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4043
4044         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
4045         `elmo-msgdb-delete-msgs'.
4046
4047         * elmo.el (elmo-folder-count-flags): Don't use
4048         `elmo-msgdb-get-mark-alist'.
4049         (elmo-folder-detach-messages): Follow the API change.
4050
4051         * elmo.el (elmo-folder-list-messages): Append killed messages into
4052         result if `visible-only' is nil.
4053
4054         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
4055         canceled messages.
4056         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
4057         (elmo-folder-update-number): Likewise.
4058
4059         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
4060         (elmo-pop3-sort-msgdb-by-original-number): Use
4061         `elmo-msgdb-sort-entities'.
4062
4063         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
4064         (elmo-msgdb-sort-by-date): Use it.
4065         (elmo-msgdb-overview-sort-by-date): Abolish.
4066
4067         * elmo-dop.el (elmo-folder-status-dop): Fixed.
4068
4069         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
4070         (elmo-msgdb-flags): New function.
4071         (elmo-msgdb-merge): Use elmo-msgdb-append.
4072
4073         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
4074         change.
4075
4076         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
4077
4078         * elmo-dop.el (elmo-folder-status-dop): Use
4079         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
4080
4081 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4082
4083         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
4084
4085         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
4086
4087         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
4088
4089         * elmo-util.el (elmo-with-progress-display): New macro.
4090
4091         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
4092
4093 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4094
4095         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
4096         `elmo-folder-list-message-entities' instead of
4097         `elmo-msgdb-get-overview'.
4098         (elmo-map-folder-list-message-locations): Ditto.
4099
4100         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
4101         methods instead of treat directly).
4102         (elmo-msgdb-clear): Ditto.
4103         (elmo-msgdb-delete-msgs): Ditto.
4104         (elmo-msgdb-sort-by-date): Ditto.
4105
4106         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
4107         local variables.
4108         (elmo-nntp-folder-msgdb-create): Follow the API change.
4109
4110         * elmo-version.el (elmo-version): Up to 2.11.10.
4111
4112 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4113
4114         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
4115         (elmo-msgdb-flags-to-mark): Ditto.
4116         (elmo-msgdb-append-entity): Ditto.
4117
4118         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
4119         Use `elmo-msgdb-append-entity' instead of construct msgdb.
4120         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4121         (elmo-archive-parse-mmdf): Ditto.
4122
4123         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4124
4125         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
4126
4127         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
4128
4129         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4130
4131         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
4132
4133         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4134
4135         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4136
4137         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4138
4139         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
4140         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
4141         to empty msgdb.
4142
4143         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
4144         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
4145         instead of directly construction.
4146         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
4147         instead of construct msgdb.
4148
4149         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
4150         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
4151         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
4152         instead of construct msgdb.
4153
4154 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4155
4156         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
4157         when field is from or subject.
4158
4159 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
4160
4161         * elmo-multi.el (elmo-message-entity-parent): Define.
4162         (elmo-folder-search): Rewrite.
4163
4164 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4165
4166         * elmo-multi.el (elmo-message-cached-p): Define.
4167
4168         * elmo.el (elmo-message-cached-p): New method.
4169         (elmo-message-accessible-p): Use it instead of msgdb API directly.
4170         (elmo-message-flags): New method.
4171         (elmo-message-flagged-p): New function.
4172
4173         * elmo-version.el (elmo-version): Up to 2.11.9.
4174
4175 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4176
4177         * elmo-version.el (elmo-version): Up to 2.11.8.
4178
4179         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
4180
4181         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
4182
4183 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
4184
4185         * elmo.el (elmo-folder-detach-messages): Undo last change.
4186
4187 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
4188
4189         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
4190
4191         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
4192         only when src folder type is pop3.
4193
4194 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
4195
4196         * elmo-msgdb.el (elmo-msgdb-make-index): Use
4197         elmo-msgdb-overview-entity-get-number instead of
4198         elmo-message-entity-number.
4199
4200 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4201
4202         * elmo-version.el (elmo-version): Up to 2.11.7.
4203
4204 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
4205
4206         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
4207         function.
4208
4209         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
4210         (elmo-msgdb-merge): New function.
4211         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
4212         (elmo-msgdb-make-index): Rewrite.
4213
4214         * elmo-version.el (elmo-version): Up to 2.11.6.
4215
4216         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
4217         use it as a the path for loading message entities.
4218
4219         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
4220
4221 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
4222
4223         * elmo-filter.el (elmo-folder-set-message-modified): Set 
4224         message-modified slot of itself if it does not require target msgdb.
4225
4226         * elmo-mime.el (elmo-mime-message-display): Display message entirely
4227         if folder length is zero.
4228         (elmo-mime-display-as-is): Ditto.
4229
4230         * elmo-filter.el (elmo-folder-set-message-modified): Define.
4231
4232         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
4233
4234 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4235
4236         * elmo.el (elmo-folder-set-message-modified): New method.
4237         (elmo-generic-folder-commit): Use it.
4238         (elmo-folder-synchronize): Ditto.
4239
4240         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
4241         (elmo-folder-commit): Remove duplicate definition.
4242
4243 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4244
4245         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
4246
4247 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4248
4249         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
4250         (elmo-strict-folder-diff): Ditto.
4251         (elmo-folder-set-info-max-by-numdb): Simplify.
4252
4253         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
4254         elmo-msgdb-list-messages.
4255
4256         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
4257         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
4258
4259 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4260
4261         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
4262         visible-only is non-nil.
4263         (elmo-folder-confirm-appends): Changed message.
4264         (elmo-folder-synchronize): Added argument disable-killed.
4265
4266         * elmo-multi.el (elmo-folder-synchronize): Added argument
4267         disable-killed.
4268
4269         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
4270
4271         * elmo-version.el (elmo-version): Up to 2.11.5.
4272
4273         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
4274         elmo-list-filter.
4275
4276         * elmo-util.el (elmo-list-filter): Simplify.
4277
4278         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
4279         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
4280         (elmo-generic-folder-diff): Abolish argument.
4281         (elmo-msgdb-load): Don't use number-alist.
4282
4283         * elmo-filter.el (elmo-folder-diff): Abolish argument.
4284
4285         * elmo-pipe.el (elmo-folder-diff): Ditto.
4286
4287         * elmo-nmz.el (elmo-folder-diff): Ditto.
4288
4289         * elmo-net.el (elmo-folder-diff): Ditto.
4290
4291         * elmo-maildir.el (elmo-folder-diff): Ditto.
4292
4293         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
4294
4295         * elmo-multi.el (elmo-folder-diff): Ditto
4296         (elmo-multi-folder-diff): Rewrite.
4297
4298 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4299
4300         * elmo-pipe.el (elmo-folder-msgdb): Define.
4301
4302 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
4303
4304         * elmo.el (elmo-message-set-cached): Define as a method.
4305
4306         * elmo-pipe.el (elmo-message-set-cached): Define.
4307         (elmo-find-fetch-strategy): Ditto.
4308
4309         * elmo-multi.el (elmo-message-set-cached): Define.
4310         (elmo-find-fetch-strategy): Rewrite.
4311
4312         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
4313
4314         * elmo-pipe.el (elmo-message-folder): Fixed definition.
4315
4316 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4317
4318         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
4319         instead of number-alist.
4320
4321         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
4322         mark nor message-id when msgdb of source folder is not loaded.
4323
4324         * elmo.el (elmo-generic-folder-append-messages): Ditto.
4325
4326         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4327
4328 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
4329
4330         * elmo.el (elmo-folder-length): Don't require msgdb.
4331
4332 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
4333
4334         * elmo.el (elmo-message-mark): Cause an error when empty folder.
4335         (elmo-message-field): Ditto.
4336
4337         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
4338         (elmo-map-folder-list-message-locations): Setup `answered-locations'
4339         slot.
4340         (elmo-map-folder-list-answereds): Define.
4341         (elmo-maildir-list-location): Treat 'R' info.
4342         (elmo-folder-msgdb-create): Treat flag-table.
4343         (elmo-folder-append-messages): Save flag-table.
4344
4345 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
4346
4347         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
4348         Use SELECT when elmo-imap4-use-select-to-update-status is t.
4349
4350 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4351
4352         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
4353
4354         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
4355         'read when mark is null.
4356
4357 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
4358
4359         * elmo-version.el (elmo-version): Up to 2.11.4.
4360
4361 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4362
4363         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
4364         (elmo-folder-mark-as-answered): Ditto.
4365
4366 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
4367
4368         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
4369         (elmo-pop3-get-session): Make msgdb directory after session.
4370         (elmo-folder-exists-p): Check exactly at the first time even when the
4371         elmo-pop3-exists-exactly is nil.
4372
4373         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
4374         (elmo-folder-list-messages): Define instead of
4375         elmo-folder-list-messages-internal.
4376         (elmo-folder-check): Check destination folder.
4377         (elmo-folder-synchronize): Drain the pipe.
4378
4379         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
4380         when msgdb is not loaded.
4381
4382         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
4383
4384         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
4385         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
4386         messages.
4387
4388         * elmo.el (elmo-folder-kill-messages-before): New function.
4389         (elmo-folder-kill-messages): Ditto.
4390         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
4391
4392         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
4393         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
4394         killed not by synchronize (e.g. scoring).
4395
4396 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4397
4398         * elmo.el (elmo-folder-search-fast): Return t if condition is not
4399         treated.
4400         (elmo-folder-search): Follow the change above.
4401
4402         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
4403         into the candidates of search field.
4404
4405 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
4406
4407         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
4408         (elmo-msgdb-unset-flag): Ditto.
4409
4410         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
4411
4412 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
4413
4414         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
4415         (elmo-folder-commit): Define.
4416         (elmo-folder-synchronize): Ditto.
4417         (elmo-folder-list-flagged): Ditto.
4418         (elmo-folder-commit): Ditto.
4419         (elmo-folder-length): Ditto.
4420         (elmo-folder-count-flags): Ditto.
4421         (elmo-message-mark): Ditto.
4422         (elmo-message-field): Ditto.
4423         (elmo-message-entity): Ditto.
4424         (elmo-message-folder): Ditto.
4425
4426 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
4427
4428         * elmo.el (elmo-message-field): Define as a method.
4429
4430         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
4431         (elmo-message-field): Define.
4432
4433         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
4434         (elmo-folder-list-importants): Ditto.
4435         (elmo-folder-list-answereds): Ditto.
4436
4437         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
4438         qualifier.
4439         (elmo-folder-mark-as-read): Ditto.
4440         (elmo-folder-unmark-read): Ditto.
4441         (elmo-folder-mark-as-answered): Ditto.
4442         (elmo-folder-unmark-answered): Ditto.
4443         (elmo-folder-list-flagged): Define.
4444         (elmo-folder-commit): Ditto.
4445         (elmo-folder-length): Ditto.
4446         (elmo-folder-count-flags): Ditto.
4447
4448 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4449
4450         * elmo.el (elmo-folder-detach-messages): New method.
4451         (elmo-folder-move-messages): Use it.
4452         (elmo-folder-synchronize): Ditto.
4453
4454         * elmo-multi.el (elmo-folder-detach-messages): Define.
4455
4456         * elmo.el (elmo-message-copy-entity): New function.
4457         (elmo-message-entity-set-number): Ditto.
4458         (elmo-message-mark): Define as method.
4459
4460         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4461         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4462         (elmo-message-entity): Fixed last change.
4463         (elmo-message-mark): Define.
4464         (elmo-folder-msgdb-create): Abolish.
4465         (elmo-multi-folder-append-msgdb): Ditto.
4466         (elmo-multi-folder-diff): Fixed.
4467         (elmo-multi-split-number-alist): Removed.
4468         (elmo-multi-split-mark-alist): Removed.
4469         (elmo-folder-list-messages): Define.
4470         (elmo-folder-list-messages-internal): Removed.
4471
4472         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4473         local file messages.
4474         (elmo-folder-msgdb-create): Fixed read mark.
4475
4476 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4477
4478         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4479         if mark is nil.
4480
4481 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4482
4483         * elmo.el (elmo-folder-list-message-entities): Define as inline
4484         function.
4485         (elmo-folder-messages): Abolish.
4486
4487         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4488         folder.
4489         (elmo-folder-synchronize): Define.
4490         (elmo-message-entity): Define.
4491
4492 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4493
4494         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4495         elmo-imap4-session-select-mailbox.
4496
4497         * elmo.el (elmo-folder-move-messages): Don't display any message.
4498
4499         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4500         parsing.
4501         (elmo-imap4-session-check): Don't wait CHECK response.
4502         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4503
4504 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4505
4506         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4507
4508 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4509
4510         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4511         API.
4512         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4513
4514
4515         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4516         (elmo-folder-list-message-entities): Added argument in-msgdb and
4517         numbers.
4518         (elmo-folder-synchronize): Define as a method.
4519
4520         * elmo-nntp.el (elmo-folder-initialize): Don't use
4521         elmo-nntp-default-user if zero-length username is specified
4522         explicitly.
4523
4524 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4525
4526         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4527         server name in case with username.
4528         (XXX: this is ad-hoc fix against username includes "@", it
4529         should be solved fundamentally)
4530
4531 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4532
4533         * elmo-nntp.el (elmo-nntp-debug): New function.
4534         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4535         (elmo-network-authenticate-session): Hide auth-info from the log.
4536
4537         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4538         user name if it is equal to elmo-nntp-default-user.
4539
4540 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4541
4542         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4543         instead of shimbun-server-internal;
4544         Use shimbun-current-group instead of shimbun-current-group-internal.
4545         (elmo-folder-plugged-p): Use shimbun-server instead of
4546         shimbun-server-internal.
4547         (elmo-folder-set-plugged): Ditto.
4548         (elmo-net-port-info): Ditto.
4549         (elmo-folder-check): Ditto.
4550         (elmo-folder-expand-msgdb-path): Ditto.
4551         (elmo-folder-list-subfolders): Ditto.
4552
4553 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4554
4555         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4556         Convert field-name to lower case.
4557         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4558
4559 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4560
4561         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4562         `message' and `error' take format string.
4563
4564 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4565
4566         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4567
4568 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4569
4570         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4571         recursive call (can't byte compile on emacs 20.7).
4572
4573 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4574
4575         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4576         (elmo-folder-list-message-entities): New API.
4577         (elmo-message-entity): Ditto.
4578         (elmo-message-entity-parent): Ditto.
4579         (elmo-folder-do-each-message-entity): Ditto.
4580         (elmo-message-entity-number): Ditto.
4581         (elmo-message-entity-field): Ditto.
4582         (elmo-message-entity-set-field): Ditto.
4583         (elmo-folder-count-flags): Ditto.
4584         (elmo-folder-length): Ditto.
4585
4586         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4587         not.
4588
4589         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4590         (elmo-msgdb-count-marks): Abolish.
4591         (elmo-msgdb-make-entity): Ditto.
4592         (elmo-msgdb-do-each-entity): Ditto.
4593         (elmo-msgdb-message-entity): New inline function.
4594         (elmo-msgdb-message-entity-field): Ditto.
4595         (elmo-msgdb-message-entity-set-field): Ditto.
4596         (elmo-msgdb-make-message-entity): New function.
4597
4598 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4599
4600         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4601         to flag. (All other related portions are changed.)
4602         (elmo-folder-msgdb-create): Likewise.
4603         (elmo-generic-folder-append-messages): Use flag-table instead of
4604         seen-list.
4605         (elmo-folder-move-messages): Removed redundant process.
4606         (elmo-folder-synchronize): Likewise.
4607
4608         * elmo-msgdb.el (elmo-flag-table-get): New function.
4609         (elmo-flag-table-save): Fixed.
4610         (elmo-msgdb-length): New inline function.
4611         (elmo-msgdb-flag-table): New function.
4612         (elmo-msgdb-mark): Add optional argument new.
4613         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4614         (elmo-msgdb-seen-list): Ditto.
4615         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4616
4617
4618 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4619
4620         * elmo.el (elmo-message-set-mark): Abolish.
4621         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4622         (All related portions are changed.)
4623
4624         * elmo-msgdb.el (toplevel): Added comment.
4625         (elmo-load-msgdb): Added 4th element `path'.
4626         (elmo-msgdb-append): Follow the change above.
4627         (elmo-msgdb-clear): Ditto.
4628         (elmo-msgdb-delete-msgs): Ditto.
4629         (elmo-msgdb-get-path): New inline function.
4630         (elmo-msgdb-set-path): Ditto.
4631         (elmo-flag-table-filename): New variable.
4632         (elmo-flag-table-load): New function.
4633         (elmo-flag-table-set): Ditto.
4634         (elmo-flag-table-save): Ditto.
4635         (elmo-msgdb-get-field-value): Abolish.
4636         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4637
4638 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4639
4640         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4641         the folder has been deleted successfully.
4642         * elmo-imap4.el (elmo-folder-delete): Ditto.
4643         * elmo-archive.el (elmo-folder-delete): Ditto.
4644         * elmo-localdir.el (elmo-folder-delete): Ditto.
4645         * elmo-maildir.el (elmo-folder-delete): Ditto.
4646
4647 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4648
4649         * elmo-util.el (elmo-string-member-ignore-case): New function.
4650         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4651         (elmo-imap4-fetch-callback-1-subr): Likewise.
4652
4653 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4654
4655         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4656         the case of the name attribute "\Noselect".
4657
4658 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4659
4660         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4661
4662         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4663         flist, is not always a member of onum-alist.
4664
4665 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4666
4667         * elmo-version.el (elmo-version): Up to 2.11.3.
4668
4669 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4670
4671         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4672         copied from localdir's one.
4673
4674         * elmo-pipe.el (elmo-folder-rename): New method, rename
4675         destination folder with leaving source folder as it is.
4676
4677 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4678
4679         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4680         replace-regexp.
4681
4682 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4683
4684         * elmo-version.el (elmo-version): Up to 2.11.2.
4685
4686 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4687
4688         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4689         shimbun-open in case of "@".
4690         (elmo-folder-open-internal): Cope with shimbun = nil case.
4691         (elmo-folder-plugged-p): Ditto.
4692         (elmo-folder-list-subfolders): Make list for "@/" group.
4693
4694 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4695
4696         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4697         mailbox (e.g. for %~/something).
4698
4699 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4700
4701         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4702         Replace nested conditional with guard clauses.
4703
4704 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4705
4706         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4707         error [wl:11327].
4708
4709         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4710         print-depth.
4711
4712 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4713
4714         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4715         Replace nested conditional with guard clauses.
4716
4717 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4718
4719         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4720         (elmo-passwd-alist-save): Ditto.
4721         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4722
4723 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4724
4725         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4726         dir-name only if it is absolute path.
4727         (TODO: distinguish +/something and +something)
4728
4729 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4730
4731         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4732         path for "+~/something".
4733
4734 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4735
4736         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4737         as non-directory, cause error before rename-file.
4738         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4739         apropriately, mimic localdir's one.
4740         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4741
4742 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4743
4744         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4745
4746 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4747
4748         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4749
4750         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4751         
4752         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4753         is included in the global-mark or not.
4754
4755 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4756
4757         * utf7.el (toplevel): Avoid error when the function
4758         find-coding-system does not exist.
4759
4760 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4761
4762         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4763         cache even if the folder is plugged.
4764         (elmo-nntp-search-primitive): Do nothing when body search is
4765         invoked (although it is not used by the change above).
4766         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4767
4768 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4769
4770         * elmo-version.el (elmo-version): Up to 2.11.1.
4771
4772 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4773
4774         * elmo-archive.el: Specify charset.
4775
4776 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4777
4778         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4779         process buffer lives or not.
4780
4781         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4782         while flushing queues (It causes infinite loop).
4783
4784 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4785
4786         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4787
4788 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4789
4790         * utf7.el (toplevel): Check the ucs features dynamically.
4791         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4792
4793         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4794         folder is creatabe or not if it already exists.
4795
4796 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4797
4798         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4799
4800         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4801
4802         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4803         (elmo-imap4-read-response): Take care of garbage response.
4804
4805 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4806
4807         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4808         just return nil instead of error.
4809
4810 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4811
4812         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4813         search-key is "body".
4814
4815 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4816
4817         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4818         of elmo-string-matched-assoc to use match-data.
4819         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4820
4821 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4822
4823         * elmo-split.el (elmo-split->): New function.
4824         (elmo-split-<): Ditto.
4825
4826 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4827
4828         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4829         workaround for invalid message-id.
4830
4831 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4832
4833         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4834         return normal pop3 session or pop3 biff session.
4835
4836 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4837
4838         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4839         info part to the cur files when the new files already have it.
4840         (Adviced by Jared Rhine <jared@wordzoo.com>)
4841
4842 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4843
4844         * elmo-split.el (elmo-split-default-action): New variable.
4845         (elmo-split-subr): Use it if all other conditions are passed.
4846         Extend `fname' and rename it as `action'. (implemented
4847         Teranishi-san's idea in [wl:10800])
4848
4849 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4850
4851         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4852         * elmo-util.el: Ditto.
4853
4854 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4855
4856         * elmo.el (elmo-message-accessible-p): Renamed from
4857         elmo-message-cached-p and rewritten.
4858
4859 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4860
4861         * elmo.el (elmo-folder-list-flagged): New generic function.
4862         (elmo-folder-list-importants): New implementation.
4863         (elmo-folder-list-answereds): Ditto.
4864         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4865         Added 'digest'.
4866         (elmo-message-cached-p): New function.
4867         (elmo-message-set-flag): Ditto (no content).
4868         (elmo-message-unset-flag): Ditto.
4869         (elmo-folder-list-messages-mark-match): Abolish.
4870
4871         * elmo-util.el (elmo-regexp-opt): New function.
4872
4873         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4874         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4875         Added 'digest'.
4876         (elmo-msgdb-list-flagged): New function.
4877
4878         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4879         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4880         Added 'digest'.
4881
4882         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4883
4884 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4885
4886         * elmo-version.el (elmo-version): Up to 2.11.0.
4887
4888 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4889
4890         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4891         `elmo-file-cache-exists-p'; use proper mark that depends on
4892         `use-cache'.
4893         (elmo-msgdb-unset-flag): Ditto.
4894         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4895
4896         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4897         with 4th argument `use-cache'.
4898
4899 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4900
4901         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4902         (elmo-folder-mark-as-important): Ditto.
4903         (elmo-folder-unmark-read): Ditto.
4904         (elmo-folder-mark-as-read): Ditto.
4905         (elmo-folder-unmark-answered): Ditto.
4906         (elmo-folder-mark-as-answered): Ditto.
4907
4908         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4909         message status.
4910         (elmo-msgdb-mark): Likewise.
4911         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4912         (elmo-msgdb-unset-flag): Likewise.
4913
4914         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4915
4916 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4917
4918         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4919         `last:' filter.
4920
4921 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4922
4923         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4924         set spool-length to 0.
4925
4926 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4927
4928         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4929         (elmo-dop-queue-flush): Fixed last change.
4930
4931 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4932
4933         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4934         if require-msgdb slot is nil.
4935         (elmo-folder-list-importants): Likewise.
4936
4937 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4938
4939         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4940         mark is changed.
4941
4942         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4943         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4944         is changed.
4945
4946 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4947
4948         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4949
4950 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4951
4952         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4953
4954         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4955
4956 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4957
4958         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4959         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4960
4961 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4962
4963         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4964         the problem reported by Sean Rima [wl-en:180].
4965
4966 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4967
4968         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4969
4970         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4971
4972         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4973
4974         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4975
4976         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4977
4978         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4979
4980         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4981
4982 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4983
4984         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4985         status number.
4986
4987 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4988
4989         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4990         (elmo-folder-mark-as-read): Follow the API change.
4991         (elmo-message-set-cached): New function.
4992
4993         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4994
4995         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4996
4997         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4998         (elmo-folder-mark-as-important): Ditto.
4999         (elmo-folder-unmark-read): Ditto.
5000         (elmo-folder-mark-as-read): Ditto.
5001         (elmo-folder-unmark-answered): Ditto.
5002         (elmo-folder-mark-as-answered): Ditto.
5003
5004         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
5005         (elmo-folder-unmark-important): Ditto.
5006         (elmo-folder-mark-as-read): Ditto.
5007         (elmo-folder-unmark-read): Ditto.
5008         (elmo-folder-mark-as-answered): Ditto.
5009         (elmo-folder-unmark-answered): Ditto.
5010
5011         * elmo-mark.el (toplevel): Removed some mark method definitions.
5012
5013         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
5014         (elmo-map-folder-mark-as-answered): Ditto.
5015         (elmo-folder-unmark-important): Add :before qualifier.
5016         (elmo-folder-mark-as-important): Ditto.
5017         (elmo-folder-unmark-read): Ditto.
5018         (elmo-folder-mark-as-read): Ditto.
5019         (elmo-folder-unmark-answered): Define.
5020         (elmo-folder-mark-as-answered): Ditto.
5021
5022         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
5023         (elmo-map-folder-unmark-answered): Ditto.
5024
5025         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
5026
5027         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
5028         (elmo-folder-mark-as-important): Ditto.
5029         (elmo-folder-unmark-read): Ditto.
5030         (elmo-folder-mark-as-read): Ditto.
5031         (elmo-folder-unmark-answered): Ditto.
5032         (elmo-folder-mark-as-answered): Ditto.
5033
5034         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
5035         `mark'; evaluate mark condition.
5036         (elmo-msgdb-match-condition-internal): New function.
5037         (elmo-msgdb-match-condition): Call it; changed argument.
5038
5039         * elmo.el (elmo-folder-search): Follow the API change on
5040         `elmo-msgdb-match-condition'.
5041
5042 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5043
5044         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
5045         original mark is non-nil.
5046
5047 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
5048
5049         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
5050         (elmo-map-folder-list-answereds): New method.
5051         (elmo-folder-list-unreads): Add :around qualifier.
5052         (elmo-folder-list-importants): Ditto.
5053         (elmo-folder-list-answereds): Ditto.
5054
5055 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
5056
5057         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
5058
5059         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
5060         method if msgdb is not required.
5061         (elmo-filter-folder-list-importants): Don't treat global-mark.
5062
5063         * elmo.el (elmo-folder-list-importants): Ditto.
5064
5065         * elmo-net.el (elmo-folder-list-importants): Ditto.
5066
5067         * elmo-map.el (elmo-folder-list-importants): Ditto.
5068
5069         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
5070
5071         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
5072         (elmo-imap4-folder-list-any-plugged): New function.
5073         (elmo-imap4-search-internal-primitive): Use it.
5074
5075         * elmo-filter.el (elmo-folder-check): Synchronize original folder
5076         only when require-msgdb slot is non-nil.
5077         (elmo-folder-close): Clear target folder's msgdb.
5078
5079 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5080
5081         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
5082         (elmo-pop3-msgdb-create-by-header): Ditto.
5083         (elmo-pop3-msgdb-create-message): Ditto.
5084
5085         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
5086
5087         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
5088
5089         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
5090
5091         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
5092         (elmo-folder-msgdb-create): Ditto.
5093         (elmo-nntp-folder-msgdb-create): Ditto.
5094         (elmo-nntp-msgdb-create-by-header): Ditto.
5095         (elmo-nntp-msgdb-create-message): Ditto.
5096         (elmo-folder-list-unreads): Define.
5097
5098         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
5099         (elmo-folder-append-messages): Ditto.
5100         (elmo-folder-list-unreads): Define.
5101         (elmo-folder-list-importants): Ditto.
5102         (elmo-folder-list-answereds): Ditto.
5103
5104         * elmo-net.el (elmo-folder-list-unreads): Define.
5105         (elmo-folder-list-importants): Ditto.
5106         (elmo-folder-list-answereds): Ditto.
5107         (elmo-folder-list-answereds-plugged): Ditto.
5108         (elmo-folder-msgdb-create): Follow the API change.
5109         (elmo-folder-msgdb-create-unplugged): Ditto.
5110         (elmo-folder-unmark-answered): Define.
5111         (elmo-folder-mark-as-answered-unplugged): Ditto.
5112         (elmo-folder-unmark-answered-unplugged): Ditto.
5113
5114         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
5115         (elmo-msgdb-unread-uncached-mark): Ditto.
5116         (elmo-msgdb-unread-cached-mark): Ditto.
5117         (elmo-msgdb-read-uncached-mark): Ditto.
5118         (elmo-msgdb-answered-cached-mark): Ditto.
5119         (elmo-msgdb-answered-uncached-mark): Ditto.
5120         (elmo-msgdb-important-mark): Ditto.
5121         (elmo-msgdb-set-mark): Rewrite.
5122         (elmo-msgdb-count-marks): Rewrite.
5123         (elmo-msgdb-mark-alist-set): Abolish.
5124         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
5125         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
5126
5127         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
5128         (elmo-folder-close): Define.
5129         (elmo-folder-msgdb-create): Follow the API change.
5130         (elmo-folder-list-unreads): Rewrite.
5131         (elmo-folder-mark-as-important): Ditto.
5132         (elmo-folder-unmark-important): Ditto.
5133         (elmo-folder-mark-as-read): Ditto.
5134         (elmo-folder-unmark-read): Ditto.
5135         (elmo-folder-mark-as-answered): Define.
5136         (elmo-folder-unmark-answered): Ditto.
5137
5138         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
5139         (elmo-folder-append-messages): Ditto.
5140
5141         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
5142
5143         * elmo-map.el (elmo-folder-list-unreads): Ditto.
5144         (elmo-folder-list-importants): Ditto.
5145
5146         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
5147         (elmo-folder-append-messages): Ditto.
5148
5149         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
5150         change.
5151         (elmo-folder-msgdb-create-plugged): Ditto.
5152         (elmo-folder-append-messages): Ditto.
5153         (elmo-folder-list-answereds-plugged): Define.
5154         (elmo-imap4-search-internal-primitive): Add `mark' processing.
5155         (elmo-folder-unmark-answered-plugged): Define.
5156         (elmo-folder-mark-as-answered-plugged): Ditto.
5157         (elmo-folder-search-requires-msgdb-p): Ditto.
5158
5159         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
5160         (elmo-folder-initialize): Set it.
5161         (elmo-folder-msgdb): Define.
5162         (elmo-folder-check): Call elmo-folder-synchronize.
5163         (elmo-folder-close): Define.
5164         (elmo-folder-commit): Ditto.
5165         (elmo-folder-msgdb-create): Rewrite.
5166         (elmo-folder-list-unreads): Ditto.
5167         (elmo-folder-list-importants): Ditto.
5168         (elmo-folder-mark-as-read): Ditto.
5169         (elmo-folder-unmark-read): Ditto.
5170         (elmo-folder-mark-as-important): Ditto.
5171         (elmo-folder-unmark-important): Ditto.
5172         (elmo-folder-mark-as-answered): Define.
5173         (elmo-folder-unmark-answered): Ditto.
5174
5175         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
5176         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
5177         (elmo-dop-queue-method-name-alist): Likewise.
5178         (elmo-folder-mark-as-answered-dop): New inline function.
5179         (elmo-folder-unmark-answered-dop): Ditto.
5180         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
5181
5182         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
5183         (elmo-folder-msgdb-create): Ditto.
5184         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
5185         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
5186         (elmo-archive-parse-mmdf): Ditto.
5187
5188         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
5189         (elmo-folder-list-unreads-internal): Ditto.
5190
5191         * elmo.el (elmo-folder-msgdb): Define as generic function.
5192         (elmo-folder-list-messages): Added argument `in-msgdb'.
5193         (elmo-folder-list-unreads): Define as generic function.
5194         (elmo-folder-list-importants): Ditto.
5195         (elmo-folder-list-answereds): Ditto.
5196         (elmo-folder-list-messages-with-global-mark): New function.
5197         (elmo-folder-msgdb-create): Removed mark arguments.
5198         (elmo-folder-unmark-answered): New generic function.
5199         (elmo-folder-mark-as-answered): Ditto.
5200         (elmo-folder-append-messages): Removed argunment `unread-marks'
5201         (elmo-folder-list-unreads-internal): Abolish.
5202         (elmo-folder-list-importants-internal): Ditto.
5203         (elmo-folder-search-requires-msgdb-p): New generic function.
5204         (elmo-folder-search-requires-msgdb-p-internal): New function.
5205         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
5206         elmo-msgdb-load.
5207         (elmo-folder-search-fast): Added key 'mark'.
5208         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
5209         instead of unread-marks argument.
5210         (elmo-folder-move-messages): Removed argunment `unread-marks'
5211         (elmo-folder-unmark-important): Define.
5212         (elmo-folder-mark-as-important): Ditto.
5213         (elmo-folder-unmark-read): Ditto.
5214         (elmo-folder-mark-as-read): Ditto.
5215         (elmo-folder-unmark-answered): Ditto.
5216         (elmo-folder-mark-as-answered): Ditto.
5217         (elmo-folder-replace-marks): Abolish.
5218         (elmo-generic-folder-append-msgdb): Append msgdb before checking
5219         duplicates.
5220         (elmo-folder-synchronize): Removed mark arguments;
5221         return crosspost only number.
5222
5223 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5224
5225         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
5226         Remove redundunt connectivity check.
5227
5228 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5229
5230         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
5231         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
5232
5233 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
5234
5235         * pldap.el (ldap-decode-string): Return string as-is if
5236         `ldap-coding-system' is nil.
5237         (ldap-encode-string): Ditto.
5238         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
5239         (ldap-default-host): Fixed docstring.
5240
5241 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
5242
5243         * elmo-util.el (elmo-warning): Define as a macro which uses
5244         `display-warning' if it is defined as a function.
5245
5246         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
5247         (elmo-split-equal): Use it.
5248         (elmo-split-match): Ditto.
5249         (elmo-split-message-entity): New buffer-local variable.
5250         (elmo-split-subr): Set it.
5251
5252         * elmo-version.el (elmo-version): Up to 2.9.15.
5253
5254 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
5255
5256         * elmo-imap4.el (elmo-network-initialize-session):
5257         Check capability after starttls.
5258
5259 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
5260
5261         * elmo-util.el (elmo-list-delete): Added optional argument
5262         DELETE-FUNCTION.
5263
5264         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
5265
5266         * elmo-util.el (elmo-warning): Ignore errors while recenter.
5267
5268         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
5269
5270         * elmo-imap4.el (elmo-folder-initialize): Don't use
5271         elmo-imap4-default-mailbox.
5272
5273 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5274
5275         * elmo-split.el (toplevel): Use `product-provide'.
5276         (elmo-split): Checkdoc.
5277
5278 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
5279
5280         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
5281         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
5282         the function `elmo-imap4-debug-1'.
5283
5284 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5285
5286         * elmo-split.el (elmo-split): Moved to run hooks and to show
5287         message from elmo-split-subr.
5288         (elmo-split-subr): Follow the change above.
5289
5290         * elmo-split.el (elmo-split-subr): New function (renamed from
5291         elmo-split-subr).
5292         (elmo-split): Changed to call elmo-split-subr by element of
5293         elmo-split-folder.
5294         (elmo-split-folder): Changed customization type to choice.
5295
5296 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5297
5298         * elmo-split.el (elmo-split-and): Fixed condition.
5299
5300 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5301
5302         * elmo-split.el: New file.
5303         (elmo-split): Fixed logic.
5304         Display "Test:" instead of "Folder:" when reharsal.
5305
5306         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
5307         explicitly.
5308
5309         * elmo-version.el (elmo-version): Up to 2.9.14.
5310
5311         * elmo-util.el (elmo-expand-newtext): New function (renamed from
5312         wl-expand-newtext).
5313
5314 2002-06-10  Kenichi Sato <ksato@sonycom.com>
5315
5316         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
5317         message with no message-id field.
5318
5319 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
5320
5321         * elmo-version.el (elmo-version): Up to 2.9.13.
5322
5323         * elmo-dop.el (elmo-folder-status-dop): Fix.
5324
5325 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
5326
5327         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
5328
5329         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
5330         changing default value of default-mime-charset.
5331         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
5332
5333         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
5334
5335         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
5336         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
5337         instead of elmo-dop-queue-method-name-alist to check merging queue.
5338         (elmo-folder-delete-messages-dop): Delete from queue if negative
5339         message number.
5340         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
5341         file is already removed.
5342
5343 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
5344
5345         * elmo-vars.el: Bind colon keywords for old Emacsen.
5346
5347 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5348
5349         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
5350         against non-exsisting charset.
5351
5352 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
5353
5354         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
5355         Use eword-decode-and-unfold-unstructured-field-body.
5356
5357         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
5358         (elmo-msgdb-create-overview-from-buffer): Use document charset if
5359         exists to decode raw subject string.
5360         (toplevel): Require 'mime.
5361
5362         * elmo-version.el (elmo-version): Up to 2.9.12.
5363
5364 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
5365
5366         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
5367         (elmo-msgdb-set-mark): Ditto.
5368
5369         * elmo-version.el (elmo-version): Up to 2.9.11.
5370
5371 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
5372
5373         * elmo-util.el (elmo-delete-match-files): New function.
5374
5375         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
5376         instead of elmo-delete-directory.
5377
5378         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
5379         elmo-hash-minimun-size as 63.
5380
5381         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
5382         elmo-diff-unread is nil.
5383
5384         * elmo-imap4.el (elmo-folder-open): Fix.
5385
5386         * elmo.el (elmo-message-mark): Rewrite.
5387         (elmo-message-field): Ditto.
5388         (elmo-message-set-mark): Ditto.
5389         (elmo-folder-replace-marks): New function.
5390         (elmo-generic-folder-append-msgdb): Removed third argument for
5391         elmo-msgdb-append.
5392         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
5393         (elmo-msgdb-load): New implementation.
5394
5395         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
5396
5397         * elmo-util.el (elmo-list-insert): New implementation.
5398
5399         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
5400         argument for elmo-msgdb-append.
5401         
5402
5403         * elmo-msgdb.el (elmo-load-msgdb): New function.
5404         (elmo-make-msgdb): Ditto.
5405         (elmo-msgdb-get-index): New inline function.
5406         (elmo-msgdb-set-index): Ditto.
5407         (elmo-msgdb-get-entity-hashtb): Ditto.
5408         (elmo-msgdb-get-mark-hashtb): Ditto.
5409         (elmo-msgdb-get-mark): Ditto.
5410         (elmo-msgdb-set-mark): Ditto.
5411         (elmo-msgdb-count-marks): Ditto.
5412         (elmo-msgdb-get-number): Ditto.
5413         (elmo-msgdb-get-field): Ditto.
5414         (elmo-msgdb-seen-list): Ditto.
5415         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
5416         (elmo-msgdb-delete-msgs): Follow the changes above.
5417         (elmo-msgdb-overview-get-entity): Ditto.
5418         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
5419         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
5420         and rewritten.
5421         (elmo-msgdb-make-index): Likewise.
5422         (elmo-msgdb-append): Removed third argument.
5423         (elmo-msgdb-clear): Clear index as nil.
5424         (elmo-folder-set-info-hashtb): Removed.
5425         (elmo-folder-set-info-max-by-numdb): Ditto.
5426         (elmo-folder-info-make-hashtb): Ditto.
5427
5428         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
5429
5430         * elmo-map.el (elmo-folder-pack-number): Ditto.
5431
5432 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
5433
5434         * elmo-version.el (elmo-version): Up to 2.9.10.
5435
5436         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
5437
5438         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
5439
5440 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
5441
5442         * elmo-utils.el (elmo-make-directory): Add option.
5443         Default file mode is 700.
5444
5445 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5446
5447         * elmo-shimbun.el (elmo-folder-local-p): Defined.
5448
5449 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
5450
5451         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
5452         mime-charset.
5453
5454         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
5455         and "smaller".
5456
5457 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5458
5459         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5460         (elmo-shimbun-folder-entity-hash): New function.
5461         (elmo-shimbun-folder-shimbun-header): Ditto.
5462         (elmo-shimbun-entity-to-header): Ditto.
5463         (elmo-shimbun-msgdb-to-headers): Removed.
5464         (elmo-shimbun-folder-setup): Ditto.
5465         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5466         for hash key.
5467         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5468         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5469         Removed useless local bind.
5470         (elmo-folder-open-internal): Don't call
5471         `elmo-shimbun-folder-setup'.
5472         (elmo-folder-close-internal): Clear entity-hash slot.
5473         (elmo-folder-clear): Ditto.
5474         (elmo-shimbun-msgdb-create-entity): Use
5475         `elmo-shimbun-folder-shimbun-header'.
5476         (elmo-map-message-fetch): Ditto.
5477         (elmo-shimbun-update-overview): Use overview entity instead of
5478         shimbun header to lookup id by references.
5479         (elmo-map-folder-list-message-locations): Use not only headers but
5480         also overviews to list locations.
5481
5482 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5483
5484         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5485         msgdb path.
5486
5487         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5488
5489 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5490
5491         * elmo-util.el (elmo-read-search-condition-internal): Give default
5492         value for date.
5493
5494 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5495
5496         * elmo-util.el (elmo-condition-parse-search-value): Accept
5497         YYYY-MM-DD format to search.
5498         * elmo-date.el (elmo-date-get-datevec): Likewise.
5499
5500 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5501
5502         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5503         debugging code.
5504
5505 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5506
5507         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5508         from t.
5509
5510         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5511
5512         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5513         case from `elmo-folder-exists-p'.
5514         (elmo-folder-exists-p): Removed.
5515         (elmo-folder-creatable-p) Ditto.
5516
5517         * elmo-net.el (elmo-folder-create): Defined.
5518         (elmo-folder-create-unplugged): New function.
5519         (elmo-folder-exists-p): Changed default value to nil from t.
5520
5521         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5522         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5523
5524         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5525         `elmo-create-folder-dop' and append queue
5526         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5527         (elmo-folder-create-dop-delayed): New function.
5528
5529         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5530
5531         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5532
5533         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5534         (elmo-folder-writable-p) : Ditto.
5535
5536         * elmo-version.el (elmo-version): Up to 2.9.9.
5537
5538 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5539
5540         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5541         `elmo-message-use-cache-p' returns nil.
5542         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5543         (ignore cache file and refer the substance in local folders)
5544
5545 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5546
5547         * elmo-version.el (elmo-version): Up to 2.9.8.
5548
5549 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5550
5551         * elmo-version.el (elmo-version): Up to 2.9.7.
5552
5553         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5554
5555 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5556
5557         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5558
5559 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5560
5561         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5562         from --early.
5563         (elmo-map-folder-list-message-locations): Reverse location list.
5564
5565 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5566
5567         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5568
5569 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5570
5571         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5572         as a key.
5573         (elmo-nntp-folder-list-subfolders): Follow the change above.
5574
5575 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5576
5577         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5578         name if authentication type is specified.
5579
5580 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5581
5582         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5583         variable.
5584         (elmo-default-nntp-stream-type): Ditto.
5585         (elmo-default-pop3-stream-type): Ditto.
5586
5587 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5588
5589         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5590
5591 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5592
5593         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5594         elmo-vars.el.
5595         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5596
5597         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5598         (elmo-maildir-folder-path): Ditto.
5599         (elmo-maildir-list): Ditto (abolished).
5600
5601 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5602
5603         * elmo-version.el (elmo-version): Up to 2.9.6.
5604
5605 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5606
5607         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5608         (elmo-maildir-folder-path): Ditto.
5609         (elmo-msgdb-directory): Ditto.
5610         (elmo-passwd-life-time): Ditto.
5611         (elmo-msgdb-extra-fields): Ditto.
5612         (elmo-enable-disconnected-operation): Ditto.
5613
5614 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5615
5616         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5617         other choices.
5618         (elmo-pop3-default-authenticate-type): Ditto.
5619
5620 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5621
5622         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5623         choices for custom.
5624         (elmo-pop3-default-authenticate-type): Ditto.
5625
5626 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5627
5628         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5629         mailbox to new-folder.
5630
5631 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5632
5633         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5634         less than new, set new as unread.
5635
5636         * elmo-util.el (elmo-string): Don't put text-property if nil.
5637
5638 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5639
5640         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5641         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5642
5643 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5644
5645         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5646         is nil on `completing-read'.
5647
5648 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5649
5650         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5651         for namespace part.
5652         (elmo-imap4-parse-namespace-subr): Ditto.
5653         (elmo-folder-list-subfolders): Append a delimiter when the specified
5654         folder path is a root with namespace and does not end with delimiter.
5655
5656 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5657
5658         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5659         was used.
5660
5661 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5662
5663         * elmo-util.el (elmo-save-buffer): The first argument of message
5664         is a format control string.
5665
5666 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5667
5668         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5669         `elmo-folder-diff').
5670         (elmo-diff-unread): Likewise.
5671
5672 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5673
5674         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5675         is t on `completing-read'.
5676
5677 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5678
5679         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5680         method of target folder with self mark-alist if MARK-ALIST is nil.
5681
5682 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5683
5684         * elmo-version.el (elmo-version): Up to 2.9.5.
5685
5686 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5687
5688         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5689         (elmo-dop-merge-funcs): Remove.
5690
5691 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5692
5693         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5694         Return t if PATH is directory, too.
5695         Use `dolist' instead of while loop.
5696
5697 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5698
5699         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5700         is deleted.
5701
5702 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5703
5704         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5705         return value to t.
5706         (elmo-folder-list-messages-unplugged): Return t if
5707         elmo-enable-disconnected-operation is nil.
5708
5709         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5710         `elmo-folder-list-messages-internal'.
5711
5712 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5713
5714         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5715         Change to looking-at `[23][0-9]+'.
5716         (elmo-network-initialize-session): Use 'error-msg'
5717         * elmo-net.el (elmo-network-open-session): Set unplugged
5718         if elmo-network-initialize-session returns 'elmo-open-err.
5719
5720 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5721
5722         * elmo-version.el (elmo-version): Up to 2.9.4.
5723
5724 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5725
5726         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5727         `elmo-folder-list-messages-internal'.
5728
5729 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5730
5731         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5732         (elmo-message-match-condition): New method.
5733         (elmo-folder-search-fast): New inline function.
5734         (elmo-msgdb-search): Removed.
5735
5736         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5737         target folder if it is unplugged.
5738         (elmo-folder-list-messages-internal): Return t if target folder is
5739         unplugged and itself is persistent; In this case, use list be
5740         searched already.
5741
5742         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5743         (elmo-msgdb-search-internal-primitive): Ditto.
5744         (elmo-msgdb-match-condition): New function.
5745         (elmo-msgdb-match-condition-primitive): Ditto.
5746
5747         * elmo-util.el (elmo-filter-condition-p): New macro.
5748
5749         * elmo-cache.el (elmo-folder-search): Removed.
5750
5751         * elmo-localdir.el (elmo-folder-search): Ditto.
5752
5753         * elmo-maildir.el (elmo-folder-search): Ditto.
5754
5755         * elmo-mark.el (elmo-folder-search): Ditto.
5756
5757         * elmo-nmz.el (elmo-folder-search): Ditto.
5758
5759         * elmo-sendlog.el (elmo-folder-search): Ditto.
5760
5761         * elmo-shimbun.el (elmo-folder-search): Ditto.
5762
5763         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5764         if folder is unplugged.
5765
5766         * elmo-nntp.el (elmo-folder-search): Likewise.
5767         (elmo-nntp-search-internal): New function.
5768
5769         * elmo-version.el (elmo-version): Up to 2.9.3.
5770
5771 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5772
5773         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5774
5775 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5776
5777         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5778
5779 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5780
5781         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5782
5783 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5784
5785         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5786         (elmo-map-folder-list-message-locations): Do drive letter conversion
5787         on Windows environment.
5788         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5789         (elmo-map-message-fetch): Ditto.
5790
5791 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5792
5793         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5794         (elmo-network-initialize-session): Ditto.
5795
5796 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5797
5798         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5799
5800         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5801
5802         * elmo-util.el (elmo-progress-clear): Ditto.
5803
5804         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5805         `DD-Mon-YYYY' type date.
5806
5807 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5808
5809         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5810         `elmo-date-make-sortable-string' instead of
5811         `timezone-make-date-sortable'.
5812
5813         * elmo-date.el (elmo-date-make-sortable-string): Use
5814         `timezone-make-time-string'.
5815
5816 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5817
5818         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5819
5820         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5821         `since'; Fix timezone.
5822
5823         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5824
5825         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5826
5827 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5828
5829         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5830
5831 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5832
5833         * elmo.el (elmo-generic-folder-append-messages): Make
5834         fetch-strategy with `use-cache' as 'maybe. Check return value of
5835         `elmo-message-fetch'.
5836         (elmo-message-fetch): Return return value of
5837         `elmo-message-fetch-with-cache-process'.
5838         (elmo-message-fetch-with-cache-process): Return non-nil if
5839         fetching was succeed. Load cache when fetching was failed and
5840         fetch-strategy-use-cache is 'maybe.
5841
5842         * elmo-util.el (elmo-file-cache-load): New function.
5843
5844         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5845         defun.
5846
5847         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5848         non-nil if fetching was succeed.
5849
5850         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5851
5852         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5853
5854         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5855         (elmo-message-fetch-with-cache-process): Likwise.
5856
5857         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5858
5859         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5860
5861         * elmo-version.el (elmo-version): Up to 2.9.2.
5862
5863 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5864
5865         * elmo.el (elmo-folder-delete): Delete msgdb path.
5866
5867         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5868
5869         * elmo-maildir.el (elmo-folder-delete): Ditto.
5870
5871         * elmo-localdir.el (elmo-folder-delete): Ditto.
5872
5873         * elmo-imap4.el (elmo-folder-delete): Ditto.
5874
5875 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5876
5877         * elmo.el (luna-define-class): Added `biff' slot.
5878
5879         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5880         (elmo-pop3-debug-inhibit-logging): Abolished.
5881         (elmo-network-close-session): Eliminated needless let.
5882         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5883         (elmo-pop3-send-command): Added `no-log' argument.
5884         (elmo-pop3-process-filter): Use `with-current-buffer'.
5885         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5886         if login failure.
5887         (elmo-pop3-auth-apop): Likewise.
5888         (elmo-network-authenticate-session): Likewise.
5889
5890         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5891         if biff folder.
5892
5893         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5894         string to determine protocol.
5895         (elmo-network-session-name-prefix): Abolished.
5896         (elmo-network-session-cache-key): Follow the change above.
5897         (elmo-network-open-session): Ditto.
5898
5899         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5900         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5901
5902         * elmo-version.el (elmo-version): Up to 2.9.1.
5903
5904         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5905         unmatch condition checking.
5906
5907         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5908         condition.
5909
5910 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5911
5912         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5913
5914 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5915
5916         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5917         test for while loop to execute at least one SEARCH command.
5918
5919 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5920
5921         * elmo-version.el (elmo-version): Up to 2.9.0.
5922
5923 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5924
5925         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5926         (elmo-archive-folder-path): Define.
5927         (elmo-folder-initialize): Setup `dir-name' slot.
5928         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5929         Use `dir-name' as prefix of each subfolders.
5930         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5931
5932 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5933
5934         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5935         (elmo-pipe-folder-list-target-messages): New internal function.
5936         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5937         `killed-list'.
5938         (elmo-pipe-folder-copied-list-load): New function.
5939         (elmo-pipe-folder-copied-list-save): Ditto.
5940         (elmo-folder-open-internal): Follow the change above.
5941         (elmo-folder-status): Fixed for copy.
5942
5943 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5944
5945         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5946
5947 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5948
5949         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5950         elmo-copy-file instead of elmo-add-name-to-file.
5951
5952         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5953
5954         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5955         "file://..." index.
5956
5957         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5958         of accept-process-output as 1.
5959         (elmo-pop3-read-contents): Ditto.
5960         (elmo-pop3-read-body): Ditto.
5961
5962 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5963
5964         * elmo-version.el (product-version-as-string): Remove define.
5965
5966 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5967
5968         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5969         (elmo-imap4-copy-messages): Chop number set using
5970         `elmo-imap4-number-set-chop-length'.
5971         (elmo-imap4-set-flag): Ditto.
5972         (elmo-imap4-search-internal-primitive): Ditto.
5973
5974 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5975
5976         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5977         `elmo-folder-make-temp-dir'
5978
5979         * elmo-vars.el (elmo-cache-directory): New variable.
5980         (elmo-cache-dir): Abolished.
5981         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5982
5983         * elmo-version.el (elmo-version): Up to 2.7.7.
5984
5985 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5986
5987         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5988         defcustom; Set default value as t.
5989
5990 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5991
5992         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5993         (ldap-search-program-arguments): Changed default value.
5994         (ldap-search-basic): Accept exit status 4.
5995         (ldap/field-body): Parse options.
5996         (ldap/collect-field): Ditto.
5997         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5998
5999         * elmo-imap4.el (elmo-imap4-process-bye): New function.
6000         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
6001         (elmo-imap4-accept-ok): Ditto.
6002         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
6003         'notify-bye, only BYE error is reported.
6004         (elmo-folder-exists-p-plugged): Set no-error argument of
6005         `elmo-imap4-session-select-mailbox' as 'notify-bye.
6006
6007         * elmo.el (elmo-imap4-bye-error): Changed message.
6008
6009         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
6010         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
6011         queues (It causes infinite loop).
6012
6013 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6014
6015         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
6016         (RECENT UNSEEN MESSAGES) extension.
6017
6018 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
6019
6020         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
6021         Check number of overview fields.
6022
6023 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
6024
6025         * elmo.el (elmo-folder-confirm-appends): Changed message.
6026         (elmo-folder-confirm-appends): Ditto.
6027
6028         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
6029         `with-temp-buffer'.
6030         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
6031
6032 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
6033
6034         * elmo.el (elmo-folder-confirm-appends): Check whether the value
6035         of elmo-folder-update-threshold is nil, which can be set by
6036         wl-summary-update-confirm-threshold.
6037
6038 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
6039
6040         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
6041         (elmo-nmz-index-alias-alist): Ditto.
6042         (elmo-map-folder-list-message-locations): Follow the change above.
6043
6044 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6045
6046         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
6047
6048         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
6049
6050         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
6051
6052         * elmo-util.el (elmo-read): Ditto.
6053         (elmo-display-error): Ditto.
6054
6055         * elmo-vars.el (elmo-date-match): Ditto.
6056
6057         * pldap.el (ldap-coding-system): Ditto.
6058
6059         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
6060         `elmo-inhibit-number-mapping' as nil.
6061
6062 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
6063
6064         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
6065         space delimiter for list response.
6066
6067 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
6068
6069         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
6070
6071 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
6072
6073         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
6074         (elmo-map-message-fetch): Fix.
6075         * elmo-map.el (elmo-folder-status): Fix for killed.
6076
6077 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
6078
6079         * elmo-sendlog.el: New file.
6080         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
6081
6082 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
6083
6084         * acap.el (acap-logging-out): New buffer local variable.
6085         (acap-close): Set it.
6086         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
6087         an error.
6088
6089 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
6090
6091         * acap.el (acap-response-bye-p): New function.
6092         (acap-response-bye-message): Ditto.
6093         (acap-wait-for-response): If bye response is received, cause an error.
6094         (acap-parse-response): Make bye response when 'Bye' is received.
6095
6096 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
6097
6098         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
6099
6100 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6101
6102         * elmo-util.el (elmo-copy-file): Added argument
6103         `ok-if-already-exists'.
6104         (elmo-copy-file): Fixed typo.
6105
6106 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
6107
6108         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
6109
6110 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
6111
6112         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
6113
6114 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
6115
6116         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
6117         to killed-list.
6118
6119 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
6120
6121         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
6122         (elmo-folder-initialize): Fix for `copy'.
6123         (elmo-pipe-drain): Ditto.
6124         (elmo-folder-open-internal): Ditto.
6125         (elmo-folder-newsgroups): Fix.
6126
6127 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
6128
6129         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
6130         for each message.
6131
6132         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
6133         recent value is returned from imap folder.
6134
6135         * elmo.el (elmo-folder-newsgroups): New generic function.
6136
6137         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
6138         (elmo-folder-initialize): Set it.
6139         (elmo-folder-expand-msgdb-path): Use it.
6140         (elmo-folder-newsgroups): Define.
6141
6142         * elmo-filter.el (elmo-folder-newsgroups): Define.
6143
6144         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
6145
6146         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
6147
6148         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
6149
6150 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6151
6152         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
6153         user option.
6154         (elmo-shimbun-header-extra-field): New inline function.
6155         (elmo-shimbun-header-set-extra-field): Ditto.
6156         (elmo-shimbun-folder-header-hash-setup): Ditto.
6157         (elmo-shimbun-update-overview): Ditto.
6158         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
6159         (elmo-shimbun-folder-setup): Use
6160         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
6161         (elmo-shimbun-get-headers): Ditto.
6162         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
6163         Insert `X-Shimbun-Id:' header if extra field is set.
6164         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
6165         field's value instead of `shimbun-header-id'.
6166
6167         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
6168         inline function.
6169         (elmo-msgdb-overview-entity-set-date): Ditto.
6170         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
6171
6172 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
6173
6174         * mmimap.el (mmimap-entity-section): Changed body node number from
6175         "0" to "1".
6176
6177 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6178
6179         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
6180         `elmo-folder-delete-messages'.
6181
6182         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
6183         (elmo-folder-initialize): Changed to expand alias into index path.
6184
6185         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
6186         `elmo-mime-insert-header-from-buffer' with 6th arg
6187         `sorted-fields'.
6188
6189 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
6190
6191         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
6192
6193         * elmo.el (elmo-diff-new): New inline function.
6194         (elmo-diff-unread): Ditto.
6195         (elmo-diff-all): Ditto.
6196
6197         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
6198         value from responseb.
6199         (elmo-imap4-folder-diff-plugged): Ditto.
6200         (elmo-imap4-server-diff-async): Added recent argument.
6201         (elmo-server-diff-async): Ditto.
6202         (elmo-imap4-folder-diff-plugged): Ditto.
6203
6204         * elmo-version.el (elmo-version): Up to 2.7.6.
6205
6206 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6207
6208         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
6209         in quoted-stirng.
6210
6211 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
6212
6213         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
6214
6215         * elmo-imap4.el (elmo-folder-initialize): Ditto.
6216
6217         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6218
6219         * elmo-multi.el (elmo-folder-initialize): Ditto.
6220
6221         * elmo-util.el (elmo-parse-token): New function.
6222         (elmo-parse-prefixed-element): Ditto.
6223
6224 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6225
6226         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
6227         delete process.
6228         (elmo-imap4-accept-ok): Ditto.
6229
6230 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6231
6232         * mmimap.el (mime-imap-entity-header-string): Don't check first
6233         element of node-id is `0' (Follow last change).
6234
6235 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6236
6237         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
6238         assigned irregular node-id to nested multipart section.
6239         (initialize-instance): Followed above change.
6240
6241 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6242
6243         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
6244         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
6245         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
6246         `elmo-shimbun-get-headers');
6247         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
6248         visible article on summary exists in headers).
6249         (elmo-map-message-fetch): Cause an error when folder is unplugged.
6250
6251 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
6252
6253         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
6254         definition.
6255
6256 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
6257
6258         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
6259
6260 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6261
6262         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
6263         header separator into loop condition.
6264
6265 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6266
6267         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
6268         Return duplicate folder if it has subfolder.
6269
6270 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6271
6272         * elmo.el (elmo-make-folder): Add folder name error check.
6273
6274         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
6275         (elmo-nntp-encode-group-string): New inline function.
6276         (elmo-nntp-decode-group-string): Ditto.
6277         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
6278         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
6279         Use `not' instead of `null';
6280         Use elmo-nntp-decode-group-string.
6281
6282         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
6283
6284         * elmo-version.el (elmo-version): Up to 2.7.5.
6285
6286 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6287
6288         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
6289         Hide progress gauge if `elmo-folder-move-messages' exits
6290         nonlocally.
6291
6292 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6293
6294         * elmo-imap4.el (elmo-folder-initialize): Use
6295         `elmo-imap4-encode-folder-string' for folder name.
6296
6297 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6298
6299         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
6300         `done'.
6301
6302 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6303
6304         * elmo-util.el (elmo-progress-counter-alist): New internal
6305         variable.
6306         (elmo-progress-counter-value): New macro.
6307         (elmo-progress-counter-all-value): Ditto.
6308         (elmo-progress-counter-format): Ditto.
6309         (elmo-progress-counter-set-value): Ditto.
6310         (elmo-progress-set): New function.
6311         (elmo-progress-clear): Ditto.
6312         (elmo-progress-notify): Ditto.
6313
6314         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
6315         counter.
6316
6317         * elmo.el (elmo-generic-folder-append-messages): Call
6318         `elmo-progress-notify'.
6319         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
6320
6321         * elmo-archive.el (elmo-folder-append-messages): Call
6322         `elmo-progress-notify'.
6323
6324         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
6325
6326         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
6327
6328         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
6329
6330 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6331
6332         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
6333         'Create'.
6334         (elmo-message-encache-dop): Added argument `read'.
6335
6336         * elmo-shimbun.el (elmo-message-encache): Ditto.
6337
6338         * elmo-net.el (elmo-message-encache): Ditto.
6339
6340         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
6341         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
6342         elmo-imap4-seen-messages.
6343         (elmo-folder-msgdb-create-plugged): Initialize
6344         elmo-imap4-seen-messages;
6345         Set seen mark on elmo-imap4-seen-messages.
6346
6347         * elmo-pipe.el (elmo-folder-message-file-p): Define.
6348
6349         * elmo.el (elmo-generic-folder-append-messages): Check return value of
6350         elmo-folder-append-buffer.
6351         (elmo-folder-encache): Added optional argument `read'.
6352         (elmo-message-encache): Ditto.
6353
6354         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
6355
6356         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
6357
6358         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
6359         if append buffer content succeds.
6360
6361 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6362
6363         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
6364         elmo-display-progress.
6365
6366         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
6367         Set 4th argument of mime-display-message.
6368         (elmo-mime-display-as-is): Ditto.
6369
6370 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
6371
6372         * elmo-nmz.el (toplevel): Require 'mime-edit.
6373         (elmo-nmz-content-type-alist): Abolished.
6374         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
6375         content is not a message.
6376         (elmo-map-message-fetch): Changed behavior exept for message content;
6377         Detect mime-charset automatically, Use `mime-find-file-type' to detect
6378         content-type, Add From: and Subject: field.
6379
6380 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6381
6382         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
6383         (elmo-map-message-fetch): Add `Content-Type' field if contents is
6384         not a message.
6385
6386 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6387
6388         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
6389         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
6390
6391         * elmo-archive.el (elmo-folder-writable-p): Defined.
6392
6393         * elmo-cache.el (elmo-folder-writable-p): Ditto.
6394
6395         * elmo-filter.el (elmo-folder-writable-p): Ditto.
6396
6397         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
6398
6399         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
6400
6401         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
6402
6403         * elmo-mark.el (elmo-folder-writable-p): Ditto.
6404
6405         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
6406
6407         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
6408
6409 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
6410
6411         * elmo-util.el (elmo-address-quote-specials): New function;
6412         Renamed from `wl-address-quote-specials'.
6413
6414 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6415
6416         * elmo-version.el (elmo-version): Up to 2.7.4.
6417
6418 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
6419
6420         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
6421
6422 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6423
6424         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
6425         both compile-time and run-time to avoid byte-compile warning.
6426
6427 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
6428
6429         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
6430
6431 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6432
6433         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
6434         option.
6435         (elmo-mime-display-as-is-internal): Use it.
6436
6437         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
6438         if `read-passwd' is not defined.
6439
6440 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6441
6442         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
6443         by original number.
6444         (elmo-folder-status): Call `elmo-folder-open-internal';
6445         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
6446         (elmo-folder-close-internal): Set location-alist as nil.
6447         (elmo-folder-clear): Define.
6448         (elmo-folder-check): Don't set location-alist as nil.
6449
6450         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
6451
6452 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
6453
6454         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
6455         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
6456
6457         * mmimap.el (mime-imap-entity::requested): New slot.
6458         (mime-imap-location-fetch-entity-p): New generic function.
6459         (mime-decode-parameters): Define using `defun-maybe'.
6460         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6461         content-type structure.
6462         (mime-entity-body): Return empty body if
6463         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6464
6465         * elmo.el (elmo-message-displaying): New variable.
6466
6467         * elmo-mime.el (elmo-mime-message-display): Bind
6468         elmo-message-displaying as t.
6469
6470         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6471
6472 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6473
6474         * acap.el (acap-open): erase buffer before starting network process.
6475         (acap-store): Rewrite.
6476
6477 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6478
6479         * elmo-imap4.el (elmo-imap4-default-mailbox,
6480         elmo-imap4-default-server
6481         elmo-imap4-default-authenticate-type,
6482         elmo-imap4-default-user,
6483         elmo-imap4-default-port,
6484         elmo-imap4-default-stream-type,
6485         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6486
6487         * elmo-pop3.el (elmo-pop3-default-user,
6488         elmo-pop3-default-server,
6489         elmo-pop3-default-authenticate-type,
6490         elmo-pop3-default-port,
6491         elmo-pop3-default-stream-type,
6492         elmo-pop3-stream-type-alist): Ditto.
6493
6494         * elmo-nntp.el (elmo-nntp-default-server,
6495         elmo-nntp-default-user,
6496         elmo-nntp-default-port,
6497         elmo-nntp-default-stream-type,
6498         elmo-nntp-stream-type-alist): Ditto.
6499
6500         * elmo-vars.el: Follow changes above.
6501         (elmo-setting): New custom group; added 'elmo-setting group to
6502         above variables.
6503
6504         * elmo-version.el (elmo-version): Up to 2.7.3.
6505
6506         * acap.el (acap-parse-response): Don't delete process when BYE
6507         response (It causes hang-up on slow network environment).
6508         (toplevel): Added comment.
6509
6510 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6511
6512         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6513
6514         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6515         parsing NIL.
6516         (acap-parse-return-metadata): Ditto.
6517
6518         * slp.el: New file.
6519         (toplevel): Fixed typo.
6520
6521         * acap.el: New file.
6522         (acap-network-stream-open): Show "Connecting..." message.
6523         (acap-parse-response): Fixed problem for BYE untagged response.
6524         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6525         (toplevel): Added tiny comments.
6526
6527 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6528
6529         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6530         space delimiter for uidl response.
6531
6532 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6533
6534         * elmo-vars.el (elmo-use-semi): Eliminated.
6535
6536         * elmo-util.el (elmo-string-assoc-all): New function.
6537
6538 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6539
6540         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6541         property 'mime-preview-situation for `mime-preview-quit'.
6542
6543 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6544
6545         * elmo.el (elmo-message-fetch-with-cache-process): Call
6546         elmo-message-fetch-internal instead of causing an error when fetch
6547         strategy is 'entire but only 'section cache is available.
6548
6549 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6550
6551         * elmo-version.el (elmo-version): Up to 2.7.2.
6552
6553         * elmo.el (elmo-generic-folder-append-messages): Make
6554         fetch-strategy with `use-cache'.
6555
6556         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6557         (elmo-dop-queue-method-name): New macro.
6558
6559 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6560
6561         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6562         unbalanced parenthesis.
6563
6564 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6565
6566         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6567
6568 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6569
6570         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6571         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6572
6573 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6574
6575         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6576         local variables.
6577
6578 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6579
6580         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6581         (elmo-message-use-cache-p): Define.
6582         (elmo-folder-msgdb-create): Treat cache.
6583
6584 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6585
6586         * elmo-nntp.el (elmo-network-initialize-session): Call
6587         `elmo-nntp-send-mode-reader'.
6588         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6589
6590 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6591
6592         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6593         alist.
6594         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6595         assoc.
6596
6597         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6598         for `elmo-plugged-p'.
6599         (elmo-open-network-stream): Fixed stream-type argument.
6600
6601 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6602
6603         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6604         unknown archive type is specified.
6605
6606 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6607
6608         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6609
6610         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6611         while loading msgdb.
6612
6613         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6614         (elmo-folder-open-internal): Rewrite.
6615
6616 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6617
6618         * elmo-mime.el (elmo-mime-display-as-is-internal):
6619         Adjust buffer-multibyte status.
6620
6621 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6622
6623         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6624         of elmo-condition-find-key.
6625
6626         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6627         (elmo-condition-in-msgdb-p): Ditto.
6628         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6629         argument.
6630
6631 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6632
6633         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6634
6635 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6636
6637         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6638         label for elmo-display-progress.
6639
6640 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6641
6642         * elmo.el (elmo-folder-clear): New method.
6643         (elmo-folder-clear): Define.
6644         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6645
6646         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6647         (elmo-folder-clear): Define.
6648
6649         * elmo-map.el (elmo-folder-clear): Define.
6650
6651         * elmo-version.el (elmo-version): Up to 2.7.1.
6652
6653 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6654
6655         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6656         updates.
6657
6658 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6659
6660         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6661         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6662
6663 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6664
6665         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6666
6667         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6668         and re-written.
6669
6670         * elmo-imap4.el (elmo-folder-initialize): Use
6671         elmo-get-network-stream-type.
6672
6673         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6674
6675         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6676
6677 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6678
6679         * elmo.el (elmo-message-encache): Set unread argument for
6680         elmo-message-fetch.
6681
6682         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6683
6684         * elmo.el (elmo-net-port-info): New method.
6685
6686         * elmo-shimbun.el (elmo-net-port-info): Define.
6687         (elmo-message-encache): Ditto.
6688
6689         * elmo-net.el (elmo-net-port-info): Define as method.
6690
6691         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6692         unplugged status when elmo-enable-disconnected-operation is t.
6693
6694         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6695         of spool folder before checking new number.
6696
6697 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6698
6699         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6700         (elmo-network-setup-session): Ditto.
6701         (elmo-message-fetch-plugged): Ditto.
6702         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6703         (elmo-network-initialize-session): Ditto.
6704         (elmo-pop3-read-response): Abolish 3rd argument.
6705         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6706         (elmo-pop3-read-contents): Ditto.
6707         (elmo-pop3-read-body): Ditto.
6708         (elmo-folder-status): Call elmo-folder-close.
6709         (elmo-pop3-lock): Abolish.
6710         (elmo-pop3-unlock): Ditto.
6711         (elmo-pop3-locked-p): Ditto.
6712         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6713
6714 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6715
6716         * elmo-version.el (elmo-version): Up to 2.7.0.
6717
6718         * elmo-pop3.el (elmo-pop3-debug): New variable.
6719         (elmo-pop3-debug-inhibit-logging): Ditto.
6720         (elmo-pop3-debug): New function.
6721         (elmo-pop3-send-command): Call elmo-pop3-debug.
6722         (elmo-pop3-read-response): Added keep-lock optional argument;
6723         Don't unlock if keep-lock is non-nil.
6724         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6725         (elmo-network-authenticate-session): Bind
6726         elmo-pop3-debug-inhibit-logging as t.
6727         (elmo-network-setup-session): Call elmo-pop3-read-response with
6728         keep-lock argument.
6729         (elmo-pop3-read-msg): Ditto.
6730         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6731         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6732         (elmo-network-initialize-session): Call elmo-pop3-lock.
6733         (elmo-folder-close-internal): Don't clear location-alist slot.
6734         (elmo-folder-check): Clear location-alist slot.
6735
6736 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6737
6738         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6739         (elmo-pop3-send-command): Call elmo-pop3-lock.
6740         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6741         (elmo-pop3-read-contents): Ditto.
6742         (elmo-pop3-lock): New function.
6743         (elmo-pop3-unlock): Ditto.
6744         (elmo-pop3-locked-p): Ditto.
6745         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6746         returns t.
6747
6748 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6749
6750         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6751
6752         * elmo-util.el (elmo-file-field-primitive-condition-match):
6753         New inline function (Don't fetch file content if "first" or "last").
6754         (elmo-file-field-condition-match): Use
6755         elmo-file-field-primitive-condition-match.
6756
6757         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6758         "first".
6759
6760         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6761         (elmo-message-fetch-plugged): Fixed.
6762
6763         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6764
6765 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6766
6767         * elmo.el (elmo-folder-move-messages): Bind
6768         elmo-inhibit-display-retrieval-progress as t while moving messages.
6769
6770         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6771         New variable.
6772         (elmo-inhibit-display-retrieval-progress): Ditto.
6773
6774         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6775         for retrieval progress;
6776         Don't display progress when total buffer size is smaller than
6777         elmo-display-retrieval-progress-threshold.
6778         (elmo-message-fetch-plugged): Don't display progress when
6779         elmo-inhibit-display-retrieval-progress is non-nil.
6780
6781         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6782         for retrieval progress;
6783         Don't display progress when literal size is smaller than
6784         elmo-display-retrieval-progress-threshold.
6785         (elmo-imap4-message-fetch): Don't display progress when
6786         elmo-inhibit-display-retrieval-progress is non-nil.
6787
6788 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6789
6790         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6791         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6792         (elmo-imap4-message-fetch): Likewise.
6793
6794         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6795         (elmo-shimbun-index-range-alist): Ditto.
6796         (elmo-shimbun-use-entire-index): Abolish.
6797         (shimbun-mua-use-entire-index): Ditto.
6798         (elmo-shimbun-folder): Added new slot `range'.
6799         (elmo-folder-initialize): Setup slot `range'.
6800
6801 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6802
6803         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6804         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6805         (elmo-shimbun-get-headers): Use return value of
6806         `shimbun-article-expiration-days'.
6807         (elmo-folder-close-internal): Clean up last-check slot.
6808
6809         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6810         (elmo-pop3-total-size): New variable.
6811         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6812
6813         * elmo.el (elmo-folder-reserve-status-p): New method.
6814
6815         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6816         (elmo-shimbun-use-entire-index): New user option.
6817         (shimbun-elmo-mua): New class.
6818         (shimbun-mua-search-id): Define.
6819         (shimbun-mua-use-entire-index): Ditto.
6820         (elmo-shimbun-folder:last-check): New slot.
6821         (elmo-shimbun-headers-cache-header-list): Abolish.
6822         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6823         (elmo-shimbun-headers-cache-header-hash): Ditto.
6824         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6825         (elmo-shimbun-headers-cache-last-check): Ditto.
6826         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6827         (elmo-shimbun-headers-check-p): Rewrite.
6828         (elmo-shimbun-msgdb-to-headers): New function.
6829         (elmo-shimbun-get-headers): Rewrite.
6830         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6831         (elmo-folder-open-internal): Get headers only if
6832         `elmo-shimbun-headers-check-p' is non-nil.
6833         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6834         is non-nil.
6835         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6836         (elmo-quit): Removed.
6837
6838         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6839         function.
6840         (elmo-msgdb-overview-entity-set-extra): Ditto.
6841         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6842
6843         * elmo-map.el (elmo-folder-status): Don't call
6844         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6845         is non-nil.
6846
6847 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6848
6849         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6850         of `elmo-msgdb-search-internal-primitive' when condition's car is
6851         `and' or `or'.
6852
6853 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6854
6855         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6856
6857 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6858
6859         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6860         call `elmo-pipe-drain'.
6861
6862 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6863
6864         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6865         typo. (elmo-cache-folder -> elmo-mark-folder)
6866
6867 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6868
6869         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6870         `elmo-message-fetch'.
6871
6872 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6873
6874         * elmo-net.el (elmo-message-encache): Fixed typo.
6875         (elmo-message-fetch-unplugged): Changed call
6876         `elmo-message-fetch-internal' without argument `outbuf'.
6877
6878 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6879
6880         * elmo.el (elmo-message-encache): Define as generic function.
6881         (elmo-message-fetch-field): New generic function.
6882         (elmo-message-fetch-with-cache-process): Cause an error when
6883         fetch strategy is 'entire but only 'section cache is available.
6884         (toplevel): Fixed nmz folder definition.
6885
6886         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6887         (elmo-msgdb-resume-list-filename): Ditto.
6888         (elmo-queue-filename): Ditto.
6889         (elmo-enable-disconnected-operation): Changed default value to t.
6890
6891         * elmo-util.el (elmo-cache-path-section-p): New function.
6892         (elmo-file-cache-get): Use it.
6893         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6894         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6895         (elmo-dop-queue-save): Ditto.
6896
6897         * elmo-net.el (elmo-folder-status-unplugged): Call
6898         elmo-folder-status-dop.
6899         (elmo-folder-list-messages-unplugged): Implemented.
6900         (elmo-folder-delete-messages-unplugged): Define.
6901         (elmo-folder-msgdb-create): Define.
6902         (elmo-folder-msgdb-create-unplugged): Define.
6903         (elmo-folder-mark-as-read-unplugged): Ditto.
6904         (elmo-folder-unmark-read-unplugged): Ditto.
6905         (elmo-folder-mark-as-important-unplugged): Ditto.
6906         (elmo-folder-unmark-important-unplugged): Ditto.
6907         (elmo-message-encache): Ditto.
6908
6909         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6910         (elmo-dop-queue-save): Ditto.
6911
6912         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6913         `elmo-folder-msgdb-create'.
6914         (elmo-folder-append-buffer): Implemented unplugged operation.
6915         (elmo-folder-append-messages): Call parent method in unplugged status.
6916         (elmo-message-fetch-unplugged): Removed definition.
6917         (elmo-message-fetch-field): Implemented.
6918
6919         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6920         (elmo-dop-folder): Removed variable definition.
6921         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6922         (elmo-dop-queue-flush): Implemented.
6923         (elmo-dop-queue-merge): Removed definition (TODO).
6924         (elmo-dop-spool-folder): New function.
6925         (elmo-dop-spool-folder-append-buffer): Ditto.
6926         (elmo-dop-spool-folder-list-messages): Ditto.
6927         (elmo-dop-list-deleting-messages): Ditto.
6928         (elmo-folder-append-buffer-dop): Ditto.
6929         (elmo-folder-delete-messages-dop): Ditto.
6930         (elmo-message-encache-dop): New inline function.
6931         (elmo-create-folder-dop): Ditto.
6932         (elmo-folder-mark-as-read-dop): Ditto.
6933         (elmo-folder-unmark-read-dop): Ditto.
6934         (elmo-folder-mark-as-important-dop): Ditto.
6935         (elmo-folder-unmark-important-dop): Ditto.
6936         (elmo-folder-status-dop): Fixed.
6937         (elmo-folder-append-buffer-dop-delayed): New function.
6938         (elmo-folder-delete-messages-dop-delayed): Ditto.
6939         (elmo-dop-msgdb): Ditto.
6940
6941 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6942
6943         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6944
6945 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6946
6947         * elmo.el (elmo-folder-move-messages): Fixed problem when
6948         `dst-folder' is 'null.
6949
6950 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6951
6952         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6953         instead of current mark.
6954
6955         * elmo-multi.el (elmo-folder-list-importants-internal): No
6956         operation if importants is not list.
6957
6958         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6959         Return t if importants is not list.
6960
6961         * elmo-map.el (elmo-map-folder-list-importants): Define.
6962         (elmo-folder-list-importants-internal): Check return value of
6963         `elmo-map-folder-list-importants-internal'.
6964
6965         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6966
6967         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6968
6969         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6970
6971         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6972
6973 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6974
6975         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6976         (Patch is provided by <kita@coe.nttdata.co.jp>).
6977
6978 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6979
6980         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6981         mark folder.
6982
6983 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6984
6985         * elmo.el (elmo-message-fetch): Define.
6986         (elmo-message-fetch-with-cache-process): New generic method.
6987         (elmo-message-fetch-internal): New generic method.
6988         (elmo-folder-synchronize):
6989
6990         * elmo-archive.el (elmo-message-fetch-internal): Define.
6991         (elmo-message-fetch): Eliminated.
6992
6993         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6994         (elmo-message-fetch): Eliminated.
6995
6996         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6997         argument OUTBUF.
6998         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6999
7000         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
7001         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
7002
7003         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
7004         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
7005
7006         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
7007
7008         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
7009
7010         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
7011
7012         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
7013         (elmo-message-fetch-unplugged): New generic method.
7014         (elmo-message-fetch-internal): Remove cache process (Renamed from
7015         `elmo-message-fetch').
7016
7017         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
7018         (elmo-message-fetch): Eliminated.
7019         (elmo-message-fetch-unplugged): Ditto.
7020
7021         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
7022
7023 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7024
7025         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
7026         of `to-be-deleted' from number-alist to number-list.
7027
7028 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7029
7030         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
7031         (elmo-folder-mark-as-important): Ditto.
7032
7033 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
7034
7035         * elmo.el (elmo-folder): Added process-duplicates slot.
7036
7037         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
7038         (elmo-folder-unmark-read): Ditto.
7039         (elmo-folder-unmark-important): Ditto.
7040         (elmo-folder-mark-as-important): Ditto.
7041
7042         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
7043         duplicated message processing.
7044
7045         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
7046
7047 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7048
7049         * elmo-util.el (elmo-list-subdirectories-1): New function.
7050         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
7051         (elmo-mapcar-list-of-list): New function.
7052
7053         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
7054         `elmo-mapcar-list-of-list' instead of `mapcar'.
7055
7056         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
7057
7058         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
7059         `elmo-have-link-count'. Return the fully qualified folder name.
7060
7061 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
7062
7063         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
7064         (elmo-shimbun-headers-cache): New internal variable.
7065         (elmo-shimbun-headers-cache-header-list): New inline function.
7066         (elmo-shimbun-headers-cache-set-header-list): Ditto.
7067         (elmo-shimbun-headers-cache-header-hash): Ditto.
7068         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
7069         (elmo-shimbun-headers-cache-last-check): Ditto.
7070         (elmo-shimbun-headers-cache-set-last-check): Ditto.
7071         (elmo-shimbun-lapse-seconds): Ditto.
7072         (elmo-shimbun-headers-cache-check-p): Ditto.
7073         (elmo-shimbun-get-headers): New function.
7074         (elmo-folder-open-internal): Call it.
7075         (elmo-quit): Define (Clear headers-cache).
7076
7077 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
7078
7079         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
7080
7081         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
7082         (elmo-msgdb-flist-save): Ditto.
7083
7084         * elmo-shimbun.el (elmo-folder-list-subfolders):
7085         Use `shimbun-groups' instead of `shimbun-groups-internal'.
7086         (elmo-folder-exists-p): Ditto.
7087
7088         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
7089         argument for `shimbun-header-insert'.
7090
7091 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
7092
7093         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
7094         at first time.
7095
7096         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
7097         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
7098
7099 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
7100
7101         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
7102         (elmo-folder-plugged-p): Define.
7103         (elmo-folder-set-plugged): Ditto.
7104         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
7105         (elmo-folder-list-messages-internal): Return t if unplugged.
7106         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
7107
7108         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
7109         when elmo-folder-list-messages-internal method of children returns t.
7110
7111         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
7112         pair is nil.
7113         (elmo-folder-open-internal): Don't update if unplugged status.
7114
7115 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
7116
7117         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
7118         new message.
7119
7120 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
7121
7122         * elmo-util.el (elmo-file-cache-save): Ignore errors.
7123
7124         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
7125         saving.
7126
7127 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
7128
7129         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
7130
7131         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
7132         (elmo-folder-open-internal): Set up headers slot.
7133         (elmo-folder-check): Call elmo-folder-close-internal and
7134         elmo-folder-open-internal.
7135         (elmo-folder-close-internal): Clean up headers slot.
7136
7137 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7138
7139         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
7140         exactly folder list.
7141         (elmo-folder-append-messages): Fixed append archive with prefix.
7142
7143         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
7144         make temp files with start-number.
7145
7146         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
7147
7148 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7149
7150         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
7151         argument `visible-only'.
7152         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
7153         instead of `if'.
7154
7155         * elmo-pop3.el (elmo-folder-open-internal): Check
7156         `elmo-inhibit-number-mapping' is non-nil.
7157
7158         * elmo-pipe.el (elmo-folder-status): Fixed.
7159
7160 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
7161
7162         * elmo.el (elmo-dop-queue-flush): Added autload setting.
7163
7164         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
7165         (elmo-folder-open-internal): Setup `header-hash' slot.
7166         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
7167         information.
7168         (elmo-map-message-fetch): Ditto.
7169
7170 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
7171
7172         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7173         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7174         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7175         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
7176
7177         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
7178
7179 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
7180
7181         * sb-airs.el: Added footer.
7182
7183         * shimbun.el (shimbun-article): Define as luna-method.
7184
7185         * sb-tcup.el: New file.
7186
7187         * sb-airs.el (toplevel): Require 'sb-mhonarc.
7188         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
7189
7190 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
7191
7192         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
7193         (shimbun-get-headers): Ditto.
7194
7195         * elmo.el: Moved obsolete variable definitions from
7196         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
7197
7198         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
7199         groups.
7200
7201         * shimbun.el: New file.
7202
7203         * elmo-shimbun.el: New file.
7204
7205         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7206         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7207         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7208         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
7209
7210 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
7211
7212         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
7213         hierarchy is t.
7214
7215 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
7216
7217         * elmo.el (elmo-folder-msgdb): Define as macro.
7218         (elmo-folder-open): Added argument `load-msgdb'.
7219         (elmo-generic-folder-open): Ditto.
7220         (elmo-folder-encache): New function.
7221
7222         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
7223
7224         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
7225
7226         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
7227         Eliminated argument FOLDER and added argument MSGDB.
7228         (elmo-dop-queue-load): Moved from elmo-dop.el.
7229         (elmo-dop-queue-save): Ditto.
7230
7231         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
7232
7233         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
7234
7235         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
7236         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
7237         (elmo-filter-folder-list-importants-internal): Ditto.
7238
7239         * elmo-map.el (elmo-folder-pack-number): Ditto.
7240
7241         * elmo-mime.el (elmo-mime-message-display): Ditto.
7242
7243         * elmo.el (elmo-generic-folder-commit): Ditto.
7244         (elmo-folder-list-unreads): Ditto.
7245         (elmo-folder-list-importants): Ditto.
7246         (elmo-generic-folder-commit): Ditto.
7247         (elmo-message-set-mark): Ditto.
7248         (elmo-generic-folder-append-msgdb): Ditto.
7249         (elmo-folder-synchronize): Ditto.
7250         (elmo-folder-messages): Ditto.
7251         (elmo-init): Call elmo-dop-queue-load.
7252         (elmo-folder-list-messages): Ditto.
7253
7254         * elmo-nntp.el (elmo-folder-update-number): Ditto.
7255         (elmo-nntp-folder-process-crosspost): Ditto.
7256         (elmo-folder-list-unreads-internal): Ditto.
7257
7258         * elmo-dop.el: Removed old functions.
7259
7260 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
7261
7262         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
7263         `folder' to `msgdb'.
7264
7265 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
7266
7267         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
7268         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
7269
7270         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
7271         case-fold-search.
7272
7273 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
7274
7275         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
7276         defined.
7277
7278         * mmimap.el (toplevel): Require 'mime-parse and 'static.
7279         (mmimap-parse-parameters-from-list): Define as alias for
7280         `mime-decode-parameter-plist' if it is defined as function.
7281         (mmimap-make-mime-entity): Added argument `number'.
7282         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
7283         as 0.
7284         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
7285
7286         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
7287
7288         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
7289
7290         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
7291
7292 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
7293
7294         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
7295
7296         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
7297         when elmo-imap4-default-authenticate-type is nil.
7298         (elmo-folder-list-subfolders): Ditto
7299         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
7300         (elmo-imap4-fetch-callback-1-subr): Renamed from
7301         `elmo-imap4-fetch-callback-1' and define as inline function.
7302         (elmo-imap4-fetch-callback-1):
7303         Renamed from `elmo-imap4-fetch-callback'.
7304         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
7305
7306         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
7307         msgdb path (To keep compatibility with main trunk).
7308
7309         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
7310
7311         * elmo-util.el (elmo-make-file-cache): Moved position of
7312         some macros.
7313
7314         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
7315         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
7316         instead of `elmo-pop3-inhibit-uidl'.
7317         (elmo-folder-exists-p): Ditto.
7318         (elmo-pop3-folder-list-messages): Ditto.
7319
7320         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
7321         instead of `elmo-pop3-inhibit-uidl'.
7322         (elmo-folder-status): Ditto.
7323
7324         * elmo-dop.el (elmo-dop-folder): New variable.
7325         (elmo-dop-lock-message): Eliminated.
7326         (elmo-dop-unlock-message): Ditto.
7327         (elmo-dop-lock-list-load): Ditto.
7328         (elmo-dop-lock-list-save): Ditto.
7329         (elmo-dop-delete-folder): Ditto.
7330         (elmo-dop-rename-folder): Ditto.
7331
7332         * elmo.el: Removed incomplete commentary.
7333
7334 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7335
7336         * elmo.el (toplevel): Require 'elmo-version first;
7337         for little `recursive-load-depth' settings.
7338         Fix "ends here" comment.
7339
7340 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
7341
7342         * elmo-util.el (toplevel): Require 'poem;
7343         Some functions are moved from elmo-cache.el.
7344
7345         * elmo-net.el (toplevel): Require 'elmo-cache.
7346
7347         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
7348
7349         * elmo.el (toplevel): Ditto.
7350
7351         * elmo-cache.el: Rewrite with luna;
7352         Some functions are moved to elmo-util.el.
7353
7354         * elmo-internal.el (elmo-internal-folder-list): New variable.
7355         (elmo-internal-folder-initialize): Rewrite.
7356         (elmo-folder-list-subfolders): Ditto.
7357
7358         * elmo-cache.el (elmo-cache-search-all): Eliminated.
7359         (elmo-cache-collect-sub-directories): Ditto.
7360
7361 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
7362
7363         * elmo-version.el (elmo-version): Up to 2.5.8.
7364
7365         * elmo.el (elmo-folder-list-messages-mark-match): New function.
7366
7367         * elmo-util.el (elmo-list-insert): New function.
7368
7369 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
7370
7371         * elmo.el (elmo-init): New function.
7372         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
7373
7374         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
7375         (Renamed from `elmo-localdir-header-chop-length').
7376
7377         * elmo-pop3.el (elmo-pop3-use-cache,
7378         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
7379
7380         * elmo-nntp.el (elmo-message-fetch): Define.
7381         (elmo-message-fetch-unplugged): Ditto.
7382         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
7383         (elmo-nntp-use-cache): Ditto.
7384         (elmo-nntp-max-number-precedes-list-active): Ditto.
7385
7386         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
7387
7388         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
7389         `elmo-msgdb-insert-file-header'.
7390         Use `elmo-msgdb-file-header-chop-length'.
7391
7392         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
7393         `elmo-vars.el'.
7394
7395         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
7396         (elmo-cache-msgdb-create-overview-entity-from-file): Use
7397         `elmo-msgdb-insert-file-header'.
7398
7399         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
7400         Use new variable;
7401         Define obsolete variables with `elmo-define-obsolete-variable',
7402
7403         * elmo-util.el (elmo-warning-buffer-name): New constant.
7404         (elmo-warning): New function.
7405         (elmo-obsolete-variable-alist): New variable.
7406         (elmo-obsolete-variable-show-warnings): New variable.
7407         (elmo-define-obsolete-variable): New function.
7408         (elmo-resque-obsolete-variable): Ditto.
7409         (elmo-resque-obsolete-variables): Ditto.
7410
7411 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7412
7413         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
7414         Eliminated.
7415
7416         * elmo-pop3.el, elmo-nntp.el: Use custom.
7417
7418 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7419
7420         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
7421         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
7422
7423 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7424
7425         * Luna-fy Kenichi OKADA's following changes.
7426         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
7427         `nohide'.
7428         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
7429
7430 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
7431
7432         * elmo-util.el (elmo-display-progress): Prefer
7433         `progress-feedback-with-label' to `lprogress-display'.
7434
7435 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7436
7437         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
7438
7439 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
7440
7441         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
7442         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
7443         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7444         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7445         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
7446         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
7447         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7448         * elmo-filter.el (elmo-filter-list-folder): Ditto.
7449         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7450         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7451         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7452         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7453         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7454
7455 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7456
7457         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
7458         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7459
7460 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7461
7462         * elmo.el (elmo-folder-process-crosspost): New generic method.
7463         (elmo-folder-writable-p): Ditto.
7464         (elmo-folder-message-appendable-p): Eliminated.
7465         (elmo-generic-folder-append-msgdb): Rewrite.
7466         (elmo-newsgroups-hashtb): New internal variable.
7467         (elmo-crosspost-message-set): Eliminated.
7468         (elmo-crosspost-message-delete): Ditto.
7469         (elmo-setup-subscribed-newsgroups): New function.
7470         (elmo-crosspost-message-alist-modified): New internal variable.
7471         (elmo-crosspost-message-alist-load): New function (Renamed from
7472         `wl-crosspost-alist-load').
7473         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7474         `wl-crosspost-alist-save').
7475
7476         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7477
7478         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7479         `unreads'.
7480         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7481         elmo-newsgroups-hashtb).
7482         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7483         `elmo-nntp-folder-update-crosspost-message-alist'.
7484         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7485         `elmo-nntp-groups-hashtb'.
7486         (elmo-nntp-make-groups-hashtb): Eliminated.
7487         (elmo-nntp-parse-newsgroups): New function (Renamed from
7488         `wl-parse-newsgroups').
7489         (elmo-folder-creatable-p, elmo-folder-writable-p,
7490         elmo-folder-close-internal, elmo-folder-mark-as-read,
7491         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7492         Define.
7493         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7494
7495         * elmo-net.el (elmo-message-fetch): Check buffer size.
7496
7497         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7498
7499         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7500
7501         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7502         before `close' command.
7503
7504         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7505         `mark-alist' (All other related portions are changed).
7506
7507 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7508
7509         * elmo-util.el (elmo-create-hash-size): Eliminated.
7510         (elmo-make-hash) Make a hash with `one less than a power of two'
7511         length.
7512
7513         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7514         (elmo-hash-maximum-size): Changed value.
7515
7516 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7517
7518         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7519         (elmo-mime-message-display-as-is): Ditto.
7520
7521 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7522
7523         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7524         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7525
7526 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7527
7528         * elmo-mark.el: New file.
7529
7530         * elmo-internal.el: Rewrite (Almost empty).
7531
7532 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7533
7534         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7535         (mime-imap-entity-header-string): Ditto.
7536         (mmimap-entity-section): Rewrite.
7537
7538 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7539
7540         * elmo-nmz.el: New file.
7541
7542         * elmo-pipe.el: Rewrite with luna.
7543
7544 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7545
7546         * elmo-archive.el: Rewrite with luna.
7547
7548         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7549         (elmo-folder-list-importants-internal): Ditto.
7550
7551 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7552
7553         * elmo-archive.el (elmo-archive-version): Abolish.
7554         (toplevel) Removed `boso' comment.
7555
7556 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7557
7558         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7559         elmo-msgdb-add-msgs-to-seen-list-subr;
7560         Changed argument seen-marks to unread-marks.
7561
7562         * elmo-nntp.el: Rewrite with luna.
7563
7564 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7565
7566         * elmo-filter.el: Rewrite with luna.
7567
7568 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7569
7570         * elmo-pop3.el: Rewrite with luna.
7571
7572 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7573
7574         * elmo-multi.el: Rewrite with luna.
7575
7576         * elmo-vars.el (elmo-use-killed-list): Abolish.
7577         All other related portions are changed.
7578         (elmo-filename-replace-string-alist): Renamed from
7579         elmo-msgid-replace-string-alist.
7580
7581 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7582
7583         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7584
7585         * elmo-map.el: New file.
7586         * elmo-maildir.el: Rewrite with luna.
7587
7588 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7589
7590         * elmo.el: Changed meaning of `elmo-folder-commit'.
7591         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7592
7593 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7594
7595         * elmo.el (elmo-folder-append-buffer): New function.
7596         (Renamed from `elmo-append-msg')
7597
7598 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7599
7600         * elmo-mime.el: New file.
7601
7602 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7603
7604         * elmo-cache.el: Rewrite.
7605
7606 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7607
7608         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7609
7610 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7611
7612         * elmo-vars.el (elmo): New group.
7613         (elmo-strict-diff-folder-regexp): New variable.
7614
7615         * elmo-util.el (elmo-call-func): Abolish.
7616         (elmo-folder-get-type): Ditto.
7617         (elmo-*-get-spec): Ditto.
7618         (elmo-*-spec-*): Ditto.
7619         (elmo-imap4-identical-name-space-p): Ditto.
7620         (elmo-folder-identical-system-p): Ditto.
7621         (elmo-folder-direct-copy-alist): Ditto.
7622         (elmo-folder-direct-copy-p): Ditto.
7623
7624         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7625         (elmo-folder-initialize): Define.
7626         (elmo-folder-get-primitive-list): Ditto.
7627
7628         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7629         (elmo-folder-initialize): Define.
7630         Renamed `elmo-network-session-host-internal' to
7631         `elmo-network-session-server-internal'.
7632
7633         * elmo-multi.el (elmo-multi-folder): New luna class.
7634         (elmo-folder-initialize): Define.
7635         (elmo-folder-get-primitive-list): Ditto.
7636         (elmo-folder-contains-type): Ditto.
7637         (elmo-message-use-cache-p): Ditto.
7638
7639         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7640         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7641
7642         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7643         (elmo-folder-initialize): Define.
7644
7645         * elmo-filter.el (elmo-filter-folder): New luna class.
7646         (elmo-folder-initialize): Define.
7647         (elmo-folder-get-primitive-list): Ditto.
7648         (elmo-folder-contains-type): Ditto.
7649
7650 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7651
7652         * elmo-imap4.el: Rewrite with luna.
7653
7654         * mmimap.el: New file.
7655
7656         * mmelmo.el, mmelmo-imap4.el: Removed.
7657
7658         * elmo-net.el: Ditto.
7659
7660         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7661         (elmo-folder-initialize): Define.
7662
7663         * elmo-archive.el (elmo-archive-folder): New luna class.
7664         (elmo-folder-initialize): Define.
7665
7666         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7667         `elmo-folder-msgdb-path'.
7668         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7669         `elmo-make-folder'.
7670
7671 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7672
7673         * elmo.el: New file.
7674
7675         * elmo2.el: Renamed to elmo.el.
7676
7677 \f
7678 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7679
7680         * elmo-cache.el (elmo-cache-expire-by-size): Count
7681         a disk usage for a cache file entry in KB even when
7682         its kind is a directory.
7683
7684 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7685
7686         * elmo-version.el (elmo-version): Up to 2.5.7.
7687
7688 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7689
7690         * elmo-version.el (elmo-version): Up to 2.5.6.
7691
7692 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7693
7694         * elmo-version.el (elmo-version): Up to 2.5.5.
7695
7696 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7697
7698         * elmo-imap4.el (elmo-network-authenticate-session):
7699         Fixed a logic for response checking.
7700
7701 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7702
7703         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7704         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7705         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7706         `sasl-mechanisms'.
7707
7708         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7709         for `starttls-open-stream' and `starttls-negotiate'.
7710
7711         * elmo-nntp.el: Remove autoload settings for
7712         `starttls-open-stream' and `starttls-negotiate'.
7713
7714         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7715         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7716         `luna-define-class' with `eval-and-compile'.
7717
7718 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7719
7720         * elmo-util.el (elmo-read-search-condition-internal):
7721         Require an element of table for searching field.
7722
7723 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7724
7725         * elmo-version.el (elmo-version): Up to 2.5.4.
7726
7727 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7728
7729         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7730
7731 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7732
7733         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7734
7735 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7736
7737         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7738         before greeting.
7739
7740 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7741
7742         * elmo-imap4.el (elmo-imap4-delete-folder):
7743         Send "close" before "delete" (Use commented out line).
7744         (elmo-imap4-rename-folder): Ditto.
7745
7746         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7747         folder string itself.
7748         (elmo-dop-list-deleted): New function.
7749         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7750         killed.
7751
7752         * elmo-util.el (elmo-string-rassoc-all): New function.
7753
7754 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7755
7756         * elmo-version.el (elmo-version): Up to 2.5.3.
7757
7758         * elmo-net.el (elmo-network-get-session): Changed logic for
7759         checking process status.
7760
7761         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7762         process is nil;
7763         Changed logic for checking process status.
7764
7765 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7766
7767         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7768         before greeting.
7769         (elmo-network-setup-session): Set UIDL hash size according to
7770         the length of list response.
7771         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7772         according to the length of list response;
7773         Return the length of list response.
7774         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7775
7776 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7777
7778         * elmo-imap4.el (toplevel): Require 'ssl.
7779         Add autoload 'starttls.
7780         * elmo-pop3.el (toplevel): Ditto.
7781         * elmo-nntp.el (toplevel): Ditto.
7782
7783 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7784
7785         * elmo-imap4.el (toplevel): defun at compile time.
7786         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7787         sasl-next-step, sasl-step-data, sasl-step-set-data.
7788         * elmo-pop3.el (toplevel): Ditto.
7789
7790 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7791
7792         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7793
7794 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7795
7796         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7797         if error.
7798         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7799         and `elmo-pop-auth-apop'.
7800
7801 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7802
7803         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7804
7805 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7806
7807         * elmo-pop3.el (elmo-network-authenticate-session): Split
7808         encoded response value.
7809
7810 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7811
7812         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7813         `elmo-pop3-force-login'.
7814         Redefine `sasl-mechanisms'.
7815         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7816
7817 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7818
7819         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7820         Delete `elmo-imap4-authenticator-alist'.
7821         (elmo-imap4-auth-cram-md5): Delete.
7822         (elmo-imap4-auth-digest-md5): Delete.
7823
7824 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7825
7826         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7827         (elmo-pop3-auth-scram-md5): Ditto.
7828         (elmo-pop3-auth-cram-md5): Ditto.
7829
7830 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7831
7832         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7833         Delete `elmo-pop3-authenticator-alist'.
7834
7835 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7836
7837         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7838         new SASL API.
7839         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7840
7841 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7842
7843         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7844
7845 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7846
7847         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7848         Fixed problem when `elmo-pop3-use-uidl' is nil.
7849         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7850
7851 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7852
7853         * elmo-version.el (elmo-version): Up to 2.5.2.
7854
7855 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7856
7857         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7858         New function.
7859         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7860         (elmo-pop3-msgdb-create-as-numlist): Use it.
7861
7862         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7863         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7864
7865         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7866         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7867
7868 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7869
7870         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7871         when elmo-mark-as-read is called with second argument nil.
7872
7873 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7874
7875         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7876         Moved to elmo-util.el.
7877
7878         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7879         Moved from elmo-pipe.el
7880
7881         * elmo-archive.el (elmo-archive-call-process): Enclose with
7882         static-if.
7883
7884         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7885         "RFC822" (because RFC822.PEEK is obsolete).
7886         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7887
7888 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7889
7890         * elmo-archive.el (elmo-archive-call-process): Don't check for
7891         the exit status when Nemacs is running.
7892
7893 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7894
7895         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7896         'plain.
7897
7898         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7899         (elmo-pop3-get-spec): Set default of auth to 'user.
7900
7901         * elmo-imap4.el (elmo-imap4-session-check):
7902         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7903         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7904         (elmo-imap4-auth-login): New function; Revival.
7905         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7906         `elmo-imap4-auth-login'.
7907
7908 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7909
7910         * elmo2.el (toplevel): Move `product-provide' declare.
7911         * mmelmo.el (toplevel): Ditto.
7912
7913 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7914
7915         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7916
7917 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7918
7919         * elmo-util.el (elmo-folder-get-store-type): New function.
7920         (elmo-folder-direct-copy-p): Use it.
7921
7922 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7923
7924         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7925         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7926         and result of `elmo-imap4-use-flag-p'.
7927         (elmo-imap4-fetch-callback-1): Set mark according to
7928         the result of `elmo-imap4-use-flag-p'.
7929
7930 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7931
7932         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7933         (elmo-generic-list-folder-unread): Ditto.
7934         (elmo-folder-get-info): Ditto.
7935         (elmo-folder-set-info-max-by-numdb): Ditto.
7936         (elmo-folder-get-info-max): Ditto.
7937         (elmo-folder-get-info-length): Ditto.
7938         (elmo-folder-get-info-unread): Ditto.
7939         (elmo-folder-info-make-hashtb): Ditto.
7940
7941         * elmo2.el: Removed above functions.
7942
7943 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7944
7945         * elmo-imap4.el (toplevel): Require 'ssl.
7946         Add autoload 'starttls.
7947         * elmo-pop3.el (toplevel): Ditto.
7948         * elmo-nntp.el (toplevel): Ditto.
7949
7950 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7951
7952         * elmo-imap4.el (toplevel): defun at compile time.
7953         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7954         sasl-next-step, sasl-step-data, sasl-step-set-data.
7955         * elmo-pop3.el (toplevel): Ditto.
7956
7957 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7958
7959         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7960
7961 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7962
7963         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7964         if error.
7965         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7966         and `elmo-pop-auth-apop'.
7967
7968 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7969
7970         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7971
7972 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7973
7974         * elmo-pop3.el (elmo-network-authenticate-session): Split
7975         encoded response value.
7976
7977 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7978
7979         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7980         `elmo-pop3-force-login'.
7981         Redefine `sasl-mechanisms'.
7982         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7983
7984 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7985
7986         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7987         Delete `elmo-imap4-authenticator-alist'.
7988         (elmo-imap4-auth-cram-md5): Delete.
7989         (elmo-imap4-auth-digest-md5): Delete.
7990
7991 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7992
7993         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7994         (elmo-pop3-auth-scram-md5): Ditto.
7995         (elmo-pop3-auth-cram-md5): Ditto.
7996
7997 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7998
7999         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
8000         Delete `elmo-pop3-authenticator-alist'.
8001
8002 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
8003
8004         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
8005         new SASL API.
8006         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
8007
8008 \f
8009 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
8010
8011         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
8012
8013 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
8014
8015         * elmo-nntp.el (elmo-nntp-get-folders-info):
8016         Fixed problem when '\' character is contained in user-id.
8017         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
8018
8019 \f
8020 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
8021
8022         * elmo-imap4.el (elmo-imap4-delete-folder):
8023         Send "close" before "delete" (Use commented out line).
8024         (elmo-imap4-rename-folder): Ditto.
8025
8026         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
8027         folder string itself.
8028         (elmo-dop-list-deleted): New function.
8029         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
8030         killed.
8031
8032         * elmo-util.el (elmo-string-rassoc-all): New function.
8033
8034         * elmo-version.el (elmo-version): Up to 2.5.1.
8035
8036 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
8037
8038         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
8039
8040         * elmo-internal.el (elmo-internal-search): Fix last change.
8041
8042 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
8043
8044         * elmo-internal.el (elmo-internal-search): Rewrite.
8045         (Fixed problem which is pointed out by Akihiro MOTOKI
8046         <motoki@da.jp.nec.com>)
8047
8048         * elmo-version.el (elmo-version): Up to 2.5.0.
8049
8050 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
8051
8052         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
8053
8054 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
8055
8056         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
8057         non-nil, make hierarchy.
8058
8059 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
8060
8061         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
8062         `elmo-pop3-use-uidl' must be bound to nil.
8063         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
8064
8065 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
8066
8067         * elmo-util.el (elmo-copy-file): Don't cause an error after
8068         `add-name-to-file' failed.
8069
8070         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
8071         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
8072
8073 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8074
8075         * elmo-version.el (elmo-version): Up to 2.3.93.
8076
8077 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
8078
8079         * elmo-util.el (elmo-flatten): New function.
8080
8081 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8082
8083         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
8084         sync Author header.
8085         * elmo-cache.el (toplevel): Ditto.
8086         * elmo-database.el (toplevel): Ditto.
8087         * elmo-date.el (toplevel): Ditto.
8088         * elmo-dop.el (toplevel): Ditto.
8089         * elmo-filter.el (toplevel): Ditto.
8090         * elmo-imap4.el (toplevel): Ditto.
8091         * elmo-internal.el (toplevel): Ditto.
8092         * elmo-localdir.el (toplevel): Ditto.
8093         * elmo-localnews.el (toplevel): Ditto.
8094         * elmo-maildir.el (toplevel): Ditto.
8095         * elmo-msgdb.el (toplevel): Ditto.
8096         * elmo-multi.el (toplevel): Ditto.
8097         * elmo-net.el (toplevel): Ditto.
8098         * elmo-nntp.el (toplevel): Ditto.
8099         * elmo-pipe.el (toplevel): Ditto.
8100         * elmo-pop3.el (toplevel): Ditto.
8101         * elmo-util.el (toplevel): Ditto.
8102         * elmo-vars.el (toplevel): Ditto.
8103         * elmo2.el (toplevel): Ditto.
8104         * mmelmo-imap4.el (toplevel): Ditto.
8105         * mmelmo.el (toplevel): Ditto.
8106
8107         * elmo-version.el (elmo-version): Move to top.
8108
8109         * elmo-cache.el (toplevel): Fixed multiple Author header format.
8110         * elmo-imap4.el (toplevel): Ditto.
8111         * elmo-localdir.el (toplevel): Ditto.
8112         * elmo-msgdb.el (toplevel): Ditto.
8113         * elmo-nntp.el (toplevel): Ditto.
8114         * elmo-pop3.el (toplevel): Ditto.
8115         * elmo-version.el (toplevel): Ditto.
8116
8117         * elmo-localnews.el (toplevel): Added Keyword header.
8118
8119 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
8120
8121         * elmo-version.el (product-version-as-string): Defined using
8122         `defun-maybe'.
8123         (toplevel): Use it.
8124
8125         * elmo-localdir.el (toplevel): Updated copyright notice.
8126         * elmo-version.el (toplevel): Ditto.
8127         * elmo-msgdb.el (toplevel): Ditto.
8128         * elmo-imap4.el (toplevel): Ditto.
8129         * elmo-nntp.el (toplevel): Ditto.
8130         * elmo-pop3.el (toplevel): Ditto.
8131
8132 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
8133
8134         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
8135         messages.
8136
8137         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
8138         parameter value (It sometimes contains raw kanji).
8139
8140 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8141
8142         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
8143         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
8144
8145 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8146
8147         * elmo-imap4.el (elmo-network-initialize-session): Fix.
8148
8149 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8150
8151         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
8152         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
8153
8154 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
8155
8156         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
8157         value if selecting folder succceeded.
8158         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
8159
8160 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8161
8162         * elmo-util.el (elmo-make-directory): Fixed permission lateral
8163         representation.
8164
8165         * elmo-util.el (elmo-string-matched-member): New function.
8166
8167 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
8168
8169         * elmo-util.el (elmo-unintern): New macro.
8170         (elmo-number-set-member): Fixed docstring.
8171
8172         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
8173         tag token.
8174
8175 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
8176
8177         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
8178         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
8179
8180 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
8181
8182         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
8183         `no-error'.
8184         Added docstring.
8185         Return non-nil if selecting folder succeeded.
8186         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
8187
8188 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
8189
8190         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
8191         `file-name-completion' returns t.
8192         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
8193         (elmo-maildir-set-mark): Put `info' part to the files in the cur
8194         directory if it does not exist.
8195         (elmo-maildir-update-current): Use `while' instead of `mapcar'
8196         for iteration.
8197
8198 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
8199
8200         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
8201         enclosure (It's harmful in unplugged status).
8202
8203         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
8204
8205         * mmelmo-1.el: Removed.
8206
8207         * mmelmo-2.el: Ditto.
8208
8209         * mmelmo-imap4-1.el: Ditto.
8210
8211         * mmelmo-imap4-2.el: Ditto.
8212
8213         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
8214
8215         * mmelmo.el: Merged mmelmo-2.el.
8216
8217         * elmo-version.el (elmo-version): Up to 2.3.92.
8218
8219 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8220
8221         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
8222         elmo-update-number): Remove last period in "...done." message.
8223         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
8224         Ditto.
8225         * elmo-cache.el (elmo-cache-expire-by-size,
8226         elmo-cache-get-sorted-cache-file-list,
8227         elmo-cache-msgdb-create-as-numlist): Ditto.
8228         * elmo-dop.el (elmo-dop-save-pending-messages,
8229         (elmo-dop-flush-pending-append-operations): Ditto.
8230         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
8231         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
8232         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
8233         (elmo-localdir-pack-number): Ditto.
8234         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
8235         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
8236         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
8237         mime-write-entity-content): Ditto.
8238         * pldap.el (ldap-search-basic): Ditto.
8239
8240 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
8241
8242         * elmo-version.el (elmo-version): Up to 2.3.91.
8243
8244         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
8245         Only when filter is 'last'.
8246
8247         * elmo-util.el (elmo-condition-atom-regexp): New constant.
8248         (elmo-condition-parse-search-value): Use it.
8249         (elmo-read-search-condition-internal): Quote value only when
8250         it is not an atom.
8251
8252 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
8253
8254         * elmo2.el (elmo-generic-folder-diff): Fix.
8255
8256 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
8257
8258         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
8259         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
8260         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
8261         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8262         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
8263         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
8264
8265 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
8266
8267         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
8268         extra-fields.
8269
8270 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
8271
8272         * elmo-version.el (elmo-version): Up to 2.3.90.
8273
8274         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
8275         (elmo-imap4-list-folder-important): Ditto.
8276
8277 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8278
8279         * elmo-nntp.el (elmo-network-initialize-session): Fix.
8280
8281 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8282
8283         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
8284
8285 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
8286
8287         * elmo-nntp.el (elmo-network-initialize-session):
8288         Add starttls negotiation.
8289
8290 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8291
8292         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
8293         response.
8294         (elmo-network-setup-session): Define.
8295         Call `elmo-nntp-send-mode-reader' when session opened.
8296
8297 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8298
8299         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
8300
8301 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
8302
8303         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
8304         an invalid SPACE character ahead of `SEARCH' command.  Move
8305         a valid SPACE character following `SEARCH' from conditional
8306         `format' arguments to control-strings.
8307
8308 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8309
8310         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
8311         was succeeded.
8312
8313         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
8314
8315 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
8316
8317         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
8318         `w32-get-true-file-link-count' as t.
8319
8320         * elmo-imap4.el (elmo-imap4-read): Abolished.
8321         (Renamed to `elmo-read' and moved to elmo-util.el)
8322         All other related portions are changed.
8323
8324         * elmo-util.el (elmo-read): New function.
8325         (elmo-condition-parse-search-value): Use it.
8326
8327 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
8328
8329         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
8330
8331         * elmo-nntp.el (elmo-nntp-session): Define.
8332         (elmo-nntp-setting): Abolished.
8333         All other related portions are changed.
8334         (elmo-nntp-get-server-command): Changed argument.
8335         (elmo-nntp-set-server-command): Ditto.
8336         (elmo-nntp-xover-p): Ditto.
8337         (elmo-nntp-set-xover): Ditto.
8338         (elmo-nntp-listgroup-p): Ditto.
8339         (elmo-nntp-set-listgroup): Ditto.
8340         (elmo-nntp-list-active-p): Ditto.
8341         (elmo-nntp-set-list-active): Ditto.
8342         (elmo-nntp-xhdr-p): Ditto.
8343         (elmo-nntp-set-xhdr): Ditto.
8344         (elmo-nntp-flush-connection): Abolished.
8345         (elmo-nntp-get-connection): Abolished.
8346         (elmo-nntp-get-session): New function.
8347         (elmo-network-initialize-session): Defined.
8348         (elmo-network-authenticate-session): Ditto.
8349         (elmo-nntp-send-mode-reader): Changed argument.
8350         (elmo-nntp-send-command): Changed argument.
8351         All other related portions are changed.
8352         (elmo-nntp-read-response): Ditto.
8353         (elmo-nntp-read-raw-response): Ditto.
8354         (elmo-nntp-read-contents): Ditto.
8355         (elmo-nntp-read-body): Ditto.
8356         (elmo-nntp-goto-folder): Abolished.
8357         (elmo-nntp-select-group): New function.
8358         All other related portions are changed.
8359         (This function substitutes `elmo-nntp-goto-folder')
8360         (elmo-nntp-msgdb-create-by-header): Rewrite.
8361         (elmo-nntp-get-overview): Eliminated.
8362         (elmo-nntp-get-message): Ditto.
8363         (elmo-nntp-open-connection) Abolished.
8364         (elmo-nntp-read-msg): Rewrite.
8365         (elmo-nntp-post): Ditto.
8366         (elmo-nntp-send-data): Abolished.
8367         (elmo-nntp-send-buffer): New function.
8368         (elmo-nntp-send-data-line): Define as inline function.
8369         (elmo-nntp-get-folders-info-prepare): Use session as key.
8370         (elmo-nntp-groups-read-response): Changed argument.
8371         (elmo-nntp-retrieve-headers): Ditto.
8372         (elmo-nntp-msgdb-create-message): Ditto.
8373
8374         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
8375         when searching by 'since' or 'before'.
8376
8377 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8378
8379         * elmo-version.el (toplevel): Use product-version-as-string for set
8380         verstion-string, if defined.
8381
8382 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
8383
8384         * elmo-util.el: Doc fixes.
8385
8386 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8387
8388         * elmo-archive.el (toplevel): Use product-provide.
8389         * elmo-cache.el (toplevel): Ditto.
8390         * elmo-database.el (toplevel): Ditto.
8391         * elmo-date.el (toplevel): Ditto.
8392         * elmo-dop.el (toplevel): Ditto.
8393         * elmo-filter.el (toplevel): Ditto.
8394         * elmo-imap4.el (toplevel): Ditto.
8395         * elmo-internal.el (toplevel): Ditto.
8396         * elmo-localdir.el (toplevel): Ditto.
8397         * elmo-localnews.el (toplevel): Ditto.
8398         * elmo-maildir.el (toplevel): Ditto.
8399         * elmo-msgdb.el (toplevel): Ditto.
8400         * elmo-multi.el (toplevel): Ditto.
8401         * elmo-net.el (toplevel): Ditto.
8402         * elmo-nntp.el (toplevel): Ditto.
8403         * elmo-pipe.el (toplevel): Ditto.
8404         * elmo-pop3.el (toplevel): Ditto.
8405         * elmo-util.el (toplevel): Ditto.
8406         * elmo-vars.el (toplevel): Ditto.
8407         * elmo2.el (toplevel): Ditto.
8408         * mmelmo-1.el (toplevel): Ditto.
8409         * mmelmo-2.el (toplevel): Ditto.
8410         * mmelmo-imap4-1.el (toplevel): Ditto.
8411         * mmelmo-imap4-2.el (toplevel): Ditto.
8412         * mmelmo-imap4.el (toplevel): Ditto.
8413         * mmelmo.el (toplevel): Ditto.
8414
8415 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
8416
8417         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
8418         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
8419
8420 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
8421
8422         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
8423         before splitting.
8424         (elmo-multi-split-number-alist): Ditto.
8425
8426 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8427
8428         * elmo-version.el: New file.  Use product.el.
8429         * elmo2.el: Add (require 'elmo-version).
8430         * elmo-vars.el (elmo-appname, elmo-version): Move to
8431         elmo-version.el
8432
8433 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
8434
8435         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
8436         `elmo-msgdb-expand-path'.
8437         (elmo-msgdb-load): Ditto.
8438         Abolished 2nd argument. If 1st argument is not string, treat as spec.
8439         (elmo-generic-list-folder-unread): Rewrite.
8440         (elmo-generic-list-folder-important): Changed argument.
8441         (elmo-list-folder-unread): Ditto.
8442         (elmo-list-folder-important): Ditto.
8443         (elmo-folder-diff): Rewrite.
8444         (elmo-generic-folder-diff): New function.
8445         (elmo-multi-get-number-alist-list): Abolished
8446         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
8447         (elmo-multi-folder-diff): Moved to elmo-multi.el
8448         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
8449
8450         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
8451         `elmo-msgdb-expand-path'.
8452         (elmo-pop3-msgdb-create-as-numlist): Ditto.
8453         (elmo-pop3-read-msg): Ditto.
8454         (elmo-pop3-delete-msgs): Ditto.
8455         (elmo-pop3-folder-diff): New alias.
8456
8457         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
8458         `elmo-msgdb-expand-path'.
8459         (elmo-pipe-list-folder-unread): Changed arguments.
8460         (elmo-pipe-list-folder-important): Ditto.
8461         (elmo-pipe-folder-diff): New alias.
8462
8463         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8464         `elmo-msgdb-expand-path'.
8465         (elmo-nntp-max-of-folder): Ditto.
8466         (elmo-nntp-msgdb-create): Ditto.
8467         (elmo-nntp-delete-msgs): Ditto.
8468         (elmo-nntp-folder-diff): New alias.
8469
8470         * elmo-multi.el (elmo-multi-folder-diff): New function.
8471         (elmo-multi-split-mark-alist): Ditto.
8472         (elmo-multi-split-number-alist): Ditto.
8473         (elmo-multi-mark-alist-list): Abolished (Renamed to
8474         elmo-multi-split-mark-alist).
8475         (elmo-multi-list-folder-unread): Rewrite.
8476         (elmo-multi-list-folder-important): Ditto.
8477         (elmo-multi-list-folder): Set `spec' as 1st argument for
8478         `elmo-msgdb-expand-path'.
8479         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8480         instead of `elmo-multi-get-number-alist-list'.
8481
8482         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8483         If 1st argument is not string, treat as spec.
8484         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8485         `elmo-msgdb-expand-path'.
8486         (elmo-msgdb-flist-load): Ditto.
8487         (elmo-msgdb-flist-save): Ditto.
8488         (elmo-msgdb-delete-path): Ditto.
8489         (elmo-msgdb-rename-path): Ditto.
8490
8491         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8492         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8493         (elmo-maildir-delete-mark-msgs): Ditto.
8494         (elmo-maildir-msgdb-create): Ditto.
8495         (elmo-maildir-read-msg): Ditto.
8496         (elmo-maildir-delete-msgs): Ditto.
8497         (elmo-maildir-list-folder-subr): Ditto.
8498         (elmo-maildir-search): Ditto.
8499         (elmo-maildir-get-msg-filename): Ditto.
8500         (elmo-maildir-pack-number): Ditto.
8501         (elmo-maildir-folder-diff): New alias.
8502
8503         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8504
8505         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8506         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8507         (elmo-localdir-folder-diff): New alias.
8508
8509         * elmo-internal.el (elmo-internal-list-folder-subr):
8510         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8511         (elmo-internal-list-folder-by-location): Ditto.
8512         (elmo-internal-msgdb-create): Ditto.
8513         (elmo-internal-delete-msgs): Ditto.
8514         (elmo-internal-read-msg): Ditto.
8515         (elmo-internal-folder-diff): New alias.
8516
8517         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8518         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8519         `elmo-msgdb-expand-path'.
8520         (elmo-imap4-list-folder-unread): Changed arguments.
8521         (elmo-imap4-list-folder-important): Ditto.
8522
8523         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8524         (elmo-filter-list-folder-important): Ditto.
8525         (elmo-filter-folder-diff): New function.
8526
8527         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8528
8529         * elmo-cache.el (elmo-cache-list-folder):
8530         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8531         (elmo-cache-copy-msgs): Ditto.
8532         (elmo-cache-folder-diff): New alias.
8533
8534         * elmo-archive.el (elmo-archive-list-folder-subr):
8535         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8536         (elmo-archive-get-archive-name): Ditto.
8537         (elmo-archive-create-file): Ditto.
8538         (elmo-archive-append-msg): Ditto.
8539         (elmo-archive-copy-msgs): Ditto.
8540         (elmo-archive-copy-msgs-froms): Ditto.
8541         (elmo-archive-get-msg-filename): Ditto.
8542         (elmo-archive-folder-diff): New alias.
8543
8544 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8545
8546         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8547         (elmo-pop3-stream-type-alist): New variable.
8548         (elmo-nntp-stream-type-alist): New variable.
8549
8550         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8551         (elmo-kill-buffer): Ditto.
8552         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8553         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8554         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8555         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8556         (elmo-imap4-get-spec): Take into account
8557         `elmo-imap4-stream-type-alist'.
8558
8559 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8560
8561         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8562         (elmo-nntp-list-folders-get-cache): Ditto.
8563
8564 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8565
8566         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8567         character before 'uid'.
8568
8569 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8570
8571         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8572
8573         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8574
8575         * elmo-util.el (elmo-number-set-member): New function.
8576         (elmo-number-set-append-list): Ditto.
8577         (elmo-number-set-append): Ditto.
8578
8579         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8580         Use `elmo-number-set-member'.
8581         (elmo-living-messages): Ditto.
8582         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8583         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8584
8585         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8586         (elmo-imap4-add-to-cont-list): Abolished.
8587         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8588         instead of elmo-imap4-add-to-cont-list.
8589
8590         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8591         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8592
8593         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8594
8595 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8596
8597         * elmo-util.el (elmo-condition-parse-search-value):
8598         Fixed date parsing.
8599
8600 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8601
8602         * elmo-util.el (elmo-condition-find-key-internal): New function.
8603         (elmo-condition-find-key): Ditto.
8604
8605         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8606         (elmo-msgdb-search-internal): Ditto.
8607         (elmo-msgdb-search): Ditto.
8608
8609 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8610
8611         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8612         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8613
8614         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8615         (elmo-nntp-search-primitive): Fixed problem when condition is
8616         'unmatch'.
8617
8618         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8619
8620         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8621         (elmo-nntp-xhdr-p): New macro.
8622         (elmo-nntp-set-xhdr): Ditto.
8623         (elmo-nntp-parse-xhdr-response): New function.
8624         (elmo-nntp-retrieve-field): Ditto.
8625         (elmo-nntp-search-primitive): Ditto.
8626         (elmo-nntp-search): Implemented.
8627
8628         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8629
8630         * elmo-archive.el (elmo-archive-search): Set all number list to
8631         `elmo-archive-field-condition-match'
8632
8633         * elmo-localdir.el (elmo-localdir-search): Likewise.
8634
8635         * elmo-maildir.el (elmo-maildir-search): Likewise.
8636
8637 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8638
8639         * elmo-msgdb.el (elmo-living-messages): New function.
8640         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8641         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8642         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8643         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8644         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8645         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8646         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8647         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8648         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8649         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8650         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8651
8652 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8653
8654         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8655
8656         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8657
8658         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8659
8660         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8661         arguments for `SEARCH' command.
8662         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8663         All other related portions are changed.
8664
8665         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8666
8667         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8668         (elmo-list-folder-unread): Rewrite.
8669         (elmo-list-folder-important): Ditto.
8670
8671         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8672         (elmo-condition-parse-error): New inline function.
8673         (elmo-read-search-condition): New function.
8674         (elmo-read-search-condition-internal): Ditto.
8675         (elmo-parse-search-condition): Rewrite.
8676         (elmo-condition-parse): New function.
8677         (elmo-condition-parse-or-expr): Ditto.
8678         (elmo-condition-parse-and-expr): Ditto.
8679         (elmo-condition-parse-primitive): Ditto.
8680         (elmo-condition-parse-search-value): Ditto.
8681         (elmo-buffer-field-primitive-condition-match): Ditto.
8682         (elmo-buffer-field-condition-match): Rewrite.
8683         (elmo-file-field-condition-match): Ditto.
8684
8685         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8686         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8687
8688         * elmo-internal.el (elmo-internal-search): Set `number' and
8689         `number-list' argument of `elmo-file-field-condition-match'.
8690
8691         * elmo-maildir.el (elmo-maildir-search): Ditto.
8692
8693         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8694         `msgdb' as argument instead of `mark-alist'.
8695         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8696         `overview'.
8697
8698         * elmo-multi.el: Likewise.
8699
8700         * elmo-pipe.el: Likewise.
8701
8702         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8703         (elmo-imap4-search-internal): Rewrite.
8704         (elmo-imap4-search): Ditto.
8705
8706         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8707         (elmo-filter-list-folder-unread): Ditto.
8708         (elmo-filter-list-folder-important): Ditto.
8709         (elmo-filter-search): Rewrite.
8710
8711         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8712         `number-list' argument of `elmo-file-field-condition-match'.
8713         (elmo-cache-search): Ditto.
8714
8715         * elmo-localdir.el: Likewise.
8716
8717         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8718         number-list and pass it to `elmo-buffer-field-condition-match'.
8719         (elmo-archive-field-condition-match): Pass `number-list' to
8720         `elmo-archive-field-condition-match'
8721
8722 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8723
8724         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8725         `listgroup'.
8726
8727         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8728         (elmo-folder-diff-async-callback-data): Ditto.
8729         (elmo-folder-diff-async): New function.
8730
8731         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8732         (elmo-network-session-cache-key): Use it as a prefix of the session
8733         name.
8734         (elmo-network-open-session): Ditto.
8735
8736         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8737         (elmo-imap4-status-callback-data): Ditto.
8738         (elmo-imap4-server-diff-async-callback): New variable.
8739         (elmo-imap4-server-diff-async-callback-data): Ditto.
8740         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8741         `elmo-imap4-status-callback-data'.
8742         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8743         `elmo-imap4-status-callback-data' as nil.
8744         (elmo-imap4-server-diff): Ditto.
8745         (elmo-imap4-server-diff-async-callback-1): New function.
8746         (elmo-imap4-server-diff-async): Ditto.
8747         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8748
8749 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8750
8751         * elmo-util.el (elmo-list-delete): Doc fix.
8752         (elmo-delete-lists): Abolish.
8753         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8754         instead of `elmo-delete-lists'.
8755
8756 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8757
8758         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8759         before `sort'.
8760
8761 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8762
8763         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8764         `elmo-imap4-literal-subr'.
8765         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8766         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8767
8768 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8769
8770         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8771         (elmo-archive-list-folder): Fix.
8772         (elmo-archive-max-of-folder): Fix.
8773
8774 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8775
8776         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8777          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8778         (elmo-localdir-append-msg): Ditto.
8779         (elmo-localdir-list-folder): Fix for `nonsort'.
8780         (elmo-localdir-list-folder-subr): Fix for `killed'.
8781         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8782         (elmo-maildir-list-folder-subr): Ditto.
8783         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8784         (elmo-archive-list-folder-subr): Ditto.
8785         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8786         (elmo-internal-list-folder-subr): Ditto.
8787
8788 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8789
8790         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8791
8792 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8793
8794         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8795
8796 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8797
8798         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8799         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8800
8801         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8802         before greeting.
8803         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8804         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8805
8806 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8807
8808         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8809
8810         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8811         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8812         before STORE command.
8813
8814 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8815
8816         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8817
8818         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8819         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8820         of `response'.
8821         (elmo-imap4-list-folders): Removed unused local variable.
8822         (elmo-network-initialize-session): Ditto.
8823         (elmo-imap4-delete-msg-by-id): Ditto.
8824         (elmo-imap4-parse-fetch): Ditto.
8825         (elmo-imap4-copy-msgs): Ditto.
8826         Use `dst-spec' instead of `dst-folder'.
8827         (elmo-network-authenticate-session): Check authenticate type `plain'.
8828
8829 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8830
8831         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8832         garbage checking.
8833         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8834         `elmo-imap4-response-value'.
8835         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8836
8837 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8838
8839         * elmo-imap4.el (elmo-imap4-send-command):
8840         Cause elmo-imap4-bye-error when current response is BYE.
8841         (elmo-imap4-arrival-filter): Changed greeting response value.
8842
8843         * elmo2.el (elmo-imap4-bye-error): Define.
8844
8845         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8846         (elmo-imap4-server-diff): Ditto.
8847         (elmo-imap4-response-bye-p): New macro.
8848         (elmo-imap4-response-error-text): Get text from BYE response.
8849         (elmo-imap4-read-response): Return if BYE response.
8850         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8851         (elmo-imap4-folder-exists-p): Ditto.
8852         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8853         (elmo-imap4-parse-bye): New function.
8854         (elmo-imap4-parse-response): Remove needless let.
8855         Call `elmo-imap4-parse-bye'.
8856
8857 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8858
8859         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8860         the mailbox does not exist.
8861         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8862
8863 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8864
8865         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8866
8867 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8868
8869         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8870
8871         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8872         (elmo-network-initialize-session-buffer): Defined.
8873
8874         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8875         Abolished.
8876         (mmelmo-imap4-get-mime-entity): Rewrite.
8877
8878         * elmo2.el (elmo-error): Capitalize error message.
8879
8880         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8881         (elmo-network-session-buffer): New macro.
8882         (elmo-network-open-session): Use it.
8883
8884         * elmo-imap4.el: Rewrite.
8885
8886 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8887
8888         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8889
8890 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8891
8892         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8893         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8894         (elmo-imap4-create-msgdb-from-overview-string): Use
8895         `elmo-msgdb-create-overview-from-buffer'.
8896
8897 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8898
8899         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8900         (elmo-imap4-default-hierarchy-delimiter): New variable.
8901         (elmo-imap4-list-folders): Use it.
8902
8903 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8904
8905         * elmo-net.el (elmo-network-open-session): Add user and
8906         stream-type for process-buffer name.
8907
8908         * elmo-pop3.el (elmo-network-initialize-session): Call
8909         buffer-disable-undo.
8910
8911         * elmo-imap4.el (elmo-network-initialize-session):
8912         Set current-buffer as an argument for `buffer-disable-undo'.
8913
8914         * elmo-pop3.el (elmo-network-close-session): Don't use
8915         `process-live-p'.
8916
8917         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8918         Set default as 'user.
8919
8920         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8921
8922         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8923         and `elmo-imap4-flush-connection'.
8924
8925         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8926         (elmo-pop3-get-spec): Assume auth as symbol.
8927         (elmo-open-network-stream): Moved to `elmo-net'.
8928
8929         * elmo-pop3.el (toplevel): Require 'elmo-net.
8930         Define `sasl-cram-md5' to silence byte compilier.
8931         (elmo-pop3-connection-cache) Abolished.
8932         (elmo-pop3-authenticator-alist) New variable.
8933         (elmo-pop3-session): Define.
8934         (elmo-pop3-connection-get-process): Abolished.
8935         (elmo-pop3-connection-get-buffer): Ditto.
8936         (elmo-pop3-close-connection): Ditto.
8937         (elmo-pop3-flush-connection): Ditto.
8938         (elmo-pop3-get-connection): Ditto.
8939         (elmo-pop3-get-session): New function.
8940         (Replacement for `elmo-pop3-get-connection').
8941         All other related modules are changed.
8942         (elmo-network-close-session): Define.
8943         (elmo-pop3-send-command): Abolished argument `buffer'.
8944         All other related modules are changed.
8945         (elmo-pop3-read-response): Likewise.
8946         (elmo-pop3-open-connection): Abolished.
8947         (elmo-pop3-auth-user): New function.
8948         (elmo-pop3-auth-apop): Ditto.
8949         (elmo-pop3-auth-cram-md5): Ditto.
8950         (elmo-pop3-auth-scram-md5): Ditto.
8951         (elmo-pop3-auth-digest-md5): Ditto.
8952         (elmo-network-initialize-session): Define.
8953         (elmo-network-authenticate-session): Ditto.
8954         (elmo-network-setup-session): Ditto.
8955
8956         * elmo-imap4.el (toplevel): Require 'elmo-net.
8957         (elmo-imap4-session): Define.
8958         (elmo-imap4-connection-cache): Abolished.
8959         (elmo-imap4-password-key): Ditto.
8960         (elmo-imap4-flush-connection): Ditto.
8961         (elmo-imap4-get-connection): Ditto.
8962         All other related modules are changed.
8963         (elmo-imap4-get-session): New function
8964         (Replacement for `elmo-imap4-get-connection').
8965         (elmo-imap4-read-response): Abolished argument `buffer'.
8966         All other related modules are changed.
8967         (elmo-imap4-send-command): Likewise.
8968         (elmo-imap4-select-folder): Abolished.
8969         All other related modules are changed.
8970         (elmo-imap4-select-mailbox): New function.
8971         (Replacement for `elmo-imap4-select-folder').
8972         (elmo-imap4-auth-login): Simplify.
8973         (Assume current buffer as process buffer)
8974         (elmo-imap4-auth-cram-md5): Ditto.
8975         (elmo-imap4-auth-digest-md5): Ditto.
8976         (elmo-imap4-login): Ditto.
8977         (elmo-imap4-open-connection): Abolished.
8978         (elmo-imap4-open-connection-1): Abolished.
8979         (elmo-network-initialize-sessoin): Define.
8980         (elmo-network-authenticate-session): Ditto.
8981         (elmo-network-setup-session): Ditto.
8982
8983         * elmo-net.el: New module.
8984
8985 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8986
8987         * elmo-util.el (elmo-define-error): New function.
8988
8989         * elmo2.el (elmo-error): Define.
8990         (elmo-open-error): Define.
8991         (elmo-authenticate-error): Define.
8992
8993         * elmo-imap4.el (elmo-imap4-error): Abolish.
8994         (elmo-imap4-error-type): Abolish.
8995         (elmo-imap4-error-process): Abolish.
8996         (elmo-imap4-error-message): Abolish
8997         (elmo-imap4-list-folders): Don't quote lambda.
8998         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8999         (elmo-imap4-parse-namespace): Ditto.
9000         (elmo-imap4-open-connection): Rewrite.
9001         (elmo-imap4-open-connection-1): Simplified (authenticate only).
9002         (elmo-imap4-get-connection): Abolish local variable `result'.
9003
9004 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
9005
9006         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
9007         wrong-type-argument error when auth is nil.
9008
9009 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
9010
9011         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
9012         (elmo-default-nntp-stream-type): Ditto.
9013         (elmo-default-pop3-stream-type): Ditto.
9014         (elmo-network-stream-type-alist): Ditto.
9015         (elmo-default-imap4-ssl): Abolished.
9016         (elmo-default-nntp-ssl): Ditto.
9017         (elmo-default-pop3-ssl): Ditto.
9018
9019         * elmo-util.el: (toplevel): Removed needless requires.
9020         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
9021         (elmo-open-network-stream): Open network stream according to
9022         the value of `elmo-network-stream-type-alist'.
9023         (elmo-get-network-stream-type): New function.
9024         (elmo-network-stream-type-spec-string): New macro.
9025         (elmo-network-stream-type-symbol): Ditto.
9026         (elmo-network-stream-type-function): Ditto.
9027
9028         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
9029         network-stream-type. All other related portions are changed.
9030         (elmo-pop3-open-connection): Ditto.
9031
9032         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
9033         network-stream-type. All other related portions are changed.
9034
9035         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
9036         network-stream-type.All other related portions are changed.
9037         (elmo-imap4-error): New macro.
9038         (elmo-imap4-error-type): Ditto.
9039         (elmo-imap4-error-process): Ditto.
9040         (elmo-imap4-error-message): Ditto.
9041         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
9042         (elmo-imap4-auth-cram-md5): Ditto.
9043         (elmo-imap4-auth-digest-md5): Ditto.
9044         (elmo-imap4-login): Ditto.
9045         (elmo-imap4-open-connection): Remove password entry if authentication
9046         was in vain.
9047         (elmo-imap4-user-at-host): Abolished.
9048         (elmo-imap4-password-key): New buffer local variable.
9049         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
9050         using protocol, port, auth and stream-type.
9051
9052         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
9053
9054 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
9055
9056         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
9057
9058         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
9059
9060         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
9061         (elmo-imap4-authenticator-alist): New variable.
9062         (elmo-imap4-open-connection-1): Rename from
9063         elmo-imap4-open-connection.
9064         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
9065         only wraps elmo-imap4-open-connection-1.
9066         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
9067         user-at-host.
9068         (elmo-imap4-auth-login): New function.
9069         (elmo-imap4-auth-cram-md5): New function.
9070         (elmo-imap4-auth-digest-md5): New function.
9071         (elmo-imap4-login): New function.
9072
9073 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
9074
9075         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
9076         function `error'.
9077
9078 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
9079
9080         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
9081
9082 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
9083
9084         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
9085
9086 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
9087
9088         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
9089         for server responses, quote `*' regardless of where it appears.
9090
9091 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
9092
9093         * elmo-maildir.el (elmo-maildir-commit): New alias.
9094
9095 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
9096
9097         * elmo-util.el (elmo-display-progress):
9098                 Use `progress-feedback-with-label'.
9099
9100 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
9101
9102         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
9103         (elmo-imap4-non-atom-char-regex): Ditto.
9104         (elmo-imap4-non-text-char-regex): Ditto.
9105         (elmo-imap4-literal-threshold): Ditto.
9106         (elmo-imap4-atom-p): New function.
9107         (elmo-imap4-quotable-p): Ditto.
9108         (elmo-imap4-nil): Ditto.
9109         (elmo-imap4-atom): Ditto.
9110         (elmo-imap4-quoted): Ditto.
9111         (elmo-imap4-literal-subr): Ditto.
9112         (elmo-imap4-literal): Ditto.
9113         (elmo-imap4-buffer-literal): Ditto.
9114         (elmo-imap4-string-subr): Ditto.
9115         (elmo-imap4-string): Ditto.
9116         (elmo-imap4-buffer-string): Ditto.
9117         (elmo-imap4-astring-subr): Ditto.
9118         (elmo-imap4-astring): Ditto.
9119         (elmo-imap4-buffer-astring): Ditto.
9120         (elmo-imap4-nstring): Ditto.
9121         (elmo-imap4-buffer-nstring): Ditto.
9122         (elmo-imap4-mailbox): New alias.
9123         (elmo-imap4-field-body): Ditto.
9124         (elmo-imap4-userid): Ditto.
9125         (elmo-imap4-password): Ditto.
9126         (elmo-imap4-format-quoted): New function.
9127         (elmo-imap4-send-command): Rewritten.  Accept a list of command
9128         arguments and handle "atom", "quoted" and "literal" string here.
9129         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
9130         `elmo-imap4-send-command'.
9131         (elmo-imap4-folder-exists-p): Likewise.
9132         (elmo-imap4-create-folder): Likewise.
9133         (elmo-imap4-delete-folder): Likewise.
9134         (elmo-imap4-rename-folder): Likewise.
9135         (elmo-imap4-max-of-folder): Likewise.
9136         (elmo-imap4-check-validity): Likewise.
9137         (elmo-imap4-sync-validity): Likewise.
9138         (elmo-imap4-server-diff): Likewise.
9139         (elmo-imap4-select-folder): Likewise.
9140         (elmo-imap4-copy-msgs): Likewise.
9141         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
9142         (elmo-imap4-mark-set-on-msgs): Likewise.
9143         (elmo-imap4-read-part): Likewise.
9144         (elmo-imap4-read-msg): Likewise.
9145         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
9146         `elmo-imap4-password' for `elmo-imap4-send-command'.
9147         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
9148         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
9149         `elmo-imap4-buffer-literal'.
9150         (elmo-imap4-append-msg): Likewise.
9151
9152         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
9153         `delete' for removing dead connection from the connection cache.
9154         Move deletion of the process buffer after that.
9155         (elmo-imap4-list): Change `defsubst' to `defun'.
9156         (elmo-imap4-commit): Make error message verbose.
9157         (elmo-imap4-search): Ditto.
9158         (elmo-imap4-list): Ditto.
9159         (elmo-imap4-select-folder): Ditto.
9160         (elmo-imap4-copy-msgs): Ditto.
9161         (elmo-imap4-delete-msg-by-id): Ditto.
9162         (elmo-imap4-append-msg-by-id): Ditto.
9163         (elmo-imap4-append-msg): Ditto.
9164
9165 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
9166
9167         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
9168         when dired is used on XEmacs.
9169
9170 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
9171
9172         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
9173         instead of `append'.
9174         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
9175         `elmo-plugged-p' directly.
9176         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
9177         of `elmo-plugged-p' directly.
9178
9179         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
9180         Eliminate unused variable.  Use `memq' for checking a process status.
9181         Use `cons' instead of `append' for updating the connection cache.
9182         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
9183         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
9184
9185 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
9186
9187         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
9188         `elmo-imap4-read-point' exactly.
9189
9190         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
9191         the local variable `folder' to `mailbox'.
9192         Rename the argument `fld' to `folder'.
9193
9194 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
9195
9196         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
9197         * elmo-imap4.el (elmo-imap4-commit): Ditto.
9198
9199 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
9200
9201         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
9202         (elmo-pop3-number-uidl-hash): New buffer-local variable.
9203         (elmo-pop3-uidl-number-hash): Ditto.
9204         (elmo-pop3-size-hash): Ditto.
9205         (elmo-pop3-uidl-done): Ditto.
9206         (elmo-pop3-list-done): Ditto.
9207         (elmo-pop3-connection-get-process): New defmacro.
9208         (elmo-pop3-connection-get-buffer): Ditto.
9209         (elmo-pop3-close-connection): Delete buffer and process.
9210         (elmo-pop3-flush-connection): Don't delete buffer and process.
9211         (elmo-pop3-get-connection): Added optional argument `if-exists'.
9212         Setup UIDL and size hash.
9213         (elmo-pop3-send-command-no-erase): Deleted
9214         (elmo-pop3-send-command): Added optional argument `no-erase'.
9215         (elmo-pop3-parse-uidl-response): New function.
9216         (elmo-pop3-parse-list-response): Set size hash.
9217         (elmo-pop3-list-location): New function.
9218         (elmo-pop3-list-by-uidl-subr): Ditto.
9219         (elmo-pop3-list-by-list): Ditto.
9220         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
9221         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
9222         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
9223         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
9224         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
9225         Use uidl.
9226         (elmo-pop3-uidl-to-number): New function.
9227         (elmo-pop3-number-to-uidl): Ditto.
9228         (elmo-pop3-number-to-size): Ditto.
9229         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
9230         Set number by use of uidl.
9231         (elmo-pop3-msgdb-create-message): Likewise.
9232         Set size, loc-alist in msgdb.
9233         (elmo-pop3-read-msg): Set number by use of uidl.
9234         Added optional argument `msgdb'.
9235         (elmo-pop3-delete-msg): Ditto.
9236         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
9237         (elmo-pop3-commit): Close connection.
9238
9239         * elmo-pipe.el (elmo-pipe-max-of-folder):
9240         Bind `elmo-pop3-use-uidl' as nil.
9241         (elmo-pipe-drain): Ditto.
9242         Call `elmo-commit'.
9243
9244         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
9245         (elmo-msgdb-overview-entity-set-size): New defsubst.
9246
9247 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
9248
9249         * elmo-vars.el (elmo-use-killed-list): New variable
9250         (Renamed from `elmo-nntp-use-killed-list').
9251         (elmo-nntp-use-killed-list): Eliminated.
9252
9253         * elmo-msgdb.el (elmo-msgdb-expand-path):
9254         Changed expanding msgdb path for elmo-multi.
9255
9256         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
9257         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
9258         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
9259         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
9260         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
9261         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
9262         (toplevel): Deleted time-stamp line.
9263
9264         * elmo2.el (elmo-clear-killed ): Defined as function
9265         (Abolished defining as a backend function).
9266         All other related modules are changed.
9267
9268 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
9269
9270         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
9271
9272 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
9273
9274         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
9275
9276 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
9277
9278         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
9279
9280 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
9281
9282         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
9283         asynchronous folder check.
9284
9285         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
9286
9287         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
9288         `elmo-nntp-use-killed-list'.
9289         (elmo-nntp-list-folder): Use killed list.
9290         (elmo-nntp-max-of-folder): Ditto.
9291         (elmo-nntp-msgdb-create): Set killed list.
9292
9293         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
9294
9295         * elmo2.el (elmo-clear-killed): New backend function.
9296         All other related modules are changed.
9297
9298 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
9299
9300         * elmo-util.el (elmo-imap4-spec-folder): Use
9301         `elmo-imap4-spec-mailbox'; Mark as obsolete.
9302         All callers changed.
9303
9304 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
9305
9306         * mmelmo-2.el (initialize-instance):
9307         Use `mime-buffer-entity-buffer-internal' instead of
9308         `mime-entity-buffer'.
9309
9310         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
9311         (mime-entity-body): Implemented.
9312         (mime-goto-header-start-point): Deleted.
9313         (mime-goto-body-end-point): Ditto.
9314         (mime-entity-point-min): Ditto.
9315         (mime-entity-point-max): Ditto.
9316         (mime-entity-children): Ditto.
9317         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
9318         instead of `mime-entity-buffer'.
9319         (mime-entity-header-buffer): Ditto.
9320         (mime-entity-body-buffer): Ditto.
9321         (mime-write-entity-content): Ditto.
9322
9323         * pldap.el (ldap-static-if): New macro.
9324         (toplevel): Use it instead of `static-if'.
9325
9326 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
9327
9328         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
9329         included in `attrs' argument.
9330
9331 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
9332
9333         * elmo-util.el (elmo-get-passwd): Use old backquote style.
9334
9335         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
9336         (ldap-ldif-safe-init-char-regexp): Ditto.
9337         (ldap-ldif-safe-string-regexp): Ditto.
9338         (ldap/ldif-safe-string-p): New macro.
9339         (ldap/ldif-insert-field): Ditto.
9340         (ldap-modify): Use it.
9341         (ldap-add): Ditto.
9342         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
9343         (ldap-decode-attribute): Decode only when `attr' is consp.
9344         (ldap-delete): Bind `ret'.
9345         (toplevel): Require 'cl at compile time.
9346         Removed (require 'poe) and (require 'std11).
9347         (pldap-version): Eliminated.
9348         (ldap-search-basic): Removed auth and dn binding.
9349         (ldap-ldif-field-name-regexp): New constant.
9350         (ldap-ldif-field-head-regexp): Ditto.
9351         (ldap-ldif-next-field-head-regexp): Ditto.
9352         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
9353         (ldap/field-end): New function.
9354         (ldap/field-body): Use it.
9355         (ldap/collect-field): Ditto.
9356         (ldap-search-basic): Use `ldap/field-body'.
9357
9358 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
9359
9360         * pldap.el (ldap-default-attribute-encoder): New user option.
9361         (ldap/field-body): Decode base64 string.
9362         (ldap/collect-field): Ditto.
9363         (ldap-encode-attribute): New function.
9364         (ldap-add-entries): Use it.
9365         (ldap-modify-entries): Ditto.
9366         (ldap-search-entries): Enclosed decoding function with
9367         `with-temp-buffer' and set as unibyte.
9368         (ldap-search-basic): Set process buffer as unibyte.
9369
9370         * elmo-util.el (elmo-folder-identical-system-p):
9371         Eliminated name space checking.
9372
9373         * pldap.el: New module.
9374         toplevel: Changed condition to detect built-in ldap feature.
9375         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
9376         (ldap-add): Added error handling.
9377         (ldap-modify): Ditto.
9378         (ldap-delete): Ditto.
9379
9380 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
9381
9382         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
9383         Initialize local variables with `let'.  Inline a temporary
9384         variable for the progress percentage.  Sort `setq' to reduce
9385         function call in the while-loop.
9386
9387         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
9388         into the conditional branch.
9389
9390 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
9391
9392         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
9393         Move a conditional out of the while-loop.
9394
9395 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9396
9397         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
9398         elmo-msgdb-overview-get-entity-by-number.
9399         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
9400         throw.
9401
9402 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
9403
9404         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
9405         the local variable for a packed number self descriptively.
9406
9407 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9408
9409         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
9410         * elmo-localdir.el (elmo-localdir-pack-number): Use
9411         `elmo-msgdb-overview-get-entity' instead of
9412         `elmo-msgdb-overview-get-entity-by-number'.
9413         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
9414         (elmo-msgdb-search-overview-entity): Removed.
9415         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
9416         by message-id or number.
9417         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
9418         instead of `elmo-msgdb-overview-get-entity-by-number'.
9419
9420 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9421
9422         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
9423         non-nil, use hash table for overview.
9424         (elmo-hash-maximum-size): New variable.
9425         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
9426         (elmo-msgdb-make-overview-hashtb): New function.
9427         (elmo-msgdb-clear-overview-hashtb): New function.
9428         (elmo-clear-hash-val): New macro.
9429         All other related modules are changed.
9430
9431 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
9432
9433         * elmo2.el (elmo-move-msgs): If there's other message with
9434         same message-id, don't use cache.
9435
9436 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
9437
9438         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
9439         number is already packed.
9440
9441 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
9442
9443         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
9444
9445 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9446
9447         * elmo-vars.el (elmo-display-progress-threshold): New variable.
9448         All other related modules are changed.
9449
9450 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
9451
9452         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
9453         of refiling failure on Maildir.
9454
9455 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9456
9457         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
9458         decoded mime-charset with cache.
9459         (elmo-msgdb-overview-entity-get-from): Ditto.
9460         (elmo-msgdb-overview-entity-get-subject): Ditto.
9461         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9462
9463 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9464
9465         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9466         (elmo-remove-passwd): Fill password with 0 before erase.
9467         * elmo-vars.el (elmo-passwd-life-time): New variable.
9468
9469 \f
9470 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9471
9472         * elmo-cache.el (elmo-buffer-cache-add):
9473         Set message cache buffer as unibyte.
9474
9475 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9476
9477         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9478         become nil.
9479
9480 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9481
9482         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9483         when display is finished.
9484         (elmo-nntp-msgdb-create): Ditto.
9485         (elmo-nntp-groups-read-response): Ditto.
9486         (elmo-nntp-retrieve-headers): Ditto.
9487         (elmo-nntp-msgdb-create-message): Ditto.
9488         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9489         (elmo-pop3-msgdb-create-message): Ditto.
9490
9491 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9492
9493         * elmo-maildir.el (elmo-maildir-msgdb-create):
9494         Use `elmo-msgdb-sort-by-date'.
9495
9496 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9497
9498         * elmo2.el (elmo-read-msg-no-cache):
9499         Eliminated arguments after `outbuf'.
9500         Don't use cache even if it exists.
9501         (elmo-read-msg): Don't pass arguments after `outbuf' to
9502         `elmo-read-msg-no-cache'.
9503
9504 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9505
9506         * elmo-archive.el (elmo-archive-list-folders):
9507         Use `file-name-directory' if base folder does not exist.
9508
9509 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9510
9511         * elmo-archive.el (elmo-archive-list-folders): Don't use
9512         `file-name-directory'.
9513
9514 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9515
9516         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9517         If `force' is non-nil, try flushing all operation queues.
9518
9519 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9520
9521         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9522         as-binary-process.
9523
9524 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9525
9526         * elmo-util.el (elmo-display-progress): Fixed.
9527
9528 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9529
9530         * elmo-util.el (elmo-display-progress): New function.
9531         All other related modules are changed.