2008-07-06 YAMASHITA Junji <ysiijj@gmail.com>
[elisp/wanderlust.git] / elmo / ChangeLog
1 2008-07-06 YAMASHITA Junji <ysiijj@gmail.com>
2
3         * elmo-pop3.el (elmo-pop3-read-contents): improving performance:
4         goto the previous end-point insead of the head-point, and use
5         `search-forward' instead of `re-search-forward'.
6
7 2008-06-30  Tetsurou Okazaki  <okazaki@be.to>
8
9         * elmo-imap4.el (elmo-imap4-parse-status): Use `case' instead of `cond'.
10
11 2008-06-30  Don Bashford  <Don.Bashford@stjude.org>
12
13         * elmo-imap4.el (elmo-imap4-parse-status): Accept IMAP4 tokens in a
14         case-insensitive fashion.
15
16 2008-03-30  Tetsurou Okazaki  <okazaki@be.to>
17
18         * elmo-imap4.el (elmo-imap4-send-command): Combine `process-send-string' calls.
19
20 2008-02-20  TAKAHASHI Kaoru  <kaoru@kaisei.org>
21
22         * elmo-util.el (elmo-add-name-to-file, elmo-field-body): Use
23         `eval-and-compile' for suppress compile warnings.
24
25         * elmo-vars.el (dynamic-link, dynamic-call): Use `defalias-maybe'
26         instead of `defun-maybe'
27
28         * elmo-util.el: Add (eval-when-compile (require 'static)).
29
30 2008-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
31
32         * mmimap.el: Remove (require 'static).
33         * acap.el: Ditto.
34
35         * elmo-flag.el: Move ';;; Code:' comment.
36         * elmo-imap4.el: Ditto.
37         * elmo-net.el: Ditto.
38
39         * elmo-version.el (product-provide): Fix comment.
40
41 2008-02-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
42
43         * slp.el: Add (eval-when-compile (require 'cl)).
44         * elmo-date.el: Ditto.
45         * elmo-pop3.el: Ditto.
46         * elmo-mime.el: Add (eval-when-compile (require 'elmo)).
47
48 2008-02-17  TAKAHASHI Kaoru  <kaoru@kaisei.org>
49
50         * modb.el (elmo-msgdb-match-condition-primitive): Use
51         `string-to-number' instead of `string-to-int'.
52
53         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer)
54         (elmo-msgdb-message-match-condition)
55         (elmo-msgdb-create-message-entity-from-buffer): Use
56         `string-to-number' instead of `string-to-int'.
57
58         * elmo.el (elmo-folder-confirm-appends): Use `string-to-number'
59         instead of `string-to-int'.
60
61         * elmo-util.el (elmo-cache-expire-by-age): Use `string-to-number'
62         instead of `string-to-int'.
63
64         * elmo-pop3.el (elmo-pop3-list-by-list, elmo-folder-status): Use
65         `string-to-number' instead of `string-to-int'.
66
67         * elmo-nntp.el (elmo-nntp-make-msglist)
68         (elmo-folder-list-messages-plugged, elmo-nntp-folder-status)
69         (elmo-nntp-create-msgdb-from-overview-string)
70         (elmo-nntp-parse-xhdr-response, elmo-nntp-msgdb-create-message)
71         (elmo-nntp-search-primitive): Use `string-to-number' instead of
72         `string-to-int'.
73
74         * elmo-net.el (elmo-net-folder-set-parameters): Use
75         `string-to-number' instead of `string-to-int'.
76
77         * elmo-localdir.el (elmo-localdir-list-subr): Use
78         `string-to-number' instead of `string-to-int'.
79
80         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Use
81         `string-to-number' instead of `string-to-int'.
82
83         * elmo-date.el (elmo-date-get-datevec): Use `string-to-number'
84         instead of `string-to-int'.
85
86         * elmo-archive.el (elmo-archive-list-folder-subr): Use
87         `string-to-number' instead of `string-to-int'.
88
89 2008-02-16  TAKAHASHI Kaoru  <kaoru@kaisei.org>
90
91         * elmo-util.el (elmo-get-passwd): Fix typo.
92
93         * elmo-nntp.el (elmo-nntp-get-server-command)
94         (elmo-nntp-set-server-command, elmo-nntp-xover-p)
95         (elmo-nntp-listgroup-p, elmo-nntp-set-listgroup)
96         (elmo-nntp-list-active-p, elmo-nntp-set-list-active)
97         (elmo-nntp-xhdr-p, elmo-nntp-set-xhdr): New backquote style.
98
99         * elmo-imap4.el (elmo-imap4-debug)
100         (elmo-imap4-response-continue-req-p, elmo-imap4-response-ok-p)
101         (elmo-imap4-response-bye-p, elmo-imap4-response-garbage-p)
102         (elmo-imap4-response-value, elmo-imap4-response-error-text)
103         (elmo-imap4-response-bodydetail-text, elmo-imap4-value)
104         (elmo-imap4-nth, elmo-imap4-detect-search-charset)
105         (elmo-imap4-identical-system-p): New backquote style.
106
107 2008-02-15  TAKAHASHI Kaoru  <kaoru@kaisei.org>
108
109         * elmo-dop.el (elmo-make-dop-queue): New backquote style.
110         (elmo-dop-queue-fname, elmo-dop-queue-method): Ditto.
111         (elmo-dop-queue-arguments): Ditto.
112
113         * elmo-date.el (elmo-match-substring): New backquote style.
114         (elmo-match-string, elmo-match-buffer): Ditto.
115         (elmo-date-make-sortable-string): Ditto.
116
117         * elmo-archive.el (elmo-archive-get-method):New backquote style.
118         (elmo-archive-get-suffix, elmo-archive-get-regexp): Ditto.
119
120         * elmo-multi.el (elmo-multi-real-folder-number): New backquote
121         style.
122
123         * elmo-net.el (elmo-network-stream-type-spec-string): New
124         backquote style.
125         (elmo-network-stream-type-symbol): Ditto.
126         (elmo-network-stream-type-feature): Ditto.
127         (elmo-network-stream-type-function): Ditto.
128         (elmo-network-session-buffer): Ditto.
129
130         * elmo-util.el (elmo-file-cache-expand-path): New backquote style.
131         (elmo-file-cache-status, elmo-file-cache-path): Ditto.
132         (elmo-make-file-cache, elmo-string, elmo-get-passwd): Ditto.
133         (elmo-bind-directory, elmo-set-work-buf): Ditto.
134
135         * elmo.el (elmo-folder-send): New backquote style.
136
137 2008-02-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
138
139         * pldap.el (ldap-static-if): New backquote style.
140         (ldap/ldif-safe-string-p): Ditto.
141         (ldap/ldif-insert-field): Ditto.
142
143         * elmo-version.el (elmo-version): Up to 2.15.6.
144
145 2008-01-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
146
147         * elmo-imap4.el (elmo-folder-list-messages-plugged): Don't include
148         messages with \Deleted flag.
149         (elmo-folder-delete-messages-plugged): Ask before sending expunge
150         command if there are messages with \Deleted flag.
151
152 2007-04-24  Yoichi NAKAYAMA  <yoichi@geiin.org>
153
154         * elmo-pop3.el (elmo-pop3-auth-apop): Use more strict regexp.
155         http://seclists.org/bugtraq/2007/Apr/0018.html
156         (Suggested by Tatsuya Kinoshita)
157
158 2007-04-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
159
160         * elmo-imap4.el (elmo-folder-delete): Don't call close for mailbox
161         with \Noselect attribute.
162
163 2007-04-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
164
165         * elmo-imap4.el (elmo-folder-list-subfolders): Fix handling of
166         hierarchical folder structure with UW-imapd.
167
168 2007-02-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
169
170         * elmo-imap4.el (elmo-imap4-clear-login): Don't send LOGIN command
171         when the LOGINDISABLED capability is advertised.
172
173 2007-01-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
174
175         * elmo-msgdb.el (elmo-msgdb-extra-fields): Make it non-destructive.
176
177 2007-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
178
179         * elmo-shimbun.el (elmo-shimbun-update-overview): Add argnument
180         `entity'.
181         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview' only
182         if the message entity is exists.
183
184 2007-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
185
186         * elmo-util.el (elmo-msgdb-insert-file-header): Call
187         `elmo-delete-cr-buffer'.
188
189         * elmo-localdir.el (elmo-message-fetch-internal): Use
190         `insert-file-contents-as-raw-text' instead of
191         `insert-file-contents-as-binary'.
192
193         * elmo-maildir.el (elmo-map-message-fetch): Ditto.
194
195 2006-12-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
196
197         * elmo-imap4.el (elmo-network-initialize-session): Check to
198         retrieve a whole greeting message.
199
200 2006-11-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
201
202         * elmo-flag.el (elmo-folder-commit): Encode `.minfo' at save.
203
204 2006-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
205
206         * elmo-util.el (elmo-safe-plist-get): New alias or macro.
207         (elmo-progress-notify): Use it instead of `plist-get'.
208
209 2006-11-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
210
211         * elmo.el (elmo-generic-folder-append-messages): Remove unused
212         variable `table'.
213
214 2006-11-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
215
216         * elmo-pipe.el (elmo-folder-set-plugged): Define.
217
218 2006-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
219
220         * elsp-bsfilter.el (elmo-spam-bsfilter-use-remote): New user option.
221         (elmo-spam-list-spam-messages): Check it option.
222
223 2006-11-08  Tetsurou Okazaki  <okazaki@be.to>
224
225         * elmo-util.el (elmo-with-progress-display): Return the value
226         of the last form in `body'.
227
228 2006-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
229
230         * elmo-util.el (elmo-progress-start): Accept nil for `total'.  Set
231         `elmo-progress-counter' as t when a query callback returns nil.
232         (elmo-progress-clear): New function.
233         (elmo-progress-done): Split into `elmo-progress-clear'.
234         (elmo-progress-notify): Update a total slot when it is nil.
235         (elmo-with-progress-display): Call `elmo-progress-clear' in
236         unwind-protect and move calling `elmo-progress-done' to outside.
237
238         * elmo-imap4.el (elmo-imap4-find-next-line): Call
239         `elmo-progress-notify' with :total parameter instead of
240         `elmo-progress-counter-set-total'.
241
242 2006-11-07  Tetsurou Okazaki  <okazaki@be.to>
243
244         * elmo-util.el (elmo-cache-expire-by-age): Add docstring.
245         Make it interactive.
246         (elmo-progress-start): Avoid updating `elmo-progress-counter'
247         when a query callback returns nil.  Return a progress counter
248         instead of t whenever a start callback was called.
249
250 2006-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
251
252         * elmo-imap4.el (elmo-imap4-session-capable-p): New macro.
253         (elmo-imap4-send-command): Use it.
254         (elmo-network-initialize-session): Ditto.
255         (elmo-network-setup-session): Ditto.
256         (elmo-folder-msgdb-create-plugged): Ditto.
257
258 2006-11-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
259
260         * elmo-util.el (elmo-progress-done): Fix a miss refer to
261         `elmo-progress-counter'.
262
263 2006-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
264
265         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Abolish.
266         (elsp-bsfilter-list-spam-filter): New function.
267         (elsp-bsfilter-start-list-spam): Ditto.
268         (elsp-bsfilter-read-list-spam): Ditto.
269         (elmo-spam-list-spam-messages): Use async process to display
270         progress message by each message.
271
272 2006-11-03  Yoichi NAKAYAMA  <yoichi@geiin.org>
273
274         * elmo-spam.el (elmo-spam-process-messages-as-mbox): Fix problem
275         of flushing previously inserted message contents.
276
277         * elmo-imap4.el (elmo-folder-search): Fix return value.
278
279 2006-11-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
280
281         * elmo-imap4.el (elmo-imap4-find-next-line): Check whether a label
282         of reporter is enable or not.
283
284 2006-10-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
285
286         * elmo-util.el (elmo-list-bigger-diff): Abolish.
287         (elmo-display-progress): Ditto.
288         (elmo-progress-counter-alist): Ditto.
289         (elmo-progress-set): Ditto.
290         (elmo-progress-clear): Ditto.
291         (elmo-progress-counter-all-value): Rename to
292         `elmo-progress-counter-total'.
293         (elmo-progress-counter-format): Rename to
294         `elmo-progress-counter-action'.
295         (elmo-progress-counter): New internal variable.
296         (elmo-progress-callback-function): Ditto.
297         (elmo-progress-counter-label): New function.
298         (elmo-progress-counter-set-total): Ditto.
299         (elmo-progress-counter-set-action): Ditto.
300         (elmo-progress-call-callback): Ditto.
301         (elmo-progress-start): Ditto.
302         (elmo-progress-done): Ditto.
303         (elmo-progress-notify): Rewrite.
304         (elmo-with-progress-display): Remove first argument
305         `condition'. Add optional argument `var' in `spec'.
306
307         * elmo-vars.el (elmo-display-progress-threshold): Abolish.
308         (elmo-display-retrieval-progress-threshold): Ditto.
309         (elmo-inhibit-display-retrieval-progress): Ditto.
310
311         * Replace all pair of `elmo-progress-set' and
312         `elmo-progress-clear' into `elmo-with-progress-display'.
313
314         * Replace to call `elmo-display-progress' into pair of
315         `elmo-progress-notify' and `elmo-with-progress-display'.
316
317         * elmo-version.el (elmo-version): Up to 2.15.5.
318
319 2006-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
320
321         * elmo-imap4.el (elmo-imap4-arrival-filter): Use `case' instead of
322         `cond'.
323
324 2006-10-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
325
326         * elmo-imap4.el (elmo-imap4-arrival-filter): Call delete-region in
327         cleanup-forms [wl:14027].
328
329 2006-10-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
330
331         * elmo-flag.el (elmo-global-flag-set-internal): Use
332         `elmo-copy-file' by priority when the message is a file.
333
334 2006-10-01  Yoichi NAKAYAMA  <yoichi@geiin.org>
335
336         * elmo.el: Fix typo: disptch -> dispatch.
337
338 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
339
340         * elmo.el (elmo-file-tag): New class.
341         (elmo-append-messages-disptch-table): New constant.
342         (elmo-folder-type-p): New function.
343         (elmo-folder-append-messages): Redefine as function.
344
345         * elmo-null.el (elmo-folder-append-messages): Renamed from
346         `elmo-folder-append-messages'.
347
348         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
349         (elmo-folder-append-messages-*-maildir): Renamed from
350         `elmo-folder-append-messages'.
351
352         * elmo-localdir.el (elmo-localdir-folder): Inherit
353         `elmo-file-tag'.
354         (elmo-folder-append-messages-*-localdir): Renamed from
355         `elmo-folder-append-messages'.
356
357         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
358         from `elmo-folder-append-messages'.
359
360         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
361         `elmo-folder-append-messages'.
362
363         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
364         function.
365         (elmo-folder-append-messages-*-filter): Ditto.
366
367         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
368
369         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
370         (elmo-folder-append-messages-*-pipe): Renamed from
371         `elmo-folder-append-messages'.
372
373         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
374
375         * elmo-file.el (elmo-file-folder): Ditto.
376
377         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
378
379         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
380         from `elmo-folder-append-messages'
381
382 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
383
384         * elmo-map.el (elmo-location-map-setup): Change an argument
385         `locations' to optional.
386         (elmo-location-map-clear): Abolish.
387         (elmo-folder-clear): Follow the API change.
388
389         * elmo-pop3.el (elmo-folder-clear): Ditto.
390
391         * elmo-pop3.el (toplevel): Require elmo-map.
392         (elmo-pop3-folder): Inherit elmo-location-map and abolish
393         location-alist slot (All other related portions are changed).
394         (elmo-pop3-folder-use-uidl): New function.
395         (elmo-folder-msgdb-create): Don't sort message entities.
396         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
397         (elmo-pop3-number-to-size): Convert return value to number.
398         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
399         working buffer.
400
401         * elmo-map.el: Use `location-map' as a variable name for instance
402         instead of `mapper'.
403         (elmo-location-map-setup): Return location alist.
404         (elmo-location-map-update): Ditto.
405
406 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
407
408         * elmo-map.el (elmo-location-map): New class; split location and
409         number mapping from elmo-map-folder (All other related portions
410         are changed).
411
412         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
413         change.
414
415         * elmo-version.el (elmo-version): Up to 2.15.4.
416
417 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
418
419         * elmo-vars.el (elmo-use-hardlink): New user option.
420
421         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
422         `elmo-use-hardlink'.
423
424         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
425         killed-list.
426         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
427         instead of `*-internal'. Use `elmo-with-progress-display'.
428
429 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
430
431         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
432         `elmo-spam-process-messages-as-mbox'.
433
434         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
435
436 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
437
438         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
439         argument BUFFER of `call-process'.
440
441 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
442
443         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
444         args.
445         (elsp-bsfilter-list-spam-files): Ditto.
446
447 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
448
449         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
450         (elmo-spam-bsfilter-max-messages-per-process): New use option.
451         (elmo-spam-bsfilter-debug): Fix a group.
452         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
453         `--homedir'.
454         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
455         (elsp-bsfilter-list-spam-files): New function.
456         (elmo-spam-list-spam-messages): Define.
457         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
458         (elmo-spam-bsfilter-register-messages): New function.
459         (elmo-spam-register-spam-messages): Define.
460         (elmo-spam-register-good-messages): Ditto.
461
462         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
463
464         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
465         `nconc' and `consp'.
466
467 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
468
469         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
470         hash table to test whether a location is exists.
471
472 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
473
474         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
475         even if some error occurred.
476
477         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
478         meaningless unwind-protect.
479
480         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
481         start-number correctly.
482         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
483         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
484
485 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
486
487         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
488         (elmo-folder-initialize): Use it.
489         (elmo-global-flag-replace-referrer): New function.
490
491         * elmo.el (toplevel): Added autoload setting for
492         `elmo-global-flag-replace-referrer'.
493         (elmo-folder-rename): Rewrite the last change use
494         `elmo-global-flag-replace-referrer'.
495
496         * elmo-pipe.el (elmo-folder-rename): Call
497         `elmo-global-flag-replace-referrer'.
498
499 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
500
501         * elmo.el (elmo-folder-rename): Set meta data for global flags
502         follow the rename.
503
504 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
505
506         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
507         as 'not-loaded.
508         (elmo-folder-close): Ditto.
509         (elmo-filter-folder-number-list-loaded-p): New function.
510         (elmo-filter-folder-number-list): Check whether loaded or not.
511         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
512         of `elmo-filter-folder-number-list-internal'.
513         (elmo-folder-delete-messages): Ditto.
514         (elmo-folder-length): Check whether number-list is loaded or not.
515
516 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
517
518         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
519         field `real field' into each element of list.
520         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
521         (elmo-msgdb-message-entity-field): Ditto.
522         (modb-entity-ml-info-real-fields): New function.
523
524         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
525
526         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
527         `elmo-msgdb-extra-fields'.
528
529 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
530
531         * elmo-util.el (elmo-passwd-alist-load): Move point to min
532         position before read.
533
534 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
535
536         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
537         (elmo-global-flags-initialize): Ditto.
538
539 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
540
541         * elmo-archive.el (toplevel): Don't require emu, std11
542         and elmo-localdir.
543
544         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
545         definition.
546
547 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
548
549         * elmo.el (elmo-folder-confirm-appends): Display folder name.
550
551 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
552
553         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
554         literals.
555
556 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
557
558         * elmo-maildir.el (elmo-maildir-list-location): Reduce
559         `elmo-get-last-modification-time' call.
560
561 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
562
563         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
564         expression.
565         (elmo-maildir-set-mark): Ditto.
566         (elmo-maildir-delete-mark): Ditto.
567
568 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
569
570         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
571         optional argument `separators'.
572
573 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
574
575         * elmo.el (cache-changed): Abolish.
576         (status-changed): New signal.
577         (elmo-message-killed-p): New generic function and define for
578         elmo-folder.
579         (elmo-folder-recover-messages): Ditto.
580         (elmo-message-set-cached): Emit signal `status-changed' instead of
581         `cache-changed'.
582         (elmo-message-status): New macro.
583         (elmo-message-status-folder): Ditto.
584         (elmo-message-status-number): Ditto.
585         (elmo-message-status-set-flags): Ditto.
586         (elmo-message-status-set-killed): Ditto.
587         (elmo-message-status-flags): New function.
588         (elmo-message-status-cached-p): Ditto.
589         (elmo-message-status-killed-p): Ditto.
590
591         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
592         `status-changed' instead of `cache-changed'.
593         (elmo-folder-recover-messages): Define.
594         (elmo-message-killed-p): Ditto.
595
596         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
597         `status-changed' instead of `cache-changed'.
598
599         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
600         (elmo-message-killed-p): Define.
601         (elmo-folder-recover-messages): Ditto.
602
603         * elmo-version.el (elmo-version): Up to 2.15.3.
604
605 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
606
607         * elmo-signal.el (elmo-signal-bindings): Use cons to append
608         element into list.
609         (elmo-define-signal-handler): Add docstring.
610         (elmo-define-signal-filter): Ditto.
611
612         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
613
614 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
615
616         * elmo-util.el (elmo-flatten): Don't use recursive call.
617
618         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
619         assignment.
620         (elmo-folder-message-make-temp-files): Use `number-to-string'
621         instead of `int-to-string'.
622
623 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
624
625         * elmo-search.el (elmo-folder-delete-messages): Define.
626
627 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
628
629         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
630         customization type.
631         (elmo-mailing-list-count-spec-list): Ditto.
632
633         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
634         for `list-id'.
635
636 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
637
638         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
639         handling.
640
641 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
642
643         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
644         (elmo-mailing-list-count-spec-list): Ditto.
645
646         * elmo-util.el (elmo-map-until-success): New function.
647         (elmo-string-match-substring): Ditto.
648         (elmo-find-list-match-value): Ditto.
649
650         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
651         Removed.
652         (modb-entity-extract-ml-info-from-subject): Ditto.
653         (modb-entity-extract-ml-info-from-return-path): Ditto.
654         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
655         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
656         (modb-entity-extract-ml-info-from-mailman): Ditto.
657         (modb-entity-extract-mailing-list-info-functions): Ditto.
658         (modb-entity-extract-mailing-list-info): Rewrite with
659         `elmo-find-list-match-value'.
660
661 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
662
663         * elmo-net.el (elmo-network-session-retry-count): New user option.
664         (elmo-network-session-buffer-name): New internal function.
665         (elmo-network-session-buffer-create): Ditto.
666         (elmo-network-open-session): Retry open network session
667         `elmo-network-session-retry-count' times.
668
669 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
670
671         * elmo-util.el (elmo-list-filter): Rewritten.
672
673 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
674
675         * elmo-util.el (elmo-string-member): Allow symbol element in list.
676
677 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
678
679         * elmo-search.el (elmo-make-search-engine): Use prefix
680         `elmo-search-' for require symbol instead of `else-'.
681         (elmo-search-engine-extprog): New class.
682         (elmo-search-engine-do-search): Remove nil from argument
683         list. Added argument pattern to evaluate element as function.
684         (elmo-search-engine-local-file): Derived from
685         `elmo-search-engine-extprog'.
686         (elmo-search-engine-create-message-entity): Check existance of file.
687         (elmo-search-engine-fetch-message): Ditto.
688         (elmo-search-namazu-index): Follow the API change.
689         (elmo-search-grep-target): Ditto.
690
691 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
692
693         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
694         characters of working buffer.
695
696         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
697         Does not bind `default-mime-charset'.
698         (elmo-msgdb-create-message-entity-from-buffer): Removed
699         unnecessary local bind.
700
701         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
702         function.
703         (modb-entity-extract-mailing-list-info-functions): Added it.
704
705 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
706
707         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
708         when number and message-id are non-nil.
709
710         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
711
712         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
713         conditional steatment.
714         (elmo-pop3-auth-apop): Likewise.
715         (elmo-network-authenticate-session): Likewise.
716
717 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
718
719         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
720         symbol `fill-column'.
721         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
722         decode field value.
723
724         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
725         (elmo-decoded-field-body): Ditto.
726
727 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
728
729         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
730         `tokens' to `params'.
731
732 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
733
734         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
735         working buffer.
736
737 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
738
739         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
740         decide index.
741
742 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
743
744         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
745         Set default value as nil.
746         (toplevel): Register search engines by
747         `elmo-search-register-engine' if there are not defined.
748
749         * elmo.el (autoload): Added autoload setting for
750         `elmo-search-register-engine'.
751
752 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
753
754         * elmo.el (toplevel): `[' is redefined as the prefix of the search
755         folder instead of nmz folder.
756         (elmo-nmz-default-index-path): Added obsolete variable setting.
757         (elmo-nmz-index-alias-alist): Ditto.
758         (elmo-nmz-use-drive-letter): Ditto.
759
760         * elmo-search.el (elmo-search-register-engine): New function.
761
762         * elmo-nmz.el: Removed.
763
764         * elmo-version.el (elmo-version): Up to 2.15.2.
765
766 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
767
768         * elmo-search.el: New file.
769
770 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
771
772         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
773         condition `larger' and `smaller'.
774
775 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
776
777         * elmo-util.el (elmo-safe-filename): Rewrite to replace
778         `"' (double quote) into "_Q_".
779
780 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
781
782         * elmo-net.el (elmo-net-quote-chars): Abolish.
783         (elmo-net-format-quoted): Ditto.
784
785 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
786
787         * elmo.el (elmo-get-folder-function): New variable.
788         (elmo-get-folder): New function.
789         (elmo-folder-rename): Call `elmo-make-folder' with specified
790         mime-charset.
791
792         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
793         `elmo-make-folder'.
794         (elmo-split-subr): Ditto.
795
796         * elmo-multi.el (elmo-folder-initialize): Ditto.
797
798         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
799
800         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
801         (elmo-flag-get-folder): Ditto.
802
803         * elmo-filter.el (elmo-folder-initialize): Ditto.
804
805         * elmo-access.el (elmo-folder-initialize): Ditto.
806         (elmo-access-folder-update-children): Ditto.
807
808         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
809         (elmo-dop-queue-flush): Ditto.
810         (elmo-folder-append-buffer-dop-delayed): Ditto.
811         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
812         mime-charset.
813
814         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
815         instead of `elmo-make-folder'.
816         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
817         destination folder instead of send `elmo-folder-rename-internal'.
818
819         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
820         slot of subfolder instead of create it.
821
822 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
823
824         * elmo-util.el (elmo-collect-separators): New function.
825         (elmo-collect-separators-internal): Ditto.
826         (elmo-collect-trail-separators): Ditto.
827         (elmo-parse-separated-tokens): Ditto.
828         (elmo-parse-separated-tokens-internal): Ditto.
829         (elmo-quote-syntactical-element): Ditto.
830
831         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
832         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
833
834         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
835         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
836         (elmo-nntp-folder-list-subfolders): Quote a user name.
837
838         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
839         (elmo-net-parse-network): Abolish.
840         (elmo-net-folder-set-parameters): New function.
841         (elmo-folder-initialize): Follow the above change.
842
843         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
844         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
845         (elmo-folder-list-subfolders): Use
846         `elmo-quote-syntactical-element' instead of
847         `elmo-net-format-quoted' to quote mailbox and user name.
848
849 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
850
851         * elmo-util.el (elmo-token-valid-p): New function.
852         (elmo-parse-token): Add optional argument `requirement'.
853         (elmo-parse-prefixed-element): Likewise.
854
855         * elmo-net.el (elmo-net-quote-chars): Renamed from
856         `elmo-net-quote-chars-regexp'.
857         (elmo-net-format-quoted): Add optional argument `extra-chars'.
858
859         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
860         by info document. Check token `uidl' is started an alphabet.
861
862         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
863         by info document. Check token `user' is started an alphabet.
864
865         * elmo-imap4.el (elmo-folder-initialize): Ditto.
866         (elmo-folder-list-subfolders): Quote user.
867
868 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
869
870         * elmo-util.el (elmo-quoted-specials-list): New constant.
871         (elmo-quoted-token): New function.
872
873         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
874         (elmo-net-format-quoted): New function.
875         (elmo-net-parse-network): Ditto.
876         (elmo-folder-initialize): Use it.
877
878         * elmo-nntp.el (elmo-folder-initialize): Use
879         `elmo-net-parse-network' to parse network specification instead of
880         `elmo-folder-initialize#elmo-net'.
881
882         * elmo-pop3.el (elmo-folder-initialize): Ditto.
883
884         * elmo-imap4.el (elmo-folder-initialize): Ditto.
885         (elmo-folder-list-subfolders): Quote folder name by
886         `elmo-net-format-quoted'.
887
888 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
889
890         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
891         (elmo-folder-search): Use it.
892
893 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
894
895         * modb-standard.el (modb-standard-loaded-message-id): Use
896         `elmo-msgdb-message-entity-field'.
897
898 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
899
900         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
901         without filename.
902
903 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
904
905         * elmo-util.el (elmo-set-auto-coding): New function.
906         (elmo-object-load): Use it.
907
908 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
909
910         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
911         (elmo-time<): Define as alias of `elmo-time-less-p'.
912         (elmo-time-to-datevec): New function.
913
914         * elmo-date.el (elmo-time-to-days): New function.
915
916 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
917
918         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
919         is not cons cell.
920
921 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
922
923         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
924         parenthesis.
925
926         * elmo-util.el (elmo-map-recursive): New function.
927
928         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
929         (modb-entity-encode-string-recursive): Ditto.
930
931 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
932
933         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
934         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
935         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
936         compare sequence number when last modified time is nil.
937
938 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
939
940         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
941
942         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
943
944 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
945
946         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
947         modification time of the file.
948
949 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
950
951         * elmo-util.el (elmo-condition-optimize): Discriminated against
952         preserved fields, extra fields and the other weight.
953
954 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
955
956         * modb-entity.el (initialize-instance): Define.
957         (modb-entity-handler-mime-charset): New internal function.
958         (modb-standard-entity-set-field): Use it.
959         (elmo-msgdb-message-entity-field): Ditto.
960         (elmo-msgdb-message-entity-field): Ditto.
961
962         * modb.el (elmo-msgdb-match-condition): Rewrite with
963         `elmo-condition-match'.
964         (elmo-msgdb-match-condition-primitive): New function.
965
966         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
967         arguments `flags' and `numbers'.
968         (elmo-msgdb-match-condition-primitive): Abolished (merged to
969         `elmo-msgdb-message-match-condition').
970         (modb-buffer-entity-handler): New class.
971
972         * elmo.el (elmo-folder-search): Optimize condition to use
973         `elmo-condition-optimize'.
974         (elmo-message-buffer-match-condition): New function.
975         (elmo-message-match-condition): Use
976         `elmo-message-buffer-match-condition' instead of
977         `elmo-buffer-field-condition-match'.
978
979         * elmo-util.el (elmo-condition-match): New function.
980         (elmo-condition-optimize): Ditto.
981         (elmo-buffer-field-primitive-condition-match): Abolish.
982         (elmo-buffer-field-condition-match): Ditto.
983
984         * elmo-archive.el (elmo-archive-field-condition-match): Use
985         `elmo-message-buffer-match-condition' instead of
986         `elmo-buffer-field-condition-match'.
987
988 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
989
990         * elmo-flag.el (elmo-global-flags-initialize): Check the
991         existence of the flag directory.
992
993 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
994
995         * elmo-access.el (elmo-folder-initialize): Call
996         `elmo-multi-connect-signals'.
997
998         * elmo-pipe.el (elmo-folder-close): Define.
999
1000         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
1001         children folders.
1002
1003         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
1004         with target folder.
1005
1006         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
1007         `number'.
1008
1009         * elmo-multi.el (elmo-message-entity): Don't use return value of
1010         `elmo-message-entity-set-number'.
1011
1012 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1013
1014         * modb.el (modb-generic): Added slot `mime-charset'.
1015
1016         * modb-standard.el (modb-standard): Added slot `overview-handler'.
1017         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
1018         and `modb-entity-handler-dump-parameters'.
1019         (modb-standard-default-entity-handler): Abolish.
1020         (elmo-msgdb-message-entity-handler): Save created handler by
1021         instance slot.
1022
1023         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
1024         (modb-entity-handler-list-parameters): New method.
1025         (modb-entity-handler-equal-p): New function.
1026         (modb-entity-handler-dump-parameters): Ditto.
1027         (modb-entity-parse-address-string): Encode return value.
1028         (modb-entity-make-address-string): Decode argument value.
1029         (modb-entity-decode-string-recursive): New function.
1030         (modb-entity-encode-string-recursive): Ditto.
1031         (modb-standard-entity-normalizer): Set to encode field value.
1032         (modb-standard-entity-specializer): Follow the above change.
1033         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
1034         mime-charset of handler.
1035         (elmo-msgdb-message-entity-field): Ditto.
1036         (elmo-msgdb-copy-message-entity): Fixed reference to internal
1037         structure.
1038         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
1039
1040         * elmo.el (elmo-folder): Added slot `mime-charset'.
1041         (elmo-make-folder): Added argument `mime-charset'.
1042         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
1043         `mime-charest'.
1044
1045         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
1046         (elmo-make-msgdb): Likewise.
1047
1048         * elmo-internal.el (elmo-internal-folder-initialize): Call
1049         `luna-make-entity' with :mime-charset parameter.
1050
1051 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
1052
1053         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
1054         encoded words in `from' and `subject' field.
1055
1056 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1057
1058         * modb.el (elmo-msgdb-message-field): Add argument `type'.
1059         (elmo-msgdb-match-condition): Get handler from entity instead of
1060         msgdb.
1061
1062         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
1063         (modb-standard-load-entity): Treat new file format.
1064         (modb-standard-save-entity-1): Save as new file format.
1065         (modb-standard-save-entity): Split messages into section here.
1066         (elmo-msgdb-message-field): Follow the API change.
1067         (modb-standard-default-entity-handler): New internal variable.
1068         (elmo-msgdb-message-entity-handler): Define.
1069
1070         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1071         to `elmo-vars.el'.
1072         (modb-entity-field-extractor-alist): New user option.
1073         (elmo-msgdb-message-entity-field): Removed argument `decode' and
1074         added argument `type'.
1075         (elmo-msgdb-copy-message-entity): Add optional argument
1076         `make-handler'.
1077         (modb-set-field-converter): New function.
1078         (modb-convert-field-value): Ditto.
1079         (modb-entity-string-decoder): Ditto.
1080         (modb-entity-string-encoder): Ditto.
1081         (modb-entity-parse-date-string): Ditto.
1082         (modb-entity-make-date-string): Ditto.
1083         (modb-entity-mime-decoder): Ditto.
1084         (modb-entity-mime-encoder): Ditto.
1085         (modb-entity-address-list-decoder): Ditto.
1086         (modb-entity-address-list-encoder): Ditto.
1087         (modb-entity-parse-address-string): Ditto.
1088         (modb-entity-make-address-string): Ditto.
1089         (modb-entity-create-field-indices): Ditto.
1090         (modb-legacy-entity-field-slots): New constant.
1091         (modb-legacy-entity-field-indices): Ditto.
1092         (modb-legacy-entity-normalizer): New variable.
1093         (modb-legacy-entity-specializer): Ditto.
1094         (modb-legacy-entity-field-index): New macro.
1095         (modb-legacy-entity-set-field): New function.
1096         (modb-legacy-make-message-entity): Rewrite.
1097         (elmo-msgdb-create-message-entity-from-buffer): Use
1098         `elmo-msgdb-get-references-from-buffer'. Use
1099         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
1100         Use `modb-legacy-entity-set-field' instead of
1101         `elmo-msgdb-message-entity-set-field'.
1102         (elmo-msgdb-message-entity-field): Rewrite.
1103         (elmo-msgdb-message-entity-set-field): Ditto.
1104         (elmo-msgdb-copy-message-entity): Make new entity by
1105         `make-handler' if it specified.
1106         (elmo-msgdb-message-match-condition): Define a method of
1107         `modb-entity-handler' and follow the API change.
1108         (modb-standard-entity-handler): New class.
1109         (modb-entity-extract-ml-info-from-x-sequence): New function.
1110         (modb-entity-extract-ml-info-from-subject): Ditto.
1111         (modb-entity-extract-ml-info-from-return-path): Ditto.
1112         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
1113         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
1114         (modb-entity-extract-mailing-list-info): Ditto.
1115         (modb-entity-extract-mailing-list-info-functions): New variable.
1116
1117         * elmo.el (elmo-message-field): Add optional argument `type'.
1118
1119         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1120         from `modb-entity.el'.
1121
1122         * elmo-util.el (elmo-object-load): Decode by coding-system from
1123         `set-auto-coding-function'.
1124         (elmo-object-save): Use `detect-mime-charset-region' and add
1125         coding cookie if encode.
1126         (elmo-msgdb-get-references-from-buffer): New function.
1127         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
1128
1129         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
1130
1131         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
1132         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
1133         instead of `shimbun-make-header' and follow the API change.
1134         (elmo-shimbun-update-overview): Follow the API change.
1135         (elmo-map-folder-list-message-locations): Ditto.
1136
1137         * elmo-pipe.el (elmo-message-field): Ditto.
1138
1139         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
1140         Ditto.
1141
1142         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1143
1144         * elmo-multi.el (elmo-message-field): Ditto.
1145
1146         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
1147         (elmo-msgdb-sort-by-date): Ditto.
1148         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
1149         `elmo-message-entity-field'.
1150         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
1151         change.
1152         (elmo-msgdb-overview-entity-get-from): Ditto.
1153         (elmo-msgdb-overview-entity-get-subject): Ditto.
1154         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1155         (elmo-msgdb-overview-entity-get-date): Ditto.
1156         (elmo-msgdb-overview-entity-get-to): Ditto.
1157         (elmo-msgdb-overview-entity-get-cc): Ditto.
1158
1159         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1160         (elmo-mime-collect-message/partial-pieces): Ditto.
1161
1162         * elmo-filter.el (elmo-message-field): Ditto.
1163
1164         * elmo-date.el (elmo-datevec-to-time): New function.
1165         (elmo-time-parse-date-string): Ditto.
1166         (elmo-time-make-date-string): Ditto.
1167         (elmo-time<): Ditto.
1168
1169         * elmo-version.el (elmo-version): Up to 2.15.1.
1170
1171 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
1172
1173         * elmo-flag.el (elmo-global-flags-initialize): Don't include
1174         member of elmo-local-flags.
1175
1176 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
1177
1178         * elmo-version.el (elmo-version): Up to 2.15.0.
1179
1180 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1181
1182         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
1183         `ignore-msgdb' is non-nil.
1184
1185 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1186
1187         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
1188         (elmo-condition-in-msgdb-p): Ditto.
1189         (elmo-file-field-primitive-condition-match): Ditto.
1190         (elmo-file-field-condition-match): Ditto.
1191
1192         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
1193
1194 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1195
1196         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
1197         subdirectories here.
1198         (elmo-global-flags-initialize): New function.
1199
1200         * elmo.el (toplevel): Added autoload setting for
1201         `elmo-global-flags-initialize'.
1202
1203 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
1204
1205         * elmo.el (message-number-changed): Define new signal.
1206         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
1207         message-number-changed signal.
1208         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1209         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1210         Respect `elmo-pack-number-check-strict'.
1211
1212 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1213
1214         * elmo-signal.el (elmo-connect-signal): Document.
1215         (elmo-emit-signal): Ditto.
1216         (elmo-emit-signal): It should pass source argument to filter and
1217         handler, not slot-source.
1218
1219 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1220
1221         * modb.el (elmo-msgdb-update-entity): New API and define generic
1222         implement.
1223
1224         * modb-standard.el (elmo-msgdb-update-entity): Define.
1225
1226         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
1227         API and define generic implement.
1228
1229         * elmo.el (update-overview): New singnal.
1230
1231         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
1232         `elmo-msgdb-update-entity' and emit signal `update-overview'.
1233         (elmo-message-entity-parent): Define.
1234
1235         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
1236         `update-overview'.
1237
1238         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
1239
1240         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
1241
1242 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
1243
1244         * elmo.el (elmo-folder-synchronize): Sort the return value of
1245         `elmo-list-diff'.
1246
1247         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
1248         list.
1249
1250 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1251
1252         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
1253         `default-enable-multibyte-characters'.
1254         (elmo-object-load): Use `with-temp-buffer' instead of
1255         `elmo-set-work-buf'.
1256         (elmo-object-save): Ditto.
1257         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
1258         `elmo-set-work-buf'.
1259         (elmo-decoded-field-body): Ditto.
1260
1261         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
1262
1263         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
1264         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
1265
1266         * elmo-version.el (elmo-version): Up to 2.13.3.
1267
1268 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
1269
1270         * elmo-util.el (elmo-list-diff): Fix the last change.
1271         Reverse order of result lists.
1272
1273 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
1274
1275         * modb-standard.el (elmo-msgdb-set-flag): Use
1276         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
1277         (elmo-msgdb-unset-flag): Ditto.
1278
1279         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
1280         `elmo-list-diff'.
1281
1282         * elmo-util.el (elmo-list-diff): Rewrite.
1283         (elmo-list-diff-nonsortable): New function.
1284
1285 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
1286
1287         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
1288         `elmo-multibypte-buffer-name'.  All referers are updated.
1289
1290 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1291
1292         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
1293         (elmo-mime-entity-fragment-p): New function.
1294         (mime-elmo-buffer-entity): Added slot `reassembled'.
1295         (elmo-message-mime-entity): Added 4th argument `reassemble'.
1296         (elmo-message-mime-entity-internal): New function (renamed from
1297         `elmo-message-mime-entity').
1298         (elmo-mime-inherit-field-list-from-enclosed): New constant.
1299         (elmo-mime-make-reassembled-mime-entity): New function.
1300         (elmo-message-reassembled-mime-entity): Ditto.
1301         (elmo-mime-collect-message/partial-pieces): Ditto.
1302
1303 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1304
1305         * elmo.el (elmo-message-fetch-string): Disable multibyte.
1306
1307         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
1308         (elmo-with-enable-multibyte): New macro.
1309
1310         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
1311
1312 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1313
1314         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
1315         argument `number'.
1316         (elmo-filter-connect-signals): Follow the above change.
1317
1318 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
1319
1320         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
1321
1322         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
1323         that only the first flag is used.
1324
1325 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1326
1327         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
1328         if available.
1329
1330 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1331
1332         * elmo-signal.el: New file.
1333
1334         * elmo.el (toplevel): Require elmo-signal.
1335         (flag-changing, flag-changed, cache-changed): New signal.
1336         (elmo-folder): Remove slog `handlers'.
1337         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1338         `elmo-folder-notify-event'.
1339         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1340         (elmo-folder-unset-flag): Ditto.
1341         (elmo-event-handler): Abolish.
1342         (elmo-event-handler-flag-changed): Ditto.
1343         (elmo-event-handler-cache-changed): Ditto.
1344         (elmo-folder-add-handler): Ditto.
1345         (elmo-folder-remove-handler): Ditto.
1346         (elmo-folder-notify-event): Ditto.
1347
1348         * elmo-pipe.el (toplevel): Require elmo-signal.
1349         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1350         (elmo-pipe-connect-signals): New function.
1351         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1352         (elmo-folder-set-flag): Ditto.
1353         (elmo-folder-unset-flag): Ditto.
1354         (elmo-message-set-cached): Ditto.
1355
1356         * elmo-multi.el (toplevel): Require elmo-signal.
1357         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1358         (elmo-multi-connect-signals): New function.
1359         (elmo-multi-map-numbers): Ditto.
1360         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1361         (elmo-message-fetch): Ditto.
1362         (elmo-folder-set-flag): Ditto.
1363         (elmo-folder-unset-flag): Ditto.
1364
1365         * elmo-filter.el (toplevel): Require elmo-signal.
1366         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1367         (elmo-filter-connect-signals): New function.
1368         (elmo-filter-add-flag-count): Ditto.
1369         (elmo-message-fetch): Does not call
1370         `elmo-filter-folder-countup-message-flags' and
1371         `elmo-folder-notify-event'.
1372         (elmo-message-set-cached): Ditto.
1373         (elmo-folder-set-flag): Ditto.
1374         (elmo-folder-unset-flag): Ditto.
1375
1376         * elmo-version.el (elmo-version): Up to 2.13.2.
1377
1378 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1379
1380         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1381         `flags'.
1382
1383 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1384
1385         * elmo-filter.el (elmo-message-set-cached): Call
1386         `elmo-folder-notify-event' with event `cache-changed'.
1387
1388         * elmo-multi.el (elmo-message-set-cached): Ditto.
1389
1390         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1391
1392 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1393
1394         * elmo.el (elmo-folder-encache): Abolish.
1395
1396 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1397
1398         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1399         (elmo-folder-next-message-number-dop): Return appropriate negative
1400         integer.
1401
1402 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1403
1404         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1405         clearing pending operations.
1406         (elmo-folder-next-message-number-dop): Return appropriate negative
1407         integer.
1408
1409 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1410
1411         * elmo.el (toplevel): Added autoload setting for `md5'.
1412         (elmo-msgdb-path-encode-threshold): New user option.
1413         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1414         longer than `elmo-msgdb-path-encode-threshold'.
1415
1416         * elmo-flag.el (elmo-global-mark-migrate): Use
1417         `elmo-folder-expand-msgdb-path' instead of
1418         `elmo-folder-msgdb-path'.
1419
1420 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1421
1422         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1423         element of the difference is nil.
1424
1425 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1426
1427         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1428         to the check logic of file systems which are weak in colon character.
1429
1430 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1431
1432         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1433
1434 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1435
1436         * elmo-maildir.el (elmo-maildir-move-file): New function.
1437         (elmo-folder-append-buffer): Use it.
1438         (elmo-folder-append-messages): Ditto.
1439         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1440
1441         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1442         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1443
1444         * elmo-maildir.el (elmo-maildir-separator): New user option.
1445         (elmo-maildir-adjust-separator): New macro.
1446         (elmo-maildir-list-location): Use it.
1447         (elmo-maildir-update-current): Ditto.
1448         (elmo-maildir-set-mark): Ditto.
1449         (elmo-maildir-delete-mark): Ditto.
1450         (These changes are based on Hiroya Murata's patch [wl: 13437])
1451
1452 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1453
1454         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1455
1456 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1457
1458         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1459         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1460         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1461
1462 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1463
1464         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1465         Use `with-temp-buffer'.
1466
1467 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1468
1469         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1470
1471         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1472         `wl-read-search-condition').
1473         (elmo-read-search-condition-internal): Likewise.
1474
1475         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1476         (elmo-flag-valid-p): New function.
1477         (elmo-folder-initialize): Check flag name is valid.
1478
1479 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1480
1481         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1482         delimiter to obtain root mailbox itself.
1483
1484 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1485
1486         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1487         type mismatch.
1488
1489 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1490
1491         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1492         as t.
1493
1494 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1495
1496         * elmo-shimbun.el (toplevel): Require cl at compile.
1497
1498         * elmo-nntp.el (toplevel): Ditto.
1499
1500         * elmo-nmz.el (toplevel): Ditto.
1501
1502         * elmo-multi.el (toplevel): Ditto.
1503
1504         * elmo-file.el (toplevel): Ditto.
1505
1506         * elmo-dop.el (toplevel): Ditto.
1507
1508         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1509
1510 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1511
1512         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1513         as nil.
1514
1515         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1516         size of elmo-message-fetch-internal is 0 byte.
1517
1518 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1519
1520         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1521
1522 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1523
1524         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1525         always plugged.
1526
1527 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1528
1529         * elmo-maildir.el (elmo-map-message-fetch): Call
1530         `elmo-map-folder-set-flag'.
1531
1532         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1533         (elmo-message-fetch): Merge from
1534         `elmo-message-fetch-with-cache-process'.
1535
1536         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1537         (elmo-message-fetch): Define.
1538
1539         * elmo-nntp.el (elmo-message-fetch): Renamed from
1540         `elmo-message-fetch-with-cache-process'.
1541
1542         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1543         (elmo-message-fetch): Define.
1544
1545         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1546         search-key.
1547
1548         * elmo-shimbun.el (shimbun-mua-search-id): Use
1549         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1550         (elmo-shimbun-folder-shimbun-header): Ditto.
1551         (elmo-shimbun-get-headers): Ditto.
1552         (elmo-shimbun-update-overview): Ditto.
1553
1554         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1555
1556         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1557         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1558
1559 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1560
1561         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1562         message is cached.
1563         (elmo-message-fetch-string): Fixed argument.
1564
1565 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1566
1567         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1568         exchange order of arguments `section' and `unread'.
1569         (elmo-message-encache): Follow the API change.
1570         (elmo-message-match-condition): Ditto.
1571         (elmo-generic-folder-append-messages): Ditto.
1572         (elmo-message-fetch-string): New function.
1573
1574         * elmo-split.el (elmo-split-subr): Ditto.
1575
1576         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1577
1578         * elmo-pipe.el (elmo-message-fetch): Ditto.
1579
1580         * elmo-multi.el (elmo-message-fetch): Ditto.
1581
1582         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1583
1584         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1585
1586         * elmo-filter.el (elmo-message-fetch): Ditto.
1587
1588         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1589
1590         * elmo-imap4.el (mime-imap-location-section-body): Use
1591         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1592         follow the API change.
1593
1594 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1595
1596         * elmo-access.el: New file.
1597
1598         * elmo-null.el: Ditto.
1599
1600         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1601
1602 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1603
1604         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1605         (elmo-network-session): New attribute `last-accessed'.
1606         (elmo-network-get-session): Discard network cache if elapsed time
1607         since last-accessed is larger than elmo-network-session-idle-timeout.
1608
1609 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1610
1611         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1612         and added `number', `require-entireness'.
1613         (elmo-find-fetch-strategy): Rewrite.
1614         (elmo-message-fetch): Unset `unread' flag when argument unread is
1615         non-nil.
1616
1617         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1618
1619         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1620         (elmo-message-fetch): Notify event `flag-changed'.
1621
1622         * elmo-pipe.el: Likewise.
1623
1624         * elmo-mime.el (elmo-mime-entity): New class.
1625         (elmo-mime-entity-display-p): New generic function.
1626         (elmo-mime-entity-display): Ditto.
1627         (elmo-mime-entity-display-as-is): Ditto.
1628         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1629         elmo-mime-entity.
1630         (elmo-make-mime-message-location): Removed.
1631         (elmo-mime-message-display): Ditto.
1632         (elmo-mime-display-as-is): Ditto.
1633         (elmo-message-mime-entity): New function.
1634
1635         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1636
1637         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1638         change.
1639         (elmo-message-fetch): Re-count flagged message number and notify
1640         event `flag-changed'.
1641
1642         * elmo-version.el (elmo-version): Up to 2.13.1.
1643
1644 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1645
1646         * elmo-filter.el (elmo-message-field): Define.
1647         (elmo-message-set-field): Ditto.
1648
1649 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1650
1651         * elmo.el (elmo-message-set-cached): Call
1652         `elmo-folder-notify-event' with cache-changed.
1653         (elmo-event-handler-cache-changed): New generic function.
1654
1655 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1656
1657         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1658         instead of elmo-add-name-to-file.
1659         (elmo-folder-append-messages): Ditto.
1660
1661 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1662
1663         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1664
1665 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1666
1667         * elmo-version.el (elmo-version): Up to 2.13.0.
1668
1669         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1670         `auto'.
1671
1672         * modb-standard.el (modb-standard-economize-entity-size): Changed
1673         default value to `t'.
1674
1675         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1676         `standard'.
1677
1678         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1679         after parsing greeting string.
1680
1681 2004-11-23  Daishi Kato <daishi@axlight.com>
1682
1683         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1684         New user option.
1685         (elmo-spam-spamoracle-call): Use it.
1686
1687 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1688
1689         * elmo.el (elmo-message-accessible-p): Message in dop spool
1690         is accessible.
1691
1692 2004-11-23  Daishi Kato <daishi@axlight.com>
1693
1694         * elsp-spamoracle.el: New file.
1695
1696 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1697
1698         * elmo.el (elmo-message-flags-for-append): New function.
1699         (elmo-generic-folder-append-messages): Use it.
1700
1701         * elmo-split.el (elmo-split-subr): Ditto.
1702
1703         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1704         `flags' and use elmo-folder-append-buffer instead of
1705         write-region-as-binary.
1706         (elmo-dop-filter-pending-messages): New function.
1707         (elmo-folder-append-buffer-dop): Call
1708         elmo-dop-spool-folder-append-buffer with `flag'.
1709         (elmo-folder-set-flag-dop): Filter messages by
1710         elmo-dop-filter-pending-messages.
1711         (elmo-folder-unset-flag-dop): Ditto.
1712         (elmo-folder-append-buffer-dop-delayed): Use
1713         elmo-message-flags-for-append to get flags of the message and
1714         simplify.
1715
1716 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1717
1718         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1719
1720 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1721
1722         * elmo.el (elmo-folder): Added handlers slot.
1723         (elmo-event-handler): New class.
1724         (elmo-event-handler-flag-changed): New API.
1725         (elmo-folder-add-handler): New function.
1726         (elmo-folder-remove-handler): Ditto.
1727         (elmo-folder-notify-event): Ditto.
1728         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1729         `flag-changed'.
1730         (elmo-folder-unset-flag): Ditto.
1731
1732         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1733         (elmo-folder-unset-flag): Ditto.
1734
1735         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1736         (elmo-folder-unset-flag): Ditto.
1737
1738         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1739         (elmo-folder-unset-flag): Ditto.
1740
1741         * elmo-version.el (elmo-version): Up to 2.11.33.
1742
1743 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1744
1745         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1746
1747 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1748
1749         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1750
1751         * elmo-flag.el (elmo-folder-unset-flag): Define.
1752         (elmo-global-flag-detach): Do process when the flag is not target
1753         flag.
1754
1755 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1756
1757         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1758         variable.
1759         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1760
1761 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1762
1763         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1764         function.
1765         (elmo-folder-delete-messages): Detach messages before delete
1766         messages from target folder.
1767         (elmo-folder-detach-messages): Set updated number-list to slot.
1768
1769 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1770
1771         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1772
1773 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1774
1775         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1776
1777 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1778
1779         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1780         internal use only).
1781         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1782         not modified.
1783         (elmo-folder-delete-messages): Define.
1784         (elmo-folder-move-messages): Don't call
1785         `elmo-folder-detach-messages'.
1786         (elmo-folder-synchronize): Rewrite.
1787         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1788
1789         * elmo-util.el (elmo-last): New function.
1790         (elmo-set-list): Ditto.
1791         (elmo-number-set-delete-list): Ditto.
1792         (elmo-number-set-delete): Ditto.
1793
1794         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1795
1796         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1797         `elmo-folder-delete-messages' and don't delete location map.
1798         (elmo-folder-detach-messages): Define.
1799
1800         * elmo-imap4.el (elmo-folder-delete): Use
1801         `elmo-folder-delete-messages-internal' instead of
1802         `elmo-folder-delete-messages'.
1803
1804         * elmo-filter.el (elmo-folder-delete-messages): Call
1805         `elmo-folder-detach-messages'.
1806         (elmo-folder-detach-messages): Don't call
1807         `elmo-folder-detach-messages' for target folder.
1808
1809         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1810         message deletion is succeeded.
1811
1812         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1813
1814         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1815         from `elmo-folder-delete-messages'.
1816
1817         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1818
1819         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1820
1821         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1822
1823         * elmo-version.el (elmo-version): Up to 2.11.32.
1824
1825 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1826
1827         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1828         (elmo-global-flag-list): Added obsolete variable setting.
1829
1830         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1831
1832         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1833         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1834         `elmo-mime-display-header-analysis' is nil.
1835
1836         * elmo-flag.el (elmo-global-flags): Renamed from
1837         `elmo-global-flag-list' (All other related portions are changed).
1838         (elmo-local-flags): New variable.
1839         (elmo-local-flag-p): New function.
1840         (elmo-global-flag-set-internal): Cause an error when flag is not
1841         global.
1842
1843 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1844
1845         * elmo-util.el (elmo-concat-path): Treat empty path.
1846
1847 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1848
1849         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1850         field-or-fields).
1851         (elmo-split-address-match): Ditto.
1852         (elmo-split-equal): Ditto.
1853         (elmo-split-match): Ditto.
1854
1855 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1856
1857         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1858         (elmo-generic-folder-append-messages): If src message exists but
1859         has no flag, pass (read) for the FLAG argument of
1860         `elmo-folder-append-buffer'. Otherwise, pass nil.
1861
1862         * elmo-split.el (elmo-split-subr): Likewise.
1863
1864         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1865
1866         * elmo-multi.el (elmo-message-flags): Ditto.
1867
1868         * elmo-filter.el (elmo-message-flags): Ditto.
1869
1870         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1871         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1872         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1873         
1874 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1875
1876         * elmo-split.el (elmo-split-rule): Update comment.
1877         (elmo-split-address-equal): Allow 2nd argument to be a list.
1878         (elmo-split-address-match): Ditto.
1879         (elmo-split-equal): Ditto.
1880         (elmo-split-match): Ditto.
1881
1882 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1883
1884         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1885         (elmo-folder-append-msgdb): Don't treat `read'.
1886         (elmo-message-flags): Don't return `read'.
1887
1888         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1889         (elmo-folder-unset-read-delayed): Ditto.
1890
1891         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1892
1893 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1894
1895         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1896         deletion.
1897
1898 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1899
1900         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1901         header.
1902
1903 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1904
1905         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1906         here.
1907         (elmo-msgdb-save): Bind inhibit-quit.
1908         (modb-standard-message-entity): Ditto.
1909
1910 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1911
1912         * elmo-database.el: No need to require elmo-msgdb.
1913
1914 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1915
1916         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1917         instead of `elmo-list-subdirectories'.
1918
1919 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1920
1921         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1922         group entry.
1923         (elmo-folder-exists-p): "[" is empty.
1924         (elmo-folder-list-subfolders): Define.
1925         (elmo-folder-have-subfolder-p): Ditto.
1926
1927 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1928
1929         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1930
1931 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1932
1933         * elmo-filter.el (elmo-folder-local-p): Define.
1934
1935 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1936
1937         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1938         when entity is garbaged.
1939         (modb-standard-save-entity-1): Don't modify the original entity.
1940
1941 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1942
1943         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1944
1945 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1946
1947         * elmo.el (elmo-strict-folder-diff): Use
1948         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1949
1950 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1951
1952         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1953         (elmo-msgdb-message-number): Ditto.
1954         (elmo-msgdb-message-field): Ditto.
1955
1956         * modb-standard.el (modb-standard-economize-entity-size): New user
1957         option.
1958         (modb-standard-loaded-message-id): New inline function.
1959         (modb-standard-load-entity): Use it.
1960         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1961         throw message-id string away.
1962         (elmo-msgdb-flag-available-p): Define.
1963         (elmo-msgdb-message-number): Ditto.
1964         (elmo-msgdb-message-field): Ditto.
1965
1966         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1967         (suppoted -> supported).
1968         (modb-legacy-supported-flag-p): Ditto.
1969         (elmo-msgdb-set-flag): Ditto.
1970         (elmo-msgdb-unset-flag): Ditto.
1971         (elmo-msgdb-flag-available-p): Define.
1972
1973         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1974         is `t', treat it as legacy entity.
1975         
1976         * elmo.el (elmo-message-flag-available-p): New generic function.
1977         (elmo-message-number): Ditto.
1978         (elmo-message-field): Use `elmo-msgdb-message-field'.
1979
1980         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1981
1982         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1983         (elmo-message-number): Ditto.
1984
1985         * elmo-multi.el (elmo-message-number): Define.
1986         (elmo-message-flag-available-p): Ditto.
1987
1988         * elmo-filter.el (elmo-message-flag-available-p): Define.
1989         (elmo-message-number): Ditto.
1990
1991         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1992         (elmo-folder-initialize): Load `max-number'.
1993         (elmo-folder-commit): Save it.
1994         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1995         (elmo-global-flag-set-internal): Set up max-number slot.
1996
1997 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1998
1999         * elmo-version.el (elmo-version): Up to 2.11.31.
2000
2001 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
2002
2003         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
2004         unibyte string of the current buffer for the argument of `md5'
2005         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
2006
2007 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2008
2009         * modb-legacy.el (modb-legacy-flag-list): New constant.
2010         (modb-legacy-suppoted-flag-p): New internal function.
2011         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
2012         (elmo-msgdb-unset-flag): Ditto.
2013
2014 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
2015
2016         * elmo.el (elmo-make-folder): Remove text properties for prefix.
2017
2018         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
2019         from msgdb.
2020
2021 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2022
2023         * elmo-multi.el (elmo-folder-count-flags): Changed return value
2024         (follow the API change).
2025
2026         * elmo-filter.el (elmo-folder-count-flags): Ditto.
2027
2028 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
2029
2030         * modb-standard.el (modb-standard-digest-flags): Abolish.
2031         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
2032
2033         * elmo-vars.el (elmo-digest-flags): New variable.
2034         (elmo-preserved-flags): Moved from elmo-flag.el.
2035
2036         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
2037         (elmo-imap4-flag-to-imap-criteria): Ditto.
2038         (elmo-imap4-folder-list-flagged): Use it.
2039
2040         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
2041
2042         * elmo.el (elmo-folder-count-flags): Changed return value.
2043
2044         * elmo-flag.el (elmo-preserved-flags): New variable.
2045         (elmo-get-global-flags): Use it.
2046
2047         * modb-standard.el (modb-standard-digest-flags): New variable.
2048         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
2049         Changed behavior of `any'.
2050
2051         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
2052         which are defined the Internet draft
2053         (draft-melnikov-imap-keywords-03.txt).
2054         (elmo-imap4-flags-to-imap): New function.
2055         (elmo-folder-append-buffer): Use it.
2056
2057         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
2058         in the docstring.
2059
2060         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
2061         avoid the bug of Emacs 21.3.
2062
2063 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
2064
2065         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
2066         function find-coding-system does not exist.
2067
2068 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2069
2070         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
2071         parsing.
2072
2073 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2074
2075         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
2076         response codes.
2077
2078 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2079
2080         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
2081         (elmo-network-close-session): Follow the changes in
2082         `elmo-pop3-read-response'.
2083         (elmo-pop3-auth-user): Ditto.
2084         (elmo-pop3-auth-apop): Ditto.
2085         (elmo-network-initialize-session): Ditto.
2086         (elmo-network-authenticate-session): Ditto.
2087         (elmo-network-setup-session): Ditto.
2088         (elmo-folder-status): Ditto.
2089         (elmo-message-fetch-plugged): Ditto.
2090         (elmo-pop3-delete-msg): Ditto.
2091
2092 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
2093
2094         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
2095         on failure.
2096
2097 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2098
2099         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
2100         style.
2101         (elmo-bind-directory): Ditto.
2102
2103 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2104
2105         * elmo.el (elmo-folder-append-messages): Note on return value.
2106         * elmo-archive.el (elmo-folder-append-messages): Don't return
2107         message numbers which could not be appended.
2108
2109 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2110
2111         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
2112
2113 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2114
2115         * elmo-version.el (elmo-version): Up to 2.11.30.
2116
2117 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2118
2119         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
2120         `mask'.
2121
2122         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
2123
2124         * elmo-multi.el (elmo-folder-synchronize): Likewise.
2125         (elmo-multi-split-numbers): Add elmo-folder object into each
2126         element of return value at first.
2127         (elmo-folder-delete-messages): Follow the above change.
2128         (elmo-folder-detach-messages): Ditto.
2129
2130         * elmo-filter.el (elmo-folder-synchronize): Minimize message
2131         number which is synchronized in target folder.
2132
2133 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2134
2135         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
2136         Change default value to symbol `all'.
2137         (elmo-map-message-fetch): Change condition to update overview
2138         follow the above.
2139
2140 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2141
2142         * elmo-shimbun.el (elmo-map-message-fetch): Change default
2143         behavior to update overview.
2144         (elmo-shimbun-update-overview-folder-list): Note it.
2145
2146 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2147
2148         * modb-standard.el (modb-standard-message-entity): Avoid infinite
2149         recursive call.
2150
2151 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2152
2153         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
2154         buffer-disable-undo, it is unnecessary.
2155         (elmo-spam-register-good-messages): Ditto.
2156
2157         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2158         Ditto.
2159
2160         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
2161
2162 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2163
2164         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
2165         (elmo-set-work-buf): Use set-buffer-multibyte instead of
2166         elmo-set-buffer-multibyte.
2167         (elmo-object-load): Ditto.
2168         (elmo-save-buffer): Ditto.
2169         (elmo-delete-char): Ditto.
2170         (elmo-file-field-primitive-condition-match): Ditto.
2171         (elmo-mime-string): Ditto.
2172
2173         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
2174         (elmo-archive-field-condition-match): Ditto.
2175
2176         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
2177
2178         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
2179
2180         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
2181         (elmo-nntp-msgdb-create-message): Ditto.
2182
2183         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2184
2185         * elmo.el (elmo-message-match-condition): Ditto.
2186         (elmo-message-match-condition): Ditto.
2187
2188         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2189         Ditto.
2190
2191         * elmo-version.el (elmo-version): Up to 2.11.29.
2192
2193         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
2194         (elsp-header): New backend.
2195
2196         * elmo-util.el (elmo-decoded-field-body): New function.
2197
2198 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2199
2200         * elmo-version.el (elmo-version): Up to 2.11.28.
2201
2202 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2203
2204         * elmo-filter.el: Rewrite.
2205
2206         * elmo-version.el (elmo-version): Up to 2.11.27.
2207
2208 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
2209
2210         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
2211         msgdb path for the localdir folder with absolute path.
2212
2213         * utf7.el: Synch up with latest gnus/utf7.el;
2214         Modified for latest Emacs.
2215
2216 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2217
2218         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
2219         shimbun backend couldn't open.
2220
2221 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
2222
2223         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
2224         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
2225         when a destination folder is a filter folder.
2226
2227 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2228
2229         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
2230         (elmo-generic-folder-append-messages): Call elmo-message-flags
2231         with argument `msgid'.
2232
2233         * elmo-split.el (elmo-split-subr): Ditto.
2234
2235         * elmo-pipe.el (elmo-message-flags): Follow the API change.
2236
2237         * elmo-multi.el (elmo-message-flags): Ditto.
2238
2239 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2240
2241         * elmo.el (elmo-folder): Add new slot `flag-table'.
2242         (elmo-folder-flag-table): New API.
2243         (elmo-folder-close-flag-table): Ditto.
2244         (elmo-folder-preserve-flags): New function.
2245         (elmo-generic-folder-append-messages): Use
2246         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
2247         Flag of a non-registered message, it sets to nil.
2248         Does not set flag to flag-table.
2249
2250         * elmo-maildir.el (elmo-folder-append-buffer): Use
2251         `elmo-folder-preserve-flags'.
2252         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2253         `elmo-folder-close-flag-table'.
2254
2255         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
2256         (elmo-archive-folder-append-buffer): Use
2257         `elmo-folder-preserve-flags'.
2258
2259         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
2260
2261         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
2262
2263         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2264         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2265         `elmo-folder-close-flag-table'.
2266
2267         * elmo-version.el (elmo-version): Up to 2.11.26.
2268
2269 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2270
2271         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
2272
2273         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
2274         md5's 4th and 5th argument (non-existent in flim one).
2275
2276 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2277
2278         * elmo-split.el (elmo-split-subr): Flag of a non-registered
2279         message, It sets to nil.
2280
2281 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2282
2283         * elmo.el (elmo-folder-list-messages): Merge lists only if both
2284         list is non-nil.
2285
2286 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
2287
2288         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
2289
2290         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
2291
2292         * elmo-util.el (elmo-uniq-sorted-list): New function.
2293         (elmo-make-number-list): Ditto.
2294         (elmo-number-set-to-number-list): Use elmo-make-number-list
2295         and don't use nreverse.
2296
2297 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2298
2299         * elmo-version.el (elmo-version): Up to 2.11.25.
2300
2301 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2302
2303         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
2304         field not exists in message, Use md5 message digest of header.
2305
2306 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2307
2308         * elmo.el (elmo-folder-append-buffer): Add note on return value.
2309         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
2310         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2311         * elmo-split.el (elmo-split-subr): Check return value of
2312         elmo-folder-append-buffer.
2313
2314         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
2315         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2316
2317         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
2318         message-id.
2319
2320 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
2321
2322         * elmo-split.el (elmo-split-subr): Append message with flag.
2323
2324         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
2325         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
2326         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2327
2328 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
2329
2330         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
2331         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
2332         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2333
2334 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
2335
2336         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2337         with a function call of `process-buffer'.  All callers are updated.
2338         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2339         Remove redundant `set-buffer' in a while loop.
2340
2341 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2342
2343         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2344         calls.
2345
2346 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2347
2348         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2349         elsp-spamfilter-register-buffer-internal with current buffer.
2350         (elmo-spam-register-spam-buffer): Ditto.
2351         (elmo-spam-register-good-buffer): Ditto.
2352
2353 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2354
2355         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2356         if it is not contained in the response(A workaround for courier-imap).
2357
2358 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2359
2360         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2361         parenthesis.
2362
2363 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2364
2365         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2366         range.
2367
2368 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2369
2370         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2371         of nconc.
2372
2373         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2374         argument handler.
2375         (elmo-msgdb-message-match-condition): Follow the change above.
2376
2377 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2378
2379         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2380         folder name.
2381
2382 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2383
2384         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2385
2386 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2387
2388         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2389
2390 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2391
2392         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2393         not found.
2394
2395 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2396
2397         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2398         value.
2399         (elmo-file-command-argument): Undo last change for cygwin.
2400         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2401         Don't return nil.
2402         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2403
2404 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2405
2406         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2407         value returned from elmo-file-find is nil.
2408
2409 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2410
2411         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2412         to elmo-vars.el.
2413
2414         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2415         instead of insert-file-contents-as-binary.
2416         (elmo-message-set-field): New generic function.
2417
2418         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2419         behavior change on `split-string'.
2420
2421         * elmo-file.el (elmo-file-find): New function.
2422         (elmo-file-command): New user option.
2423         (elmo-file-command-argument): Ditto.
2424         (elmo-file-fetch-max-size): Ditto.
2425         (elmo-file-detect-format): New function.
2426         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2427         Use elmo-file-detect-format.
2428         (elmo-map-folder-list-message-locations): Don't treat directories.
2429
2430 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2431
2432         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2433         (elmo-passwd-alist-clear): Shred password before clear.
2434         (elmo-remove-passwd): Remove all mached pair.
2435
2436 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2437
2438         * elmo.el (elmo-folder-synchronize): Fix description of the return
2439         value.
2440
2441 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2442
2443         * elmo.el (elmo-message-fetch-bodystructure): New method.
2444         (elmo-message-fetch-bodystructure): Define default.
2445
2446         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2447         elmo-message-fetch-bodystructure.
2448         (elmo-message-fetch-bodystructure): Define.
2449
2450         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2451
2452 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2453
2454         * elmo-filter.el (elmo-message-folder): Define.
2455
2456 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2457
2458         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2459         elmo-delete-cr-buffer.
2460
2461         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2462
2463         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2464
2465         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2466
2467         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2468         type seems to be a text.
2469
2470 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2471
2472         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2473         (elmo-spam-register-good-buffer): Ditto.
2474         (elmo-spam-spamassassin-register-messages): Ditto.
2475
2476         * elmo-util.el (elmo-string-member-ignore-case): Define with
2477         static-cond.
2478
2479 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2480
2481         * elmo.el (elmo-folder-type): Undo last change.
2482
2483         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2484
2485         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2486         warnings.
2487
2488         * elmo-file.el: New file.
2489         
2490         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2491
2492         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2493         variable.
2494         (elmo-spam-spamassassin-register-messages): New inline function.
2495         (elmo-spam-register-spam-messages): Define.
2496         (elmo-spam-register-good-messages): Ditto.
2497
2498         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2499         Fixed typo.
2500
2501         * elmo.el (toplevel): Added autoload setting for
2502         `elmo-get-global-flags'.
2503         (elmo-message-has-global-flag-p): New function.
2504         (elmo-message-set-global-flags): Ditto.
2505         (elmo-folder-type): Improvement for name: format.
2506
2507         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2508         availability of keyword flags.
2509         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2510         (elmo-folder-list-flagged-plugged): Renamed from
2511         elmo-folder-list-flagged-unplugged.
2512         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2513         accept any flag as keyword flag.
2514         (elmo-folder-set-flag-plugged): Accept keyword flags.
2515         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2516
2517         * elmo-flag.el (elmo-get-global-flags): New function.
2518
2519         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2520         folders.
2521
2522         * elmo-version.el (elmo-version): Up to 2.11.24.
2523
2524 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2525
2526         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2527         elmo-multiple-field-body instead of std11-field-body to check all
2528         headers.
2529
2530 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2531
2532         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2533         or "size".
2534
2535 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2536
2537         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2538         unintern is unbound.
2539
2540 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2541
2542         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2543         Protect from infinite loop.
2544
2545 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2546
2547         * elsp-bogofilter.el
2548         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2549         (elmo-spam-bogofilter-register-messages): New internal function.
2550         (elmo-spam-register-spam-messages): Define.
2551         (elmo-spam-register-good-messages): Ditto.
2552
2553 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2554
2555         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2556         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2557         (elmo-spam-bogofilter-call): Fixed the last change.
2558         (elmo-spam-bogofilter-arguments): Ditto.
2559
2560         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2561         Follow the options change of latest bogofilter.
2562
2563         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2564         (elmo-spam-bogofilter-good-switch): Ditto.
2565         (elmo-spam-bogofilter-arguments-alist): New user option.
2566         (elmo-spam-bogofilter-debug): Ditto.
2567         (elmo-spam-bogofilter-call): Renamed from
2568         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2569         is non-nil, insert output in buffer for debug.
2570         (elmo-spam-bogofilter-arguments): New macro.
2571         (elmo-spam-buffer-spam-p): Use it.
2572         (elsp-bogofilter-register-buffer): Ditto.
2573
2574 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2575
2576         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2577         regexp.
2578
2579 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2580
2581         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2582         value as "ruby".
2583         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2584         (elmo-spam-bsfilter-program): Set default value as full path for
2585         `bsfilter'.
2586         (elmo-spam-bsfilter-debug): New user option.
2587         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2588         non-nil, insert output in buffer for debug. Fix treating of
2589         argument.
2590
2591 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2592
2593         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2594         `elmo-maildir-flag-specs' element instead of one.
2595         (elmo-map-folder-unset-flag): Ditto.
2596         (Reported by Ken Makimura <macky@astem.or.jp>)
2597
2598         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2599         (elmo-folder-unset-flag-plugged): Ditto.
2600
2601 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2602
2603         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2604         to `reads' slot only if `in-msgdb' is nil.
2605
2606 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2607
2608         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2609         and complement argument list.
2610
2611 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2612
2613         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2614         instead of elmo-folder-list-flagged.
2615
2616 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2617
2618         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2619
2620         * elsp-bsfilter.el: New file.
2621
2622         * elmo-pipe.el (elmo-folder-list-unreads,
2623         elmo-folder-list-answereds,
2624         elmo-folder-list-importants,
2625         elmo-folder-flag-as-important,
2626         elmo-folder-unflag-important,
2627         elmo-folder-flag-as-read,
2628         elmo-folder-unflag-read,
2629         elmo-folder-flag-as-answered,
2630         elmo-folder-unflag-answered): Remove.
2631         (elmo-folder-set-flag): Define.
2632         (elmo-folder-unset-flag): Ditto.
2633
2634         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2635         (elmo-folder-set-flag): Define.
2636         (elmo-folder-unset-flag): Ditto.
2637         (elmo-folder-list-unreads): Remove.
2638         (elmo-folder-list-flagged): Define.
2639
2640         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2641         (elmo-folder-list-unreads,
2642         elmo-folder-list-importants,
2643         elmo-folder-list-answereds,
2644         elmo-folder-list-unreads-plugged,
2645         elmo-folder-list-importants-plugged,
2646         elmo-folder-list-answereds-plugged): Remove.
2647         (elmo-folder-list-flagged-plugged): New method.
2648         (elmo-folder-unflag-important,
2649         elmo-folder-flag-as-important,
2650         elmo-folder-unflag-read,
2651         elmo-folder-flag-as-read,
2652         elmo-folder-unflag-answered,
2653         elmo-folder-flag-as-answered,
2654         elmo-folder-flag-as-read-unplugged,
2655         elmo-folder-unflag-read-unplugged,
2656         elmo-folder-flag-as-important-unplugged,
2657         elmo-folder-unflag-important-unplugged,
2658         elmo-folder-flag-as-answered-unplugged,
2659         elmo-folder-unflag-answered-unplugged): Remove.
2660         (elmo-folder-set-flag): Define.
2661         (elmo-folder-unset-flag): Ditto.
2662         (elmo-folder-set-flag-unplugged): Ditto.
2663         (elmo-folder-unset-flag-unplugged): Ditto.
2664
2665         * elmo-multi.el (elmo-folder-list-unreads,
2666         elmo-folder-list-answereds,
2667         elmo-folder-list-importants,
2668         elmo-folder-flag-as-important,
2669         elmo-folder-unflag-important,
2670         elmo-folder-flag-as-read,
2671         elmo-folder-unflag-read,
2672         elmo-folder-flag-as-answered,
2673         elmo-folder-unflag-answered): Remove.
2674         (elmo-folder-set-flag): Define.
2675         (elmo-folder-unset-flag): Ditto.
2676
2677         * elmo-map.el (elmo-map-folder-unflag-important,
2678         elmo-map-folder-flag-as-important,
2679         elmo-map-folder-unflag-read,
2680         elmo-map-folder-flag-as-read,
2681         elmo-map-folder-unflag-answered,
2682         elmo-map-folder-flag-as-answered): Remove.
2683         (elmo-map-folder-set-flag): New method.
2684         (elmo-map-folder-unset-flag): Ditto.
2685         (elmo-map-folder-list-unreads,
2686         elmo-map-folder-list-importants,
2687         elmo-map-folder-list-answereds): Remove.
2688         (elmo-folder-list-flagged-internal): Define.
2689         (elmo-map-folder-list-flagged): New method.
2690
2691         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2692         (elmo-map-folder-list-unreads,
2693         elmo-map-folder-list-importants,
2694         elmo-map-folder-list-flagged): Remove.
2695         (elmo-map-folder-list-flagged): Define.
2696         (elmo-map-folder-flag-as-important,
2697         elmo-map-folder-unflag-important,
2698         elmo-map-folder-flag-as-read,
2699         elmo-map-folder-unflag-read,
2700         elmo-map-folder-flag-as-answered,
2701         elmo-map-folder-unflag-answered): Remove.
2702         (elmo-maildir-set-mark-messages): New internal function.
2703         (elmo-map-folder-set-flag): Define.
2704         (elmo-map-folder-unset-flag): Ditto.
2705
2706         * elmo.el (toplevel): Added autoload setting for
2707         `elmo-folder-list-global-flag-messages'.
2708         (elmo-folder-list-unreads,
2709         elmo-folder-list-importants,
2710         elmo-folder-list-answereds): Remove.
2711         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2712         Return a list whitch merged with messages have global flag.
2713         (elmo-folder-list-flagged-internal): New method.
2714         (elmo-folder-unflag-important,
2715         elmo-folder-flag-as-important,
2716         elmo-folder-unflag-read,
2717         elmo-folder-flag-as-read,
2718         elmo-folder-unflag-answered,
2719         elmo-folder-flag-as-answered): Remove.
2720         (elmo-folder-set-flag): New method.
2721         (elmo-folder-unset-flag): Ditto.
2722         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2723         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2724
2725         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2726         (elmo-folder-list-unreads-plugged,
2727         elmo-folder-list-importants-plugged,
2728         elmo-folder-list-answereds-plugged,
2729         elmo-folder-list-flagged-unplugged,
2730         elmo-folder-unflag-important-plugged,
2731         elmo-folder-flag-as-important-plugged,
2732         elmo-folder-unflag-read-plugged,
2733         elmo-folder-flag-as-read-plugged,
2734         elmo-folder-unflag-answered-plugged,
2735         elmo-folder-flag-as-answered-plugged): Remove.
2736         (elmo-folder-set-flag-plugged,
2737         elmo-folder-unset-flag-plugged): Define.
2738
2739         * elmo-flag.el (elmo-folder-initialize): Register to
2740         `elmo-global-flag-list' if flag is not global.
2741         (elmo-folder-append-messages): Set flag to source messages.
2742
2743         * elmo-filter.el (elmo-filter-folder-list-unreads,
2744         elmo-folder-list-unreads,
2745         elmo-filter-folder-list-importants,
2746         elmo-folder-list-importants,
2747         elmo-folder-flag-as-read,
2748         elmo-folder-unflag-read,
2749         elmo-folder-flag-as-important,
2750         elmo-folder-unflag-important,
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-dop.el (elmo-folder-flag-as-read-dop,
2757         elmo-folder-unflag-read-dop,
2758         elmo-folder-flag-as-important-dop,
2759         elmo-folder-unflag-important-dop,
2760         elmo-folder-flag-as-answered-dop,
2761         elmo-folder-unflag-answered-dop): Remove.
2762         (elmo-folder-set-flag-dop,
2763         elmo-folder-unset-flag-dop,
2764         elmo-folder-set-important-delayed,
2765         elmo-folder-unset-important-delayed,
2766         elmo-folder-set-read-delayed,
2767         elmo-folder-unset-read-delayed,
2768         elmo-folder-set-answered-delayed,
2769         elmo-folder-unset-answered-delayed): New function.
2770         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2771         (elmo-dop-queue-method-name-alist): Ditto.
2772
2773         * elmo-version.el (elmo-version): Up to 2.11.23.
2774
2775 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2776
2777         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2778
2779         * elsp-sa.el: New file.
2780
2781 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2782
2783         * modb-standard.el (modb-standard-message-entity): New function.
2784         (elmo-msgdb-message-entity): Use it.
2785
2786 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2787
2788         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2789         behavior when one-level is nil.
2790
2791         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2792
2793         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2794
2795 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2796
2797         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2798         get max number.
2799         (elmo-generic-folder-diff): Ditto.
2800
2801         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2802         (elmo-folder-update-number): Ditto.
2803
2804         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2805         (elmo-folder-next-message-number-dop): Ditto.
2806
2807 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2808
2809         * elmo-filter.el (elmo-folder-msgdb-create): Use
2810         `elmo-message-entity' and `elmo-message-flags' instead of
2811         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2812
2813 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2814
2815         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2816         `if-exists'.
2817
2818 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2819
2820         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2821
2822         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2823
2824         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2825
2826 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2827
2828         * elmo-version.el (elmo-version): Up to 2.11.22.
2829
2830 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2831
2832         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2833
2834 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2835
2836         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2837         if the message dose not exist.
2838
2839 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2840
2841         * elmo-version.el (elmo-version): Up to 2.11.21.
2842
2843 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2844
2845         * modb-standard.el (toplevel): Don't require mime.
2846
2847 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2848
2849         * elsp-bogofilter.el (toplevel): Don't require path-util.
2850         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2851         (elmo-spam-bogofilter-header): Abolish.
2852         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2853         (elmo-spam-bogofilter-args): New user option.
2854         (elsp-bogofilter-call-bogofilter): New internal function.
2855         (elmo-spam-buffer-spam-p): Use it.
2856         (elsp-bogofilter-register-buffer): Renamed from
2857         `elmo-spam-bogofilter-register-buffer';
2858         Use `elsp-bogofilter-call-bogofilter'.
2859         (elmo-spam-register-spam-buffer): Follow the change above.
2860         (elmo-spam-register-good-buffer): Ditto.
2861
2862 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2863
2864         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2865         message-id is nil do nothing.
2866
2867 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2868
2869         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2870         Revival.
2871         (elmo-imap4-session): Removed use-flag slot.
2872         (elmo-imap4-session-select-mailbox): Undo last change.
2873         (elmo-folder-use-flag-p): Use
2874         elmo-imap4-disuse-server-flag-mailbox-regexp.
2875
2876 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2877
2878         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2879         (elmo-imap4-session-select-mailbox): Set it up.
2880         (elmo-folder-use-flag-p): Return value of use-flag slot.
2881
2882 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2883
2884         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2885         message-id is nil.
2886         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2887
2888         * modb-entity.el (elmo-message-entity-handler): Likewise.
2889
2890 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2891
2892         * elmo.el (toplevel): Remove setting of autoloding for
2893         elmo-global-flag-initialize.
2894         (elmo-init): Don't call elmo-global-flag-initialize.
2895         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2896
2897         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2898         (elmo-global-mark-migrate): Don't call it.
2899         (elmo-global-mark-upgrade): Ditto.
2900
2901 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2902
2903         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2904         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2905
2906         * elmo-vars.el (elmo-init-hook): New user option.
2907
2908         * elmo.el (elmo-init): Run the elmo-init-hook.
2909
2910         * elmo-flag.el (elmo-global-mark-migrate): New function.
2911
2912 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2913
2914         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2915         Undo last change (move to elmo-msgdb-unset-flag).
2916         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2917         flag is unset.
2918
2919 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2920
2921         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2922         read flag is set.
2923         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2924         (elmo-msgdb-unset-flag): Ditto.
2925
2926 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2927
2928         * elmo-split.el (elmo-split): Return split message count.
2929
2930 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2931
2932         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2933         is nil.
2934
2935 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2936
2937         * elmo.el (elmo-folder-unflag-important): Call
2938         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2939         a symbol `always'.
2940
2941         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2942         before unset flag.
2943         (elmo-global-flag-detach): Delete the message from flag folder, if
2944         `delete-if-none' is a symbol `always'.
2945
2946 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2947
2948         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2949         `elmo-spam-spamfilter-decode-buffer'.
2950         (elsp-spamfilter-register-buffer-internal): New internal function.
2951         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2952         (elmo-spam-register-spam-buffer): Ditto.
2953         (elmo-spam-register-good-buffer): Ditto.
2954
2955         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2956         change.
2957         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2958         (elmo-spam-register-spam-buffer): Follow the API change.
2959         (elmo-spam-register-good-buffer): Ditto.
2960
2961         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2962         (elmo-split-spam-p): Added argument plist; Call
2963         `elmo-spam-buffer-spam-p' with new argument register.
2964
2965         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2966         `register'.
2967         (elmo-spam-message-spam-p): Ditto.
2968         (elmo-spam-register-spam-buffer): Added optional argument
2969         `restore'.
2970         (elmo-spam-register-good-buffer): Ditto.
2971         (elmo-spam-register-spam-messages): Ditto.
2972         (elmo-spam-register-good-messages): Ditto.
2973
2974 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2975
2976         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2977         register into good corpus.
2978         (elmo-spam-register-good-buffer): Fixed to register into bad
2979         corpus.
2980
2981 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2982
2983         * elmo-version.el (elmo-version): Up to 2.11.20.
2984
2985         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2986         change.
2987
2988         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2989         flag without depending on \Recent flag.
2990
2991 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2992
2993         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2994         (elmo-spam-modified-p): Defined.
2995         (elmo-spam-save-status): Set `modified' slot to nil.
2996         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2997         (elmo-spam-register-good-buffer): Ditto.
2998
2999         * elmo-spam.el (elmo-spam-modified-p): New API.
3000
3001 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3002
3003         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
3004         duplicate definition.
3005
3006         * elmo-util.el (elmo-unfold-field-body): New function.
3007         (elmo-msgdb-get-message-id-from-buffer): Use it.
3008
3009         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3010         Fixed the last change; Use elmo-unfold-field-body.
3011
3012 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3013
3014         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3015         Unfold date value.
3016
3017 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3018
3019         * elmo-spam.el (elmo-spam-save-status): New API.
3020
3021         * elsp-spamfilter.el: New file.
3022
3023 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3024
3025         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
3026
3027 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3028
3029         * elmo-split.el (elmo-split-spam-p): New function.
3030
3031         * elmo-spam.el: New file.
3032
3033         * elsp-bogofilter.el: Ditto.
3034
3035 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
3036
3037         * elmo.el (elmo-folder-next-message-number): New API.
3038         (elmo-folder-next-message-number): Define.
3039         (elmo-message-field): Don't check folder length.
3040
3041         * elmo-net.el (elmo-folder-next-message-number): Define.
3042         (elmo-folder-next-message-number-unplugged): Define.
3043
3044         * elmo-map.el (elmo-folder-next-message-number): Define.
3045         (elmo-folder-delete-messages): Clear hash value.
3046
3047         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
3048
3049         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
3050         (elmo-folder-delete-messages-dop-delayed): Always return t.
3051
3052         * elmo-version.el (elmo-version): Up to 2.11.19.
3053
3054 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3055
3056         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
3057         change.
3058
3059         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
3060         identical cons cell into the mark-alist and the hash table.
3061
3062 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
3063
3064         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
3065         elmo-folder-list-messages with argument `visible-only' as t.
3066
3067         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
3068         (elmo-folder-msgdb-create): Check the target folder.
3069
3070 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
3071
3072         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
3073         `permanentflag' instead of `flags'.
3074         (elmo-folder-open): Ditto.
3075         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
3076         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
3077         (elmo-folder-use-flag-p): Always return t.
3078         (elmo-imap4-session-select-mailbox): Use value of `flags' if
3079         `permanentflags' does not exist.
3080         (elmo-folder-open): Ditto.
3081
3082 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
3083
3084         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
3085         is nil.
3086         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
3087
3088         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
3089         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
3090         response.
3091         (elmo-folder-open): Ditto.
3092         (elmo-imap4-set-flag): Send store flag command only when the `flags'
3093         slot of the session includes the flag.
3094         (elmo-imap4-session-flag-available-p): New function.
3095         (elmo-imap4-folder-list-flagged): Ditto.
3096         (elmo-folder-list-unreads-plugged): Use it.
3097         (elmo-folder-list-importants-plugged): Ditto.
3098         (elmo-folder-list-answereds-plugged): Ditto.
3099         (elmo-imap4-search-internal-primitive): Ditto.
3100         (elmo-imap4-folder-list-any-plugged,
3101         elmo-imap4-folder-list-digest-plugged): Abolish.
3102
3103         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
3104         if numbers is nil.
3105
3106 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3107
3108         * elmo-util.el (toplevel): Require emu for char-list-to-string.
3109
3110 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
3111
3112         * elmo-util.el (elmo-get-hash-val): Simplify.
3113         (elmo-set-hash-val): Rewrite.
3114
3115 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3116
3117         * elmo.el (elmo-folder-list-messages): Append killed messages into
3118         result if `visible-only' is nil and `in-msgdb' is non-nil.
3119
3120         * elmo-util.el (elmo-uniq-list): Added optional argument
3121         `delete-function'.
3122
3123         * modb.el (elmo-msgdb-flag-count): New API.
3124
3125         * modb-standard.el (modb-standard): Added slot flag-count.
3126         (modb-standard-countup-flags): New function.
3127         (modb-standard-load-flag): Call it.
3128         (elmo-msgdb-append): Ditto.
3129         (elmo-msgdb-clear): Clear slot flag-count.
3130         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
3131         (elmo-msgdb-unset-flag): Treat `all' flag and call
3132         modb-standard-countup-flags.
3133         (elmo-msgdb-flag-count): Define.
3134         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
3135         (elmo-msgdb-delete-messages): Ditto.
3136
3137         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
3138         (elmo-msgdb-flag-count): Define.
3139
3140         * elmo.el (elmo-folder-list-messages): Undo last change.
3141         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
3142         (elmo-folder-kill-messages): Unset all flags to numbers.
3143
3144         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
3145         elmo-folder-kill-messages.
3146
3147         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
3148         (elmo-nntp-folder-delete-messages): Abolish.
3149
3150         * elmo-version.el (elmo-version): Up to 2.11.18.
3151
3152 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3153
3154         * elmo.el (elmo-folder-kill-messages-before): Abolish.
3155         (elmo-folder-kill-messages-range): New function.
3156         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
3157         instead of elmo-folder-kill-messages-before.
3158
3159 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
3160
3161         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
3162         elmo-imap4-current-msgdb to decide entity handler.
3163
3164 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3165
3166         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
3167
3168         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
3169         inline function.
3170         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
3171         (elmo-msgdb-overview-entity-set-number,
3172         elmo-msgdb-overview-entity-get-references,
3173         elmo-msgdb-overview-entity-set-references,
3174         elmo-msgdb-overview-entity-get-from-no-decode,
3175         elmo-msgdb-overview-entity-get-from,
3176         elmo-msgdb-overview-entity-set-from,
3177         elmo-msgdb-overview-entity-get-subject,
3178         elmo-msgdb-overview-entity-get-subject-no-decode,
3179         elmo-msgdb-overview-entity-set-subject,
3180         elmo-msgdb-overview-entity-get-date,
3181         elmo-msgdb-overview-entity-set-date,
3182         elmo-msgdb-overview-entity-get-to,
3183         elmo-msgdb-overview-entity-get-cc,
3184         elmo-msgdb-overview-entity-get-size,
3185         elmo-msgdb-overview-entity-set-size,
3186         elmo-msgdb-overview-entity-get-extra,
3187         elmo-msgdb-overview-entity-set-extra,
3188         elmo-msgdb-overview-entity-get-extra-field,
3189         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
3190         (elmo-msgdb-make-index): Use
3191         `elmo-msgdb-overview-entity-get-number-internal'.
3192         (elmo-msgdb-clear-index): Ditto.
3193         (elmo-msgdb-append-entity): Ditto;
3194         Use `elmo-msgdb-overview-entity-get-id-internal'.
3195
3196         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
3197         elmo-msgdb-overview-entity-set-number,
3198         elmo-msgdb-overview-entity-get-references,
3199         elmo-msgdb-overview-entity-set-references,
3200         elmo-msgdb-overview-entity-get-from-no-decode,
3201         elmo-msgdb-overview-entity-get-from,
3202         elmo-msgdb-overview-entity-set-from,
3203         elmo-msgdb-overview-entity-get-subject,
3204         elmo-msgdb-overview-entity-get-subject-no-decode,
3205         elmo-msgdb-overview-entity-set-subject,
3206         elmo-msgdb-overview-entity-get-date,
3207         elmo-msgdb-overview-entity-set-date,
3208         elmo-msgdb-overview-entity-get-to,
3209         elmo-msgdb-overview-entity-get-cc,
3210         elmo-msgdb-overview-entity-get-size,
3211         elmo-msgdb-overview-entity-set-size,
3212         elmo-msgdb-overview-entity-get-extra,
3213         elmo-msgdb-overview-entity-set-extra,
3214         elmo-msgdb-overview-entity-get-extra-field,
3215         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
3216         and rewrote for backward compatibility.
3217
3218 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3219
3220         * elmo.el (elmo-message-entity-number,
3221         elmo-message-entity-set-number,
3222         elmo-message-entity-field,
3223         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
3224
3225         * elmo-msgdb.el (elmo-message-entity-number,
3226         elmo-message-entity-set-number,
3227         elmo-message-entity-field,
3228         elmo-message-entity-set-field): Moved from elmo.el.
3229
3230 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3231
3232         * elmo.el (toplevel): Changed definition orders.
3233
3234 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3235
3236         * modb.el (elmo-msgdb-search): New API .
3237         (elmo-msgdb-match-condition): Ditto.
3238
3239         * modb-standard.el (elmo-msgdb-search): Define.
3240
3241         * modb-legacy.el (elmo-msgdb-search): Ditto.
3242
3243         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
3244         from elmo-msgdb-match-condition-internal.
3245
3246         * elmo.el (elmo-folder-search-fast): Abolish.
3247         (elmo-folder-search): Use elmo-msgdb-search and
3248         elmo-with-progress-display.
3249
3250         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
3251         as msgdb API.
3252
3253         * elmo.el (elmo-folder): Remove slot message-modified and
3254         flag-modified.
3255         (elmo-folder-set-message-modified): Abolish.
3256         (elmo-generic-folder-commit): Follow the change above.
3257         (elmo-folder-synchronize): Ditto.
3258
3259         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
3260
3261         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3262
3263         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
3264
3265 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3266
3267         * modb-standard.el (modb-standard-make-message-entity,
3268         elmo-msgdb-make-message-entity,
3269         elmo-msgdb-create-message-entity-from-buffer,
3270         elmo-msgdb-message-entity-number,
3271         elmo-msgdb-message-entity-set-number,
3272         elmo-msgdb-message-entity-field,
3273         elmo-msgdb-message-entity-set-field,
3274         elmo-msgdb-copy-message-entity,
3275         elmo-msgdb-match-condition-internal): Remove.
3276
3277         * modb-entity.el: New file (again).
3278
3279         * modb.el (toplevel): Require modb-entity.
3280         (elmo-msgdb-message-entity-handler): New method.
3281
3282         * modb-standard.el (modb-standard-entity-id): Use
3283         elmo-message-entity-handler.
3284         (modb-standard-load-entity): Ditto.
3285         (elmo-msgdb-append-entity): Ditto.
3286         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3287
3288         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
3289         elmo-msgdb-decoded-cache-hashtb,
3290         (modb-legacy-make-message-entity,
3291         elmo-msgdb-make-message-entity,
3292         elmo-msgdb-create-message-entity-from-buffer,
3293         elmo-msgdb-message-entity-number,
3294         elmo-msgdb-message-entity-set-number,
3295         elmo-msgdb-message-entity-field,
3296         elmo-msgdb-message-entity-set-field,
3297         elmo-msgdb-copy-message-entity,
3298         elmo-msgdb-match-condition-internal,
3299         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
3300
3301         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
3302         (elmo-message-entity-set-number): Ditto.
3303         (elmo-message-entity-field): Ditto.
3304         (elmo-message-entity-set-field): Ditto.
3305
3306         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
3307
3308         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3309
3310         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3311
3312         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3313         (elmo-nntp-msgdb-create-message): Ditto.
3314
3315         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
3316         (elmo-folder-msgdb-create): Add unread flag.
3317
3318         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3319
3320         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
3321
3322         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
3323
3324         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3325
3326         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
3327         elmo-msgdb-messge-entity-handler.
3328         * elmo-version.el (elmo-version): Up to 2.11.17.
3329
3330 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3331
3332         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
3333         change.
3334
3335 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3336
3337         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3338
3339         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3340         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3341         (elmo-msgdb-flag-table): Ditto.
3342         (elmo-msgdb-sort-by-date): Ditto.
3343
3344         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3345
3346         * modb-standard.el (toplevel): Require mime.
3347         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3348         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3349         elmo-msgdb-message-entity-number.
3350         (elmo-msgdb-append-entity): Ditto.
3351         (elmo-msgdb-create-message-entity-from-file): Remove.
3352         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3353         corresponds to the entity.
3354         (elmo-msgdb-message-entity-number): Do nothing currently.
3355         (elmo-msgdb-message-entity-field): Ditto.
3356         (elmo-msgdb-message-entity-set-field): Ditto.
3357         (elmo-msgdb-copy-message-entity): Ditto.
3358         (elmo-msgdb-match-condition-internal): Ditto.
3359
3360         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3361         elmo-util.el.
3362         (elmo-msgdb-create-message-entity-from-file): Remove.
3363
3364         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3365         modb-legacy.el.
3366         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3367
3368         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3369
3370 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3371
3372         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3373         (elmo-msgdb-message-entity-field): Ditto.
3374         (elmo-msgdb-message-entity-number): Ditto.
3375
3376 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3377
3378         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3379         Fixed how to set extra field into entity.
3380         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3381         symbol.
3382
3383         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3384         Fixed how to set extra field into entity.
3385         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3386         symbol.
3387
3388 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3389
3390         * modb.el (elmo-message-entity-db): New function.
3391         (elmo-msgdb-make-message-entity): New API.
3392         (elmo-msgdb-message-entity-number): Ditto.
3393         (elmo-msgdb-message-entity-set-number): Ditto.
3394         (elmo-msgdb-message-entity-field): Ditto.
3395         (elmo-msgdb-message-entity-set-field): Ditto.
3396         (elmo-msgdb-copy-message-entity): Ditto.
3397         (elmo-msgdb-create-message-entity-from-file): Ditto.
3398         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3399         (elmo-msgdb-match-condition-internal): Ditto.
3400
3401         * modb-standard.el (modb-legacy): Require modb-legacy.
3402         (modb-standard-make-message-entity): New inline function.
3403         (elmo-msgdb-make-message-entity): Define.
3404         (elmo-msgdb-create-message-entity-from-file): Ditto.
3405         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3406         (elmo-msgdb-message-entity-field): Ditto.
3407         (elmo-msgdb-message-entity-set-field): Ditto.
3408         (elmo-msgdb-copy-message-entity): Ditto.
3409         (elmo-msgdb-match-condition-internal): Ditto.
3410
3411         * modb-legacy.el: Don't require modb-entity.
3412         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3413         (elmo-msgdb-match-condition-primitive): Ditto.
3414         (elmo-msgdb-get-decoded-cache): Ditto.
3415         (elmo-msgdb-overview-entity-get-id): Ditto.
3416         (elmo-msgdb-overview-entity-get-number): Ditto.
3417         (elmo-msgdb-overview-entity-set-number): Ditto.
3418         (elmo-msgdb-overview-entity-get-references): Ditto.
3419         (elmo-msgdb-overview-entity-set-references): Ditto.
3420         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3421         (elmo-msgdb-overview-entity-get-from): Ditto.
3422         (elmo-msgdb-overview-entity-set-from): Ditto.
3423         (elmo-msgdb-overview-entity-get-subject): Ditto.
3424         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3425         (elmo-msgdb-overview-entity-set-subject): Ditto.
3426         (elmo-msgdb-overview-entity-get-date): Ditto.
3427         (elmo-msgdb-overview-entity-set-date): Ditto.
3428         (elmo-msgdb-overview-entity-get-to): Ditto.
3429         (elmo-msgdb-overview-entity-get-cc): Ditto.
3430         (elmo-msgdb-overview-entity-get-size): Ditto.
3431         (elmo-msgdb-overview-entity-set-size): Ditto.
3432         (elmo-msgdb-overview-entity-get-extra): Ditto.
3433         (elmo-msgdb-overview-entity-set-extra): Ditto.
3434         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3435         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3436         (elmo-msgdb-number-load): Ditto.
3437         (elmo-msgdb-overview-load): Ditto.
3438         (elmo-msgdb-mark-load): Ditto.
3439         (elmo-msgdb-number-save): Ditto.
3440         (elmo-msgdb-mark-save): Ditto.
3441         (elmo-msgdb-overview-save): Ditto.
3442         (modb-legacy-make-message-entity): New inline function.
3443         (elmo-msgdb-insert-file-header): Ditto.
3444         (elmo-msgdb-make-message-entity): Define.
3445         (elmo-msgdb-create-message-entity-from-file): Ditto.
3446         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3447         (elmo-msgdb-message-entity-number): Ditto.
3448         (elmo-msgdb-message-entity-set-number): Ditto.
3449         (elmo-msgdb-message-entity-field): Ditto.
3450         (elmo-msgdb-message-entity-set-field): Ditto.
3451         (elmo-msgdb-copy-message-entity): Ditto.
3452         (elmo-msgdb-match-condition-internal): Ditto.
3453
3454         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3455         (elmo-message-copy-entity): Rewrite.
3456         (elmo-message-entity-number): Ditto.
3457         (elmo-message-entity-set-number): Ditto.
3458         (elmo-message-entity-field): Use elmo-message-entity-db.
3459         (elmo-message-entity-set-field): Ditto.
3460         (elmo-message-field): Rewrite.
3461
3462         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3463         elmo-msgdb.el
3464         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3465
3466         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3467         elmo-message-entity-field.
3468         (elmo-shimbun-folder-shimbun-header): Ditto.
3469         (elmo-shimbun-entity-to-header): Ditto.
3470         (elmo-folder-msgdb-create): Ditto.
3471         (elmo-shimbun-msgdb-create-entity): Ditto;
3472         Use elmo-msgdb-create-message-entity-from-buffer.
3473         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3474         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3475
3476         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3477         elmo-msgdb-create-message-entity-from-file and 
3478         elmo-message-entity-field.
3479
3480         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3481         elmo-message-entity-number.
3482         (elmo-pop3-msgdb-create-message): Use
3483         elmo-msgdb-create-message-entity-from-buffer,
3484         elmo-message-entity-set-field, elmo-message-entity-number and
3485         elmo-message-entity-set-number.
3486
3487         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3488         the API change in elmo-msgdb-make-message-entity.
3489         (elmo-nntp-msgdb-create-message): Use
3490         elmo-msgdb-create-message-entity-from-buffer.
3491
3492         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3493         elmo-message-entity-field and
3494         elmo-msgdb-create-message-entity-from-file.
3495
3496         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3497         (elmo-msgdb-get-field): Abolish.
3498         (elmo-msgdb-get-number): Rewrite.
3499         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3500         (elmo-msgdb-flag-table): Ditto.
3501         (elmo-msgdb-get-last-message-id,
3502         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3503         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3504         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3505         (elmo-msgdb-create-overview-from-buffer,
3506         elmo-msgdb-overview-get-parent-entity): Abolish.
3507
3508         * elmo-mime.el (elmo-mime-display-as-is): Use
3509         elmo-message-entity-field.
3510
3511         * elmo-map.el (elmo-folder-pack-numbers): Use
3512         elmo-message-entity-set-number.
3513
3514         * elmo-maildir.el (elmo-folder-msgdb-create): 
3515         elmo-msgdb-create-message-entity-from-file instead of
3516         elmo-msgdb-create-overview-entity-from-file.
3517
3518         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3519         msgdb.
3520         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3521         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3522
3523         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3524         elmo-messge-entity-field and elmo-message-entity-number.
3525         (elmo-imap4-fetch-callback-1): Call
3526         elmo-msgdb-create-message-entity-from-buffer instead of
3527         elmo-msgdb-create-overview-from-buffer. 
3528         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3529         (elmo-find-fetch-strategy): Likewise.
3530
3531         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3532         elmo-localdir-msgdb-create-entity with argument msgdb.
3533
3534         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3535         and elmo-message-entity-set-number.
3536
3537         * elmo-cache.el (elmo-folder-msgdb-create): Use
3538         elmo-message-entity-field.
3539         (elmo-folder-msgdb-create): Call
3540         elmo-msgdb-create-message-entity-from-file instead of
3541         elmo-msgdb-create-overview-entity-from-file.
3542
3543         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3544         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3545         instead of elmo-msgdb-create-overview-from-buffer.
3546         (elmo-archive-msgdb-create-entity): Ditto.
3547         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3548         elmo-message-entity-field.
3549         (elmo-archive-parse-mmdf): Ditto.
3550
3551         * modb-entity.el: Removed.
3552
3553         * elmo-version.el (elmo-version): Up to 2.11.16.
3554
3555 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3556
3557         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3558         `is-local'.
3559         (elmo-folder-flag-as-answered): Ditto.
3560
3561 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3562
3563         * modb-standard.el: New file.
3564
3565         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3566         elmo-msgdb-convert-type is `sync'.
3567
3568         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3569         (elmo-msgdb-convert-type): New user option.
3570
3571         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3572         (elmo-load-msgdb): Auto detect saved type.
3573
3574         * elmo-version.el (elmo-version): Up to 2.11.15.
3575
3576 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3577
3578         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3579
3580         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3581         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3582         with argument `delete-if-none' when dst-folder is 'null.
3583
3584         * elmo-flag.el (elmo-folder-append-messages): Defined.
3585         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3586
3587 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3588
3589         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3590
3591 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3592
3593         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3594         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3595         (elmo-folder-commit): Ditto.
3596
3597 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3598
3599         * elmo-flag.el: New file.
3600
3601         * elmo-mark.el: Removed.
3602
3603         * modb-legacy.el (modb-legacy-new-mark,
3604         modb-legacy-unread-uncached-mark,
3605         modb-legacy-unread-cached-mark,
3606         modb-legacy-read-uncached-mark,
3607         modb-legacy-answered-cached-mark,
3608         modb-legacy-answered-uncached-mark,
3609         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3610         All other related portions are changed.
3611
3612         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3613         (elmo-folder-list-messages-with-global-mark): Abolish.
3614         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3615         (elmo-folder-flag-as-important): Ditto.
3616         (elmo-folder-unflag-read): Ditto.
3617         (elmo-folder-flag-as-read): Ditto.
3618         (elmo-folder-unflag-answered): Ditto.
3619         (elmo-folder-flag-as-answered): Ditto.
3620         (elmo-message-encache): Return the cache path.
3621         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3622         (elmo-message-set-flag): Transitional implementation.
3623         (elmo-message-unset-flag): Ditto.
3624         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3625         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3626         (elmo-init): Call elmo-global-flag-initialize.
3627         (toplevel): Added autoload settings for elmo-flag.
3628
3629         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3630
3631         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3632         (elmo-file-cache-delete): Don't treat global-mark.
3633
3634         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3635
3636         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3637
3638         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3639         `elmo-global-flags-set'.
3640
3641         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3642         `flag'.
3643         (elmo-folder-unflag-read): Ditto.
3644         (elmo-folder-unflag-important): Ditto.
3645         (elmo-folder-flag-as-important): Ditto.
3646         (elmo-folder-unflag-answered): Ditto.
3647         (elmo-folder-flag-as-answered): Ditto.
3648
3649         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3650         `elmo-global-flags-set'.
3651         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3652
3653         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3654
3655         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3656         `flag'.
3657         (elmo-folder-flag-as-important): Ditto.
3658         (elmo-folder-unflag-important): Ditto.
3659         (elmo-folder-flag-as-important): Ditto.
3660         (elmo-folder-unflag-read): Ditto.
3661         (elmo-folder-flag-as-read): Ditto.
3662         (elmo-folder-unflag-answered): Ditto.
3663         (elmo-folder-flag-as-answered): Ditto.
3664
3665         * elmo-multi.el (elmo-folder-list-importants): Don't call
3666         elmo-folder-list-messages-with-global-mark.
3667         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3668         (elmo-folder-unflag-important): Ditto.
3669         (elmo-folder-flag-as-read): Ditto.
3670         (elmo-folder-unflag-read): Ditto.
3671         (elmo-folder-flag-as-answered): Ditto.
3672         (elmo-folder-unflag-answered): Ditto.
3673
3674         * elmo-msgdb.el (elmo-msgdb-new-mark,
3675         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3676         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3677         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3678         (Moved to modb-legacy.el).
3679         (elmo-flag-table-get): Treat important flag too.
3680
3681         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3682         `mark' to `flag'.
3683         (elmo-map-folder-flag-as-important): Ditto.
3684         (elmo-map-folder-unflag-read): Ditto.
3685         (elmo-map-folder-flag-as-read): Ditto.
3686         (elmo-map-folder-unflag-answered): Ditto.
3687         (elmo-map-folder-flag-as-answered): Ditto.
3688         (elmo-folder-unflag-important): Ditto.
3689         (elmo-folder-flag-as-important): Ditto.
3690         (elmo-folder-unflag-read): Ditto.
3691         (elmo-folder-flag-as-read): Ditto.
3692         (elmo-folder-unflag-answered): Ditto.
3693         (elmo-folder-flag-as-answered): Ditto.
3694
3695         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3696         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3697         `flag'.
3698         (elmo-map-folder-unflag-important): Ditto.
3699         (elmo-map-folder-flag-as-read): Ditto.
3700         (elmo-map-folder-unflag-read): Ditto.
3701         (elmo-map-folder-flag-as-answered): Ditto.
3702         (elmo-map-folder-unflag-answered): Ditto.
3703
3704         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3705         `elmo-global-flags-set'.
3706         (elmo-global-flags-set): Added autoload setting.
3707
3708         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3709         `flag'.
3710
3711         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3712         `elmo-msgdb-global-mark-set'.
3713         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3714         Call `elmo-global-flags-set'.
3715         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3716         `flag'.
3717         (elmo-folder-flag-as-important-plugged): Ditto.
3718         (elmo-folder-unflag-read-plugged): Ditto.
3719         (elmo-folder-flag-as-read-plugged): Ditto.
3720         (elmo-folder-unflag-answered-plugged): Ditto.
3721         (elmo-folder-flag-as-answered-plugged): Ditto.
3722         (elmo-global-flags-set): Added autoload setting.
3723
3724         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3725         `flag'.
3726         (elmo-folder-unflag-read): Ditto.
3727         (elmo-folder-flag-as-important): Ditto.
3728         (elmo-folder-unflag-important): Ditto.
3729         (elmo-folder-flag-as-answered): Ditto.
3730         (elmo-folder-unflag-answered): Ditto.
3731
3732         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3733         change of `mark'->`flag'.
3734         (elmo-dop-queue-method-name-alist): Ditto.
3735         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3736         (elmo-folder-unflag-read-dop): Ditto.
3737         (elmo-folder-flag-as-important-dop): Ditto.
3738         (elmo-folder-unflag-important-dop): Ditto.
3739         (elmo-folder-flag-as-answered-dop): Ditto.
3740         (elmo-folder-unflag-answered-dop): Ditto.
3741
3742         * elmo-cache.el (elmo-folder-msgdb-create): Call
3743         `elmo-global-flags-set'.
3744
3745         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3746         Call `elmo-global-flags-set'.
3747         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3748         elmo-archive-parse-mmdf with argument `folder'.
3749         (elmo-archive-parse-mmdf): Added argument `folder';
3750         Call `elmo-global-flags-set'.
3751
3752         * elmo-version.el (elmo-version): Up to 2.11.14.
3753
3754 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3755
3756         * modb.el (elmo-msgdb-length): Define.
3757
3758         * elmo.el (elmo-make-folder): Fixed.
3759         (elmo-generic-folder-append-messages): Follow the API change.
3760
3761         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3762         API change.
3763
3764 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3765
3766         * modb.el: New file.
3767
3768         * modb-entity.el: Ditto.
3769
3770         * modb-legacy.el: Ditto.
3771
3772         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3773         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3774         of `elmo-msgdb-overview-get-entity'.
3775         (elmo-msgdb-get-field): Ditto.
3776         (elmo-msgdb-merge): Moved to `elmo.el'.
3777         (elmo-msgdb-length): Removed; redefine as modb method.
3778         (elmo-msgdb-change-mark): Abolish.
3779         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3780         (elmo-msgdb-match-condition): Don't use mark.
3781         (elmo-msgdb-overview-get-entity): Abolish.
3782         Split modb part into `modb*.el'.
3783
3784         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3785
3786         * elmo-shimbun.el (shimbun-mua-search-id): Use
3787         `elmo-msgdb-message-entity' instead of
3788         `elmo-msgdb-overview-get-entity'.
3789         (elmo-shimbun-folder-shimbun-header): Ditto.
3790         (elmo-shimbun-get-headers): Ditto.
3791         (elmo-shimbun-update-overview): Ditto.
3792
3793         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3794
3795         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3796
3797         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3798         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3799
3800         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3801         `elmo-msgdb-mark-to-flags'.
3802
3803         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3804         `elmo-msgdb-set-path'.
3805
3806         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3807  
3808         * elmo-version.el (elmo-version): Up to 2.11.13.
3809
3810         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3811
3812         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3813         of mark.
3814
3815 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3816
3817         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3818         mismatch.
3819
3820 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3821
3822         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3823         instead of `elmo-msgdb-get-cached'.
3824         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3825
3826         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3827         (elmo-msgdb-set-cached): Ditto.
3828         (elmo-msgdb-set-flag): Rewrite.
3829         (elmo-msgdb-unset-flag): Ditto.
3830
3831         * elmo-msgdb.el: Rewrite with luna.
3832
3833         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3834         (elmo-folder-msgdb): Follow the change above.
3835         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3836         (elmo-folder-unmark-important): Follow the API change.
3837         (elmo-folder-mark-as-important): Ditto.
3838         (elmo-folder-unmark-read): Ditto.
3839         (elmo-folder-mark-as-read): Ditto.
3840         (elmo-folder-unmark-answered): Ditto.
3841         (elmo-folder-mark-as-answered): Ditto.
3842         (elmo-folder-clear): Likewise.
3843
3844         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3845         instead of `elmo-msgdb-load' (renamed).
3846
3847         * elmo-version.el (elmo-version): Up to 2.11.12.
3848
3849 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3850
3851         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3852         change.
3853         (elmo-message-mark): Abolish.
3854         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3855         instead of `elmo-msgdb-change-mark'.
3856
3857         * elmo-pipe.el (elmo-message-mark): Abolish.
3858
3859         * elmo-multi.el (elmo-message-mark): Ditto.
3860
3861         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3862         (elmo-msgdb-unread-uncached-mark): Ditto.
3863         (elmo-msgdb-unread-cached-mark): Ditto.
3864         (elmo-msgdb-read-uncached-mark): Ditto.
3865         (elmo-msgdb-answered-cached-mark): Ditto.
3866         (elmo-msgdb-answered-uncached-mark): Ditto.
3867         (elmo-msgdb-important-mark): Ditto.
3868         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3869         `use-cache'.
3870         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3871         `flags'.
3872         (elmo-flag-table-load): Changed flag to list of flag.
3873         (elmo-flag-table-set): If flags is nil, set read flag.
3874         (elmo-flag-table-get): Return derived flags from global mark,
3875         cache status and saved flags.
3876         (elmo-msgdb-flag-table): Follow the change above.
3877         (elmo-msgdb-out-of-date-messages): New function.
3878
3879         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3880
3881         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3882
3883         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3884
3885         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3886         (elmo-nntp-msgdb-create-message): Ditto.
3887
3888         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3889
3890         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3891         independent.
3892         (elmo-folder-msgdb-create): Follow the API change.
3893
3894         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3895         (elmo-folder-append-messages): Ditto.
3896
3897         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3898         (elmo-folder-append-buffer): Ditto.
3899
3900         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3901
3902         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3903
3904         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3905         (elmo-archive-parse-mmdf): Ditto.
3906
3907         * elmo-version.el (elmo-version): Up to 2.11.11.
3908
3909 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3910
3911         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3912         `elmo-msgdb-mark'.
3913
3914         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3915
3916         * elmo-pipe.el (elmo-message-flags): Defined.
3917
3918         * elmo-multi.el (elmo-message-flags): Ditto.
3919
3920 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3921
3922         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3923         `elmo-msgdb-delete-msgs'.
3924
3925         * elmo.el (elmo-folder-count-flags): Don't use
3926         `elmo-msgdb-get-mark-alist'.
3927         (elmo-folder-detach-messages): Follow the API change.
3928
3929         * elmo.el (elmo-folder-list-messages): Append killed messages into
3930         result if `visible-only' is nil.
3931
3932         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3933         canceled messages.
3934         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3935         (elmo-folder-update-number): Likewise.
3936
3937         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3938         (elmo-pop3-sort-msgdb-by-original-number): Use
3939         `elmo-msgdb-sort-entities'.
3940
3941         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3942         (elmo-msgdb-sort-by-date): Use it.
3943         (elmo-msgdb-overview-sort-by-date): Abolish.
3944
3945         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3946
3947         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3948         (elmo-msgdb-flags): New function.
3949         (elmo-msgdb-merge): Use elmo-msgdb-append.
3950
3951         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3952         change.
3953
3954         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3955
3956         * elmo-dop.el (elmo-folder-status-dop): Use
3957         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3958
3959 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3960
3961         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3962
3963         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3964
3965         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3966
3967         * elmo-util.el (elmo-with-progress-display): New macro.
3968
3969         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3970
3971 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3972
3973         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3974         `elmo-folder-list-message-entities' instead of
3975         `elmo-msgdb-get-overview'.
3976         (elmo-map-folder-list-message-locations): Ditto.
3977
3978         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3979         methods instead of treat directly).
3980         (elmo-msgdb-clear): Ditto.
3981         (elmo-msgdb-delete-msgs): Ditto.
3982         (elmo-msgdb-sort-by-date): Ditto.
3983
3984         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3985         local variables.
3986         (elmo-nntp-folder-msgdb-create): Follow the API change.
3987
3988         * elmo-version.el (elmo-version): Up to 2.11.10.
3989
3990 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3991
3992         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3993         (elmo-msgdb-flags-to-mark): Ditto.
3994         (elmo-msgdb-append-entity): Ditto.
3995
3996         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3997         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3998         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3999         (elmo-archive-parse-mmdf): Ditto.
4000
4001         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4002
4003         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
4004
4005         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
4006
4007         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4008
4009         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
4010
4011         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4012
4013         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4014
4015         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4016
4017         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
4018         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
4019         to empty msgdb.
4020
4021         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
4022         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
4023         instead of directly construction.
4024         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
4025         instead of construct msgdb.
4026
4027         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
4028         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
4029         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
4030         instead of construct msgdb.
4031
4032 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4033
4034         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
4035         when field is from or subject.
4036
4037 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
4038
4039         * elmo-multi.el (elmo-message-entity-parent): Define.
4040         (elmo-folder-search): Rewrite.
4041
4042 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4043
4044         * elmo-multi.el (elmo-message-cached-p): Define.
4045
4046         * elmo.el (elmo-message-cached-p): New method.
4047         (elmo-message-accessible-p): Use it instead of msgdb API directly.
4048         (elmo-message-flags): New method.
4049         (elmo-message-flagged-p): New function.
4050
4051         * elmo-version.el (elmo-version): Up to 2.11.9.
4052
4053 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4054
4055         * elmo-version.el (elmo-version): Up to 2.11.8.
4056
4057         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
4058
4059         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
4060
4061 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
4062
4063         * elmo.el (elmo-folder-detach-messages): Undo last change.
4064
4065 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
4066
4067         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
4068
4069         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
4070         only when src folder type is pop3.
4071
4072 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
4073
4074         * elmo-msgdb.el (elmo-msgdb-make-index): Use
4075         elmo-msgdb-overview-entity-get-number instead of
4076         elmo-message-entity-number.
4077
4078 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4079
4080         * elmo-version.el (elmo-version): Up to 2.11.7.
4081
4082 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
4083
4084         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
4085         function.
4086
4087         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
4088         (elmo-msgdb-merge): New function.
4089         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
4090         (elmo-msgdb-make-index): Rewrite.
4091
4092         * elmo-version.el (elmo-version): Up to 2.11.6.
4093
4094         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
4095         use it as a the path for loading message entities.
4096
4097         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
4098
4099 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
4100
4101         * elmo-filter.el (elmo-folder-set-message-modified): Set 
4102         message-modified slot of itself if it does not require target msgdb.
4103
4104         * elmo-mime.el (elmo-mime-message-display): Display message entirely
4105         if folder length is zero.
4106         (elmo-mime-display-as-is): Ditto.
4107
4108         * elmo-filter.el (elmo-folder-set-message-modified): Define.
4109
4110         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
4111
4112 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4113
4114         * elmo.el (elmo-folder-set-message-modified): New method.
4115         (elmo-generic-folder-commit): Use it.
4116         (elmo-folder-synchronize): Ditto.
4117
4118         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
4119         (elmo-folder-commit): Remove duplicate definition.
4120
4121 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4122
4123         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
4124
4125 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4126
4127         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
4128         (elmo-strict-folder-diff): Ditto.
4129         (elmo-folder-set-info-max-by-numdb): Simplify.
4130
4131         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
4132         elmo-msgdb-list-messages.
4133
4134         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
4135         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
4136
4137 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4138
4139         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
4140         visible-only is non-nil.
4141         (elmo-folder-confirm-appends): Changed message.
4142         (elmo-folder-synchronize): Added argument disable-killed.
4143
4144         * elmo-multi.el (elmo-folder-synchronize): Added argument
4145         disable-killed.
4146
4147         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
4148
4149         * elmo-version.el (elmo-version): Up to 2.11.5.
4150
4151         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
4152         elmo-list-filter.
4153
4154         * elmo-util.el (elmo-list-filter): Simplify.
4155
4156         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
4157         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
4158         (elmo-generic-folder-diff): Abolish argument.
4159         (elmo-msgdb-load): Don't use number-alist.
4160
4161         * elmo-filter.el (elmo-folder-diff): Abolish argument.
4162
4163         * elmo-pipe.el (elmo-folder-diff): Ditto.
4164
4165         * elmo-nmz.el (elmo-folder-diff): Ditto.
4166
4167         * elmo-net.el (elmo-folder-diff): Ditto.
4168
4169         * elmo-maildir.el (elmo-folder-diff): Ditto.
4170
4171         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
4172
4173         * elmo-multi.el (elmo-folder-diff): Ditto
4174         (elmo-multi-folder-diff): Rewrite.
4175
4176 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4177
4178         * elmo-pipe.el (elmo-folder-msgdb): Define.
4179
4180 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
4181
4182         * elmo.el (elmo-message-set-cached): Define as a method.
4183
4184         * elmo-pipe.el (elmo-message-set-cached): Define.
4185         (elmo-find-fetch-strategy): Ditto.
4186
4187         * elmo-multi.el (elmo-message-set-cached): Define.
4188         (elmo-find-fetch-strategy): Rewrite.
4189
4190         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
4191
4192         * elmo-pipe.el (elmo-message-folder): Fixed definition.
4193
4194 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4195
4196         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
4197         instead of number-alist.
4198
4199         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
4200         mark nor message-id when msgdb of source folder is not loaded.
4201
4202         * elmo.el (elmo-generic-folder-append-messages): Ditto.
4203
4204         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4205
4206 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
4207
4208         * elmo.el (elmo-folder-length): Don't require msgdb.
4209
4210 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
4211
4212         * elmo.el (elmo-message-mark): Cause an error when empty folder.
4213         (elmo-message-field): Ditto.
4214
4215         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
4216         (elmo-map-folder-list-message-locations): Setup `answered-locations'
4217         slot.
4218         (elmo-map-folder-list-answereds): Define.
4219         (elmo-maildir-list-location): Treat 'R' info.
4220         (elmo-folder-msgdb-create): Treat flag-table.
4221         (elmo-folder-append-messages): Save flag-table.
4222
4223 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
4224
4225         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
4226         Use SELECT when elmo-imap4-use-select-to-update-status is t.
4227
4228 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4229
4230         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
4231
4232         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
4233         'read when mark is null.
4234
4235 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
4236
4237         * elmo-version.el (elmo-version): Up to 2.11.4.
4238
4239 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4240
4241         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
4242         (elmo-folder-mark-as-answered): Ditto.
4243
4244 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
4245
4246         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
4247         (elmo-pop3-get-session): Make msgdb directory after session.
4248         (elmo-folder-exists-p): Check exactly at the first time even when the
4249         elmo-pop3-exists-exactly is nil.
4250
4251         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
4252         (elmo-folder-list-messages): Define instead of
4253         elmo-folder-list-messages-internal.
4254         (elmo-folder-check): Check destination folder.
4255         (elmo-folder-synchronize): Drain the pipe.
4256
4257         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
4258         when msgdb is not loaded.
4259
4260         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
4261
4262         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
4263         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
4264         messages.
4265
4266         * elmo.el (elmo-folder-kill-messages-before): New function.
4267         (elmo-folder-kill-messages): Ditto.
4268         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
4269
4270         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
4271         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
4272         killed not by synchronize (e.g. scoring).
4273
4274 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4275
4276         * elmo.el (elmo-folder-search-fast): Return t if condition is not
4277         treated.
4278         (elmo-folder-search): Follow the change above.
4279
4280         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
4281         into the candidates of search field.
4282
4283 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
4284
4285         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
4286         (elmo-msgdb-unset-flag): Ditto.
4287
4288         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
4289
4290 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
4291
4292         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
4293         (elmo-folder-commit): Define.
4294         (elmo-folder-synchronize): Ditto.
4295         (elmo-folder-list-flagged): Ditto.
4296         (elmo-folder-commit): Ditto.
4297         (elmo-folder-length): Ditto.
4298         (elmo-folder-count-flags): Ditto.
4299         (elmo-message-mark): Ditto.
4300         (elmo-message-field): Ditto.
4301         (elmo-message-entity): Ditto.
4302         (elmo-message-folder): Ditto.
4303
4304 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
4305
4306         * elmo.el (elmo-message-field): Define as a method.
4307
4308         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
4309         (elmo-message-field): Define.
4310
4311         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
4312         (elmo-folder-list-importants): Ditto.
4313         (elmo-folder-list-answereds): Ditto.
4314
4315         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
4316         qualifier.
4317         (elmo-folder-mark-as-read): Ditto.
4318         (elmo-folder-unmark-read): Ditto.
4319         (elmo-folder-mark-as-answered): Ditto.
4320         (elmo-folder-unmark-answered): Ditto.
4321         (elmo-folder-list-flagged): Define.
4322         (elmo-folder-commit): Ditto.
4323         (elmo-folder-length): Ditto.
4324         (elmo-folder-count-flags): Ditto.
4325
4326 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4327
4328         * elmo.el (elmo-folder-detach-messages): New method.
4329         (elmo-folder-move-messages): Use it.
4330         (elmo-folder-synchronize): Ditto.
4331
4332         * elmo-multi.el (elmo-folder-detach-messages): Define.
4333
4334         * elmo.el (elmo-message-copy-entity): New function.
4335         (elmo-message-entity-set-number): Ditto.
4336         (elmo-message-mark): Define as method.
4337
4338         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4339         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4340         (elmo-message-entity): Fixed last change.
4341         (elmo-message-mark): Define.
4342         (elmo-folder-msgdb-create): Abolish.
4343         (elmo-multi-folder-append-msgdb): Ditto.
4344         (elmo-multi-folder-diff): Fixed.
4345         (elmo-multi-split-number-alist): Removed.
4346         (elmo-multi-split-mark-alist): Removed.
4347         (elmo-folder-list-messages): Define.
4348         (elmo-folder-list-messages-internal): Removed.
4349
4350         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4351         local file messages.
4352         (elmo-folder-msgdb-create): Fixed read mark.
4353
4354 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4355
4356         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4357         if mark is nil.
4358
4359 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4360
4361         * elmo.el (elmo-folder-list-message-entities): Define as inline
4362         function.
4363         (elmo-folder-messages): Abolish.
4364
4365         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4366         folder.
4367         (elmo-folder-synchronize): Define.
4368         (elmo-message-entity): Define.
4369
4370 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4371
4372         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4373         elmo-imap4-session-select-mailbox.
4374
4375         * elmo.el (elmo-folder-move-messages): Don't display any message.
4376
4377         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4378         parsing.
4379         (elmo-imap4-session-check): Don't wait CHECK response.
4380         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4381
4382 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4383
4384         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4385
4386 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4387
4388         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4389         API.
4390         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4391
4392
4393         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4394         (elmo-folder-list-message-entities): Added argument in-msgdb and
4395         numbers.
4396         (elmo-folder-synchronize): Define as a method.
4397
4398         * elmo-nntp.el (elmo-folder-initialize): Don't use
4399         elmo-nntp-default-user if zero-length username is specified
4400         explicitly.
4401
4402 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4403
4404         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4405         server name in case with username.
4406         (XXX: this is ad-hoc fix against username includes "@", it
4407         should be solved fundamentally)
4408
4409 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4410
4411         * elmo-nntp.el (elmo-nntp-debug): New function.
4412         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4413         (elmo-network-authenticate-session): Hide auth-info from the log.
4414
4415         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4416         user name if it is equal to elmo-nntp-default-user.
4417
4418 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4419
4420         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4421         instead of shimbun-server-internal;
4422         Use shimbun-current-group instead of shimbun-current-group-internal.
4423         (elmo-folder-plugged-p): Use shimbun-server instead of
4424         shimbun-server-internal.
4425         (elmo-folder-set-plugged): Ditto.
4426         (elmo-net-port-info): Ditto.
4427         (elmo-folder-check): Ditto.
4428         (elmo-folder-expand-msgdb-path): Ditto.
4429         (elmo-folder-list-subfolders): Ditto.
4430
4431 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4432
4433         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4434         Convert field-name to lower case.
4435         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4436
4437 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4438
4439         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4440         `message' and `error' take format string.
4441
4442 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4443
4444         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4445
4446 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4447
4448         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4449         recursive call (can't byte compile on emacs 20.7).
4450
4451 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4452
4453         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4454         (elmo-folder-list-message-entities): New API.
4455         (elmo-message-entity): Ditto.
4456         (elmo-message-entity-parent): Ditto.
4457         (elmo-folder-do-each-message-entity): Ditto.
4458         (elmo-message-entity-number): Ditto.
4459         (elmo-message-entity-field): Ditto.
4460         (elmo-message-entity-set-field): Ditto.
4461         (elmo-folder-count-flags): Ditto.
4462         (elmo-folder-length): Ditto.
4463
4464         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4465         not.
4466
4467         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4468         (elmo-msgdb-count-marks): Abolish.
4469         (elmo-msgdb-make-entity): Ditto.
4470         (elmo-msgdb-do-each-entity): Ditto.
4471         (elmo-msgdb-message-entity): New inline function.
4472         (elmo-msgdb-message-entity-field): Ditto.
4473         (elmo-msgdb-message-entity-set-field): Ditto.
4474         (elmo-msgdb-make-message-entity): New function.
4475
4476 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4477
4478         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4479         to flag. (All other related portions are changed.)
4480         (elmo-folder-msgdb-create): Likewise.
4481         (elmo-generic-folder-append-messages): Use flag-table instead of
4482         seen-list.
4483         (elmo-folder-move-messages): Removed redundant process.
4484         (elmo-folder-synchronize): Likewise.
4485
4486         * elmo-msgdb.el (elmo-flag-table-get): New function.
4487         (elmo-flag-table-save): Fixed.
4488         (elmo-msgdb-length): New inline function.
4489         (elmo-msgdb-flag-table): New function.
4490         (elmo-msgdb-mark): Add optional argument new.
4491         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4492         (elmo-msgdb-seen-list): Ditto.
4493         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4494
4495
4496 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4497
4498         * elmo.el (elmo-message-set-mark): Abolish.
4499         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4500         (All related portions are changed.)
4501
4502         * elmo-msgdb.el (toplevel): Added comment.
4503         (elmo-load-msgdb): Added 4th element `path'.
4504         (elmo-msgdb-append): Follow the change above.
4505         (elmo-msgdb-clear): Ditto.
4506         (elmo-msgdb-delete-msgs): Ditto.
4507         (elmo-msgdb-get-path): New inline function.
4508         (elmo-msgdb-set-path): Ditto.
4509         (elmo-flag-table-filename): New variable.
4510         (elmo-flag-table-load): New function.
4511         (elmo-flag-table-set): Ditto.
4512         (elmo-flag-table-save): Ditto.
4513         (elmo-msgdb-get-field-value): Abolish.
4514         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4515
4516 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4517
4518         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4519         the folder has been deleted successfully.
4520         * elmo-imap4.el (elmo-folder-delete): Ditto.
4521         * elmo-archive.el (elmo-folder-delete): Ditto.
4522         * elmo-localdir.el (elmo-folder-delete): Ditto.
4523         * elmo-maildir.el (elmo-folder-delete): Ditto.
4524
4525 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4526
4527         * elmo-util.el (elmo-string-member-ignore-case): New function.
4528         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4529         (elmo-imap4-fetch-callback-1-subr): Likewise.
4530
4531 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4532
4533         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4534         the case of the name attribute "\Noselect".
4535
4536 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4537
4538         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4539
4540         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4541         flist, is not always a member of onum-alist.
4542
4543 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4544
4545         * elmo-version.el (elmo-version): Up to 2.11.3.
4546
4547 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4548
4549         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4550         copied from localdir's one.
4551
4552         * elmo-pipe.el (elmo-folder-rename): New method, rename
4553         destination folder with leaving source folder as it is.
4554
4555 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4556
4557         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4558         replace-regexp.
4559
4560 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4561
4562         * elmo-version.el (elmo-version): Up to 2.11.2.
4563
4564 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4565
4566         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4567         shimbun-open in case of "@".
4568         (elmo-folder-open-internal): Cope with shimbun = nil case.
4569         (elmo-folder-plugged-p): Ditto.
4570         (elmo-folder-list-subfolders): Make list for "@/" group.
4571
4572 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4573
4574         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4575         mailbox (e.g. for %~/something).
4576
4577 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4578
4579         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4580         Replace nested conditional with guard clauses.
4581
4582 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4583
4584         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4585         error [wl:11327].
4586
4587         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4588         print-depth.
4589
4590 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4591
4592         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4593         Replace nested conditional with guard clauses.
4594
4595 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4596
4597         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4598         (elmo-passwd-alist-save): Ditto.
4599         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4600
4601 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4602
4603         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4604         dir-name only if it is absolute path.
4605         (TODO: distinguish +/something and +something)
4606
4607 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4608
4609         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4610         path for "+~/something".
4611
4612 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4613
4614         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4615         as non-directory, cause error before rename-file.
4616         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4617         apropriately, mimic localdir's one.
4618         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4619
4620 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4621
4622         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4623
4624 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4625
4626         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4627
4628         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4629         
4630         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4631         is included in the global-mark or not.
4632
4633 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4634
4635         * utf7.el (toplevel): Avoid error when the function
4636         find-coding-system does not exist.
4637
4638 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4639
4640         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4641         cache even if the folder is plugged.
4642         (elmo-nntp-search-primitive): Do nothing when body search is
4643         invoked (although it is not used by the change above).
4644         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4645
4646 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4647
4648         * elmo-version.el (elmo-version): Up to 2.11.1.
4649
4650 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4651
4652         * elmo-archive.el: Specify charset.
4653
4654 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4655
4656         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4657         process buffer lives or not.
4658
4659         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4660         while flushing queues (It causes infinite loop).
4661
4662 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4663
4664         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4665
4666 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4667
4668         * utf7.el (toplevel): Check the ucs features dynamically.
4669         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4670
4671         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4672         folder is creatabe or not if it already exists.
4673
4674 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4675
4676         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4677
4678         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4679
4680         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4681         (elmo-imap4-read-response): Take care of garbage response.
4682
4683 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4684
4685         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4686         just return nil instead of error.
4687
4688 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4689
4690         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4691         search-key is "body".
4692
4693 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4694
4695         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4696         of elmo-string-matched-assoc to use match-data.
4697         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4698
4699 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4700
4701         * elmo-split.el (elmo-split->): New function.
4702         (elmo-split-<): Ditto.
4703
4704 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4705
4706         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4707         workaround for invalid message-id.
4708
4709 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4710
4711         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4712         return normal pop3 session or pop3 biff session.
4713
4714 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4715
4716         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4717         info part to the cur files when the new files already have it.
4718         (Adviced by Jared Rhine <jared@wordzoo.com>)
4719
4720 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4721
4722         * elmo-split.el (elmo-split-default-action): New variable.
4723         (elmo-split-subr): Use it if all other conditions are passed.
4724         Extend `fname' and rename it as `action'. (implemented
4725         Teranishi-san's idea in [wl:10800])
4726
4727 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4728
4729         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4730         * elmo-util.el: Ditto.
4731
4732 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4733
4734         * elmo.el (elmo-message-accessible-p): Renamed from
4735         elmo-message-cached-p and rewritten.
4736
4737 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4738
4739         * elmo.el (elmo-folder-list-flagged): New generic function.
4740         (elmo-folder-list-importants): New implementation.
4741         (elmo-folder-list-answereds): Ditto.
4742         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4743         Added 'digest'.
4744         (elmo-message-cached-p): New function.
4745         (elmo-message-set-flag): Ditto (no content).
4746         (elmo-message-unset-flag): Ditto.
4747         (elmo-folder-list-messages-mark-match): Abolish.
4748
4749         * elmo-util.el (elmo-regexp-opt): New function.
4750
4751         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4752         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4753         Added 'digest'.
4754         (elmo-msgdb-list-flagged): New function.
4755
4756         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4757         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4758         Added 'digest'.
4759
4760         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4761
4762 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4763
4764         * elmo-version.el (elmo-version): Up to 2.11.0.
4765
4766 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4767
4768         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4769         `elmo-file-cache-exists-p'; use proper mark that depends on
4770         `use-cache'.
4771         (elmo-msgdb-unset-flag): Ditto.
4772         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4773
4774         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4775         with 4th argument `use-cache'.
4776
4777 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4778
4779         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4780         (elmo-folder-mark-as-important): Ditto.
4781         (elmo-folder-unmark-read): Ditto.
4782         (elmo-folder-mark-as-read): Ditto.
4783         (elmo-folder-unmark-answered): Ditto.
4784         (elmo-folder-mark-as-answered): Ditto.
4785
4786         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4787         message status.
4788         (elmo-msgdb-mark): Likewise.
4789         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4790         (elmo-msgdb-unset-flag): Likewise.
4791
4792         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4793
4794 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4795
4796         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4797         `last:' filter.
4798
4799 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4800
4801         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4802         set spool-length to 0.
4803
4804 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4805
4806         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4807         (elmo-dop-queue-flush): Fixed last change.
4808
4809 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4810
4811         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4812         if require-msgdb slot is nil.
4813         (elmo-folder-list-importants): Likewise.
4814
4815 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4816
4817         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4818         mark is changed.
4819
4820         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4821         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4822         is changed.
4823
4824 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4825
4826         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4827
4828 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4829
4830         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4831
4832         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4833
4834 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4835
4836         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4837         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4838
4839 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4840
4841         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4842         the problem reported by Sean Rima [wl-en:180].
4843
4844 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4845
4846         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4847
4848         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4849
4850         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4851
4852         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4853
4854         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4855
4856         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4857
4858         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4859
4860 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4861
4862         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4863         status number.
4864
4865 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4866
4867         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4868         (elmo-folder-mark-as-read): Follow the API change.
4869         (elmo-message-set-cached): New function.
4870
4871         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4872
4873         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4874
4875         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4876         (elmo-folder-mark-as-important): Ditto.
4877         (elmo-folder-unmark-read): Ditto.
4878         (elmo-folder-mark-as-read): Ditto.
4879         (elmo-folder-unmark-answered): Ditto.
4880         (elmo-folder-mark-as-answered): Ditto.
4881
4882         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4883         (elmo-folder-unmark-important): Ditto.
4884         (elmo-folder-mark-as-read): Ditto.
4885         (elmo-folder-unmark-read): Ditto.
4886         (elmo-folder-mark-as-answered): Ditto.
4887         (elmo-folder-unmark-answered): Ditto.
4888
4889         * elmo-mark.el (toplevel): Removed some mark method definitions.
4890
4891         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4892         (elmo-map-folder-mark-as-answered): Ditto.
4893         (elmo-folder-unmark-important): Add :before qualifier.
4894         (elmo-folder-mark-as-important): Ditto.
4895         (elmo-folder-unmark-read): Ditto.
4896         (elmo-folder-mark-as-read): Ditto.
4897         (elmo-folder-unmark-answered): Define.
4898         (elmo-folder-mark-as-answered): Ditto.
4899
4900         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4901         (elmo-map-folder-unmark-answered): Ditto.
4902
4903         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4904
4905         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4906         (elmo-folder-mark-as-important): Ditto.
4907         (elmo-folder-unmark-read): Ditto.
4908         (elmo-folder-mark-as-read): Ditto.
4909         (elmo-folder-unmark-answered): Ditto.
4910         (elmo-folder-mark-as-answered): Ditto.
4911
4912         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4913         `mark'; evaluate mark condition.
4914         (elmo-msgdb-match-condition-internal): New function.
4915         (elmo-msgdb-match-condition): Call it; changed argument.
4916
4917         * elmo.el (elmo-folder-search): Follow the API change on
4918         `elmo-msgdb-match-condition'.
4919
4920 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4921
4922         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4923         original mark is non-nil.
4924
4925 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4926
4927         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4928         (elmo-map-folder-list-answereds): New method.
4929         (elmo-folder-list-unreads): Add :around qualifier.
4930         (elmo-folder-list-importants): Ditto.
4931         (elmo-folder-list-answereds): Ditto.
4932
4933 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4934
4935         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4936
4937         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4938         method if msgdb is not required.
4939         (elmo-filter-folder-list-importants): Don't treat global-mark.
4940
4941         * elmo.el (elmo-folder-list-importants): Ditto.
4942
4943         * elmo-net.el (elmo-folder-list-importants): Ditto.
4944
4945         * elmo-map.el (elmo-folder-list-importants): Ditto.
4946
4947         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4948
4949         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4950         (elmo-imap4-folder-list-any-plugged): New function.
4951         (elmo-imap4-search-internal-primitive): Use it.
4952
4953         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4954         only when require-msgdb slot is non-nil.
4955         (elmo-folder-close): Clear target folder's msgdb.
4956
4957 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4958
4959         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4960         (elmo-pop3-msgdb-create-by-header): Ditto.
4961         (elmo-pop3-msgdb-create-message): Ditto.
4962
4963         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4964
4965         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4966
4967         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4968
4969         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4970         (elmo-folder-msgdb-create): Ditto.
4971         (elmo-nntp-folder-msgdb-create): Ditto.
4972         (elmo-nntp-msgdb-create-by-header): Ditto.
4973         (elmo-nntp-msgdb-create-message): Ditto.
4974         (elmo-folder-list-unreads): Define.
4975
4976         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4977         (elmo-folder-append-messages): Ditto.
4978         (elmo-folder-list-unreads): Define.
4979         (elmo-folder-list-importants): Ditto.
4980         (elmo-folder-list-answereds): Ditto.
4981
4982         * elmo-net.el (elmo-folder-list-unreads): Define.
4983         (elmo-folder-list-importants): Ditto.
4984         (elmo-folder-list-answereds): Ditto.
4985         (elmo-folder-list-answereds-plugged): Ditto.
4986         (elmo-folder-msgdb-create): Follow the API change.
4987         (elmo-folder-msgdb-create-unplugged): Ditto.
4988         (elmo-folder-unmark-answered): Define.
4989         (elmo-folder-mark-as-answered-unplugged): Ditto.
4990         (elmo-folder-unmark-answered-unplugged): Ditto.
4991
4992         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4993         (elmo-msgdb-unread-uncached-mark): Ditto.
4994         (elmo-msgdb-unread-cached-mark): Ditto.
4995         (elmo-msgdb-read-uncached-mark): Ditto.
4996         (elmo-msgdb-answered-cached-mark): Ditto.
4997         (elmo-msgdb-answered-uncached-mark): Ditto.
4998         (elmo-msgdb-important-mark): Ditto.
4999         (elmo-msgdb-set-mark): Rewrite.
5000         (elmo-msgdb-count-marks): Rewrite.
5001         (elmo-msgdb-mark-alist-set): Abolish.
5002         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
5003         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
5004
5005         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
5006         (elmo-folder-close): Define.
5007         (elmo-folder-msgdb-create): Follow the API change.
5008         (elmo-folder-list-unreads): Rewrite.
5009         (elmo-folder-mark-as-important): Ditto.
5010         (elmo-folder-unmark-important): Ditto.
5011         (elmo-folder-mark-as-read): Ditto.
5012         (elmo-folder-unmark-read): Ditto.
5013         (elmo-folder-mark-as-answered): Define.
5014         (elmo-folder-unmark-answered): Ditto.
5015
5016         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
5017         (elmo-folder-append-messages): Ditto.
5018
5019         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
5020
5021         * elmo-map.el (elmo-folder-list-unreads): Ditto.
5022         (elmo-folder-list-importants): Ditto.
5023
5024         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
5025         (elmo-folder-append-messages): Ditto.
5026
5027         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
5028         change.
5029         (elmo-folder-msgdb-create-plugged): Ditto.
5030         (elmo-folder-append-messages): Ditto.
5031         (elmo-folder-list-answereds-plugged): Define.
5032         (elmo-imap4-search-internal-primitive): Add `mark' processing.
5033         (elmo-folder-unmark-answered-plugged): Define.
5034         (elmo-folder-mark-as-answered-plugged): Ditto.
5035         (elmo-folder-search-requires-msgdb-p): Ditto.
5036
5037         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
5038         (elmo-folder-initialize): Set it.
5039         (elmo-folder-msgdb): Define.
5040         (elmo-folder-check): Call elmo-folder-synchronize.
5041         (elmo-folder-close): Define.
5042         (elmo-folder-commit): Ditto.
5043         (elmo-folder-msgdb-create): Rewrite.
5044         (elmo-folder-list-unreads): Ditto.
5045         (elmo-folder-list-importants): Ditto.
5046         (elmo-folder-mark-as-read): Ditto.
5047         (elmo-folder-unmark-read): Ditto.
5048         (elmo-folder-mark-as-important): Ditto.
5049         (elmo-folder-unmark-important): Ditto.
5050         (elmo-folder-mark-as-answered): Define.
5051         (elmo-folder-unmark-answered): Ditto.
5052
5053         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
5054         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
5055         (elmo-dop-queue-method-name-alist): Likewise.
5056         (elmo-folder-mark-as-answered-dop): New inline function.
5057         (elmo-folder-unmark-answered-dop): Ditto.
5058         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
5059
5060         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
5061         (elmo-folder-msgdb-create): Ditto.
5062         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
5063         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
5064         (elmo-archive-parse-mmdf): Ditto.
5065
5066         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
5067         (elmo-folder-list-unreads-internal): Ditto.
5068
5069         * elmo.el (elmo-folder-msgdb): Define as generic function.
5070         (elmo-folder-list-messages): Added argument `in-msgdb'.
5071         (elmo-folder-list-unreads): Define as generic function.
5072         (elmo-folder-list-importants): Ditto.
5073         (elmo-folder-list-answereds): Ditto.
5074         (elmo-folder-list-messages-with-global-mark): New function.
5075         (elmo-folder-msgdb-create): Removed mark arguments.
5076         (elmo-folder-unmark-answered): New generic function.
5077         (elmo-folder-mark-as-answered): Ditto.
5078         (elmo-folder-append-messages): Removed argunment `unread-marks'
5079         (elmo-folder-list-unreads-internal): Abolish.
5080         (elmo-folder-list-importants-internal): Ditto.
5081         (elmo-folder-search-requires-msgdb-p): New generic function.
5082         (elmo-folder-search-requires-msgdb-p-internal): New function.
5083         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
5084         elmo-msgdb-load.
5085         (elmo-folder-search-fast): Added key 'mark'.
5086         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
5087         instead of unread-marks argument.
5088         (elmo-folder-move-messages): Removed argunment `unread-marks'
5089         (elmo-folder-unmark-important): Define.
5090         (elmo-folder-mark-as-important): Ditto.
5091         (elmo-folder-unmark-read): Ditto.
5092         (elmo-folder-mark-as-read): Ditto.
5093         (elmo-folder-unmark-answered): Ditto.
5094         (elmo-folder-mark-as-answered): Ditto.
5095         (elmo-folder-replace-marks): Abolish.
5096         (elmo-generic-folder-append-msgdb): Append msgdb before checking
5097         duplicates.
5098         (elmo-folder-synchronize): Removed mark arguments;
5099         return crosspost only number.
5100
5101 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5102
5103         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
5104         Remove redundunt connectivity check.
5105
5106 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5107
5108         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
5109         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
5110
5111 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
5112
5113         * pldap.el (ldap-decode-string): Return string as-is if
5114         `ldap-coding-system' is nil.
5115         (ldap-encode-string): Ditto.
5116         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
5117         (ldap-default-host): Fixed docstring.
5118
5119 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
5120
5121         * elmo-util.el (elmo-warning): Define as a macro which uses
5122         `display-warning' if it is defined as a function.
5123
5124         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
5125         (elmo-split-equal): Use it.
5126         (elmo-split-match): Ditto.
5127         (elmo-split-message-entity): New buffer-local variable.
5128         (elmo-split-subr): Set it.
5129
5130         * elmo-version.el (elmo-version): Up to 2.9.15.
5131
5132 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
5133
5134         * elmo-imap4.el (elmo-network-initialize-session):
5135         Check capability after starttls.
5136
5137 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
5138
5139         * elmo-util.el (elmo-list-delete): Added optional argument
5140         DELETE-FUNCTION.
5141
5142         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
5143
5144         * elmo-util.el (elmo-warning): Ignore errors while recenter.
5145
5146         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
5147
5148         * elmo-imap4.el (elmo-folder-initialize): Don't use
5149         elmo-imap4-default-mailbox.
5150
5151 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5152
5153         * elmo-split.el (toplevel): Use `product-provide'.
5154         (elmo-split): Checkdoc.
5155
5156 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
5157
5158         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
5159         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
5160         the function `elmo-imap4-debug-1'.
5161
5162 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5163
5164         * elmo-split.el (elmo-split): Moved to run hooks and to show
5165         message from elmo-split-subr.
5166         (elmo-split-subr): Follow the change above.
5167
5168         * elmo-split.el (elmo-split-subr): New function (renamed from
5169         elmo-split-subr).
5170         (elmo-split): Changed to call elmo-split-subr by element of
5171         elmo-split-folder.
5172         (elmo-split-folder): Changed customization type to choice.
5173
5174 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5175
5176         * elmo-split.el (elmo-split-and): Fixed condition.
5177
5178 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5179
5180         * elmo-split.el: New file.
5181         (elmo-split): Fixed logic.
5182         Display "Test:" instead of "Folder:" when reharsal.
5183
5184         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
5185         explicitly.
5186
5187         * elmo-version.el (elmo-version): Up to 2.9.14.
5188
5189         * elmo-util.el (elmo-expand-newtext): New function (renamed from
5190         wl-expand-newtext).
5191
5192 2002-06-10  Kenichi Sato <ksato@sonycom.com>
5193
5194         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
5195         message with no message-id field.
5196
5197 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
5198
5199         * elmo-version.el (elmo-version): Up to 2.9.13.
5200
5201         * elmo-dop.el (elmo-folder-status-dop): Fix.
5202
5203 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
5204
5205         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
5206
5207         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
5208         changing default value of default-mime-charset.
5209         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
5210
5211         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
5212
5213         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
5214         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
5215         instead of elmo-dop-queue-method-name-alist to check merging queue.
5216         (elmo-folder-delete-messages-dop): Delete from queue if negative
5217         message number.
5218         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
5219         file is already removed.
5220
5221 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
5222
5223         * elmo-vars.el: Bind colon keywords for old Emacsen.
5224
5225 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5226
5227         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
5228         against non-exsisting charset.
5229
5230 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
5231
5232         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
5233         Use eword-decode-and-unfold-unstructured-field-body.
5234
5235         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
5236         (elmo-msgdb-create-overview-from-buffer): Use document charset if
5237         exists to decode raw subject string.
5238         (toplevel): Require 'mime.
5239
5240         * elmo-version.el (elmo-version): Up to 2.9.12.
5241
5242 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
5243
5244         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
5245         (elmo-msgdb-set-mark): Ditto.
5246
5247         * elmo-version.el (elmo-version): Up to 2.9.11.
5248
5249 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
5250
5251         * elmo-util.el (elmo-delete-match-files): New function.
5252
5253         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
5254         instead of elmo-delete-directory.
5255
5256         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
5257         elmo-hash-minimun-size as 63.
5258
5259         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
5260         elmo-diff-unread is nil.
5261
5262         * elmo-imap4.el (elmo-folder-open): Fix.
5263
5264         * elmo.el (elmo-message-mark): Rewrite.
5265         (elmo-message-field): Ditto.
5266         (elmo-message-set-mark): Ditto.
5267         (elmo-folder-replace-marks): New function.
5268         (elmo-generic-folder-append-msgdb): Removed third argument for
5269         elmo-msgdb-append.
5270         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
5271         (elmo-msgdb-load): New implementation.
5272
5273         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
5274
5275         * elmo-util.el (elmo-list-insert): New implementation.
5276
5277         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
5278         argument for elmo-msgdb-append.
5279         
5280
5281         * elmo-msgdb.el (elmo-load-msgdb): New function.
5282         (elmo-make-msgdb): Ditto.
5283         (elmo-msgdb-get-index): New inline function.
5284         (elmo-msgdb-set-index): Ditto.
5285         (elmo-msgdb-get-entity-hashtb): Ditto.
5286         (elmo-msgdb-get-mark-hashtb): Ditto.
5287         (elmo-msgdb-get-mark): Ditto.
5288         (elmo-msgdb-set-mark): Ditto.
5289         (elmo-msgdb-count-marks): Ditto.
5290         (elmo-msgdb-get-number): Ditto.
5291         (elmo-msgdb-get-field): Ditto.
5292         (elmo-msgdb-seen-list): Ditto.
5293         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
5294         (elmo-msgdb-delete-msgs): Follow the changes above.
5295         (elmo-msgdb-overview-get-entity): Ditto.
5296         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
5297         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
5298         and rewritten.
5299         (elmo-msgdb-make-index): Likewise.
5300         (elmo-msgdb-append): Removed third argument.
5301         (elmo-msgdb-clear): Clear index as nil.
5302         (elmo-folder-set-info-hashtb): Removed.
5303         (elmo-folder-set-info-max-by-numdb): Ditto.
5304         (elmo-folder-info-make-hashtb): Ditto.
5305
5306         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
5307
5308         * elmo-map.el (elmo-folder-pack-number): Ditto.
5309
5310 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
5311
5312         * elmo-version.el (elmo-version): Up to 2.9.10.
5313
5314         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
5315
5316         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
5317
5318 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
5319
5320         * elmo-utils.el (elmo-make-directory): Add option.
5321         Default file mode is 700.
5322
5323 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5324
5325         * elmo-shimbun.el (elmo-folder-local-p): Defined.
5326
5327 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
5328
5329         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
5330         mime-charset.
5331
5332         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
5333         and "smaller".
5334
5335 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5336
5337         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5338         (elmo-shimbun-folder-entity-hash): New function.
5339         (elmo-shimbun-folder-shimbun-header): Ditto.
5340         (elmo-shimbun-entity-to-header): Ditto.
5341         (elmo-shimbun-msgdb-to-headers): Removed.
5342         (elmo-shimbun-folder-setup): Ditto.
5343         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5344         for hash key.
5345         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5346         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5347         Removed useless local bind.
5348         (elmo-folder-open-internal): Don't call
5349         `elmo-shimbun-folder-setup'.
5350         (elmo-folder-close-internal): Clear entity-hash slot.
5351         (elmo-folder-clear): Ditto.
5352         (elmo-shimbun-msgdb-create-entity): Use
5353         `elmo-shimbun-folder-shimbun-header'.
5354         (elmo-map-message-fetch): Ditto.
5355         (elmo-shimbun-update-overview): Use overview entity instead of
5356         shimbun header to lookup id by references.
5357         (elmo-map-folder-list-message-locations): Use not only headers but
5358         also overviews to list locations.
5359
5360 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5361
5362         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5363         msgdb path.
5364
5365         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5366
5367 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5368
5369         * elmo-util.el (elmo-read-search-condition-internal): Give default
5370         value for date.
5371
5372 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5373
5374         * elmo-util.el (elmo-condition-parse-search-value): Accept
5375         YYYY-MM-DD format to search.
5376         * elmo-date.el (elmo-date-get-datevec): Likewise.
5377
5378 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5379
5380         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5381         debugging code.
5382
5383 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5384
5385         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5386         from t.
5387
5388         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5389
5390         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5391         case from `elmo-folder-exists-p'.
5392         (elmo-folder-exists-p): Removed.
5393         (elmo-folder-creatable-p) Ditto.
5394
5395         * elmo-net.el (elmo-folder-create): Defined.
5396         (elmo-folder-create-unplugged): New function.
5397         (elmo-folder-exists-p): Changed default value to nil from t.
5398
5399         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5400         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5401
5402         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5403         `elmo-create-folder-dop' and append queue
5404         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5405         (elmo-folder-create-dop-delayed): New function.
5406
5407         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5408
5409         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5410
5411         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5412         (elmo-folder-writable-p) : Ditto.
5413
5414         * elmo-version.el (elmo-version): Up to 2.9.9.
5415
5416 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5417
5418         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5419         `elmo-message-use-cache-p' returns nil.
5420         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5421         (ignore cache file and refer the substance in local folders)
5422
5423 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5424
5425         * elmo-version.el (elmo-version): Up to 2.9.8.
5426
5427 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5428
5429         * elmo-version.el (elmo-version): Up to 2.9.7.
5430
5431         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5432
5433 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5434
5435         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5436
5437 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5438
5439         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5440         from --early.
5441         (elmo-map-folder-list-message-locations): Reverse location list.
5442
5443 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5444
5445         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5446
5447 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5448
5449         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5450         as a key.
5451         (elmo-nntp-folder-list-subfolders): Follow the change above.
5452
5453 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5454
5455         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5456         name if authentication type is specified.
5457
5458 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5459
5460         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5461         variable.
5462         (elmo-default-nntp-stream-type): Ditto.
5463         (elmo-default-pop3-stream-type): Ditto.
5464
5465 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5466
5467         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5468
5469 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5470
5471         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5472         elmo-vars.el.
5473         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5474
5475         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5476         (elmo-maildir-folder-path): Ditto.
5477         (elmo-maildir-list): Ditto (abolished).
5478
5479 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5480
5481         * elmo-version.el (elmo-version): Up to 2.9.6.
5482
5483 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5484
5485         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5486         (elmo-maildir-folder-path): Ditto.
5487         (elmo-msgdb-directory): Ditto.
5488         (elmo-passwd-life-time): Ditto.
5489         (elmo-msgdb-extra-fields): Ditto.
5490         (elmo-enable-disconnected-operation): Ditto.
5491
5492 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5493
5494         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5495         other choices.
5496         (elmo-pop3-default-authenticate-type): Ditto.
5497
5498 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5499
5500         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5501         choices for custom.
5502         (elmo-pop3-default-authenticate-type): Ditto.
5503
5504 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5505
5506         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5507         mailbox to new-folder.
5508
5509 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5510
5511         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5512         less than new, set new as unread.
5513
5514         * elmo-util.el (elmo-string): Don't put text-property if nil.
5515
5516 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5517
5518         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5519         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5520
5521 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5522
5523         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5524         is nil on `completing-read'.
5525
5526 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5527
5528         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5529         for namespace part.
5530         (elmo-imap4-parse-namespace-subr): Ditto.
5531         (elmo-folder-list-subfolders): Append a delimiter when the specified
5532         folder path is a root with namespace and does not end with delimiter.
5533
5534 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5535
5536         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5537         was used.
5538
5539 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5540
5541         * elmo-util.el (elmo-save-buffer): The first argument of message
5542         is a format control string.
5543
5544 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5545
5546         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5547         `elmo-folder-diff').
5548         (elmo-diff-unread): Likewise.
5549
5550 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5551
5552         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5553         is t on `completing-read'.
5554
5555 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5556
5557         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5558         method of target folder with self mark-alist if MARK-ALIST is nil.
5559
5560 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5561
5562         * elmo-version.el (elmo-version): Up to 2.9.5.
5563
5564 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5565
5566         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5567         (elmo-dop-merge-funcs): Remove.
5568
5569 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5570
5571         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5572         Return t if PATH is directory, too.
5573         Use `dolist' instead of while loop.
5574
5575 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5576
5577         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5578         is deleted.
5579
5580 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5581
5582         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5583         return value to t.
5584         (elmo-folder-list-messages-unplugged): Return t if
5585         elmo-enable-disconnected-operation is nil.
5586
5587         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5588         `elmo-folder-list-messages-internal'.
5589
5590 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5591
5592         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5593         Change to looking-at `[23][0-9]+'.
5594         (elmo-network-initialize-session): Use 'error-msg'
5595         * elmo-net.el (elmo-network-open-session): Set unplugged
5596         if elmo-network-initialize-session returns 'elmo-open-err.
5597
5598 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5599
5600         * elmo-version.el (elmo-version): Up to 2.9.4.
5601
5602 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5603
5604         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5605         `elmo-folder-list-messages-internal'.
5606
5607 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5608
5609         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5610         (elmo-message-match-condition): New method.
5611         (elmo-folder-search-fast): New inline function.
5612         (elmo-msgdb-search): Removed.
5613
5614         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5615         target folder if it is unplugged.
5616         (elmo-folder-list-messages-internal): Return t if target folder is
5617         unplugged and itself is persistent; In this case, use list be
5618         searched already.
5619
5620         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5621         (elmo-msgdb-search-internal-primitive): Ditto.
5622         (elmo-msgdb-match-condition): New function.
5623         (elmo-msgdb-match-condition-primitive): Ditto.
5624
5625         * elmo-util.el (elmo-filter-condition-p): New macro.
5626
5627         * elmo-cache.el (elmo-folder-search): Removed.
5628
5629         * elmo-localdir.el (elmo-folder-search): Ditto.
5630
5631         * elmo-maildir.el (elmo-folder-search): Ditto.
5632
5633         * elmo-mark.el (elmo-folder-search): Ditto.
5634
5635         * elmo-nmz.el (elmo-folder-search): Ditto.
5636
5637         * elmo-sendlog.el (elmo-folder-search): Ditto.
5638
5639         * elmo-shimbun.el (elmo-folder-search): Ditto.
5640
5641         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5642         if folder is unplugged.
5643
5644         * elmo-nntp.el (elmo-folder-search): Likewise.
5645         (elmo-nntp-search-internal): New function.
5646
5647         * elmo-version.el (elmo-version): Up to 2.9.3.
5648
5649 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5650
5651         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5652
5653 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5654
5655         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5656
5657 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5658
5659         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5660
5661 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5662
5663         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5664         (elmo-map-folder-list-message-locations): Do drive letter conversion
5665         on Windows environment.
5666         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5667         (elmo-map-message-fetch): Ditto.
5668
5669 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5670
5671         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5672         (elmo-network-initialize-session): Ditto.
5673
5674 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5675
5676         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5677
5678         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5679
5680         * elmo-util.el (elmo-progress-clear): Ditto.
5681
5682         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5683         `DD-Mon-YYYY' type date.
5684
5685 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5686
5687         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5688         `elmo-date-make-sortable-string' instead of
5689         `timezone-make-date-sortable'.
5690
5691         * elmo-date.el (elmo-date-make-sortable-string): Use
5692         `timezone-make-time-string'.
5693
5694 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5695
5696         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5697
5698         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5699         `since'; Fix timezone.
5700
5701         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5702
5703         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5704
5705 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5706
5707         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5708
5709 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5710
5711         * elmo.el (elmo-generic-folder-append-messages): Make
5712         fetch-strategy with `use-cache' as 'maybe. Check return value of
5713         `elmo-message-fetch'.
5714         (elmo-message-fetch): Return return value of
5715         `elmo-message-fetch-with-cache-process'.
5716         (elmo-message-fetch-with-cache-process): Return non-nil if
5717         fetching was succeed. Load cache when fetching was failed and
5718         fetch-strategy-use-cache is 'maybe.
5719
5720         * elmo-util.el (elmo-file-cache-load): New function.
5721
5722         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5723         defun.
5724
5725         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5726         non-nil if fetching was succeed.
5727
5728         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5729
5730         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5731
5732         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5733         (elmo-message-fetch-with-cache-process): Likwise.
5734
5735         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5736
5737         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5738
5739         * elmo-version.el (elmo-version): Up to 2.9.2.
5740
5741 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5742
5743         * elmo.el (elmo-folder-delete): Delete msgdb path.
5744
5745         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5746
5747         * elmo-maildir.el (elmo-folder-delete): Ditto.
5748
5749         * elmo-localdir.el (elmo-folder-delete): Ditto.
5750
5751         * elmo-imap4.el (elmo-folder-delete): Ditto.
5752
5753 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5754
5755         * elmo.el (luna-define-class): Added `biff' slot.
5756
5757         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5758         (elmo-pop3-debug-inhibit-logging): Abolished.
5759         (elmo-network-close-session): Eliminated needless let.
5760         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5761         (elmo-pop3-send-command): Added `no-log' argument.
5762         (elmo-pop3-process-filter): Use `with-current-buffer'.
5763         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5764         if login failure.
5765         (elmo-pop3-auth-apop): Likewise.
5766         (elmo-network-authenticate-session): Likewise.
5767
5768         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5769         if biff folder.
5770
5771         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5772         string to determine protocol.
5773         (elmo-network-session-name-prefix): Abolished.
5774         (elmo-network-session-cache-key): Follow the change above.
5775         (elmo-network-open-session): Ditto.
5776
5777         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5778         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5779
5780         * elmo-version.el (elmo-version): Up to 2.9.1.
5781
5782         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5783         unmatch condition checking.
5784
5785         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5786         condition.
5787
5788 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5789
5790         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5791
5792 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5793
5794         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5795         test for while loop to execute at least one SEARCH command.
5796
5797 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5798
5799         * elmo-version.el (elmo-version): Up to 2.9.0.
5800
5801 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5802
5803         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5804         (elmo-archive-folder-path): Define.
5805         (elmo-folder-initialize): Setup `dir-name' slot.
5806         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5807         Use `dir-name' as prefix of each subfolders.
5808         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5809
5810 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5811
5812         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5813         (elmo-pipe-folder-list-target-messages): New internal function.
5814         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5815         `killed-list'.
5816         (elmo-pipe-folder-copied-list-load): New function.
5817         (elmo-pipe-folder-copied-list-save): Ditto.
5818         (elmo-folder-open-internal): Follow the change above.
5819         (elmo-folder-status): Fixed for copy.
5820
5821 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5822
5823         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5824
5825 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5826
5827         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5828         elmo-copy-file instead of elmo-add-name-to-file.
5829
5830         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5831
5832         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5833         "file://..." index.
5834
5835         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5836         of accept-process-output as 1.
5837         (elmo-pop3-read-contents): Ditto.
5838         (elmo-pop3-read-body): Ditto.
5839
5840 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5841
5842         * elmo-version.el (product-version-as-string): Remove define.
5843
5844 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5845
5846         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5847         (elmo-imap4-copy-messages): Chop number set using
5848         `elmo-imap4-number-set-chop-length'.
5849         (elmo-imap4-set-flag): Ditto.
5850         (elmo-imap4-search-internal-primitive): Ditto.
5851
5852 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5853
5854         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5855         `elmo-folder-make-temp-dir'
5856
5857         * elmo-vars.el (elmo-cache-directory): New variable.
5858         (elmo-cache-dir): Abolished.
5859         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5860
5861         * elmo-version.el (elmo-version): Up to 2.7.7.
5862
5863 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5864
5865         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5866         defcustom; Set default value as t.
5867
5868 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5869
5870         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5871         (ldap-search-program-arguments): Changed default value.
5872         (ldap-search-basic): Accept exit status 4.
5873         (ldap/field-body): Parse options.
5874         (ldap/collect-field): Ditto.
5875         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5876
5877         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5878         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5879         (elmo-imap4-accept-ok): Ditto.
5880         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5881         'notify-bye, only BYE error is reported.
5882         (elmo-folder-exists-p-plugged): Set no-error argument of
5883         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5884
5885         * elmo.el (elmo-imap4-bye-error): Changed message.
5886
5887         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5888         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5889         queues (It causes infinite loop).
5890
5891 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5892
5893         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5894         (RECENT UNSEEN MESSAGES) extension.
5895
5896 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5897
5898         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5899         Check number of overview fields.
5900
5901 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5902
5903         * elmo.el (elmo-folder-confirm-appends): Changed message.
5904         (elmo-folder-confirm-appends): Ditto.
5905
5906         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5907         `with-temp-buffer'.
5908         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5909
5910 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5911
5912         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5913         of elmo-folder-update-threshold is nil, which can be set by
5914         wl-summary-update-confirm-threshold.
5915
5916 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5917
5918         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5919         (elmo-nmz-index-alias-alist): Ditto.
5920         (elmo-map-folder-list-message-locations): Follow the change above.
5921
5922 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5923
5924         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5925
5926         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5927
5928         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5929
5930         * elmo-util.el (elmo-read): Ditto.
5931         (elmo-display-error): Ditto.
5932
5933         * elmo-vars.el (elmo-date-match): Ditto.
5934
5935         * pldap.el (ldap-coding-system): Ditto.
5936
5937         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5938         `elmo-inhibit-number-mapping' as nil.
5939
5940 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5941
5942         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5943         space delimiter for list response.
5944
5945 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5946
5947         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5948
5949 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5950
5951         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5952         (elmo-map-message-fetch): Fix.
5953         * elmo-map.el (elmo-folder-status): Fix for killed.
5954
5955 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5956
5957         * elmo-sendlog.el: New file.
5958         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5959
5960 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5961
5962         * acap.el (acap-logging-out): New buffer local variable.
5963         (acap-close): Set it.
5964         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5965         an error.
5966
5967 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5968
5969         * acap.el (acap-response-bye-p): New function.
5970         (acap-response-bye-message): Ditto.
5971         (acap-wait-for-response): If bye response is received, cause an error.
5972         (acap-parse-response): Make bye response when 'Bye' is received.
5973
5974 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5975
5976         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5977
5978 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5979
5980         * elmo-util.el (elmo-copy-file): Added argument
5981         `ok-if-already-exists'.
5982         (elmo-copy-file): Fixed typo.
5983
5984 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5985
5986         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5987
5988 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5989
5990         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5991
5992 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5993
5994         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5995         to killed-list.
5996
5997 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5998
5999         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
6000         (elmo-folder-initialize): Fix for `copy'.
6001         (elmo-pipe-drain): Ditto.
6002         (elmo-folder-open-internal): Ditto.
6003         (elmo-folder-newsgroups): Fix.
6004
6005 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
6006
6007         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
6008         for each message.
6009
6010         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
6011         recent value is returned from imap folder.
6012
6013         * elmo.el (elmo-folder-newsgroups): New generic function.
6014
6015         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
6016         (elmo-folder-initialize): Set it.
6017         (elmo-folder-expand-msgdb-path): Use it.
6018         (elmo-folder-newsgroups): Define.
6019
6020         * elmo-filter.el (elmo-folder-newsgroups): Define.
6021
6022         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
6023
6024         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
6025
6026         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
6027
6028 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6029
6030         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
6031         user option.
6032         (elmo-shimbun-header-extra-field): New inline function.
6033         (elmo-shimbun-header-set-extra-field): Ditto.
6034         (elmo-shimbun-folder-header-hash-setup): Ditto.
6035         (elmo-shimbun-update-overview): Ditto.
6036         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
6037         (elmo-shimbun-folder-setup): Use
6038         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
6039         (elmo-shimbun-get-headers): Ditto.
6040         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
6041         Insert `X-Shimbun-Id:' header if extra field is set.
6042         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
6043         field's value instead of `shimbun-header-id'.
6044
6045         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
6046         inline function.
6047         (elmo-msgdb-overview-entity-set-date): Ditto.
6048         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
6049
6050 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
6051
6052         * mmimap.el (mmimap-entity-section): Changed body node number from
6053         "0" to "1".
6054
6055 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6056
6057         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
6058         `elmo-folder-delete-messages'.
6059
6060         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
6061         (elmo-folder-initialize): Changed to expand alias into index path.
6062
6063         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
6064         `elmo-mime-insert-header-from-buffer' with 6th arg
6065         `sorted-fields'.
6066
6067 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
6068
6069         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
6070
6071         * elmo.el (elmo-diff-new): New inline function.
6072         (elmo-diff-unread): Ditto.
6073         (elmo-diff-all): Ditto.
6074
6075         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
6076         value from responseb.
6077         (elmo-imap4-folder-diff-plugged): Ditto.
6078         (elmo-imap4-server-diff-async): Added recent argument.
6079         (elmo-server-diff-async): Ditto.
6080         (elmo-imap4-folder-diff-plugged): Ditto.
6081
6082         * elmo-version.el (elmo-version): Up to 2.7.6.
6083
6084 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6085
6086         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
6087         in quoted-stirng.
6088
6089 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
6090
6091         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
6092
6093         * elmo-imap4.el (elmo-folder-initialize): Ditto.
6094
6095         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6096
6097         * elmo-multi.el (elmo-folder-initialize): Ditto.
6098
6099         * elmo-util.el (elmo-parse-token): New function.
6100         (elmo-parse-prefixed-element): Ditto.
6101
6102 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6103
6104         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
6105         delete process.
6106         (elmo-imap4-accept-ok): Ditto.
6107
6108 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6109
6110         * mmimap.el (mime-imap-entity-header-string): Don't check first
6111         element of node-id is `0' (Follow last change).
6112
6113 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6114
6115         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
6116         assigned irregular node-id to nested multipart section.
6117         (initialize-instance): Followed above change.
6118
6119 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6120
6121         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
6122         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
6123         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
6124         `elmo-shimbun-get-headers');
6125         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
6126         visible article on summary exists in headers).
6127         (elmo-map-message-fetch): Cause an error when folder is unplugged.
6128
6129 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
6130
6131         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
6132         definition.
6133
6134 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
6135
6136         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
6137
6138 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6139
6140         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
6141         header separator into loop condition.
6142
6143 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6144
6145         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
6146         Return duplicate folder if it has subfolder.
6147
6148 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6149
6150         * elmo.el (elmo-make-folder): Add folder name error check.
6151
6152         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
6153         (elmo-nntp-encode-group-string): New inline function.
6154         (elmo-nntp-decode-group-string): Ditto.
6155         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
6156         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
6157         Use `not' instead of `null';
6158         Use elmo-nntp-decode-group-string.
6159
6160         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
6161
6162         * elmo-version.el (elmo-version): Up to 2.7.5.
6163
6164 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6165
6166         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
6167         Hide progress gauge if `elmo-folder-move-messages' exits
6168         nonlocally.
6169
6170 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6171
6172         * elmo-imap4.el (elmo-folder-initialize): Use
6173         `elmo-imap4-encode-folder-string' for folder name.
6174
6175 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6176
6177         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
6178         `done'.
6179
6180 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6181
6182         * elmo-util.el (elmo-progress-counter-alist): New internal
6183         variable.
6184         (elmo-progress-counter-value): New macro.
6185         (elmo-progress-counter-all-value): Ditto.
6186         (elmo-progress-counter-format): Ditto.
6187         (elmo-progress-counter-set-value): Ditto.
6188         (elmo-progress-set): New function.
6189         (elmo-progress-clear): Ditto.
6190         (elmo-progress-notify): Ditto.
6191
6192         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
6193         counter.
6194
6195         * elmo.el (elmo-generic-folder-append-messages): Call
6196         `elmo-progress-notify'.
6197         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
6198
6199         * elmo-archive.el (elmo-folder-append-messages): Call
6200         `elmo-progress-notify'.
6201
6202         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
6203
6204         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
6205
6206         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
6207
6208 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6209
6210         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
6211         'Create'.
6212         (elmo-message-encache-dop): Added argument `read'.
6213
6214         * elmo-shimbun.el (elmo-message-encache): Ditto.
6215
6216         * elmo-net.el (elmo-message-encache): Ditto.
6217
6218         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
6219         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
6220         elmo-imap4-seen-messages.
6221         (elmo-folder-msgdb-create-plugged): Initialize
6222         elmo-imap4-seen-messages;
6223         Set seen mark on elmo-imap4-seen-messages.
6224
6225         * elmo-pipe.el (elmo-folder-message-file-p): Define.
6226
6227         * elmo.el (elmo-generic-folder-append-messages): Check return value of
6228         elmo-folder-append-buffer.
6229         (elmo-folder-encache): Added optional argument `read'.
6230         (elmo-message-encache): Ditto.
6231
6232         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
6233
6234         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
6235
6236         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
6237         if append buffer content succeds.
6238
6239 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6240
6241         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
6242         elmo-display-progress.
6243
6244         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
6245         Set 4th argument of mime-display-message.
6246         (elmo-mime-display-as-is): Ditto.
6247
6248 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
6249
6250         * elmo-nmz.el (toplevel): Require 'mime-edit.
6251         (elmo-nmz-content-type-alist): Abolished.
6252         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
6253         content is not a message.
6254         (elmo-map-message-fetch): Changed behavior exept for message content;
6255         Detect mime-charset automatically, Use `mime-find-file-type' to detect
6256         content-type, Add From: and Subject: field.
6257
6258 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6259
6260         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
6261         (elmo-map-message-fetch): Add `Content-Type' field if contents is
6262         not a message.
6263
6264 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6265
6266         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
6267         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
6268
6269         * elmo-archive.el (elmo-folder-writable-p): Defined.
6270
6271         * elmo-cache.el (elmo-folder-writable-p): Ditto.
6272
6273         * elmo-filter.el (elmo-folder-writable-p): Ditto.
6274
6275         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
6276
6277         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
6278
6279         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
6280
6281         * elmo-mark.el (elmo-folder-writable-p): Ditto.
6282
6283         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
6284
6285         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
6286
6287 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
6288
6289         * elmo-util.el (elmo-address-quote-specials): New function;
6290         Renamed from `wl-address-quote-specials'.
6291
6292 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6293
6294         * elmo-version.el (elmo-version): Up to 2.7.4.
6295
6296 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
6297
6298         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
6299
6300 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6301
6302         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
6303         both compile-time and run-time to avoid byte-compile warning.
6304
6305 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
6306
6307         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
6308
6309 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6310
6311         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
6312         option.
6313         (elmo-mime-display-as-is-internal): Use it.
6314
6315         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
6316         if `read-passwd' is not defined.
6317
6318 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6319
6320         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
6321         by original number.
6322         (elmo-folder-status): Call `elmo-folder-open-internal';
6323         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
6324         (elmo-folder-close-internal): Set location-alist as nil.
6325         (elmo-folder-clear): Define.
6326         (elmo-folder-check): Don't set location-alist as nil.
6327
6328         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
6329
6330 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
6331
6332         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
6333         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
6334
6335         * mmimap.el (mime-imap-entity::requested): New slot.
6336         (mime-imap-location-fetch-entity-p): New generic function.
6337         (mime-decode-parameters): Define using `defun-maybe'.
6338         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6339         content-type structure.
6340         (mime-entity-body): Return empty body if
6341         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6342
6343         * elmo.el (elmo-message-displaying): New variable.
6344
6345         * elmo-mime.el (elmo-mime-message-display): Bind
6346         elmo-message-displaying as t.
6347
6348         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6349
6350 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6351
6352         * acap.el (acap-open): erase buffer before starting network process.
6353         (acap-store): Rewrite.
6354
6355 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6356
6357         * elmo-imap4.el (elmo-imap4-default-mailbox,
6358         elmo-imap4-default-server
6359         elmo-imap4-default-authenticate-type,
6360         elmo-imap4-default-user,
6361         elmo-imap4-default-port,
6362         elmo-imap4-default-stream-type,
6363         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6364
6365         * elmo-pop3.el (elmo-pop3-default-user,
6366         elmo-pop3-default-server,
6367         elmo-pop3-default-authenticate-type,
6368         elmo-pop3-default-port,
6369         elmo-pop3-default-stream-type,
6370         elmo-pop3-stream-type-alist): Ditto.
6371
6372         * elmo-nntp.el (elmo-nntp-default-server,
6373         elmo-nntp-default-user,
6374         elmo-nntp-default-port,
6375         elmo-nntp-default-stream-type,
6376         elmo-nntp-stream-type-alist): Ditto.
6377
6378         * elmo-vars.el: Follow changes above.
6379         (elmo-setting): New custom group; added 'elmo-setting group to
6380         above variables.
6381
6382         * elmo-version.el (elmo-version): Up to 2.7.3.
6383
6384         * acap.el (acap-parse-response): Don't delete process when BYE
6385         response (It causes hang-up on slow network environment).
6386         (toplevel): Added comment.
6387
6388 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6389
6390         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6391
6392         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6393         parsing NIL.
6394         (acap-parse-return-metadata): Ditto.
6395
6396         * slp.el: New file.
6397         (toplevel): Fixed typo.
6398
6399         * acap.el: New file.
6400         (acap-network-stream-open): Show "Connecting..." message.
6401         (acap-parse-response): Fixed problem for BYE untagged response.
6402         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6403         (toplevel): Added tiny comments.
6404
6405 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6406
6407         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6408         space delimiter for uidl response.
6409
6410 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6411
6412         * elmo-vars.el (elmo-use-semi): Eliminated.
6413
6414         * elmo-util.el (elmo-string-assoc-all): New function.
6415
6416 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6417
6418         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6419         property 'mime-preview-situation for `mime-preview-quit'.
6420
6421 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6422
6423         * elmo.el (elmo-message-fetch-with-cache-process): Call
6424         elmo-message-fetch-internal instead of causing an error when fetch
6425         strategy is 'entire but only 'section cache is available.
6426
6427 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6428
6429         * elmo-version.el (elmo-version): Up to 2.7.2.
6430
6431         * elmo.el (elmo-generic-folder-append-messages): Make
6432         fetch-strategy with `use-cache'.
6433
6434         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6435         (elmo-dop-queue-method-name): New macro.
6436
6437 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6438
6439         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6440         unbalanced parenthesis.
6441
6442 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6443
6444         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6445
6446 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6447
6448         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6449         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6450
6451 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6452
6453         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6454         local variables.
6455
6456 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6457
6458         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6459         (elmo-message-use-cache-p): Define.
6460         (elmo-folder-msgdb-create): Treat cache.
6461
6462 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6463
6464         * elmo-nntp.el (elmo-network-initialize-session): Call
6465         `elmo-nntp-send-mode-reader'.
6466         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6467
6468 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6469
6470         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6471         alist.
6472         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6473         assoc.
6474
6475         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6476         for `elmo-plugged-p'.
6477         (elmo-open-network-stream): Fixed stream-type argument.
6478
6479 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6480
6481         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6482         unknown archive type is specified.
6483
6484 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6485
6486         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6487
6488         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6489         while loading msgdb.
6490
6491         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6492         (elmo-folder-open-internal): Rewrite.
6493
6494 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6495
6496         * elmo-mime.el (elmo-mime-display-as-is-internal):
6497         Adjust buffer-multibyte status.
6498
6499 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6500
6501         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6502         of elmo-condition-find-key.
6503
6504         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6505         (elmo-condition-in-msgdb-p): Ditto.
6506         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6507         argument.
6508
6509 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6510
6511         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6512
6513 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6514
6515         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6516         label for elmo-display-progress.
6517
6518 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6519
6520         * elmo.el (elmo-folder-clear): New method.
6521         (elmo-folder-clear): Define.
6522         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6523
6524         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6525         (elmo-folder-clear): Define.
6526
6527         * elmo-map.el (elmo-folder-clear): Define.
6528
6529         * elmo-version.el (elmo-version): Up to 2.7.1.
6530
6531 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6532
6533         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6534         updates.
6535
6536 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6537
6538         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6539         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6540
6541 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6542
6543         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6544
6545         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6546         and re-written.
6547
6548         * elmo-imap4.el (elmo-folder-initialize): Use
6549         elmo-get-network-stream-type.
6550
6551         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6552
6553         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6554
6555 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6556
6557         * elmo.el (elmo-message-encache): Set unread argument for
6558         elmo-message-fetch.
6559
6560         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6561
6562         * elmo.el (elmo-net-port-info): New method.
6563
6564         * elmo-shimbun.el (elmo-net-port-info): Define.
6565         (elmo-message-encache): Ditto.
6566
6567         * elmo-net.el (elmo-net-port-info): Define as method.
6568
6569         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6570         unplugged status when elmo-enable-disconnected-operation is t.
6571
6572         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6573         of spool folder before checking new number.
6574
6575 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6576
6577         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6578         (elmo-network-setup-session): Ditto.
6579         (elmo-message-fetch-plugged): Ditto.
6580         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6581         (elmo-network-initialize-session): Ditto.
6582         (elmo-pop3-read-response): Abolish 3rd argument.
6583         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6584         (elmo-pop3-read-contents): Ditto.
6585         (elmo-pop3-read-body): Ditto.
6586         (elmo-folder-status): Call elmo-folder-close.
6587         (elmo-pop3-lock): Abolish.
6588         (elmo-pop3-unlock): Ditto.
6589         (elmo-pop3-locked-p): Ditto.
6590         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6591
6592 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6593
6594         * elmo-version.el (elmo-version): Up to 2.7.0.
6595
6596         * elmo-pop3.el (elmo-pop3-debug): New variable.
6597         (elmo-pop3-debug-inhibit-logging): Ditto.
6598         (elmo-pop3-debug): New function.
6599         (elmo-pop3-send-command): Call elmo-pop3-debug.
6600         (elmo-pop3-read-response): Added keep-lock optional argument;
6601         Don't unlock if keep-lock is non-nil.
6602         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6603         (elmo-network-authenticate-session): Bind
6604         elmo-pop3-debug-inhibit-logging as t.
6605         (elmo-network-setup-session): Call elmo-pop3-read-response with
6606         keep-lock argument.
6607         (elmo-pop3-read-msg): Ditto.
6608         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6609         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6610         (elmo-network-initialize-session): Call elmo-pop3-lock.
6611         (elmo-folder-close-internal): Don't clear location-alist slot.
6612         (elmo-folder-check): Clear location-alist slot.
6613
6614 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6615
6616         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6617         (elmo-pop3-send-command): Call elmo-pop3-lock.
6618         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6619         (elmo-pop3-read-contents): Ditto.
6620         (elmo-pop3-lock): New function.
6621         (elmo-pop3-unlock): Ditto.
6622         (elmo-pop3-locked-p): Ditto.
6623         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6624         returns t.
6625
6626 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6627
6628         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6629
6630         * elmo-util.el (elmo-file-field-primitive-condition-match):
6631         New inline function (Don't fetch file content if "first" or "last").
6632         (elmo-file-field-condition-match): Use
6633         elmo-file-field-primitive-condition-match.
6634
6635         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6636         "first".
6637
6638         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6639         (elmo-message-fetch-plugged): Fixed.
6640
6641         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6642
6643 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6644
6645         * elmo.el (elmo-folder-move-messages): Bind
6646         elmo-inhibit-display-retrieval-progress as t while moving messages.
6647
6648         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6649         New variable.
6650         (elmo-inhibit-display-retrieval-progress): Ditto.
6651
6652         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6653         for retrieval progress;
6654         Don't display progress when total buffer size is smaller than
6655         elmo-display-retrieval-progress-threshold.
6656         (elmo-message-fetch-plugged): Don't display progress when
6657         elmo-inhibit-display-retrieval-progress is non-nil.
6658
6659         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6660         for retrieval progress;
6661         Don't display progress when literal size is smaller than
6662         elmo-display-retrieval-progress-threshold.
6663         (elmo-imap4-message-fetch): Don't display progress when
6664         elmo-inhibit-display-retrieval-progress is non-nil.
6665
6666 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6667
6668         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6669         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6670         (elmo-imap4-message-fetch): Likewise.
6671
6672         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6673         (elmo-shimbun-index-range-alist): Ditto.
6674         (elmo-shimbun-use-entire-index): Abolish.
6675         (shimbun-mua-use-entire-index): Ditto.
6676         (elmo-shimbun-folder): Added new slot `range'.
6677         (elmo-folder-initialize): Setup slot `range'.
6678
6679 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6680
6681         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6682         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6683         (elmo-shimbun-get-headers): Use return value of
6684         `shimbun-article-expiration-days'.
6685         (elmo-folder-close-internal): Clean up last-check slot.
6686
6687         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6688         (elmo-pop3-total-size): New variable.
6689         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6690
6691         * elmo.el (elmo-folder-reserve-status-p): New method.
6692
6693         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6694         (elmo-shimbun-use-entire-index): New user option.
6695         (shimbun-elmo-mua): New class.
6696         (shimbun-mua-search-id): Define.
6697         (shimbun-mua-use-entire-index): Ditto.
6698         (elmo-shimbun-folder:last-check): New slot.
6699         (elmo-shimbun-headers-cache-header-list): Abolish.
6700         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6701         (elmo-shimbun-headers-cache-header-hash): Ditto.
6702         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6703         (elmo-shimbun-headers-cache-last-check): Ditto.
6704         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6705         (elmo-shimbun-headers-check-p): Rewrite.
6706         (elmo-shimbun-msgdb-to-headers): New function.
6707         (elmo-shimbun-get-headers): Rewrite.
6708         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6709         (elmo-folder-open-internal): Get headers only if
6710         `elmo-shimbun-headers-check-p' is non-nil.
6711         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6712         is non-nil.
6713         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6714         (elmo-quit): Removed.
6715
6716         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6717         function.
6718         (elmo-msgdb-overview-entity-set-extra): Ditto.
6719         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6720
6721         * elmo-map.el (elmo-folder-status): Don't call
6722         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6723         is non-nil.
6724
6725 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6726
6727         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6728         of `elmo-msgdb-search-internal-primitive' when condition's car is
6729         `and' or `or'.
6730
6731 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6732
6733         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6734
6735 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6736
6737         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6738         call `elmo-pipe-drain'.
6739
6740 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6741
6742         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6743         typo. (elmo-cache-folder -> elmo-mark-folder)
6744
6745 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6746
6747         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6748         `elmo-message-fetch'.
6749
6750 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6751
6752         * elmo-net.el (elmo-message-encache): Fixed typo.
6753         (elmo-message-fetch-unplugged): Changed call
6754         `elmo-message-fetch-internal' without argument `outbuf'.
6755
6756 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6757
6758         * elmo.el (elmo-message-encache): Define as generic function.
6759         (elmo-message-fetch-field): New generic function.
6760         (elmo-message-fetch-with-cache-process): Cause an error when
6761         fetch strategy is 'entire but only 'section cache is available.
6762         (toplevel): Fixed nmz folder definition.
6763
6764         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6765         (elmo-msgdb-resume-list-filename): Ditto.
6766         (elmo-queue-filename): Ditto.
6767         (elmo-enable-disconnected-operation): Changed default value to t.
6768
6769         * elmo-util.el (elmo-cache-path-section-p): New function.
6770         (elmo-file-cache-get): Use it.
6771         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6772         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6773         (elmo-dop-queue-save): Ditto.
6774
6775         * elmo-net.el (elmo-folder-status-unplugged): Call
6776         elmo-folder-status-dop.
6777         (elmo-folder-list-messages-unplugged): Implemented.
6778         (elmo-folder-delete-messages-unplugged): Define.
6779         (elmo-folder-msgdb-create): Define.
6780         (elmo-folder-msgdb-create-unplugged): Define.
6781         (elmo-folder-mark-as-read-unplugged): Ditto.
6782         (elmo-folder-unmark-read-unplugged): Ditto.
6783         (elmo-folder-mark-as-important-unplugged): Ditto.
6784         (elmo-folder-unmark-important-unplugged): Ditto.
6785         (elmo-message-encache): Ditto.
6786
6787         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6788         (elmo-dop-queue-save): Ditto.
6789
6790         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6791         `elmo-folder-msgdb-create'.
6792         (elmo-folder-append-buffer): Implemented unplugged operation.
6793         (elmo-folder-append-messages): Call parent method in unplugged status.
6794         (elmo-message-fetch-unplugged): Removed definition.
6795         (elmo-message-fetch-field): Implemented.
6796
6797         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6798         (elmo-dop-folder): Removed variable definition.
6799         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6800         (elmo-dop-queue-flush): Implemented.
6801         (elmo-dop-queue-merge): Removed definition (TODO).
6802         (elmo-dop-spool-folder): New function.
6803         (elmo-dop-spool-folder-append-buffer): Ditto.
6804         (elmo-dop-spool-folder-list-messages): Ditto.
6805         (elmo-dop-list-deleting-messages): Ditto.
6806         (elmo-folder-append-buffer-dop): Ditto.
6807         (elmo-folder-delete-messages-dop): Ditto.
6808         (elmo-message-encache-dop): New inline function.
6809         (elmo-create-folder-dop): Ditto.
6810         (elmo-folder-mark-as-read-dop): Ditto.
6811         (elmo-folder-unmark-read-dop): Ditto.
6812         (elmo-folder-mark-as-important-dop): Ditto.
6813         (elmo-folder-unmark-important-dop): Ditto.
6814         (elmo-folder-status-dop): Fixed.
6815         (elmo-folder-append-buffer-dop-delayed): New function.
6816         (elmo-folder-delete-messages-dop-delayed): Ditto.
6817         (elmo-dop-msgdb): Ditto.
6818
6819 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6820
6821         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6822
6823 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6824
6825         * elmo.el (elmo-folder-move-messages): Fixed problem when
6826         `dst-folder' is 'null.
6827
6828 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6829
6830         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6831         instead of current mark.
6832
6833         * elmo-multi.el (elmo-folder-list-importants-internal): No
6834         operation if importants is not list.
6835
6836         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6837         Return t if importants is not list.
6838
6839         * elmo-map.el (elmo-map-folder-list-importants): Define.
6840         (elmo-folder-list-importants-internal): Check return value of
6841         `elmo-map-folder-list-importants-internal'.
6842
6843         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6844
6845         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6846
6847         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6848
6849         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6850
6851 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6852
6853         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6854         (Patch is provided by <kita@coe.nttdata.co.jp>).
6855
6856 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6857
6858         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6859         mark folder.
6860
6861 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6862
6863         * elmo.el (elmo-message-fetch): Define.
6864         (elmo-message-fetch-with-cache-process): New generic method.
6865         (elmo-message-fetch-internal): New generic method.
6866         (elmo-folder-synchronize):
6867
6868         * elmo-archive.el (elmo-message-fetch-internal): Define.
6869         (elmo-message-fetch): Eliminated.
6870
6871         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6872         (elmo-message-fetch): Eliminated.
6873
6874         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6875         argument OUTBUF.
6876         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6877
6878         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6879         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6880
6881         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6882         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6883
6884         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6885
6886         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6887
6888         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6889
6890         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6891         (elmo-message-fetch-unplugged): New generic method.
6892         (elmo-message-fetch-internal): Remove cache process (Renamed from
6893         `elmo-message-fetch').
6894
6895         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6896         (elmo-message-fetch): Eliminated.
6897         (elmo-message-fetch-unplugged): Ditto.
6898
6899         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6900
6901 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6902
6903         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6904         of `to-be-deleted' from number-alist to number-list.
6905
6906 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6907
6908         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6909         (elmo-folder-mark-as-important): Ditto.
6910
6911 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6912
6913         * elmo.el (elmo-folder): Added process-duplicates slot.
6914
6915         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6916         (elmo-folder-unmark-read): Ditto.
6917         (elmo-folder-unmark-important): Ditto.
6918         (elmo-folder-mark-as-important): Ditto.
6919
6920         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6921         duplicated message processing.
6922
6923         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6924
6925 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6926
6927         * elmo-util.el (elmo-list-subdirectories-1): New function.
6928         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6929         (elmo-mapcar-list-of-list): New function.
6930
6931         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6932         `elmo-mapcar-list-of-list' instead of `mapcar'.
6933
6934         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6935
6936         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6937         `elmo-have-link-count'. Return the fully qualified folder name.
6938
6939 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6940
6941         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6942         (elmo-shimbun-headers-cache): New internal variable.
6943         (elmo-shimbun-headers-cache-header-list): New inline function.
6944         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6945         (elmo-shimbun-headers-cache-header-hash): Ditto.
6946         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6947         (elmo-shimbun-headers-cache-last-check): Ditto.
6948         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6949         (elmo-shimbun-lapse-seconds): Ditto.
6950         (elmo-shimbun-headers-cache-check-p): Ditto.
6951         (elmo-shimbun-get-headers): New function.
6952         (elmo-folder-open-internal): Call it.
6953         (elmo-quit): Define (Clear headers-cache).
6954
6955 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6956
6957         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6958
6959         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6960         (elmo-msgdb-flist-save): Ditto.
6961
6962         * elmo-shimbun.el (elmo-folder-list-subfolders):
6963         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6964         (elmo-folder-exists-p): Ditto.
6965
6966         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6967         argument for `shimbun-header-insert'.
6968
6969 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6970
6971         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6972         at first time.
6973
6974         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6975         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6976
6977 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6978
6979         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6980         (elmo-folder-plugged-p): Define.
6981         (elmo-folder-set-plugged): Ditto.
6982         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6983         (elmo-folder-list-messages-internal): Return t if unplugged.
6984         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6985
6986         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6987         when elmo-folder-list-messages-internal method of children returns t.
6988
6989         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6990         pair is nil.
6991         (elmo-folder-open-internal): Don't update if unplugged status.
6992
6993 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6994
6995         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6996         new message.
6997
6998 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6999
7000         * elmo-util.el (elmo-file-cache-save): Ignore errors.
7001
7002         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
7003         saving.
7004
7005 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
7006
7007         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
7008
7009         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
7010         (elmo-folder-open-internal): Set up headers slot.
7011         (elmo-folder-check): Call elmo-folder-close-internal and
7012         elmo-folder-open-internal.
7013         (elmo-folder-close-internal): Clean up headers slot.
7014
7015 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7016
7017         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
7018         exactly folder list.
7019         (elmo-folder-append-messages): Fixed append archive with prefix.
7020
7021         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
7022         make temp files with start-number.
7023
7024         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
7025
7026 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7027
7028         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
7029         argument `visible-only'.
7030         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
7031         instead of `if'.
7032
7033         * elmo-pop3.el (elmo-folder-open-internal): Check
7034         `elmo-inhibit-number-mapping' is non-nil.
7035
7036         * elmo-pipe.el (elmo-folder-status): Fixed.
7037
7038 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
7039
7040         * elmo.el (elmo-dop-queue-flush): Added autload setting.
7041
7042         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
7043         (elmo-folder-open-internal): Setup `header-hash' slot.
7044         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
7045         information.
7046         (elmo-map-message-fetch): Ditto.
7047
7048 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
7049
7050         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7051         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7052         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7053         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
7054
7055         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
7056
7057 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
7058
7059         * sb-airs.el: Added footer.
7060
7061         * shimbun.el (shimbun-article): Define as luna-method.
7062
7063         * sb-tcup.el: New file.
7064
7065         * sb-airs.el (toplevel): Require 'sb-mhonarc.
7066         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
7067
7068 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
7069
7070         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
7071         (shimbun-get-headers): Ditto.
7072
7073         * elmo.el: Moved obsolete variable definitions from
7074         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
7075
7076         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
7077         groups.
7078
7079         * shimbun.el: New file.
7080
7081         * elmo-shimbun.el: New file.
7082
7083         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7084         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7085         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7086         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
7087
7088 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
7089
7090         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
7091         hierarchy is t.
7092
7093 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
7094
7095         * elmo.el (elmo-folder-msgdb): Define as macro.
7096         (elmo-folder-open): Added argument `load-msgdb'.
7097         (elmo-generic-folder-open): Ditto.
7098         (elmo-folder-encache): New function.
7099
7100         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
7101
7102         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
7103
7104         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
7105         Eliminated argument FOLDER and added argument MSGDB.
7106         (elmo-dop-queue-load): Moved from elmo-dop.el.
7107         (elmo-dop-queue-save): Ditto.
7108
7109         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
7110
7111         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
7112
7113         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
7114         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
7115         (elmo-filter-folder-list-importants-internal): Ditto.
7116
7117         * elmo-map.el (elmo-folder-pack-number): Ditto.
7118
7119         * elmo-mime.el (elmo-mime-message-display): Ditto.
7120
7121         * elmo.el (elmo-generic-folder-commit): Ditto.
7122         (elmo-folder-list-unreads): Ditto.
7123         (elmo-folder-list-importants): Ditto.
7124         (elmo-generic-folder-commit): Ditto.
7125         (elmo-message-set-mark): Ditto.
7126         (elmo-generic-folder-append-msgdb): Ditto.
7127         (elmo-folder-synchronize): Ditto.
7128         (elmo-folder-messages): Ditto.
7129         (elmo-init): Call elmo-dop-queue-load.
7130         (elmo-folder-list-messages): Ditto.
7131
7132         * elmo-nntp.el (elmo-folder-update-number): Ditto.
7133         (elmo-nntp-folder-process-crosspost): Ditto.
7134         (elmo-folder-list-unreads-internal): Ditto.
7135
7136         * elmo-dop.el: Removed old functions.
7137
7138 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
7139
7140         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
7141         `folder' to `msgdb'.
7142
7143 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
7144
7145         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
7146         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
7147
7148         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
7149         case-fold-search.
7150
7151 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
7152
7153         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
7154         defined.
7155
7156         * mmimap.el (toplevel): Require 'mime-parse and 'static.
7157         (mmimap-parse-parameters-from-list): Define as alias for
7158         `mime-decode-parameter-plist' if it is defined as function.
7159         (mmimap-make-mime-entity): Added argument `number'.
7160         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
7161         as 0.
7162         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
7163
7164         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
7165
7166         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
7167
7168         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
7169
7170 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
7171
7172         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
7173
7174         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
7175         when elmo-imap4-default-authenticate-type is nil.
7176         (elmo-folder-list-subfolders): Ditto
7177         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
7178         (elmo-imap4-fetch-callback-1-subr): Renamed from
7179         `elmo-imap4-fetch-callback-1' and define as inline function.
7180         (elmo-imap4-fetch-callback-1):
7181         Renamed from `elmo-imap4-fetch-callback'.
7182         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
7183
7184         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
7185         msgdb path (To keep compatibility with main trunk).
7186
7187         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
7188
7189         * elmo-util.el (elmo-make-file-cache): Moved position of
7190         some macros.
7191
7192         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
7193         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
7194         instead of `elmo-pop3-inhibit-uidl'.
7195         (elmo-folder-exists-p): Ditto.
7196         (elmo-pop3-folder-list-messages): Ditto.
7197
7198         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
7199         instead of `elmo-pop3-inhibit-uidl'.
7200         (elmo-folder-status): Ditto.
7201
7202         * elmo-dop.el (elmo-dop-folder): New variable.
7203         (elmo-dop-lock-message): Eliminated.
7204         (elmo-dop-unlock-message): Ditto.
7205         (elmo-dop-lock-list-load): Ditto.
7206         (elmo-dop-lock-list-save): Ditto.
7207         (elmo-dop-delete-folder): Ditto.
7208         (elmo-dop-rename-folder): Ditto.
7209
7210         * elmo.el: Removed incomplete commentary.
7211
7212 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7213
7214         * elmo.el (toplevel): Require 'elmo-version first;
7215         for little `recursive-load-depth' settings.
7216         Fix "ends here" comment.
7217
7218 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
7219
7220         * elmo-util.el (toplevel): Require 'poem;
7221         Some functions are moved from elmo-cache.el.
7222
7223         * elmo-net.el (toplevel): Require 'elmo-cache.
7224
7225         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
7226
7227         * elmo.el (toplevel): Ditto.
7228
7229         * elmo-cache.el: Rewrite with luna;
7230         Some functions are moved to elmo-util.el.
7231
7232         * elmo-internal.el (elmo-internal-folder-list): New variable.
7233         (elmo-internal-folder-initialize): Rewrite.
7234         (elmo-folder-list-subfolders): Ditto.
7235
7236         * elmo-cache.el (elmo-cache-search-all): Eliminated.
7237         (elmo-cache-collect-sub-directories): Ditto.
7238
7239 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
7240
7241         * elmo-version.el (elmo-version): Up to 2.5.8.
7242
7243         * elmo.el (elmo-folder-list-messages-mark-match): New function.
7244
7245         * elmo-util.el (elmo-list-insert): New function.
7246
7247 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
7248
7249         * elmo.el (elmo-init): New function.
7250         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
7251
7252         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
7253         (Renamed from `elmo-localdir-header-chop-length').
7254
7255         * elmo-pop3.el (elmo-pop3-use-cache,
7256         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
7257
7258         * elmo-nntp.el (elmo-message-fetch): Define.
7259         (elmo-message-fetch-unplugged): Ditto.
7260         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
7261         (elmo-nntp-use-cache): Ditto.
7262         (elmo-nntp-max-number-precedes-list-active): Ditto.
7263
7264         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
7265
7266         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
7267         `elmo-msgdb-insert-file-header'.
7268         Use `elmo-msgdb-file-header-chop-length'.
7269
7270         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
7271         `elmo-vars.el'.
7272
7273         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
7274         (elmo-cache-msgdb-create-overview-entity-from-file): Use
7275         `elmo-msgdb-insert-file-header'.
7276
7277         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
7278         Use new variable;
7279         Define obsolete variables with `elmo-define-obsolete-variable',
7280
7281         * elmo-util.el (elmo-warning-buffer-name): New constant.
7282         (elmo-warning): New function.
7283         (elmo-obsolete-variable-alist): New variable.
7284         (elmo-obsolete-variable-show-warnings): New variable.
7285         (elmo-define-obsolete-variable): New function.
7286         (elmo-resque-obsolete-variable): Ditto.
7287         (elmo-resque-obsolete-variables): Ditto.
7288
7289 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7290
7291         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
7292         Eliminated.
7293
7294         * elmo-pop3.el, elmo-nntp.el: Use custom.
7295
7296 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7297
7298         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
7299         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
7300
7301 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7302
7303         * Luna-fy Kenichi OKADA's following changes.
7304         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
7305         `nohide'.
7306         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
7307
7308 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
7309
7310         * elmo-util.el (elmo-display-progress): Prefer
7311         `progress-feedback-with-label' to `lprogress-display'.
7312
7313 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7314
7315         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
7316
7317 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
7318
7319         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
7320         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
7321         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7322         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7323         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
7324         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
7325         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7326         * elmo-filter.el (elmo-filter-list-folder): Ditto.
7327         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7328         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7329         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7330         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7331         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7332
7333 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7334
7335         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
7336         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7337
7338 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7339
7340         * elmo.el (elmo-folder-process-crosspost): New generic method.
7341         (elmo-folder-writable-p): Ditto.
7342         (elmo-folder-message-appendable-p): Eliminated.
7343         (elmo-generic-folder-append-msgdb): Rewrite.
7344         (elmo-newsgroups-hashtb): New internal variable.
7345         (elmo-crosspost-message-set): Eliminated.
7346         (elmo-crosspost-message-delete): Ditto.
7347         (elmo-setup-subscribed-newsgroups): New function.
7348         (elmo-crosspost-message-alist-modified): New internal variable.
7349         (elmo-crosspost-message-alist-load): New function (Renamed from
7350         `wl-crosspost-alist-load').
7351         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7352         `wl-crosspost-alist-save').
7353
7354         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7355
7356         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7357         `unreads'.
7358         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7359         elmo-newsgroups-hashtb).
7360         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7361         `elmo-nntp-folder-update-crosspost-message-alist'.
7362         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7363         `elmo-nntp-groups-hashtb'.
7364         (elmo-nntp-make-groups-hashtb): Eliminated.
7365         (elmo-nntp-parse-newsgroups): New function (Renamed from
7366         `wl-parse-newsgroups').
7367         (elmo-folder-creatable-p, elmo-folder-writable-p,
7368         elmo-folder-close-internal, elmo-folder-mark-as-read,
7369         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7370         Define.
7371         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7372
7373         * elmo-net.el (elmo-message-fetch): Check buffer size.
7374
7375         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7376
7377         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7378
7379         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7380         before `close' command.
7381
7382         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7383         `mark-alist' (All other related portions are changed).
7384
7385 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7386
7387         * elmo-util.el (elmo-create-hash-size): Eliminated.
7388         (elmo-make-hash) Make a hash with `one less than a power of two'
7389         length.
7390
7391         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7392         (elmo-hash-maximum-size): Changed value.
7393
7394 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7395
7396         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7397         (elmo-mime-message-display-as-is): Ditto.
7398
7399 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7400
7401         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7402         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7403
7404 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7405
7406         * elmo-mark.el: New file.
7407
7408         * elmo-internal.el: Rewrite (Almost empty).
7409
7410 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7411
7412         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7413         (mime-imap-entity-header-string): Ditto.
7414         (mmimap-entity-section): Rewrite.
7415
7416 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7417
7418         * elmo-nmz.el: New file.
7419
7420         * elmo-pipe.el: Rewrite with luna.
7421
7422 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7423
7424         * elmo-archive.el: Rewrite with luna.
7425
7426         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7427         (elmo-folder-list-importants-internal): Ditto.
7428
7429 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7430
7431         * elmo-archive.el (elmo-archive-version): Abolish.
7432         (toplevel) Removed `boso' comment.
7433
7434 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7435
7436         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7437         elmo-msgdb-add-msgs-to-seen-list-subr;
7438         Changed argument seen-marks to unread-marks.
7439
7440         * elmo-nntp.el: Rewrite with luna.
7441
7442 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7443
7444         * elmo-filter.el: Rewrite with luna.
7445
7446 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7447
7448         * elmo-pop3.el: Rewrite with luna.
7449
7450 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7451
7452         * elmo-multi.el: Rewrite with luna.
7453
7454         * elmo-vars.el (elmo-use-killed-list): Abolish.
7455         All other related portions are changed.
7456         (elmo-filename-replace-string-alist): Renamed from
7457         elmo-msgid-replace-string-alist.
7458
7459 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7460
7461         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7462
7463         * elmo-map.el: New file.
7464         * elmo-maildir.el: Rewrite with luna.
7465
7466 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7467
7468         * elmo.el: Changed meaning of `elmo-folder-commit'.
7469         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7470
7471 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7472
7473         * elmo.el (elmo-folder-append-buffer): New function.
7474         (Renamed from `elmo-append-msg')
7475
7476 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7477
7478         * elmo-mime.el: New file.
7479
7480 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7481
7482         * elmo-cache.el: Rewrite.
7483
7484 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7485
7486         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7487
7488 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7489
7490         * elmo-vars.el (elmo): New group.
7491         (elmo-strict-diff-folder-regexp): New variable.
7492
7493         * elmo-util.el (elmo-call-func): Abolish.
7494         (elmo-folder-get-type): Ditto.
7495         (elmo-*-get-spec): Ditto.
7496         (elmo-*-spec-*): Ditto.
7497         (elmo-imap4-identical-name-space-p): Ditto.
7498         (elmo-folder-identical-system-p): Ditto.
7499         (elmo-folder-direct-copy-alist): Ditto.
7500         (elmo-folder-direct-copy-p): Ditto.
7501
7502         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7503         (elmo-folder-initialize): Define.
7504         (elmo-folder-get-primitive-list): Ditto.
7505
7506         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7507         (elmo-folder-initialize): Define.
7508         Renamed `elmo-network-session-host-internal' to
7509         `elmo-network-session-server-internal'.
7510
7511         * elmo-multi.el (elmo-multi-folder): New luna class.
7512         (elmo-folder-initialize): Define.
7513         (elmo-folder-get-primitive-list): Ditto.
7514         (elmo-folder-contains-type): Ditto.
7515         (elmo-message-use-cache-p): Ditto.
7516
7517         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7518         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7519
7520         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7521         (elmo-folder-initialize): Define.
7522
7523         * elmo-filter.el (elmo-filter-folder): New luna class.
7524         (elmo-folder-initialize): Define.
7525         (elmo-folder-get-primitive-list): Ditto.
7526         (elmo-folder-contains-type): Ditto.
7527
7528 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7529
7530         * elmo-imap4.el: Rewrite with luna.
7531
7532         * mmimap.el: New file.
7533
7534         * mmelmo.el, mmelmo-imap4.el: Removed.
7535
7536         * elmo-net.el: Ditto.
7537
7538         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7539         (elmo-folder-initialize): Define.
7540
7541         * elmo-archive.el (elmo-archive-folder): New luna class.
7542         (elmo-folder-initialize): Define.
7543
7544         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7545         `elmo-folder-msgdb-path'.
7546         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7547         `elmo-make-folder'.
7548
7549 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7550
7551         * elmo.el: New file.
7552
7553         * elmo2.el: Renamed to elmo.el.
7554
7555 \f
7556 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7557
7558         * elmo-cache.el (elmo-cache-expire-by-size): Count
7559         a disk usage for a cache file entry in KB even when
7560         its kind is a directory.
7561
7562 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7563
7564         * elmo-version.el (elmo-version): Up to 2.5.7.
7565
7566 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7567
7568         * elmo-version.el (elmo-version): Up to 2.5.6.
7569
7570 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7571
7572         * elmo-version.el (elmo-version): Up to 2.5.5.
7573
7574 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7575
7576         * elmo-imap4.el (elmo-network-authenticate-session):
7577         Fixed a logic for response checking.
7578
7579 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7580
7581         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7582         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7583         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7584         `sasl-mechanisms'.
7585
7586         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7587         for `starttls-open-stream' and `starttls-negotiate'.
7588
7589         * elmo-nntp.el: Remove autoload settings for
7590         `starttls-open-stream' and `starttls-negotiate'.
7591
7592         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7593         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7594         `luna-define-class' with `eval-and-compile'.
7595
7596 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7597
7598         * elmo-util.el (elmo-read-search-condition-internal):
7599         Require an element of table for searching field.
7600
7601 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7602
7603         * elmo-version.el (elmo-version): Up to 2.5.4.
7604
7605 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7606
7607         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7608
7609 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7610
7611         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7612
7613 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7614
7615         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7616         before greeting.
7617
7618 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7619
7620         * elmo-imap4.el (elmo-imap4-delete-folder):
7621         Send "close" before "delete" (Use commented out line).
7622         (elmo-imap4-rename-folder): Ditto.
7623
7624         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7625         folder string itself.
7626         (elmo-dop-list-deleted): New function.
7627         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7628         killed.
7629
7630         * elmo-util.el (elmo-string-rassoc-all): New function.
7631
7632 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7633
7634         * elmo-version.el (elmo-version): Up to 2.5.3.
7635
7636         * elmo-net.el (elmo-network-get-session): Changed logic for
7637         checking process status.
7638
7639         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7640         process is nil;
7641         Changed logic for checking process status.
7642
7643 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7644
7645         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7646         before greeting.
7647         (elmo-network-setup-session): Set UIDL hash size according to
7648         the length of list response.
7649         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7650         according to the length of list response;
7651         Return the length of list response.
7652         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7653
7654 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7655
7656         * elmo-imap4.el (toplevel): Require 'ssl.
7657         Add autoload 'starttls.
7658         * elmo-pop3.el (toplevel): Ditto.
7659         * elmo-nntp.el (toplevel): Ditto.
7660
7661 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7662
7663         * elmo-imap4.el (toplevel): defun at compile time.
7664         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7665         sasl-next-step, sasl-step-data, sasl-step-set-data.
7666         * elmo-pop3.el (toplevel): Ditto.
7667
7668 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7669
7670         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7671
7672 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7673
7674         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7675         if error.
7676         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7677         and `elmo-pop-auth-apop'.
7678
7679 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7680
7681         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7682
7683 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7684
7685         * elmo-pop3.el (elmo-network-authenticate-session): Split
7686         encoded response value.
7687
7688 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7689
7690         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7691         `elmo-pop3-force-login'.
7692         Redefine `sasl-mechanisms'.
7693         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7694
7695 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7696
7697         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7698         Delete `elmo-imap4-authenticator-alist'.
7699         (elmo-imap4-auth-cram-md5): Delete.
7700         (elmo-imap4-auth-digest-md5): Delete.
7701
7702 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7703
7704         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7705         (elmo-pop3-auth-scram-md5): Ditto.
7706         (elmo-pop3-auth-cram-md5): Ditto.
7707
7708 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7709
7710         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7711         Delete `elmo-pop3-authenticator-alist'.
7712
7713 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7714
7715         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7716         new SASL API.
7717         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7718
7719 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7720
7721         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7722
7723 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7724
7725         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7726         Fixed problem when `elmo-pop3-use-uidl' is nil.
7727         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7728
7729 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7730
7731         * elmo-version.el (elmo-version): Up to 2.5.2.
7732
7733 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7734
7735         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7736         New function.
7737         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7738         (elmo-pop3-msgdb-create-as-numlist): Use it.
7739
7740         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7741         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7742
7743         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7744         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7745
7746 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7747
7748         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7749         when elmo-mark-as-read is called with second argument nil.
7750
7751 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7752
7753         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7754         Moved to elmo-util.el.
7755
7756         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7757         Moved from elmo-pipe.el
7758
7759         * elmo-archive.el (elmo-archive-call-process): Enclose with
7760         static-if.
7761
7762         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7763         "RFC822" (because RFC822.PEEK is obsolete).
7764         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7765
7766 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7767
7768         * elmo-archive.el (elmo-archive-call-process): Don't check for
7769         the exit status when Nemacs is running.
7770
7771 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7772
7773         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7774         'plain.
7775
7776         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7777         (elmo-pop3-get-spec): Set default of auth to 'user.
7778
7779         * elmo-imap4.el (elmo-imap4-session-check):
7780         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7781         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7782         (elmo-imap4-auth-login): New function; Revival.
7783         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7784         `elmo-imap4-auth-login'.
7785
7786 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7787
7788         * elmo2.el (toplevel): Move `product-provide' declare.
7789         * mmelmo.el (toplevel): Ditto.
7790
7791 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7792
7793         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7794
7795 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7796
7797         * elmo-util.el (elmo-folder-get-store-type): New function.
7798         (elmo-folder-direct-copy-p): Use it.
7799
7800 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7801
7802         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7803         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7804         and result of `elmo-imap4-use-flag-p'.
7805         (elmo-imap4-fetch-callback-1): Set mark according to
7806         the result of `elmo-imap4-use-flag-p'.
7807
7808 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7809
7810         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7811         (elmo-generic-list-folder-unread): Ditto.
7812         (elmo-folder-get-info): Ditto.
7813         (elmo-folder-set-info-max-by-numdb): Ditto.
7814         (elmo-folder-get-info-max): Ditto.
7815         (elmo-folder-get-info-length): Ditto.
7816         (elmo-folder-get-info-unread): Ditto.
7817         (elmo-folder-info-make-hashtb): Ditto.
7818
7819         * elmo2.el: Removed above functions.
7820
7821 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7822
7823         * elmo-imap4.el (toplevel): Require 'ssl.
7824         Add autoload 'starttls.
7825         * elmo-pop3.el (toplevel): Ditto.
7826         * elmo-nntp.el (toplevel): Ditto.
7827
7828 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7829
7830         * elmo-imap4.el (toplevel): defun at compile time.
7831         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7832         sasl-next-step, sasl-step-data, sasl-step-set-data.
7833         * elmo-pop3.el (toplevel): Ditto.
7834
7835 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7836
7837         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7838
7839 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7840
7841         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7842         if error.
7843         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7844         and `elmo-pop-auth-apop'.
7845
7846 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7847
7848         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7849
7850 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7851
7852         * elmo-pop3.el (elmo-network-authenticate-session): Split
7853         encoded response value.
7854
7855 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7856
7857         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7858         `elmo-pop3-force-login'.
7859         Redefine `sasl-mechanisms'.
7860         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7861
7862 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7863
7864         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7865         Delete `elmo-imap4-authenticator-alist'.
7866         (elmo-imap4-auth-cram-md5): Delete.
7867         (elmo-imap4-auth-digest-md5): Delete.
7868
7869 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7870
7871         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7872         (elmo-pop3-auth-scram-md5): Ditto.
7873         (elmo-pop3-auth-cram-md5): Ditto.
7874
7875 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7876
7877         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7878         Delete `elmo-pop3-authenticator-alist'.
7879
7880 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7881
7882         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7883         new SASL API.
7884         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7885
7886 \f
7887 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7888
7889         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7890
7891 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7892
7893         * elmo-nntp.el (elmo-nntp-get-folders-info):
7894         Fixed problem when '\' character is contained in user-id.
7895         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7896
7897 \f
7898 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7899
7900         * elmo-imap4.el (elmo-imap4-delete-folder):
7901         Send "close" before "delete" (Use commented out line).
7902         (elmo-imap4-rename-folder): Ditto.
7903
7904         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7905         folder string itself.
7906         (elmo-dop-list-deleted): New function.
7907         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7908         killed.
7909
7910         * elmo-util.el (elmo-string-rassoc-all): New function.
7911
7912         * elmo-version.el (elmo-version): Up to 2.5.1.
7913
7914 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7915
7916         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7917
7918         * elmo-internal.el (elmo-internal-search): Fix last change.
7919
7920 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7921
7922         * elmo-internal.el (elmo-internal-search): Rewrite.
7923         (Fixed problem which is pointed out by Akihiro MOTOKI
7924         <motoki@da.jp.nec.com>)
7925
7926         * elmo-version.el (elmo-version): Up to 2.5.0.
7927
7928 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7929
7930         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7931
7932 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7933
7934         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7935         non-nil, make hierarchy.
7936
7937 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7938
7939         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7940         `elmo-pop3-use-uidl' must be bound to nil.
7941         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7942
7943 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7944
7945         * elmo-util.el (elmo-copy-file): Don't cause an error after
7946         `add-name-to-file' failed.
7947
7948         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7949         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7950
7951 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7952
7953         * elmo-version.el (elmo-version): Up to 2.3.93.
7954
7955 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7956
7957         * elmo-util.el (elmo-flatten): New function.
7958
7959 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7960
7961         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7962         sync Author header.
7963         * elmo-cache.el (toplevel): Ditto.
7964         * elmo-database.el (toplevel): Ditto.
7965         * elmo-date.el (toplevel): Ditto.
7966         * elmo-dop.el (toplevel): Ditto.
7967         * elmo-filter.el (toplevel): Ditto.
7968         * elmo-imap4.el (toplevel): Ditto.
7969         * elmo-internal.el (toplevel): Ditto.
7970         * elmo-localdir.el (toplevel): Ditto.
7971         * elmo-localnews.el (toplevel): Ditto.
7972         * elmo-maildir.el (toplevel): Ditto.
7973         * elmo-msgdb.el (toplevel): Ditto.
7974         * elmo-multi.el (toplevel): Ditto.
7975         * elmo-net.el (toplevel): Ditto.
7976         * elmo-nntp.el (toplevel): Ditto.
7977         * elmo-pipe.el (toplevel): Ditto.
7978         * elmo-pop3.el (toplevel): Ditto.
7979         * elmo-util.el (toplevel): Ditto.
7980         * elmo-vars.el (toplevel): Ditto.
7981         * elmo2.el (toplevel): Ditto.
7982         * mmelmo-imap4.el (toplevel): Ditto.
7983         * mmelmo.el (toplevel): Ditto.
7984
7985         * elmo-version.el (elmo-version): Move to top.
7986
7987         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7988         * elmo-imap4.el (toplevel): Ditto.
7989         * elmo-localdir.el (toplevel): Ditto.
7990         * elmo-msgdb.el (toplevel): Ditto.
7991         * elmo-nntp.el (toplevel): Ditto.
7992         * elmo-pop3.el (toplevel): Ditto.
7993         * elmo-version.el (toplevel): Ditto.
7994
7995         * elmo-localnews.el (toplevel): Added Keyword header.
7996
7997 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7998
7999         * elmo-version.el (product-version-as-string): Defined using
8000         `defun-maybe'.
8001         (toplevel): Use it.
8002
8003         * elmo-localdir.el (toplevel): Updated copyright notice.
8004         * elmo-version.el (toplevel): Ditto.
8005         * elmo-msgdb.el (toplevel): Ditto.
8006         * elmo-imap4.el (toplevel): Ditto.
8007         * elmo-nntp.el (toplevel): Ditto.
8008         * elmo-pop3.el (toplevel): Ditto.
8009
8010 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
8011
8012         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
8013         messages.
8014
8015         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
8016         parameter value (It sometimes contains raw kanji).
8017
8018 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8019
8020         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
8021         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
8022
8023 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8024
8025         * elmo-imap4.el (elmo-network-initialize-session): Fix.
8026
8027 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8028
8029         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
8030         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
8031
8032 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
8033
8034         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
8035         value if selecting folder succceeded.
8036         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
8037
8038 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8039
8040         * elmo-util.el (elmo-make-directory): Fixed permission lateral
8041         representation.
8042
8043         * elmo-util.el (elmo-string-matched-member): New function.
8044
8045 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
8046
8047         * elmo-util.el (elmo-unintern): New macro.
8048         (elmo-number-set-member): Fixed docstring.
8049
8050         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
8051         tag token.
8052
8053 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
8054
8055         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
8056         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
8057
8058 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
8059
8060         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
8061         `no-error'.
8062         Added docstring.
8063         Return non-nil if selecting folder succeeded.
8064         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
8065
8066 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
8067
8068         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
8069         `file-name-completion' returns t.
8070         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
8071         (elmo-maildir-set-mark): Put `info' part to the files in the cur
8072         directory if it does not exist.
8073         (elmo-maildir-update-current): Use `while' instead of `mapcar'
8074         for iteration.
8075
8076 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
8077
8078         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
8079         enclosure (It's harmful in unplugged status).
8080
8081         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
8082
8083         * mmelmo-1.el: Removed.
8084
8085         * mmelmo-2.el: Ditto.
8086
8087         * mmelmo-imap4-1.el: Ditto.
8088
8089         * mmelmo-imap4-2.el: Ditto.
8090
8091         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
8092
8093         * mmelmo.el: Merged mmelmo-2.el.
8094
8095         * elmo-version.el (elmo-version): Up to 2.3.92.
8096
8097 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8098
8099         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
8100         elmo-update-number): Remove last period in "...done." message.
8101         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
8102         Ditto.
8103         * elmo-cache.el (elmo-cache-expire-by-size,
8104         elmo-cache-get-sorted-cache-file-list,
8105         elmo-cache-msgdb-create-as-numlist): Ditto.
8106         * elmo-dop.el (elmo-dop-save-pending-messages,
8107         (elmo-dop-flush-pending-append-operations): Ditto.
8108         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
8109         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
8110         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
8111         (elmo-localdir-pack-number): Ditto.
8112         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
8113         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
8114         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
8115         mime-write-entity-content): Ditto.
8116         * pldap.el (ldap-search-basic): Ditto.
8117
8118 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
8119
8120         * elmo-version.el (elmo-version): Up to 2.3.91.
8121
8122         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
8123         Only when filter is 'last'.
8124
8125         * elmo-util.el (elmo-condition-atom-regexp): New constant.
8126         (elmo-condition-parse-search-value): Use it.
8127         (elmo-read-search-condition-internal): Quote value only when
8128         it is not an atom.
8129
8130 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
8131
8132         * elmo2.el (elmo-generic-folder-diff): Fix.
8133
8134 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
8135
8136         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
8137         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
8138         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
8139         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8140         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
8141         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
8142
8143 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
8144
8145         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
8146         extra-fields.
8147
8148 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
8149
8150         * elmo-version.el (elmo-version): Up to 2.3.90.
8151
8152         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
8153         (elmo-imap4-list-folder-important): Ditto.
8154
8155 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8156
8157         * elmo-nntp.el (elmo-network-initialize-session): Fix.
8158
8159 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8160
8161         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
8162
8163 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
8164
8165         * elmo-nntp.el (elmo-network-initialize-session):
8166         Add starttls negotiation.
8167
8168 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8169
8170         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
8171         response.
8172         (elmo-network-setup-session): Define.
8173         Call `elmo-nntp-send-mode-reader' when session opened.
8174
8175 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8176
8177         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
8178
8179 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
8180
8181         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
8182         an invalid SPACE character ahead of `SEARCH' command.  Move
8183         a valid SPACE character following `SEARCH' from conditional
8184         `format' arguments to control-strings.
8185
8186 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8187
8188         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
8189         was succeeded.
8190
8191         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
8192
8193 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
8194
8195         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
8196         `w32-get-true-file-link-count' as t.
8197
8198         * elmo-imap4.el (elmo-imap4-read): Abolished.
8199         (Renamed to `elmo-read' and moved to elmo-util.el)
8200         All other related portions are changed.
8201
8202         * elmo-util.el (elmo-read): New function.
8203         (elmo-condition-parse-search-value): Use it.
8204
8205 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
8206
8207         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
8208
8209         * elmo-nntp.el (elmo-nntp-session): Define.
8210         (elmo-nntp-setting): Abolished.
8211         All other related portions are changed.
8212         (elmo-nntp-get-server-command): Changed argument.
8213         (elmo-nntp-set-server-command): Ditto.
8214         (elmo-nntp-xover-p): Ditto.
8215         (elmo-nntp-set-xover): Ditto.
8216         (elmo-nntp-listgroup-p): Ditto.
8217         (elmo-nntp-set-listgroup): Ditto.
8218         (elmo-nntp-list-active-p): Ditto.
8219         (elmo-nntp-set-list-active): Ditto.
8220         (elmo-nntp-xhdr-p): Ditto.
8221         (elmo-nntp-set-xhdr): Ditto.
8222         (elmo-nntp-flush-connection): Abolished.
8223         (elmo-nntp-get-connection): Abolished.
8224         (elmo-nntp-get-session): New function.
8225         (elmo-network-initialize-session): Defined.
8226         (elmo-network-authenticate-session): Ditto.
8227         (elmo-nntp-send-mode-reader): Changed argument.
8228         (elmo-nntp-send-command): Changed argument.
8229         All other related portions are changed.
8230         (elmo-nntp-read-response): Ditto.
8231         (elmo-nntp-read-raw-response): Ditto.
8232         (elmo-nntp-read-contents): Ditto.
8233         (elmo-nntp-read-body): Ditto.
8234         (elmo-nntp-goto-folder): Abolished.
8235         (elmo-nntp-select-group): New function.
8236         All other related portions are changed.
8237         (This function substitutes `elmo-nntp-goto-folder')
8238         (elmo-nntp-msgdb-create-by-header): Rewrite.
8239         (elmo-nntp-get-overview): Eliminated.
8240         (elmo-nntp-get-message): Ditto.
8241         (elmo-nntp-open-connection) Abolished.
8242         (elmo-nntp-read-msg): Rewrite.
8243         (elmo-nntp-post): Ditto.
8244         (elmo-nntp-send-data): Abolished.
8245         (elmo-nntp-send-buffer): New function.
8246         (elmo-nntp-send-data-line): Define as inline function.
8247         (elmo-nntp-get-folders-info-prepare): Use session as key.
8248         (elmo-nntp-groups-read-response): Changed argument.
8249         (elmo-nntp-retrieve-headers): Ditto.
8250         (elmo-nntp-msgdb-create-message): Ditto.
8251
8252         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
8253         when searching by 'since' or 'before'.
8254
8255 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8256
8257         * elmo-version.el (toplevel): Use product-version-as-string for set
8258         verstion-string, if defined.
8259
8260 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
8261
8262         * elmo-util.el: Doc fixes.
8263
8264 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8265
8266         * elmo-archive.el (toplevel): Use product-provide.
8267         * elmo-cache.el (toplevel): Ditto.
8268         * elmo-database.el (toplevel): Ditto.
8269         * elmo-date.el (toplevel): Ditto.
8270         * elmo-dop.el (toplevel): Ditto.
8271         * elmo-filter.el (toplevel): Ditto.
8272         * elmo-imap4.el (toplevel): Ditto.
8273         * elmo-internal.el (toplevel): Ditto.
8274         * elmo-localdir.el (toplevel): Ditto.
8275         * elmo-localnews.el (toplevel): Ditto.
8276         * elmo-maildir.el (toplevel): Ditto.
8277         * elmo-msgdb.el (toplevel): Ditto.
8278         * elmo-multi.el (toplevel): Ditto.
8279         * elmo-net.el (toplevel): Ditto.
8280         * elmo-nntp.el (toplevel): Ditto.
8281         * elmo-pipe.el (toplevel): Ditto.
8282         * elmo-pop3.el (toplevel): Ditto.
8283         * elmo-util.el (toplevel): Ditto.
8284         * elmo-vars.el (toplevel): Ditto.
8285         * elmo2.el (toplevel): Ditto.
8286         * mmelmo-1.el (toplevel): Ditto.
8287         * mmelmo-2.el (toplevel): Ditto.
8288         * mmelmo-imap4-1.el (toplevel): Ditto.
8289         * mmelmo-imap4-2.el (toplevel): Ditto.
8290         * mmelmo-imap4.el (toplevel): Ditto.
8291         * mmelmo.el (toplevel): Ditto.
8292
8293 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
8294
8295         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
8296         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
8297
8298 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
8299
8300         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
8301         before splitting.
8302         (elmo-multi-split-number-alist): Ditto.
8303
8304 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8305
8306         * elmo-version.el: New file.  Use product.el.
8307         * elmo2.el: Add (require 'elmo-version).
8308         * elmo-vars.el (elmo-appname, elmo-version): Move to
8309         elmo-version.el
8310
8311 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
8312
8313         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
8314         `elmo-msgdb-expand-path'.
8315         (elmo-msgdb-load): Ditto.
8316         Abolished 2nd argument. If 1st argument is not string, treat as spec.
8317         (elmo-generic-list-folder-unread): Rewrite.
8318         (elmo-generic-list-folder-important): Changed argument.
8319         (elmo-list-folder-unread): Ditto.
8320         (elmo-list-folder-important): Ditto.
8321         (elmo-folder-diff): Rewrite.
8322         (elmo-generic-folder-diff): New function.
8323         (elmo-multi-get-number-alist-list): Abolished
8324         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
8325         (elmo-multi-folder-diff): Moved to elmo-multi.el
8326         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
8327
8328         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
8329         `elmo-msgdb-expand-path'.
8330         (elmo-pop3-msgdb-create-as-numlist): Ditto.
8331         (elmo-pop3-read-msg): Ditto.
8332         (elmo-pop3-delete-msgs): Ditto.
8333         (elmo-pop3-folder-diff): New alias.
8334
8335         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
8336         `elmo-msgdb-expand-path'.
8337         (elmo-pipe-list-folder-unread): Changed arguments.
8338         (elmo-pipe-list-folder-important): Ditto.
8339         (elmo-pipe-folder-diff): New alias.
8340
8341         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8342         `elmo-msgdb-expand-path'.
8343         (elmo-nntp-max-of-folder): Ditto.
8344         (elmo-nntp-msgdb-create): Ditto.
8345         (elmo-nntp-delete-msgs): Ditto.
8346         (elmo-nntp-folder-diff): New alias.
8347
8348         * elmo-multi.el (elmo-multi-folder-diff): New function.
8349         (elmo-multi-split-mark-alist): Ditto.
8350         (elmo-multi-split-number-alist): Ditto.
8351         (elmo-multi-mark-alist-list): Abolished (Renamed to
8352         elmo-multi-split-mark-alist).
8353         (elmo-multi-list-folder-unread): Rewrite.
8354         (elmo-multi-list-folder-important): Ditto.
8355         (elmo-multi-list-folder): Set `spec' as 1st argument for
8356         `elmo-msgdb-expand-path'.
8357         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8358         instead of `elmo-multi-get-number-alist-list'.
8359
8360         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8361         If 1st argument is not string, treat as spec.
8362         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8363         `elmo-msgdb-expand-path'.
8364         (elmo-msgdb-flist-load): Ditto.
8365         (elmo-msgdb-flist-save): Ditto.
8366         (elmo-msgdb-delete-path): Ditto.
8367         (elmo-msgdb-rename-path): Ditto.
8368
8369         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8370         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8371         (elmo-maildir-delete-mark-msgs): Ditto.
8372         (elmo-maildir-msgdb-create): Ditto.
8373         (elmo-maildir-read-msg): Ditto.
8374         (elmo-maildir-delete-msgs): Ditto.
8375         (elmo-maildir-list-folder-subr): Ditto.
8376         (elmo-maildir-search): Ditto.
8377         (elmo-maildir-get-msg-filename): Ditto.
8378         (elmo-maildir-pack-number): Ditto.
8379         (elmo-maildir-folder-diff): New alias.
8380
8381         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8382
8383         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8384         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8385         (elmo-localdir-folder-diff): New alias.
8386
8387         * elmo-internal.el (elmo-internal-list-folder-subr):
8388         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8389         (elmo-internal-list-folder-by-location): Ditto.
8390         (elmo-internal-msgdb-create): Ditto.
8391         (elmo-internal-delete-msgs): Ditto.
8392         (elmo-internal-read-msg): Ditto.
8393         (elmo-internal-folder-diff): New alias.
8394
8395         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8396         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8397         `elmo-msgdb-expand-path'.
8398         (elmo-imap4-list-folder-unread): Changed arguments.
8399         (elmo-imap4-list-folder-important): Ditto.
8400
8401         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8402         (elmo-filter-list-folder-important): Ditto.
8403         (elmo-filter-folder-diff): New function.
8404
8405         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8406
8407         * elmo-cache.el (elmo-cache-list-folder):
8408         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8409         (elmo-cache-copy-msgs): Ditto.
8410         (elmo-cache-folder-diff): New alias.
8411
8412         * elmo-archive.el (elmo-archive-list-folder-subr):
8413         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8414         (elmo-archive-get-archive-name): Ditto.
8415         (elmo-archive-create-file): Ditto.
8416         (elmo-archive-append-msg): Ditto.
8417         (elmo-archive-copy-msgs): Ditto.
8418         (elmo-archive-copy-msgs-froms): Ditto.
8419         (elmo-archive-get-msg-filename): Ditto.
8420         (elmo-archive-folder-diff): New alias.
8421
8422 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8423
8424         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8425         (elmo-pop3-stream-type-alist): New variable.
8426         (elmo-nntp-stream-type-alist): New variable.
8427
8428         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8429         (elmo-kill-buffer): Ditto.
8430         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8431         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8432         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8433         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8434         (elmo-imap4-get-spec): Take into account
8435         `elmo-imap4-stream-type-alist'.
8436
8437 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8438
8439         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8440         (elmo-nntp-list-folders-get-cache): Ditto.
8441
8442 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8443
8444         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8445         character before 'uid'.
8446
8447 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8448
8449         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8450
8451         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8452
8453         * elmo-util.el (elmo-number-set-member): New function.
8454         (elmo-number-set-append-list): Ditto.
8455         (elmo-number-set-append): Ditto.
8456
8457         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8458         Use `elmo-number-set-member'.
8459         (elmo-living-messages): Ditto.
8460         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8461         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8462
8463         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8464         (elmo-imap4-add-to-cont-list): Abolished.
8465         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8466         instead of elmo-imap4-add-to-cont-list.
8467
8468         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8469         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8470
8471         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8472
8473 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8474
8475         * elmo-util.el (elmo-condition-parse-search-value):
8476         Fixed date parsing.
8477
8478 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8479
8480         * elmo-util.el (elmo-condition-find-key-internal): New function.
8481         (elmo-condition-find-key): Ditto.
8482
8483         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8484         (elmo-msgdb-search-internal): Ditto.
8485         (elmo-msgdb-search): Ditto.
8486
8487 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8488
8489         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8490         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8491
8492         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8493         (elmo-nntp-search-primitive): Fixed problem when condition is
8494         'unmatch'.
8495
8496         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8497
8498         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8499         (elmo-nntp-xhdr-p): New macro.
8500         (elmo-nntp-set-xhdr): Ditto.
8501         (elmo-nntp-parse-xhdr-response): New function.
8502         (elmo-nntp-retrieve-field): Ditto.
8503         (elmo-nntp-search-primitive): Ditto.
8504         (elmo-nntp-search): Implemented.
8505
8506         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8507
8508         * elmo-archive.el (elmo-archive-search): Set all number list to
8509         `elmo-archive-field-condition-match'
8510
8511         * elmo-localdir.el (elmo-localdir-search): Likewise.
8512
8513         * elmo-maildir.el (elmo-maildir-search): Likewise.
8514
8515 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8516
8517         * elmo-msgdb.el (elmo-living-messages): New function.
8518         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8519         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8520         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8521         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8522         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8523         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8524         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8525         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8526         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8527         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8528         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8529
8530 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8531
8532         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8533
8534         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8535
8536         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8537
8538         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8539         arguments for `SEARCH' command.
8540         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8541         All other related portions are changed.
8542
8543         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8544
8545         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8546         (elmo-list-folder-unread): Rewrite.
8547         (elmo-list-folder-important): Ditto.
8548
8549         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8550         (elmo-condition-parse-error): New inline function.
8551         (elmo-read-search-condition): New function.
8552         (elmo-read-search-condition-internal): Ditto.
8553         (elmo-parse-search-condition): Rewrite.
8554         (elmo-condition-parse): New function.
8555         (elmo-condition-parse-or-expr): Ditto.
8556         (elmo-condition-parse-and-expr): Ditto.
8557         (elmo-condition-parse-primitive): Ditto.
8558         (elmo-condition-parse-search-value): Ditto.
8559         (elmo-buffer-field-primitive-condition-match): Ditto.
8560         (elmo-buffer-field-condition-match): Rewrite.
8561         (elmo-file-field-condition-match): Ditto.
8562
8563         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8564         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8565
8566         * elmo-internal.el (elmo-internal-search): Set `number' and
8567         `number-list' argument of `elmo-file-field-condition-match'.
8568
8569         * elmo-maildir.el (elmo-maildir-search): Ditto.
8570
8571         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8572         `msgdb' as argument instead of `mark-alist'.
8573         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8574         `overview'.
8575
8576         * elmo-multi.el: Likewise.
8577
8578         * elmo-pipe.el: Likewise.
8579
8580         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8581         (elmo-imap4-search-internal): Rewrite.
8582         (elmo-imap4-search): Ditto.
8583
8584         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8585         (elmo-filter-list-folder-unread): Ditto.
8586         (elmo-filter-list-folder-important): Ditto.
8587         (elmo-filter-search): Rewrite.
8588
8589         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8590         `number-list' argument of `elmo-file-field-condition-match'.
8591         (elmo-cache-search): Ditto.
8592
8593         * elmo-localdir.el: Likewise.
8594
8595         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8596         number-list and pass it to `elmo-buffer-field-condition-match'.
8597         (elmo-archive-field-condition-match): Pass `number-list' to
8598         `elmo-archive-field-condition-match'
8599
8600 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8601
8602         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8603         `listgroup'.
8604
8605         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8606         (elmo-folder-diff-async-callback-data): Ditto.
8607         (elmo-folder-diff-async): New function.
8608
8609         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8610         (elmo-network-session-cache-key): Use it as a prefix of the session
8611         name.
8612         (elmo-network-open-session): Ditto.
8613
8614         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8615         (elmo-imap4-status-callback-data): Ditto.
8616         (elmo-imap4-server-diff-async-callback): New variable.
8617         (elmo-imap4-server-diff-async-callback-data): Ditto.
8618         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8619         `elmo-imap4-status-callback-data'.
8620         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8621         `elmo-imap4-status-callback-data' as nil.
8622         (elmo-imap4-server-diff): Ditto.
8623         (elmo-imap4-server-diff-async-callback-1): New function.
8624         (elmo-imap4-server-diff-async): Ditto.
8625         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8626
8627 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8628
8629         * elmo-util.el (elmo-list-delete): Doc fix.
8630         (elmo-delete-lists): Abolish.
8631         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8632         instead of `elmo-delete-lists'.
8633
8634 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8635
8636         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8637         before `sort'.
8638
8639 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8640
8641         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8642         `elmo-imap4-literal-subr'.
8643         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8644         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8645
8646 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8647
8648         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8649         (elmo-archive-list-folder): Fix.
8650         (elmo-archive-max-of-folder): Fix.
8651
8652 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8653
8654         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8655          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8656         (elmo-localdir-append-msg): Ditto.
8657         (elmo-localdir-list-folder): Fix for `nonsort'.
8658         (elmo-localdir-list-folder-subr): Fix for `killed'.
8659         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8660         (elmo-maildir-list-folder-subr): Ditto.
8661         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8662         (elmo-archive-list-folder-subr): Ditto.
8663         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8664         (elmo-internal-list-folder-subr): Ditto.
8665
8666 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8667
8668         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8669
8670 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8671
8672         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8673
8674 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8675
8676         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8677         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8678
8679         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8680         before greeting.
8681         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8682         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8683
8684 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8685
8686         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8687
8688         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8689         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8690         before STORE command.
8691
8692 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8693
8694         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8695
8696         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8697         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8698         of `response'.
8699         (elmo-imap4-list-folders): Removed unused local variable.
8700         (elmo-network-initialize-session): Ditto.
8701         (elmo-imap4-delete-msg-by-id): Ditto.
8702         (elmo-imap4-parse-fetch): Ditto.
8703         (elmo-imap4-copy-msgs): Ditto.
8704         Use `dst-spec' instead of `dst-folder'.
8705         (elmo-network-authenticate-session): Check authenticate type `plain'.
8706
8707 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8708
8709         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8710         garbage checking.
8711         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8712         `elmo-imap4-response-value'.
8713         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8714
8715 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8716
8717         * elmo-imap4.el (elmo-imap4-send-command):
8718         Cause elmo-imap4-bye-error when current response is BYE.
8719         (elmo-imap4-arrival-filter): Changed greeting response value.
8720
8721         * elmo2.el (elmo-imap4-bye-error): Define.
8722
8723         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8724         (elmo-imap4-server-diff): Ditto.
8725         (elmo-imap4-response-bye-p): New macro.
8726         (elmo-imap4-response-error-text): Get text from BYE response.
8727         (elmo-imap4-read-response): Return if BYE response.
8728         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8729         (elmo-imap4-folder-exists-p): Ditto.
8730         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8731         (elmo-imap4-parse-bye): New function.
8732         (elmo-imap4-parse-response): Remove needless let.
8733         Call `elmo-imap4-parse-bye'.
8734
8735 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8736
8737         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8738         the mailbox does not exist.
8739         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8740
8741 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8742
8743         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8744
8745 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8746
8747         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8748
8749         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8750         (elmo-network-initialize-session-buffer): Defined.
8751
8752         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8753         Abolished.
8754         (mmelmo-imap4-get-mime-entity): Rewrite.
8755
8756         * elmo2.el (elmo-error): Capitalize error message.
8757
8758         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8759         (elmo-network-session-buffer): New macro.
8760         (elmo-network-open-session): Use it.
8761
8762         * elmo-imap4.el: Rewrite.
8763
8764 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8765
8766         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8767
8768 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8769
8770         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8771         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8772         (elmo-imap4-create-msgdb-from-overview-string): Use
8773         `elmo-msgdb-create-overview-from-buffer'.
8774
8775 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8776
8777         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8778         (elmo-imap4-default-hierarchy-delimiter): New variable.
8779         (elmo-imap4-list-folders): Use it.
8780
8781 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8782
8783         * elmo-net.el (elmo-network-open-session): Add user and
8784         stream-type for process-buffer name.
8785
8786         * elmo-pop3.el (elmo-network-initialize-session): Call
8787         buffer-disable-undo.
8788
8789         * elmo-imap4.el (elmo-network-initialize-session):
8790         Set current-buffer as an argument for `buffer-disable-undo'.
8791
8792         * elmo-pop3.el (elmo-network-close-session): Don't use
8793         `process-live-p'.
8794
8795         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8796         Set default as 'user.
8797
8798         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8799
8800         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8801         and `elmo-imap4-flush-connection'.
8802
8803         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8804         (elmo-pop3-get-spec): Assume auth as symbol.
8805         (elmo-open-network-stream): Moved to `elmo-net'.
8806
8807         * elmo-pop3.el (toplevel): Require 'elmo-net.
8808         Define `sasl-cram-md5' to silence byte compilier.
8809         (elmo-pop3-connection-cache) Abolished.
8810         (elmo-pop3-authenticator-alist) New variable.
8811         (elmo-pop3-session): Define.
8812         (elmo-pop3-connection-get-process): Abolished.
8813         (elmo-pop3-connection-get-buffer): Ditto.
8814         (elmo-pop3-close-connection): Ditto.
8815         (elmo-pop3-flush-connection): Ditto.
8816         (elmo-pop3-get-connection): Ditto.
8817         (elmo-pop3-get-session): New function.
8818         (Replacement for `elmo-pop3-get-connection').
8819         All other related modules are changed.
8820         (elmo-network-close-session): Define.
8821         (elmo-pop3-send-command): Abolished argument `buffer'.
8822         All other related modules are changed.
8823         (elmo-pop3-read-response): Likewise.
8824         (elmo-pop3-open-connection): Abolished.
8825         (elmo-pop3-auth-user): New function.
8826         (elmo-pop3-auth-apop): Ditto.
8827         (elmo-pop3-auth-cram-md5): Ditto.
8828         (elmo-pop3-auth-scram-md5): Ditto.
8829         (elmo-pop3-auth-digest-md5): Ditto.
8830         (elmo-network-initialize-session): Define.
8831         (elmo-network-authenticate-session): Ditto.
8832         (elmo-network-setup-session): Ditto.
8833
8834         * elmo-imap4.el (toplevel): Require 'elmo-net.
8835         (elmo-imap4-session): Define.
8836         (elmo-imap4-connection-cache): Abolished.
8837         (elmo-imap4-password-key): Ditto.
8838         (elmo-imap4-flush-connection): Ditto.
8839         (elmo-imap4-get-connection): Ditto.
8840         All other related modules are changed.
8841         (elmo-imap4-get-session): New function
8842         (Replacement for `elmo-imap4-get-connection').
8843         (elmo-imap4-read-response): Abolished argument `buffer'.
8844         All other related modules are changed.
8845         (elmo-imap4-send-command): Likewise.
8846         (elmo-imap4-select-folder): Abolished.
8847         All other related modules are changed.
8848         (elmo-imap4-select-mailbox): New function.
8849         (Replacement for `elmo-imap4-select-folder').
8850         (elmo-imap4-auth-login): Simplify.
8851         (Assume current buffer as process buffer)
8852         (elmo-imap4-auth-cram-md5): Ditto.
8853         (elmo-imap4-auth-digest-md5): Ditto.
8854         (elmo-imap4-login): Ditto.
8855         (elmo-imap4-open-connection): Abolished.
8856         (elmo-imap4-open-connection-1): Abolished.
8857         (elmo-network-initialize-sessoin): Define.
8858         (elmo-network-authenticate-session): Ditto.
8859         (elmo-network-setup-session): Ditto.
8860
8861         * elmo-net.el: New module.
8862
8863 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8864
8865         * elmo-util.el (elmo-define-error): New function.
8866
8867         * elmo2.el (elmo-error): Define.
8868         (elmo-open-error): Define.
8869         (elmo-authenticate-error): Define.
8870
8871         * elmo-imap4.el (elmo-imap4-error): Abolish.
8872         (elmo-imap4-error-type): Abolish.
8873         (elmo-imap4-error-process): Abolish.
8874         (elmo-imap4-error-message): Abolish
8875         (elmo-imap4-list-folders): Don't quote lambda.
8876         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8877         (elmo-imap4-parse-namespace): Ditto.
8878         (elmo-imap4-open-connection): Rewrite.
8879         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8880         (elmo-imap4-get-connection): Abolish local variable `result'.
8881
8882 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8883
8884         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8885         wrong-type-argument error when auth is nil.
8886
8887 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8888
8889         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8890         (elmo-default-nntp-stream-type): Ditto.
8891         (elmo-default-pop3-stream-type): Ditto.
8892         (elmo-network-stream-type-alist): Ditto.
8893         (elmo-default-imap4-ssl): Abolished.
8894         (elmo-default-nntp-ssl): Ditto.
8895         (elmo-default-pop3-ssl): Ditto.
8896
8897         * elmo-util.el: (toplevel): Removed needless requires.
8898         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8899         (elmo-open-network-stream): Open network stream according to
8900         the value of `elmo-network-stream-type-alist'.
8901         (elmo-get-network-stream-type): New function.
8902         (elmo-network-stream-type-spec-string): New macro.
8903         (elmo-network-stream-type-symbol): Ditto.
8904         (elmo-network-stream-type-function): Ditto.
8905
8906         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8907         network-stream-type. All other related portions are changed.
8908         (elmo-pop3-open-connection): Ditto.
8909
8910         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8911         network-stream-type. All other related portions are changed.
8912
8913         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8914         network-stream-type.All other related portions are changed.
8915         (elmo-imap4-error): New macro.
8916         (elmo-imap4-error-type): Ditto.
8917         (elmo-imap4-error-process): Ditto.
8918         (elmo-imap4-error-message): Ditto.
8919         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8920         (elmo-imap4-auth-cram-md5): Ditto.
8921         (elmo-imap4-auth-digest-md5): Ditto.
8922         (elmo-imap4-login): Ditto.
8923         (elmo-imap4-open-connection): Remove password entry if authentication
8924         was in vain.
8925         (elmo-imap4-user-at-host): Abolished.
8926         (elmo-imap4-password-key): New buffer local variable.
8927         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8928         using protocol, port, auth and stream-type.
8929
8930         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8931
8932 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8933
8934         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8935
8936         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8937
8938         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8939         (elmo-imap4-authenticator-alist): New variable.
8940         (elmo-imap4-open-connection-1): Rename from
8941         elmo-imap4-open-connection.
8942         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8943         only wraps elmo-imap4-open-connection-1.
8944         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8945         user-at-host.
8946         (elmo-imap4-auth-login): New function.
8947         (elmo-imap4-auth-cram-md5): New function.
8948         (elmo-imap4-auth-digest-md5): New function.
8949         (elmo-imap4-login): New function.
8950
8951 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8952
8953         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8954         function `error'.
8955
8956 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8957
8958         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8959
8960 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8961
8962         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8963
8964 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8965
8966         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8967         for server responses, quote `*' regardless of where it appears.
8968
8969 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8970
8971         * elmo-maildir.el (elmo-maildir-commit): New alias.
8972
8973 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8974
8975         * elmo-util.el (elmo-display-progress):
8976                 Use `progress-feedback-with-label'.
8977
8978 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8979
8980         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8981         (elmo-imap4-non-atom-char-regex): Ditto.
8982         (elmo-imap4-non-text-char-regex): Ditto.
8983         (elmo-imap4-literal-threshold): Ditto.
8984         (elmo-imap4-atom-p): New function.
8985         (elmo-imap4-quotable-p): Ditto.
8986         (elmo-imap4-nil): Ditto.
8987         (elmo-imap4-atom): Ditto.
8988         (elmo-imap4-quoted): Ditto.
8989         (elmo-imap4-literal-subr): Ditto.
8990         (elmo-imap4-literal): Ditto.
8991         (elmo-imap4-buffer-literal): Ditto.
8992         (elmo-imap4-string-subr): Ditto.
8993         (elmo-imap4-string): Ditto.
8994         (elmo-imap4-buffer-string): Ditto.
8995         (elmo-imap4-astring-subr): Ditto.
8996         (elmo-imap4-astring): Ditto.
8997         (elmo-imap4-buffer-astring): Ditto.
8998         (elmo-imap4-nstring): Ditto.
8999         (elmo-imap4-buffer-nstring): Ditto.
9000         (elmo-imap4-mailbox): New alias.
9001         (elmo-imap4-field-body): Ditto.
9002         (elmo-imap4-userid): Ditto.
9003         (elmo-imap4-password): Ditto.
9004         (elmo-imap4-format-quoted): New function.
9005         (elmo-imap4-send-command): Rewritten.  Accept a list of command
9006         arguments and handle "atom", "quoted" and "literal" string here.
9007         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
9008         `elmo-imap4-send-command'.
9009         (elmo-imap4-folder-exists-p): Likewise.
9010         (elmo-imap4-create-folder): Likewise.
9011         (elmo-imap4-delete-folder): Likewise.
9012         (elmo-imap4-rename-folder): Likewise.
9013         (elmo-imap4-max-of-folder): Likewise.
9014         (elmo-imap4-check-validity): Likewise.
9015         (elmo-imap4-sync-validity): Likewise.
9016         (elmo-imap4-server-diff): Likewise.
9017         (elmo-imap4-select-folder): Likewise.
9018         (elmo-imap4-copy-msgs): Likewise.
9019         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
9020         (elmo-imap4-mark-set-on-msgs): Likewise.
9021         (elmo-imap4-read-part): Likewise.
9022         (elmo-imap4-read-msg): Likewise.
9023         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
9024         `elmo-imap4-password' for `elmo-imap4-send-command'.
9025         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
9026         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
9027         `elmo-imap4-buffer-literal'.
9028         (elmo-imap4-append-msg): Likewise.
9029
9030         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
9031         `delete' for removing dead connection from the connection cache.
9032         Move deletion of the process buffer after that.
9033         (elmo-imap4-list): Change `defsubst' to `defun'.
9034         (elmo-imap4-commit): Make error message verbose.
9035         (elmo-imap4-search): Ditto.
9036         (elmo-imap4-list): Ditto.
9037         (elmo-imap4-select-folder): Ditto.
9038         (elmo-imap4-copy-msgs): Ditto.
9039         (elmo-imap4-delete-msg-by-id): Ditto.
9040         (elmo-imap4-append-msg-by-id): Ditto.
9041         (elmo-imap4-append-msg): Ditto.
9042
9043 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
9044
9045         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
9046         when dired is used on XEmacs.
9047
9048 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
9049
9050         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
9051         instead of `append'.
9052         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
9053         `elmo-plugged-p' directly.
9054         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
9055         of `elmo-plugged-p' directly.
9056
9057         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
9058         Eliminate unused variable.  Use `memq' for checking a process status.
9059         Use `cons' instead of `append' for updating the connection cache.
9060         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
9061         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
9062
9063 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
9064
9065         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
9066         `elmo-imap4-read-point' exactly.
9067
9068         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
9069         the local variable `folder' to `mailbox'.
9070         Rename the argument `fld' to `folder'.
9071
9072 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
9073
9074         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
9075         * elmo-imap4.el (elmo-imap4-commit): Ditto.
9076
9077 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
9078
9079         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
9080         (elmo-pop3-number-uidl-hash): New buffer-local variable.
9081         (elmo-pop3-uidl-number-hash): Ditto.
9082         (elmo-pop3-size-hash): Ditto.
9083         (elmo-pop3-uidl-done): Ditto.
9084         (elmo-pop3-list-done): Ditto.
9085         (elmo-pop3-connection-get-process): New defmacro.
9086         (elmo-pop3-connection-get-buffer): Ditto.
9087         (elmo-pop3-close-connection): Delete buffer and process.
9088         (elmo-pop3-flush-connection): Don't delete buffer and process.
9089         (elmo-pop3-get-connection): Added optional argument `if-exists'.
9090         Setup UIDL and size hash.
9091         (elmo-pop3-send-command-no-erase): Deleted
9092         (elmo-pop3-send-command): Added optional argument `no-erase'.
9093         (elmo-pop3-parse-uidl-response): New function.
9094         (elmo-pop3-parse-list-response): Set size hash.
9095         (elmo-pop3-list-location): New function.
9096         (elmo-pop3-list-by-uidl-subr): Ditto.
9097         (elmo-pop3-list-by-list): Ditto.
9098         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
9099         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
9100         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
9101         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
9102         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
9103         Use uidl.
9104         (elmo-pop3-uidl-to-number): New function.
9105         (elmo-pop3-number-to-uidl): Ditto.
9106         (elmo-pop3-number-to-size): Ditto.
9107         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
9108         Set number by use of uidl.
9109         (elmo-pop3-msgdb-create-message): Likewise.
9110         Set size, loc-alist in msgdb.
9111         (elmo-pop3-read-msg): Set number by use of uidl.
9112         Added optional argument `msgdb'.
9113         (elmo-pop3-delete-msg): Ditto.
9114         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
9115         (elmo-pop3-commit): Close connection.
9116
9117         * elmo-pipe.el (elmo-pipe-max-of-folder):
9118         Bind `elmo-pop3-use-uidl' as nil.
9119         (elmo-pipe-drain): Ditto.
9120         Call `elmo-commit'.
9121
9122         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
9123         (elmo-msgdb-overview-entity-set-size): New defsubst.
9124
9125 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
9126
9127         * elmo-vars.el (elmo-use-killed-list): New variable
9128         (Renamed from `elmo-nntp-use-killed-list').
9129         (elmo-nntp-use-killed-list): Eliminated.
9130
9131         * elmo-msgdb.el (elmo-msgdb-expand-path):
9132         Changed expanding msgdb path for elmo-multi.
9133
9134         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
9135         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
9136         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
9137         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
9138         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
9139         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
9140         (toplevel): Deleted time-stamp line.
9141
9142         * elmo2.el (elmo-clear-killed ): Defined as function
9143         (Abolished defining as a backend function).
9144         All other related modules are changed.
9145
9146 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
9147
9148         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
9149
9150 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
9151
9152         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
9153
9154 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
9155
9156         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
9157
9158 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
9159
9160         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
9161         asynchronous folder check.
9162
9163         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
9164
9165         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
9166         `elmo-nntp-use-killed-list'.
9167         (elmo-nntp-list-folder): Use killed list.
9168         (elmo-nntp-max-of-folder): Ditto.
9169         (elmo-nntp-msgdb-create): Set killed list.
9170
9171         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
9172
9173         * elmo2.el (elmo-clear-killed): New backend function.
9174         All other related modules are changed.
9175
9176 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
9177
9178         * elmo-util.el (elmo-imap4-spec-folder): Use
9179         `elmo-imap4-spec-mailbox'; Mark as obsolete.
9180         All callers changed.
9181
9182 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
9183
9184         * mmelmo-2.el (initialize-instance):
9185         Use `mime-buffer-entity-buffer-internal' instead of
9186         `mime-entity-buffer'.
9187
9188         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
9189         (mime-entity-body): Implemented.
9190         (mime-goto-header-start-point): Deleted.
9191         (mime-goto-body-end-point): Ditto.
9192         (mime-entity-point-min): Ditto.
9193         (mime-entity-point-max): Ditto.
9194         (mime-entity-children): Ditto.
9195         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
9196         instead of `mime-entity-buffer'.
9197         (mime-entity-header-buffer): Ditto.
9198         (mime-entity-body-buffer): Ditto.
9199         (mime-write-entity-content): Ditto.
9200
9201         * pldap.el (ldap-static-if): New macro.
9202         (toplevel): Use it instead of `static-if'.
9203
9204 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
9205
9206         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
9207         included in `attrs' argument.
9208
9209 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
9210
9211         * elmo-util.el (elmo-get-passwd): Use old backquote style.
9212
9213         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
9214         (ldap-ldif-safe-init-char-regexp): Ditto.
9215         (ldap-ldif-safe-string-regexp): Ditto.
9216         (ldap/ldif-safe-string-p): New macro.
9217         (ldap/ldif-insert-field): Ditto.
9218         (ldap-modify): Use it.
9219         (ldap-add): Ditto.
9220         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
9221         (ldap-decode-attribute): Decode only when `attr' is consp.
9222         (ldap-delete): Bind `ret'.
9223         (toplevel): Require 'cl at compile time.
9224         Removed (require 'poe) and (require 'std11).
9225         (pldap-version): Eliminated.
9226         (ldap-search-basic): Removed auth and dn binding.
9227         (ldap-ldif-field-name-regexp): New constant.
9228         (ldap-ldif-field-head-regexp): Ditto.
9229         (ldap-ldif-next-field-head-regexp): Ditto.
9230         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
9231         (ldap/field-end): New function.
9232         (ldap/field-body): Use it.
9233         (ldap/collect-field): Ditto.
9234         (ldap-search-basic): Use `ldap/field-body'.
9235
9236 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
9237
9238         * pldap.el (ldap-default-attribute-encoder): New user option.
9239         (ldap/field-body): Decode base64 string.
9240         (ldap/collect-field): Ditto.
9241         (ldap-encode-attribute): New function.
9242         (ldap-add-entries): Use it.
9243         (ldap-modify-entries): Ditto.
9244         (ldap-search-entries): Enclosed decoding function with
9245         `with-temp-buffer' and set as unibyte.
9246         (ldap-search-basic): Set process buffer as unibyte.
9247
9248         * elmo-util.el (elmo-folder-identical-system-p):
9249         Eliminated name space checking.
9250
9251         * pldap.el: New module.
9252         toplevel: Changed condition to detect built-in ldap feature.
9253         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
9254         (ldap-add): Added error handling.
9255         (ldap-modify): Ditto.
9256         (ldap-delete): Ditto.
9257
9258 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
9259
9260         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
9261         Initialize local variables with `let'.  Inline a temporary
9262         variable for the progress percentage.  Sort `setq' to reduce
9263         function call in the while-loop.
9264
9265         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
9266         into the conditional branch.
9267
9268 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
9269
9270         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
9271         Move a conditional out of the while-loop.
9272
9273 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9274
9275         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
9276         elmo-msgdb-overview-get-entity-by-number.
9277         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
9278         throw.
9279
9280 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
9281
9282         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
9283         the local variable for a packed number self descriptively.
9284
9285 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9286
9287         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
9288         * elmo-localdir.el (elmo-localdir-pack-number): Use
9289         `elmo-msgdb-overview-get-entity' instead of
9290         `elmo-msgdb-overview-get-entity-by-number'.
9291         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
9292         (elmo-msgdb-search-overview-entity): Removed.
9293         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
9294         by message-id or number.
9295         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
9296         instead of `elmo-msgdb-overview-get-entity-by-number'.
9297
9298 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9299
9300         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
9301         non-nil, use hash table for overview.
9302         (elmo-hash-maximum-size): New variable.
9303         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
9304         (elmo-msgdb-make-overview-hashtb): New function.
9305         (elmo-msgdb-clear-overview-hashtb): New function.
9306         (elmo-clear-hash-val): New macro.
9307         All other related modules are changed.
9308
9309 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
9310
9311         * elmo2.el (elmo-move-msgs): If there's other message with
9312         same message-id, don't use cache.
9313
9314 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
9315
9316         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
9317         number is already packed.
9318
9319 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
9320
9321         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
9322
9323 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9324
9325         * elmo-vars.el (elmo-display-progress-threshold): New variable.
9326         All other related modules are changed.
9327
9328 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
9329
9330         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
9331         of refiling failure on Maildir.
9332
9333 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9334
9335         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
9336         decoded mime-charset with cache.
9337         (elmo-msgdb-overview-entity-get-from): Ditto.
9338         (elmo-msgdb-overview-entity-get-subject): Ditto.
9339         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9340
9341 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9342
9343         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9344         (elmo-remove-passwd): Fill password with 0 before erase.
9345         * elmo-vars.el (elmo-passwd-life-time): New variable.
9346
9347 \f
9348 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9349
9350         * elmo-cache.el (elmo-buffer-cache-add):
9351         Set message cache buffer as unibyte.
9352
9353 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9354
9355         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9356         become nil.
9357
9358 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9359
9360         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9361         when display is finished.
9362         (elmo-nntp-msgdb-create): Ditto.
9363         (elmo-nntp-groups-read-response): Ditto.
9364         (elmo-nntp-retrieve-headers): Ditto.
9365         (elmo-nntp-msgdb-create-message): Ditto.
9366         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9367         (elmo-pop3-msgdb-create-message): Ditto.
9368
9369 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9370
9371         * elmo-maildir.el (elmo-maildir-msgdb-create):
9372         Use `elmo-msgdb-sort-by-date'.
9373
9374 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9375
9376         * elmo2.el (elmo-read-msg-no-cache):
9377         Eliminated arguments after `outbuf'.
9378         Don't use cache even if it exists.
9379         (elmo-read-msg): Don't pass arguments after `outbuf' to
9380         `elmo-read-msg-no-cache'.
9381
9382 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9383
9384         * elmo-archive.el (elmo-archive-list-folders):
9385         Use `file-name-directory' if base folder does not exist.
9386
9387 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9388
9389         * elmo-archive.el (elmo-archive-list-folders): Don't use
9390         `file-name-directory'.
9391
9392 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9393
9394         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9395         If `force' is non-nil, try flushing all operation queues.
9396
9397 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9398
9399         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9400         as-binary-process.
9401
9402 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9403
9404         * elmo-util.el (elmo-display-progress): Fixed.
9405
9406 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9407
9408         * elmo-util.el (elmo-display-progress): New function.
9409         All other related modules are changed.