7698b5cf7d54834c67ca0a8376d3affe96c4ae96
[elisp/wanderlust.git] / elmo / ChangeLog
1 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2
3         * elmo.el (elmo-file-tag): New class.
4         (elmo-append-messages-disptch-table): New constant.
5         (elmo-folder-type-p): New function.
6         (elmo-folder-append-messages): Redefine as function.
7
8         * elmo-null.el (elmo-folder-append-messages): Renamed from
9         `elmo-folder-append-messages'.
10
11         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
12         (elmo-folder-append-messages-*-maildir): Renamed from
13         `elmo-folder-append-messages'.
14
15         * elmo-localdir.el (elmo-localdir-folder): Inherit
16         `elmo-file-tag'.
17         (elmo-folder-append-messages-*-localdir): Renamed from
18         `elmo-folder-append-messages'.
19
20         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
21         from `elmo-folder-append-messages'.
22
23         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
24         `elmo-folder-append-messages'.
25
26         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
27         function.
28         (elmo-folder-append-messages-*-filter): Ditto.
29
30         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
31
32         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
33         (elmo-folder-append-messages-*-pipe): Renamed from
34         `elmo-folder-append-messages'.
35
36         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
37
38         * elmo-file.el (elmo-file-folder): Ditto.
39
40         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
41
42         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
43         from `elmo-folder-append-messages'
44
45 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
46
47         * elmo-map.el (elmo-location-map-setup): Change an argument
48         `locations' to optional.
49         (elmo-location-map-clear): Abolish.
50         (elmo-folder-clear): Follow the API change.
51
52         * elmo-pop3.el (elmo-folder-clear): Ditto.
53
54         * elmo-pop3.el (toplevel): Require elmo-map.
55         (elmo-pop3-folder): Inherit elmo-location-map and abolish
56         location-alist slot (All other related portions are changed).
57         (elmo-pop3-folder-use-uidl): New function.
58         (elmo-folder-msgdb-create): Don't sort message entities.
59         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
60         (elmo-pop3-number-to-size): Convert return value to number.
61         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
62         working buffer.
63
64         * elmo-map.el: Use `location-map' as a variable name for instance
65         instead of `mapper'.
66         (elmo-location-map-setup): Return location alist.
67         (elmo-location-map-update): Ditto.
68
69 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
70
71         * elmo-map.el (elmo-location-map): New class; split location and
72         number mapping from elmo-map-folder (All other related portions
73         are changed).
74
75         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
76         change.
77
78         * elmo-version.el (elmo-version): Up to 2.15.4.
79
80 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
81
82         * elmo-vars.el (elmo-use-hardlink): New user option.
83
84         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
85         `elmo-use-hardlink'.
86
87         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
88         killed-list.
89         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
90         instead of `*-internal'. Use `elmo-with-progress-display'.
91
92 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
93
94         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
95         `elmo-spam-process-messages-as-mbox'.
96
97         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
98
99 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
100
101         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
102         argument BUFFER of `call-process'.
103
104 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
105
106         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
107         args.
108         (elsp-bsfilter-list-spam-files): Ditto.
109
110 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
111
112         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
113         (elmo-spam-bsfilter-max-messages-per-process): New use option.
114         (elmo-spam-bsfilter-debug): Fix a group.
115         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
116         `--homedir'.
117         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
118         (elsp-bsfilter-list-spam-files): New function.
119         (elmo-spam-list-spam-messages): Define.
120         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
121         (elmo-spam-bsfilter-register-messages): New function.
122         (elmo-spam-register-spam-messages): Define.
123         (elmo-spam-register-good-messages): Ditto.
124
125         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
126
127         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
128         `nconc' and `consp'.
129
130 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
131
132         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
133         hash table to test whether a location is exists.
134
135 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
136
137         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
138         even if some error occurred.
139
140         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
141         meaningless unwind-protect.
142
143         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
144         start-number correctly.
145         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
146         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
147
148 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
149
150         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
151         (elmo-folder-initialize): Use it.
152         (elmo-global-flag-replace-referrer): New function.
153
154         * elmo.el (toplevel): Added autoload setting for
155         `elmo-global-flag-replace-referrer'.
156         (elmo-folder-rename): Rewrite the last change use
157         `elmo-global-flag-replace-referrer'.
158
159         * elmo-pipe.el (elmo-folder-rename): Call
160         `elmo-global-flag-replace-referrer'.
161
162 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
163
164         * elmo.el (elmo-folder-rename): Set meta data for global flags
165         follow the rename.
166
167 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
168
169         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
170         as 'not-loaded.
171         (elmo-folder-close): Ditto.
172         (elmo-filter-folder-number-list-loaded-p): New function.
173         (elmo-filter-folder-number-list): Check whether loaded or not.
174         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
175         of `elmo-filter-folder-number-list-internal'.
176         (elmo-folder-delete-messages): Ditto.
177         (elmo-folder-length): Check whether number-list is loaded or not.
178
179 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
180
181         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
182         field `real field' into each element of list.
183         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
184         (elmo-msgdb-message-entity-field): Ditto.
185         (modb-entity-ml-info-real-fields): New function.
186
187         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
188
189         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
190         `elmo-msgdb-extra-fields'.
191
192 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
193
194         * elmo-util.el (elmo-passwd-alist-load): Move point to min
195         position before read.
196
197 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
198
199         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
200         (elmo-global-flags-initialize): Ditto.
201
202 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
203
204         * elmo-archive.el (toplevel): Don't require emu, std11
205         and elmo-localdir.
206
207         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
208         definition.
209
210 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
211
212         * elmo.el (elmo-folder-confirm-appends): Display folder name.
213
214 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
215
216         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
217         literals.
218
219 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
220
221         * elmo-maildir.el (elmo-maildir-list-location): Reduce
222         `elmo-get-last-modification-time' call.
223
224 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
225
226         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
227         expression.
228         (elmo-maildir-set-mark): Ditto.
229         (elmo-maildir-delete-mark): Ditto.
230
231 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
232
233         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
234         optional argument `separators'.
235
236 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
237
238         * elmo.el (cache-changed): Abolish.
239         (status-changed): New signal.
240         (elmo-message-killed-p): New generic function and define for
241         elmo-folder.
242         (elmo-folder-recover-messages): Ditto.
243         (elmo-message-set-cached): Emit signal `status-changed' instead of
244         `cache-changed'.
245         (elmo-message-status): New macro.
246         (elmo-message-status-folder): Ditto.
247         (elmo-message-status-number): Ditto.
248         (elmo-message-status-set-flags): Ditto.
249         (elmo-message-status-set-killed): Ditto.
250         (elmo-message-status-flags): New function.
251         (elmo-message-status-cached-p): Ditto.
252         (elmo-message-status-killed-p): Ditto.
253
254         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
255         `status-changed' instead of `cache-changed'.
256         (elmo-folder-recover-messages): Define.
257         (elmo-message-killed-p): Ditto.
258
259         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
260         `status-changed' instead of `cache-changed'.
261
262         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
263         (elmo-message-killed-p): Define.
264         (elmo-folder-recover-messages): Ditto.
265
266         * elmo-version.el (elmo-version): Up to 2.15.3.
267
268 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
269
270         * elmo-signal.el (elmo-signal-bindings): Use cons to append
271         element into list.
272         (elmo-define-signal-handler): Add docstring.
273         (elmo-define-signal-filter): Ditto.
274
275         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
276
277 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
278
279         * elmo-util.el (elmo-flatten): Don't use recursive call.
280
281         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
282         assignment.
283         (elmo-folder-message-make-temp-files): Use `number-to-string'
284         instead of `int-to-string'.
285
286 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
287
288         * elmo-search.el (elmo-folder-delete-messages): Define.
289
290 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
291
292         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
293         customization type.
294         (elmo-mailing-list-count-spec-list): Ditto.
295
296         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
297         for `list-id'.
298
299 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
300
301         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
302         handling.
303
304 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
305
306         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
307         (elmo-mailing-list-count-spec-list): Ditto.
308
309         * elmo-util.el (elmo-map-until-success): New function.
310         (elmo-string-match-substring): Ditto.
311         (elmo-find-list-match-value): Ditto.
312
313         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
314         Removed.
315         (modb-entity-extract-ml-info-from-subject): Ditto.
316         (modb-entity-extract-ml-info-from-return-path): Ditto.
317         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
318         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
319         (modb-entity-extract-ml-info-from-mailman): Ditto.
320         (modb-entity-extract-mailing-list-info-functions): Ditto.
321         (modb-entity-extract-mailing-list-info): Rewrite with
322         `elmo-find-list-match-value'.
323
324 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
325
326         * elmo-net.el (elmo-network-session-retry-count): New user option.
327         (elmo-network-session-buffer-name): New internal function.
328         (elmo-network-session-buffer-create): Ditto.
329         (elmo-network-open-session): Retry open network session
330         `elmo-network-session-retry-count' times.
331
332 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
333
334         * elmo-util.el (elmo-list-filter): Rewritten.
335
336 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
337
338         * elmo-util.el (elmo-string-member): Allow symbol element in list.
339
340 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
341
342         * elmo-search.el (elmo-make-search-engine): Use prefix
343         `elmo-search-' for require symbol instead of `else-'.
344         (elmo-search-engine-extprog): New class.
345         (elmo-search-engine-do-search): Remove nil from argument
346         list. Added argument pattern to evaluate element as function.
347         (elmo-search-engine-local-file): Derived from
348         `elmo-search-engine-extprog'.
349         (elmo-search-engine-create-message-entity): Check existance of file.
350         (elmo-search-engine-fetch-message): Ditto.
351         (elmo-search-namazu-index): Follow the API change.
352         (elmo-search-grep-target): Ditto.
353
354 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
355
356         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
357         characters of working buffer.
358
359         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
360         Does not bind `default-mime-charset'.
361         (elmo-msgdb-create-message-entity-from-buffer): Removed
362         unnecessary local bind.
363
364         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
365         function.
366         (modb-entity-extract-mailing-list-info-functions): Added it.
367
368 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
369
370         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
371         when number and message-id are non-nil.
372
373         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
374
375         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
376         conditional steatment.
377         (elmo-pop3-auth-apop): Likewise.
378         (elmo-network-authenticate-session): Likewise.
379
380 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
381
382         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
383         symbol `fill-column'.
384         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
385         decode field value.
386
387         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
388         (elmo-decoded-field-body): Ditto.
389
390 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
391
392         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
393         `tokens' to `params'.
394
395 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
396
397         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
398         working buffer.
399
400 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
401
402         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
403         decide index.
404
405 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
406
407         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
408         Set default value as nil.
409         (toplevel): Register search engines by
410         `elmo-search-register-engine' if there are not defined.
411
412         * elmo.el (autoload): Added autoload setting for
413         `elmo-search-register-engine'.
414
415 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
416
417         * elmo.el (toplevel): `[' is redefined as the prefix of the search
418         folder instead of nmz folder.
419         (elmo-nmz-default-index-path): Added obsolete variable setting.
420         (elmo-nmz-index-alias-alist): Ditto.
421         (elmo-nmz-use-drive-letter): Ditto.
422
423         * elmo-search.el (elmo-search-register-engine): New function.
424
425         * elmo-nmz.el: Removed.
426
427         * elmo-version.el (elmo-version): Up to 2.15.2.
428
429 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
430
431         * elmo-search.el: New file.
432
433 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
434
435         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
436         condition `larger' and `smaller'.
437
438 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
439
440         * elmo-util.el (elmo-safe-filename): Rewrite to replace
441         `"' (double quote) into "_Q_".
442
443 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
444
445         * elmo-net.el (elmo-net-quote-chars): Abolish.
446         (elmo-net-format-quoted): Ditto.
447
448 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
449
450         * elmo.el (elmo-get-folder-function): New variable.
451         (elmo-get-folder): New function.
452         (elmo-folder-rename): Call `elmo-make-folder' with specified
453         mime-charset.
454
455         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
456         `elmo-make-folder'.
457         (elmo-split-subr): Ditto.
458
459         * elmo-multi.el (elmo-folder-initialize): Ditto.
460
461         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
462
463         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
464         (elmo-flag-get-folder): Ditto.
465
466         * elmo-filter.el (elmo-folder-initialize): Ditto.
467
468         * elmo-access.el (elmo-folder-initialize): Ditto.
469         (elmo-access-folder-update-children): Ditto.
470
471         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
472         (elmo-dop-queue-flush): Ditto.
473         (elmo-folder-append-buffer-dop-delayed): Ditto.
474         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
475         mime-charset.
476
477         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
478         instead of `elmo-make-folder'.
479         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
480         destination folder instead of send `elmo-folder-rename-internal'.
481
482         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
483         slot of subfolder instead of create it.
484
485 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
486
487         * elmo-util.el (elmo-collect-separators): New function.
488         (elmo-collect-separators-internal): Ditto.
489         (elmo-collect-trail-separators): Ditto.
490         (elmo-parse-separated-tokens): Ditto.
491         (elmo-parse-separated-tokens-internal): Ditto.
492         (elmo-quote-syntactical-element): Ditto.
493
494         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
495         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
496
497         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
498         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
499         (elmo-nntp-folder-list-subfolders): Quote a user name.
500
501         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
502         (elmo-net-parse-network): Abolish.
503         (elmo-net-folder-set-parameters): New function.
504         (elmo-folder-initialize): Follow the above change.
505
506         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
507         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
508         (elmo-folder-list-subfolders): Use
509         `elmo-quote-syntactical-element' instead of
510         `elmo-net-format-quoted' to quote mailbox and user name.
511
512 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
513
514         * elmo-util.el (elmo-token-valid-p): New function.
515         (elmo-parse-token): Add optional argument `requirement'.
516         (elmo-parse-prefixed-element): Likewise.
517
518         * elmo-net.el (elmo-net-quote-chars): Renamed from
519         `elmo-net-quote-chars-regexp'.
520         (elmo-net-format-quoted): Add optional argument `extra-chars'.
521
522         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
523         by info document. Check token `uidl' is started an alphabet.
524
525         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
526         by info document. Check token `user' is started an alphabet.
527
528         * elmo-imap4.el (elmo-folder-initialize): Ditto.
529         (elmo-folder-list-subfolders): Quote user.
530
531 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
532
533         * elmo-util.el (elmo-quoted-specials-list): New constant.
534         (elmo-quoted-token): New function.
535
536         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
537         (elmo-net-format-quoted): New function.
538         (elmo-net-parse-network): Ditto.
539         (elmo-folder-initialize): Use it.
540
541         * elmo-nntp.el (elmo-folder-initialize): Use
542         `elmo-net-parse-network' to parse network specification instead of
543         `elmo-folder-initialize#elmo-net'.
544
545         * elmo-pop3.el (elmo-folder-initialize): Ditto.
546
547         * elmo-imap4.el (elmo-folder-initialize): Ditto.
548         (elmo-folder-list-subfolders): Quote folder name by
549         `elmo-net-format-quoted'.
550
551 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
552
553         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
554         (elmo-folder-search): Use it.
555
556 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
557
558         * modb-standard.el (modb-standard-loaded-message-id): Use
559         `elmo-msgdb-message-entity-field'.
560
561 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
562
563         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
564         without filename.
565
566 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
567
568         * elmo-util.el (elmo-set-auto-coding): New function.
569         (elmo-object-load): Use it.
570
571 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
572
573         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
574         (elmo-time<): Define as alias of `elmo-time-less-p'.
575         (elmo-time-to-datevec): New function.
576
577         * elmo-date.el (elmo-time-to-days): New function.
578
579 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
580
581         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
582         is not cons cell.
583
584 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
585
586         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
587         parenthesis.
588
589         * elmo-util.el (elmo-map-recursive): New function.
590
591         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
592         (modb-entity-encode-string-recursive): Ditto.
593
594 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
595
596         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
597         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
598         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
599         compare sequence number when last modified time is nil.
600
601 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
602
603         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
604
605         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
606
607 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
608
609         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
610         modification time of the file.
611
612 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
613
614         * elmo-util.el (elmo-condition-optimize): Discriminated against
615         preserved fields, extra fields and the other weight.
616
617 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
618
619         * modb-entity.el (initialize-instance): Define.
620         (modb-entity-handler-mime-charset): New internal function.
621         (modb-standard-entity-set-field): Use it.
622         (elmo-msgdb-message-entity-field): Ditto.
623         (elmo-msgdb-message-entity-field): Ditto.
624
625         * modb.el (elmo-msgdb-match-condition): Rewrite with
626         `elmo-condition-match'.
627         (elmo-msgdb-match-condition-primitive): New function.
628
629         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
630         arguments `flags' and `numbers'.
631         (elmo-msgdb-match-condition-primitive): Abolished (merged to
632         `elmo-msgdb-message-match-condition').
633         (modb-buffer-entity-handler): New class.
634
635         * elmo.el (elmo-folder-search): Optimize condition to use
636         `elmo-condition-optimize'.
637         (elmo-message-buffer-match-condition): New function.
638         (elmo-message-match-condition): Use
639         `elmo-message-buffer-match-condition' instead of
640         `elmo-buffer-field-condition-match'.
641
642         * elmo-util.el (elmo-condition-match): New function.
643         (elmo-condition-optimize): Ditto.
644         (elmo-buffer-field-primitive-condition-match): Abolish.
645         (elmo-buffer-field-condition-match): Ditto.
646
647         * elmo-archive.el (elmo-archive-field-condition-match): Use
648         `elmo-message-buffer-match-condition' instead of
649         `elmo-buffer-field-condition-match'.
650
651 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
652
653         * elmo-flag.el (elmo-global-flags-initialize): Check the
654         existence of the flag directory.
655
656 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
657
658         * elmo-access.el (elmo-folder-initialize): Call
659         `elmo-multi-connect-signals'.
660
661         * elmo-pipe.el (elmo-folder-close): Define.
662
663         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
664         children folders.
665
666         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
667         with target folder.
668
669         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
670         `number'.
671
672         * elmo-multi.el (elmo-message-entity): Don't use return value of
673         `elmo-message-entity-set-number'.
674
675 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
676
677         * modb.el (modb-generic): Added slot `mime-charset'.
678
679         * modb-standard.el (modb-standard): Added slot `overview-handler'.
680         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
681         and `modb-entity-handler-dump-parameters'.
682         (modb-standard-default-entity-handler): Abolish.
683         (elmo-msgdb-message-entity-handler): Save created handler by
684         instance slot.
685
686         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
687         (modb-entity-handler-list-parameters): New method.
688         (modb-entity-handler-equal-p): New function.
689         (modb-entity-handler-dump-parameters): Ditto.
690         (modb-entity-parse-address-string): Encode return value.
691         (modb-entity-make-address-string): Decode argument value.
692         (modb-entity-decode-string-recursive): New function.
693         (modb-entity-encode-string-recursive): Ditto.
694         (modb-standard-entity-normalizer): Set to encode field value.
695         (modb-standard-entity-specializer): Follow the above change.
696         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
697         mime-charset of handler.
698         (elmo-msgdb-message-entity-field): Ditto.
699         (elmo-msgdb-copy-message-entity): Fixed reference to internal
700         structure.
701         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
702
703         * elmo.el (elmo-folder): Added slot `mime-charset'.
704         (elmo-make-folder): Added argument `mime-charset'.
705         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
706         `mime-charest'.
707
708         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
709         (elmo-make-msgdb): Likewise.
710
711         * elmo-internal.el (elmo-internal-folder-initialize): Call
712         `luna-make-entity' with :mime-charset parameter.
713
714 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
715
716         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
717         encoded words in `from' and `subject' field.
718
719 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
720
721         * modb.el (elmo-msgdb-message-field): Add argument `type'.
722         (elmo-msgdb-match-condition): Get handler from entity instead of
723         msgdb.
724
725         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
726         (modb-standard-load-entity): Treat new file format.
727         (modb-standard-save-entity-1): Save as new file format.
728         (modb-standard-save-entity): Split messages into section here.
729         (elmo-msgdb-message-field): Follow the API change.
730         (modb-standard-default-entity-handler): New internal variable.
731         (elmo-msgdb-message-entity-handler): Define.
732
733         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
734         to `elmo-vars.el'.
735         (modb-entity-field-extractor-alist): New user option.
736         (elmo-msgdb-message-entity-field): Removed argument `decode' and
737         added argument `type'.
738         (elmo-msgdb-copy-message-entity): Add optional argument
739         `make-handler'.
740         (modb-set-field-converter): New function.
741         (modb-convert-field-value): Ditto.
742         (modb-entity-string-decoder): Ditto.
743         (modb-entity-string-encoder): Ditto.
744         (modb-entity-parse-date-string): Ditto.
745         (modb-entity-make-date-string): Ditto.
746         (modb-entity-mime-decoder): Ditto.
747         (modb-entity-mime-encoder): Ditto.
748         (modb-entity-address-list-decoder): Ditto.
749         (modb-entity-address-list-encoder): Ditto.
750         (modb-entity-parse-address-string): Ditto.
751         (modb-entity-make-address-string): Ditto.
752         (modb-entity-create-field-indices): Ditto.
753         (modb-legacy-entity-field-slots): New constant.
754         (modb-legacy-entity-field-indices): Ditto.
755         (modb-legacy-entity-normalizer): New variable.
756         (modb-legacy-entity-specializer): Ditto.
757         (modb-legacy-entity-field-index): New macro.
758         (modb-legacy-entity-set-field): New function.
759         (modb-legacy-make-message-entity): Rewrite.
760         (elmo-msgdb-create-message-entity-from-buffer): Use
761         `elmo-msgdb-get-references-from-buffer'. Use
762         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
763         Use `modb-legacy-entity-set-field' instead of
764         `elmo-msgdb-message-entity-set-field'.
765         (elmo-msgdb-message-entity-field): Rewrite.
766         (elmo-msgdb-message-entity-set-field): Ditto.
767         (elmo-msgdb-copy-message-entity): Make new entity by
768         `make-handler' if it specified.
769         (elmo-msgdb-message-match-condition): Define a method of
770         `modb-entity-handler' and follow the API change.
771         (modb-standard-entity-handler): New class.
772         (modb-entity-extract-ml-info-from-x-sequence): New function.
773         (modb-entity-extract-ml-info-from-subject): Ditto.
774         (modb-entity-extract-ml-info-from-return-path): Ditto.
775         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
776         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
777         (modb-entity-extract-mailing-list-info): Ditto.
778         (modb-entity-extract-mailing-list-info-functions): New variable.
779
780         * elmo.el (elmo-message-field): Add optional argument `type'.
781
782         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
783         from `modb-entity.el'.
784
785         * elmo-util.el (elmo-object-load): Decode by coding-system from
786         `set-auto-coding-function'.
787         (elmo-object-save): Use `detect-mime-charset-region' and add
788         coding cookie if encode.
789         (elmo-msgdb-get-references-from-buffer): New function.
790         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
791
792         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
793
794         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
795         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
796         instead of `shimbun-make-header' and follow the API change.
797         (elmo-shimbun-update-overview): Follow the API change.
798         (elmo-map-folder-list-message-locations): Ditto.
799
800         * elmo-pipe.el (elmo-message-field): Ditto.
801
802         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
803         Ditto.
804
805         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
806
807         * elmo-multi.el (elmo-message-field): Ditto.
808
809         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
810         (elmo-msgdb-sort-by-date): Ditto.
811         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
812         `elmo-message-entity-field'.
813         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
814         change.
815         (elmo-msgdb-overview-entity-get-from): Ditto.
816         (elmo-msgdb-overview-entity-get-subject): Ditto.
817         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
818         (elmo-msgdb-overview-entity-get-date): Ditto.
819         (elmo-msgdb-overview-entity-get-to): Ditto.
820         (elmo-msgdb-overview-entity-get-cc): Ditto.
821
822         * elmo-mime.el (elmo-message-mime-entity): Ditto.
823         (elmo-mime-collect-message/partial-pieces): Ditto.
824
825         * elmo-filter.el (elmo-message-field): Ditto.
826
827         * elmo-date.el (elmo-datevec-to-time): New function.
828         (elmo-time-parse-date-string): Ditto.
829         (elmo-time-make-date-string): Ditto.
830         (elmo-time<): Ditto.
831
832         * elmo-version.el (elmo-version): Up to 2.15.1.
833
834 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
835
836         * elmo-flag.el (elmo-global-flags-initialize): Don't include
837         member of elmo-local-flags.
838
839 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
840
841         * elmo-version.el (elmo-version): Up to 2.15.0.
842
843 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
844
845         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
846         `ignore-msgdb' is non-nil.
847
848 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
849
850         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
851         (elmo-condition-in-msgdb-p): Ditto.
852         (elmo-file-field-primitive-condition-match): Ditto.
853         (elmo-file-field-condition-match): Ditto.
854
855         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
856
857 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
858
859         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
860         subdirectories here.
861         (elmo-global-flags-initialize): New function.
862
863         * elmo.el (toplevel): Added autoload setting for
864         `elmo-global-flags-initialize'.
865
866 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
867
868         * elmo.el (message-number-changed): Define new signal.
869         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
870         message-number-changed signal.
871         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
872         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
873         Respect `elmo-pack-number-check-strict'.
874
875 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
876
877         * elmo-signal.el (elmo-connect-signal): Document.
878         (elmo-emit-signal): Ditto.
879         (elmo-emit-signal): It should pass source argument to filter and
880         handler, not slot-source.
881
882 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
883
884         * modb.el (elmo-msgdb-update-entity): New API and define generic
885         implement.
886
887         * modb-standard.el (elmo-msgdb-update-entity): Define.
888
889         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
890         API and define generic implement.
891
892         * elmo.el (update-overview): New singnal.
893
894         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
895         `elmo-msgdb-update-entity' and emit signal `update-overview'.
896         (elmo-message-entity-parent): Define.
897
898         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
899         `update-overview'.
900
901         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
902
903         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
904
905 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
906
907         * elmo.el (elmo-folder-synchronize): Sort the return value of
908         `elmo-list-diff'.
909
910         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
911         list.
912
913 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
914
915         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
916         `default-enable-multibyte-characters'.
917         (elmo-object-load): Use `with-temp-buffer' instead of
918         `elmo-set-work-buf'.
919         (elmo-object-save): Ditto.
920         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
921         `elmo-set-work-buf'.
922         (elmo-decoded-field-body): Ditto.
923
924         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
925
926         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
927         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
928
929         * elmo-version.el (elmo-version): Up to 2.13.3.
930
931 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
932
933         * elmo-util.el (elmo-list-diff): Fix the last change.
934         Reverse order of result lists.
935
936 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
937
938         * modb-standard.el (elmo-msgdb-set-flag): Use
939         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
940         (elmo-msgdb-unset-flag): Ditto.
941
942         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
943         `elmo-list-diff'.
944
945         * elmo-util.el (elmo-list-diff): Rewrite.
946         (elmo-list-diff-nonsortable): New function.
947
948 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
949
950         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
951         `elmo-multibypte-buffer-name'.  All referers are updated.
952
953 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
954
955         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
956         (elmo-mime-entity-fragment-p): New function.
957         (mime-elmo-buffer-entity): Added slot `reassembled'.
958         (elmo-message-mime-entity): Added 4th argument `reassemble'.
959         (elmo-message-mime-entity-internal): New function (renamed from
960         `elmo-message-mime-entity').
961         (elmo-mime-inherit-field-list-from-enclosed): New constant.
962         (elmo-mime-make-reassembled-mime-entity): New function.
963         (elmo-message-reassembled-mime-entity): Ditto.
964         (elmo-mime-collect-message/partial-pieces): Ditto.
965
966 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
967
968         * elmo.el (elmo-message-fetch-string): Disable multibyte.
969
970         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
971         (elmo-with-enable-multibyte): New macro.
972
973         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
974
975 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
976
977         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
978         argument `number'.
979         (elmo-filter-connect-signals): Follow the above change.
980
981 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
982
983         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
984
985         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
986         that only the first flag is used.
987
988 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
989
990         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
991         if available.
992
993 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
994
995         * elmo-signal.el: New file.
996
997         * elmo.el (toplevel): Require elmo-signal.
998         (flag-changing, flag-changed, cache-changed): New signal.
999         (elmo-folder): Remove slog `handlers'.
1000         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1001         `elmo-folder-notify-event'.
1002         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1003         (elmo-folder-unset-flag): Ditto.
1004         (elmo-event-handler): Abolish.
1005         (elmo-event-handler-flag-changed): Ditto.
1006         (elmo-event-handler-cache-changed): Ditto.
1007         (elmo-folder-add-handler): Ditto.
1008         (elmo-folder-remove-handler): Ditto.
1009         (elmo-folder-notify-event): Ditto.
1010
1011         * elmo-pipe.el (toplevel): Require elmo-signal.
1012         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1013         (elmo-pipe-connect-signals): New function.
1014         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1015         (elmo-folder-set-flag): Ditto.
1016         (elmo-folder-unset-flag): Ditto.
1017         (elmo-message-set-cached): Ditto.
1018
1019         * elmo-multi.el (toplevel): Require elmo-signal.
1020         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1021         (elmo-multi-connect-signals): New function.
1022         (elmo-multi-map-numbers): Ditto.
1023         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1024         (elmo-message-fetch): Ditto.
1025         (elmo-folder-set-flag): Ditto.
1026         (elmo-folder-unset-flag): Ditto.
1027
1028         * elmo-filter.el (toplevel): Require elmo-signal.
1029         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1030         (elmo-filter-connect-signals): New function.
1031         (elmo-filter-add-flag-count): Ditto.
1032         (elmo-message-fetch): Does not call
1033         `elmo-filter-folder-countup-message-flags' and
1034         `elmo-folder-notify-event'.
1035         (elmo-message-set-cached): Ditto.
1036         (elmo-folder-set-flag): Ditto.
1037         (elmo-folder-unset-flag): Ditto.
1038
1039         * elmo-version.el (elmo-version): Up to 2.13.2.
1040
1041 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1042
1043         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1044         `flags'.
1045
1046 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1047
1048         * elmo-filter.el (elmo-message-set-cached): Call
1049         `elmo-folder-notify-event' with event `cache-changed'.
1050
1051         * elmo-multi.el (elmo-message-set-cached): Ditto.
1052
1053         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1054
1055 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1056
1057         * elmo.el (elmo-folder-encache): Abolish.
1058
1059 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1060
1061         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1062         (elmo-folder-next-message-number-dop): Return appropriate negative
1063         integer.
1064
1065 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1066
1067         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1068         clearing pending operations.
1069         (elmo-folder-next-message-number-dop): Return appropriate negative
1070         integer.
1071
1072 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1073
1074         * elmo.el (toplevel): Added autoload setting for `md5'.
1075         (elmo-msgdb-path-encode-threshold): New user option.
1076         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1077         longer than `elmo-msgdb-path-encode-threshold'.
1078
1079         * elmo-flag.el (elmo-global-mark-migrate): Use
1080         `elmo-folder-expand-msgdb-path' instead of
1081         `elmo-folder-msgdb-path'.
1082
1083 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1084
1085         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1086         element of the difference is nil.
1087
1088 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1089
1090         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1091         to the check logic of file systems which are weak in colon character.
1092
1093 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1094
1095         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1096
1097 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1098
1099         * elmo-maildir.el (elmo-maildir-move-file): New function.
1100         (elmo-folder-append-buffer): Use it.
1101         (elmo-folder-append-messages): Ditto.
1102         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1103
1104         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1105         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1106
1107         * elmo-maildir.el (elmo-maildir-separator): New user option.
1108         (elmo-maildir-adjust-separator): New macro.
1109         (elmo-maildir-list-location): Use it.
1110         (elmo-maildir-update-current): Ditto.
1111         (elmo-maildir-set-mark): Ditto.
1112         (elmo-maildir-delete-mark): Ditto.
1113         (These changes are based on Hiroya Murata's patch [wl: 13437])
1114
1115 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1116
1117         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1118
1119 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1120
1121         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1122         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1123         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1124
1125 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1126
1127         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1128         Use `with-temp-buffer'.
1129
1130 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1131
1132         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1133
1134         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1135         `wl-read-search-condition').
1136         (elmo-read-search-condition-internal): Likewise.
1137
1138         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1139         (elmo-flag-valid-p): New function.
1140         (elmo-folder-initialize): Check flag name is valid.
1141
1142 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1143
1144         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1145         delimiter to obtain root mailbox itself.
1146
1147 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1148
1149         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1150         type mismatch.
1151
1152 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1153
1154         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1155         as t.
1156
1157 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1158
1159         * elmo-shimbun.el (toplevel): Require cl at compile.
1160
1161         * elmo-nntp.el (toplevel): Ditto.
1162
1163         * elmo-nmz.el (toplevel): Ditto.
1164
1165         * elmo-multi.el (toplevel): Ditto.
1166
1167         * elmo-file.el (toplevel): Ditto.
1168
1169         * elmo-dop.el (toplevel): Ditto.
1170
1171         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1172
1173 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1174
1175         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1176         as nil.
1177
1178         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1179         size of elmo-message-fetch-internal is 0 byte.
1180
1181 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1182
1183         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1184
1185 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1186
1187         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1188         always plugged.
1189
1190 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1191
1192         * elmo-maildir.el (elmo-map-message-fetch): Call
1193         `elmo-map-folder-set-flag'.
1194
1195         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1196         (elmo-message-fetch): Merge from
1197         `elmo-message-fetch-with-cache-process'.
1198
1199         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1200         (elmo-message-fetch): Define.
1201
1202         * elmo-nntp.el (elmo-message-fetch): Renamed from
1203         `elmo-message-fetch-with-cache-process'.
1204
1205         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1206         (elmo-message-fetch): Define.
1207
1208         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1209         search-key.
1210
1211         * elmo-shimbun.el (shimbun-mua-search-id): Use
1212         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1213         (elmo-shimbun-folder-shimbun-header): Ditto.
1214         (elmo-shimbun-get-headers): Ditto.
1215         (elmo-shimbun-update-overview): Ditto.
1216
1217         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1218
1219         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1220         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1221
1222 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1223
1224         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1225         message is cached.
1226         (elmo-message-fetch-string): Fixed argument.
1227
1228 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1229
1230         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1231         exchange order of arguments `section' and `unread'.
1232         (elmo-message-encache): Follow the API change.
1233         (elmo-message-match-condition): Ditto.
1234         (elmo-generic-folder-append-messages): Ditto.
1235         (elmo-message-fetch-string): New function.
1236
1237         * elmo-split.el (elmo-split-subr): Ditto.
1238
1239         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1240
1241         * elmo-pipe.el (elmo-message-fetch): Ditto.
1242
1243         * elmo-multi.el (elmo-message-fetch): Ditto.
1244
1245         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1246
1247         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1248
1249         * elmo-filter.el (elmo-message-fetch): Ditto.
1250
1251         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1252
1253         * elmo-imap4.el (mime-imap-location-section-body): Use
1254         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1255         follow the API change.
1256
1257 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1258
1259         * elmo-access.el: New file.
1260
1261         * elmo-null.el: Ditto.
1262
1263         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1264
1265 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1266
1267         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1268         (elmo-network-session): New attribute `last-accessed'.
1269         (elmo-network-get-session): Discard network cache if elapsed time
1270         since last-accessed is larger than elmo-network-session-idle-timeout.
1271
1272 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1273
1274         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1275         and added `number', `require-entireness'.
1276         (elmo-find-fetch-strategy): Rewrite.
1277         (elmo-message-fetch): Unset `unread' flag when argument unread is
1278         non-nil.
1279
1280         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1281
1282         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1283         (elmo-message-fetch): Notify event `flag-changed'.
1284
1285         * elmo-pipe.el: Likewise.
1286
1287         * elmo-mime.el (elmo-mime-entity): New class.
1288         (elmo-mime-entity-display-p): New generic function.
1289         (elmo-mime-entity-display): Ditto.
1290         (elmo-mime-entity-display-as-is): Ditto.
1291         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1292         elmo-mime-entity.
1293         (elmo-make-mime-message-location): Removed.
1294         (elmo-mime-message-display): Ditto.
1295         (elmo-mime-display-as-is): Ditto.
1296         (elmo-message-mime-entity): New function.
1297
1298         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1299
1300         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1301         change.
1302         (elmo-message-fetch): Re-count flagged message number and notify
1303         event `flag-changed'.
1304
1305         * elmo-version.el (elmo-version): Up to 2.13.1.
1306
1307 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1308
1309         * elmo-filter.el (elmo-message-field): Define.
1310         (elmo-message-set-field): Ditto.
1311
1312 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1313
1314         * elmo.el (elmo-message-set-cached): Call
1315         `elmo-folder-notify-event' with cache-changed.
1316         (elmo-event-handler-cache-changed): New generic function.
1317
1318 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1319
1320         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1321         instead of elmo-add-name-to-file.
1322         (elmo-folder-append-messages): Ditto.
1323
1324 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1325
1326         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1327
1328 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1329
1330         * elmo-version.el (elmo-version): Up to 2.13.0.
1331
1332         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1333         `auto'.
1334
1335         * modb-standard.el (modb-standard-economize-entity-size): Changed
1336         default value to `t'.
1337
1338         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1339         `standard'.
1340
1341         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1342         after parsing greeting string.
1343
1344 2004-11-23  Daishi Kato <daishi@axlight.com>
1345
1346         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1347         New user option.
1348         (elmo-spam-spamoracle-call): Use it.
1349
1350 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1351
1352         * elmo.el (elmo-message-accessible-p): Message in dop spool
1353         is accessible.
1354
1355 2004-11-23  Daishi Kato <daishi@axlight.com>
1356
1357         * elsp-spamoracle.el: New file.
1358
1359 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1360
1361         * elmo.el (elmo-message-flags-for-append): New function.
1362         (elmo-generic-folder-append-messages): Use it.
1363
1364         * elmo-split.el (elmo-split-subr): Ditto.
1365
1366         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1367         `flags' and use elmo-folder-append-buffer instead of
1368         write-region-as-binary.
1369         (elmo-dop-filter-pending-messages): New function.
1370         (elmo-folder-append-buffer-dop): Call
1371         elmo-dop-spool-folder-append-buffer with `flag'.
1372         (elmo-folder-set-flag-dop): Filter messages by
1373         elmo-dop-filter-pending-messages.
1374         (elmo-folder-unset-flag-dop): Ditto.
1375         (elmo-folder-append-buffer-dop-delayed): Use
1376         elmo-message-flags-for-append to get flags of the message and
1377         simplify.
1378
1379 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1380
1381         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1382
1383 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1384
1385         * elmo.el (elmo-folder): Added handlers slot.
1386         (elmo-event-handler): New class.
1387         (elmo-event-handler-flag-changed): New API.
1388         (elmo-folder-add-handler): New function.
1389         (elmo-folder-remove-handler): Ditto.
1390         (elmo-folder-notify-event): Ditto.
1391         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1392         `flag-changed'.
1393         (elmo-folder-unset-flag): Ditto.
1394
1395         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1396         (elmo-folder-unset-flag): Ditto.
1397
1398         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1399         (elmo-folder-unset-flag): Ditto.
1400
1401         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1402         (elmo-folder-unset-flag): Ditto.
1403
1404         * elmo-version.el (elmo-version): Up to 2.11.33.
1405
1406 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1407
1408         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1409
1410 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1411
1412         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1413
1414         * elmo-flag.el (elmo-folder-unset-flag): Define.
1415         (elmo-global-flag-detach): Do process when the flag is not target
1416         flag.
1417
1418 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1419
1420         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1421         variable.
1422         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1423
1424 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1425
1426         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1427         function.
1428         (elmo-folder-delete-messages): Detach messages before delete
1429         messages from target folder.
1430         (elmo-folder-detach-messages): Set updated number-list to slot.
1431
1432 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1433
1434         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1435
1436 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1437
1438         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1439
1440 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1441
1442         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1443         internal use only).
1444         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1445         not modified.
1446         (elmo-folder-delete-messages): Define.
1447         (elmo-folder-move-messages): Don't call
1448         `elmo-folder-detach-messages'.
1449         (elmo-folder-synchronize): Rewrite.
1450         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1451
1452         * elmo-util.el (elmo-last): New function.
1453         (elmo-set-list): Ditto.
1454         (elmo-number-set-delete-list): Ditto.
1455         (elmo-number-set-delete): Ditto.
1456
1457         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1458
1459         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1460         `elmo-folder-delete-messages' and don't delete location map.
1461         (elmo-folder-detach-messages): Define.
1462
1463         * elmo-imap4.el (elmo-folder-delete): Use
1464         `elmo-folder-delete-messages-internal' instead of
1465         `elmo-folder-delete-messages'.
1466
1467         * elmo-filter.el (elmo-folder-delete-messages): Call
1468         `elmo-folder-detach-messages'.
1469         (elmo-folder-detach-messages): Don't call
1470         `elmo-folder-detach-messages' for target folder.
1471
1472         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1473         message deletion is succeeded.
1474
1475         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1476
1477         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1478         from `elmo-folder-delete-messages'.
1479
1480         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1481
1482         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1483
1484         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1485
1486         * elmo-version.el (elmo-version): Up to 2.11.32.
1487
1488 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1489
1490         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1491         (elmo-global-flag-list): Added obsolete variable setting.
1492
1493         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1494
1495         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1496         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1497         `elmo-mime-display-header-analysis' is nil.
1498
1499         * elmo-flag.el (elmo-global-flags): Renamed from
1500         `elmo-global-flag-list' (All other related portions are changed).
1501         (elmo-local-flags): New variable.
1502         (elmo-local-flag-p): New function.
1503         (elmo-global-flag-set-internal): Cause an error when flag is not
1504         global.
1505
1506 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1507
1508         * elmo-util.el (elmo-concat-path): Treat empty path.
1509
1510 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1511
1512         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1513         field-or-fields).
1514         (elmo-split-address-match): Ditto.
1515         (elmo-split-equal): Ditto.
1516         (elmo-split-match): Ditto.
1517
1518 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1519
1520         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1521         (elmo-generic-folder-append-messages): If src message exists but
1522         has no flag, pass (read) for the FLAG argument of
1523         `elmo-folder-append-buffer'. Otherwise, pass nil.
1524
1525         * elmo-split.el (elmo-split-subr): Likewise.
1526
1527         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1528
1529         * elmo-multi.el (elmo-message-flags): Ditto.
1530
1531         * elmo-filter.el (elmo-message-flags): Ditto.
1532
1533         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1534         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1535         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1536         
1537 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1538
1539         * elmo-split.el (elmo-split-rule): Update comment.
1540         (elmo-split-address-equal): Allow 2nd argument to be a list.
1541         (elmo-split-address-match): Ditto.
1542         (elmo-split-equal): Ditto.
1543         (elmo-split-match): Ditto.
1544
1545 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1546
1547         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1548         (elmo-folder-append-msgdb): Don't treat `read'.
1549         (elmo-message-flags): Don't return `read'.
1550
1551         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1552         (elmo-folder-unset-read-delayed): Ditto.
1553
1554         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1555
1556 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1557
1558         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1559         deletion.
1560
1561 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1562
1563         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1564         header.
1565
1566 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1567
1568         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1569         here.
1570         (elmo-msgdb-save): Bind inhibit-quit.
1571         (modb-standard-message-entity): Ditto.
1572
1573 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1574
1575         * elmo-database.el: No need to require elmo-msgdb.
1576
1577 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1578
1579         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1580         instead of `elmo-list-subdirectories'.
1581
1582 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1583
1584         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1585         group entry.
1586         (elmo-folder-exists-p): "[" is empty.
1587         (elmo-folder-list-subfolders): Define.
1588         (elmo-folder-have-subfolder-p): Ditto.
1589
1590 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1591
1592         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1593
1594 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1595
1596         * elmo-filter.el (elmo-folder-local-p): Define.
1597
1598 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1599
1600         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1601         when entity is garbaged.
1602         (modb-standard-save-entity-1): Don't modify the original entity.
1603
1604 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1605
1606         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1607
1608 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1609
1610         * elmo.el (elmo-strict-folder-diff): Use
1611         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1612
1613 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1614
1615         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1616         (elmo-msgdb-message-number): Ditto.
1617         (elmo-msgdb-message-field): Ditto.
1618
1619         * modb-standard.el (modb-standard-economize-entity-size): New user
1620         option.
1621         (modb-standard-loaded-message-id): New inline function.
1622         (modb-standard-load-entity): Use it.
1623         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1624         throw message-id string away.
1625         (elmo-msgdb-flag-available-p): Define.
1626         (elmo-msgdb-message-number): Ditto.
1627         (elmo-msgdb-message-field): Ditto.
1628
1629         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1630         (suppoted -> supported).
1631         (modb-legacy-supported-flag-p): Ditto.
1632         (elmo-msgdb-set-flag): Ditto.
1633         (elmo-msgdb-unset-flag): Ditto.
1634         (elmo-msgdb-flag-available-p): Define.
1635
1636         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1637         is `t', treat it as legacy entity.
1638         
1639         * elmo.el (elmo-message-flag-available-p): New generic function.
1640         (elmo-message-number): Ditto.
1641         (elmo-message-field): Use `elmo-msgdb-message-field'.
1642
1643         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1644
1645         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1646         (elmo-message-number): Ditto.
1647
1648         * elmo-multi.el (elmo-message-number): Define.
1649         (elmo-message-flag-available-p): Ditto.
1650
1651         * elmo-filter.el (elmo-message-flag-available-p): Define.
1652         (elmo-message-number): Ditto.
1653
1654         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1655         (elmo-folder-initialize): Load `max-number'.
1656         (elmo-folder-commit): Save it.
1657         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1658         (elmo-global-flag-set-internal): Set up max-number slot.
1659
1660 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1661
1662         * elmo-version.el (elmo-version): Up to 2.11.31.
1663
1664 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1665
1666         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1667         unibyte string of the current buffer for the argument of `md5'
1668         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1669
1670 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1671
1672         * modb-legacy.el (modb-legacy-flag-list): New constant.
1673         (modb-legacy-suppoted-flag-p): New internal function.
1674         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1675         (elmo-msgdb-unset-flag): Ditto.
1676
1677 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1678
1679         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1680
1681         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1682         from msgdb.
1683
1684 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1685
1686         * elmo-multi.el (elmo-folder-count-flags): Changed return value
1687         (follow the API change).
1688
1689         * elmo-filter.el (elmo-folder-count-flags): Ditto.
1690
1691 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
1692
1693         * modb-standard.el (modb-standard-digest-flags): Abolish.
1694         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
1695
1696         * elmo-vars.el (elmo-digest-flags): New variable.
1697         (elmo-preserved-flags): Moved from elmo-flag.el.
1698
1699         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
1700         (elmo-imap4-flag-to-imap-criteria): Ditto.
1701         (elmo-imap4-folder-list-flagged): Use it.
1702
1703         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
1704
1705         * elmo.el (elmo-folder-count-flags): Changed return value.
1706
1707         * elmo-flag.el (elmo-preserved-flags): New variable.
1708         (elmo-get-global-flags): Use it.
1709
1710         * modb-standard.el (modb-standard-digest-flags): New variable.
1711         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
1712         Changed behavior of `any'.
1713
1714         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1715         which are defined the Internet draft
1716         (draft-melnikov-imap-keywords-03.txt).
1717         (elmo-imap4-flags-to-imap): New function.
1718         (elmo-folder-append-buffer): Use it.
1719
1720         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1721         in the docstring.
1722
1723         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1724         avoid the bug of Emacs 21.3.
1725
1726 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
1727
1728         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1729         function find-coding-system does not exist.
1730
1731 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1732
1733         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1734         parsing.
1735
1736 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1737
1738         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1739         response codes.
1740
1741 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1742
1743         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1744         (elmo-network-close-session): Follow the changes in
1745         `elmo-pop3-read-response'.
1746         (elmo-pop3-auth-user): Ditto.
1747         (elmo-pop3-auth-apop): Ditto.
1748         (elmo-network-initialize-session): Ditto.
1749         (elmo-network-authenticate-session): Ditto.
1750         (elmo-network-setup-session): Ditto.
1751         (elmo-folder-status): Ditto.
1752         (elmo-message-fetch-plugged): Ditto.
1753         (elmo-pop3-delete-msg): Ditto.
1754
1755 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1756
1757         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1758         on failure.
1759
1760 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1761
1762         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1763         style.
1764         (elmo-bind-directory): Ditto.
1765
1766 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1767
1768         * elmo.el (elmo-folder-append-messages): Note on return value.
1769         * elmo-archive.el (elmo-folder-append-messages): Don't return
1770         message numbers which could not be appended.
1771
1772 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1773
1774         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1775
1776 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1777
1778         * elmo-version.el (elmo-version): Up to 2.11.30.
1779
1780 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1781
1782         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1783         `mask'.
1784
1785         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1786
1787         * elmo-multi.el (elmo-folder-synchronize): Likewise.
1788         (elmo-multi-split-numbers): Add elmo-folder object into each
1789         element of return value at first.
1790         (elmo-folder-delete-messages): Follow the above change.
1791         (elmo-folder-detach-messages): Ditto.
1792
1793         * elmo-filter.el (elmo-folder-synchronize): Minimize message
1794         number which is synchronized in target folder.
1795
1796 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1797
1798         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1799         Change default value to symbol `all'.
1800         (elmo-map-message-fetch): Change condition to update overview
1801         follow the above.
1802
1803 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1804
1805         * elmo-shimbun.el (elmo-map-message-fetch): Change default
1806         behavior to update overview.
1807         (elmo-shimbun-update-overview-folder-list): Note it.
1808
1809 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1810
1811         * modb-standard.el (modb-standard-message-entity): Avoid infinite
1812         recursive call.
1813
1814 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1815
1816         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
1817         buffer-disable-undo, it is unnecessary.
1818         (elmo-spam-register-good-messages): Ditto.
1819
1820         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1821         Ditto.
1822
1823         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
1824
1825 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1826
1827         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
1828         (elmo-set-work-buf): Use set-buffer-multibyte instead of
1829         elmo-set-buffer-multibyte.
1830         (elmo-object-load): Ditto.
1831         (elmo-save-buffer): Ditto.
1832         (elmo-delete-char): Ditto.
1833         (elmo-file-field-primitive-condition-match): Ditto.
1834         (elmo-mime-string): Ditto.
1835
1836         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
1837         (elmo-archive-field-condition-match): Ditto.
1838
1839         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
1840
1841         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
1842
1843         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
1844         (elmo-nntp-msgdb-create-message): Ditto.
1845
1846         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1847
1848         * elmo.el (elmo-message-match-condition): Ditto.
1849         (elmo-message-match-condition): Ditto.
1850
1851         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1852         Ditto.
1853
1854         * elmo-version.el (elmo-version): Up to 2.11.29.
1855
1856         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
1857         (elsp-header): New backend.
1858
1859         * elmo-util.el (elmo-decoded-field-body): New function.
1860
1861 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1862
1863         * elmo-version.el (elmo-version): Up to 2.11.28.
1864
1865 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1866
1867         * elmo-filter.el: Rewrite.
1868
1869         * elmo-version.el (elmo-version): Up to 2.11.27.
1870
1871 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
1872
1873         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
1874         msgdb path for the localdir folder with absolute path.
1875
1876         * utf7.el: Synch up with latest gnus/utf7.el;
1877         Modified for latest Emacs.
1878
1879 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1880
1881         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
1882         shimbun backend couldn't open.
1883
1884 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
1885
1886         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
1887         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
1888         when a destination folder is a filter folder.
1889
1890 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1891
1892         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
1893         (elmo-generic-folder-append-messages): Call elmo-message-flags
1894         with argument `msgid'.
1895
1896         * elmo-split.el (elmo-split-subr): Ditto.
1897
1898         * elmo-pipe.el (elmo-message-flags): Follow the API change.
1899
1900         * elmo-multi.el (elmo-message-flags): Ditto.
1901
1902 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1903
1904         * elmo.el (elmo-folder): Add new slot `flag-table'.
1905         (elmo-folder-flag-table): New API.
1906         (elmo-folder-close-flag-table): Ditto.
1907         (elmo-folder-preserve-flags): New function.
1908         (elmo-generic-folder-append-messages): Use
1909         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
1910         Flag of a non-registered message, it sets to nil.
1911         Does not set flag to flag-table.
1912
1913         * elmo-maildir.el (elmo-folder-append-buffer): Use
1914         `elmo-folder-preserve-flags'.
1915         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1916         `elmo-folder-close-flag-table'.
1917
1918         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
1919         (elmo-archive-folder-append-buffer): Use
1920         `elmo-folder-preserve-flags'.
1921
1922         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
1923
1924         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
1925
1926         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1927         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1928         `elmo-folder-close-flag-table'.
1929
1930         * elmo-version.el (elmo-version): Up to 2.11.26.
1931
1932 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1933
1934         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
1935
1936         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
1937         md5's 4th and 5th argument (non-existent in flim one).
1938
1939 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1940
1941         * elmo-split.el (elmo-split-subr): Flag of a non-registered
1942         message, It sets to nil.
1943
1944 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1945
1946         * elmo.el (elmo-folder-list-messages): Merge lists only if both
1947         list is non-nil.
1948
1949 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
1950
1951         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
1952
1953         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
1954
1955         * elmo-util.el (elmo-uniq-sorted-list): New function.
1956         (elmo-make-number-list): Ditto.
1957         (elmo-number-set-to-number-list): Use elmo-make-number-list
1958         and don't use nreverse.
1959
1960 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1961
1962         * elmo-version.el (elmo-version): Up to 2.11.25.
1963
1964 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1965
1966         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
1967         field not exists in message, Use md5 message digest of header.
1968
1969 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1970
1971         * elmo.el (elmo-folder-append-buffer): Add note on return value.
1972         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
1973         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1974         * elmo-split.el (elmo-split-subr): Check return value of
1975         elmo-folder-append-buffer.
1976
1977         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
1978         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1979
1980         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
1981         message-id.
1982
1983 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
1984
1985         * elmo-split.el (elmo-split-subr): Append message with flag.
1986
1987         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
1988         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
1989         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1990
1991 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
1992
1993         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
1994         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
1995         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
1996
1997 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
1998
1999         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2000         with a function call of `process-buffer'.  All callers are updated.
2001         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2002         Remove redundant `set-buffer' in a while loop.
2003
2004 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2005
2006         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2007         calls.
2008
2009 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2010
2011         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2012         elsp-spamfilter-register-buffer-internal with current buffer.
2013         (elmo-spam-register-spam-buffer): Ditto.
2014         (elmo-spam-register-good-buffer): Ditto.
2015
2016 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2017
2018         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2019         if it is not contained in the response(A workaround for courier-imap).
2020
2021 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2022
2023         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2024         parenthesis.
2025
2026 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2027
2028         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2029         range.
2030
2031 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2032
2033         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2034         of nconc.
2035
2036         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2037         argument handler.
2038         (elmo-msgdb-message-match-condition): Follow the change above.
2039
2040 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2041
2042         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2043         folder name.
2044
2045 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2046
2047         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2048
2049 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2050
2051         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2052
2053 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2054
2055         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2056         not found.
2057
2058 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2059
2060         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2061         value.
2062         (elmo-file-command-argument): Undo last change for cygwin.
2063         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2064         Don't return nil.
2065         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2066
2067 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2068
2069         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2070         value returned from elmo-file-find is nil.
2071
2072 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2073
2074         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2075         to elmo-vars.el.
2076
2077         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2078         instead of insert-file-contents-as-binary.
2079         (elmo-message-set-field): New generic function.
2080
2081         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2082         behavior change on `split-string'.
2083
2084         * elmo-file.el (elmo-file-find): New function.
2085         (elmo-file-command): New user option.
2086         (elmo-file-command-argument): Ditto.
2087         (elmo-file-fetch-max-size): Ditto.
2088         (elmo-file-detect-format): New function.
2089         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2090         Use elmo-file-detect-format.
2091         (elmo-map-folder-list-message-locations): Don't treat directories.
2092
2093 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2094
2095         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2096         (elmo-passwd-alist-clear): Shred password before clear.
2097         (elmo-remove-passwd): Remove all mached pair.
2098
2099 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2100
2101         * elmo.el (elmo-folder-synchronize): Fix description of the return
2102         value.
2103
2104 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2105
2106         * elmo.el (elmo-message-fetch-bodystructure): New method.
2107         (elmo-message-fetch-bodystructure): Define default.
2108
2109         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2110         elmo-message-fetch-bodystructure.
2111         (elmo-message-fetch-bodystructure): Define.
2112
2113         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2114
2115 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2116
2117         * elmo-filter.el (elmo-message-folder): Define.
2118
2119 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2120
2121         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2122         elmo-delete-cr-buffer.
2123
2124         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2125
2126         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2127
2128         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2129
2130         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2131         type seems to be a text.
2132
2133 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2134
2135         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2136         (elmo-spam-register-good-buffer): Ditto.
2137         (elmo-spam-spamassassin-register-messages): Ditto.
2138
2139         * elmo-util.el (elmo-string-member-ignore-case): Define with
2140         static-cond.
2141
2142 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2143
2144         * elmo.el (elmo-folder-type): Undo last change.
2145
2146         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2147
2148         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2149         warnings.
2150
2151         * elmo-file.el: New file.
2152         
2153         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2154
2155         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2156         variable.
2157         (elmo-spam-spamassassin-register-messages): New inline function.
2158         (elmo-spam-register-spam-messages): Define.
2159         (elmo-spam-register-good-messages): Ditto.
2160
2161         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2162         Fixed typo.
2163
2164         * elmo.el (toplevel): Added autoload setting for
2165         `elmo-get-global-flags'.
2166         (elmo-message-has-global-flag-p): New function.
2167         (elmo-message-set-global-flags): Ditto.
2168         (elmo-folder-type): Improvement for name: format.
2169
2170         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2171         availability of keyword flags.
2172         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2173         (elmo-folder-list-flagged-plugged): Renamed from
2174         elmo-folder-list-flagged-unplugged.
2175         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2176         accept any flag as keyword flag.
2177         (elmo-folder-set-flag-plugged): Accept keyword flags.
2178         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2179
2180         * elmo-flag.el (elmo-get-global-flags): New function.
2181
2182         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2183         folders.
2184
2185         * elmo-version.el (elmo-version): Up to 2.11.24.
2186
2187 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2188
2189         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2190         elmo-multiple-field-body instead of std11-field-body to check all
2191         headers.
2192
2193 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2194
2195         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2196         or "size".
2197
2198 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2199
2200         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2201         unintern is unbound.
2202
2203 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2204
2205         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2206         Protect from infinite loop.
2207
2208 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2209
2210         * elsp-bogofilter.el
2211         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2212         (elmo-spam-bogofilter-register-messages): New internal function.
2213         (elmo-spam-register-spam-messages): Define.
2214         (elmo-spam-register-good-messages): Ditto.
2215
2216 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2217
2218         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2219         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2220         (elmo-spam-bogofilter-call): Fixed the last change.
2221         (elmo-spam-bogofilter-arguments): Ditto.
2222
2223         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2224         Follow the options change of latest bogofilter.
2225
2226         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2227         (elmo-spam-bogofilter-good-switch): Ditto.
2228         (elmo-spam-bogofilter-arguments-alist): New user option.
2229         (elmo-spam-bogofilter-debug): Ditto.
2230         (elmo-spam-bogofilter-call): Renamed from
2231         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2232         is non-nil, insert output in buffer for debug.
2233         (elmo-spam-bogofilter-arguments): New macro.
2234         (elmo-spam-buffer-spam-p): Use it.
2235         (elsp-bogofilter-register-buffer): Ditto.
2236
2237 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2238
2239         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2240         regexp.
2241
2242 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2243
2244         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2245         value as "ruby".
2246         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2247         (elmo-spam-bsfilter-program): Set default value as full path for
2248         `bsfilter'.
2249         (elmo-spam-bsfilter-debug): New user option.
2250         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2251         non-nil, insert output in buffer for debug. Fix treating of
2252         argument.
2253
2254 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2255
2256         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2257         `elmo-maildir-flag-specs' element instead of one.
2258         (elmo-map-folder-unset-flag): Ditto.
2259         (Reported by Ken Makimura <macky@astem.or.jp>)
2260
2261         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2262         (elmo-folder-unset-flag-plugged): Ditto.
2263
2264 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2265
2266         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2267         to `reads' slot only if `in-msgdb' is nil.
2268
2269 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2270
2271         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2272         and complement argument list.
2273
2274 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2275
2276         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2277         instead of elmo-folder-list-flagged.
2278
2279 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2280
2281         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2282
2283         * elsp-bsfilter.el: New file.
2284
2285         * elmo-pipe.el (elmo-folder-list-unreads,
2286         elmo-folder-list-answereds,
2287         elmo-folder-list-importants,
2288         elmo-folder-flag-as-important,
2289         elmo-folder-unflag-important,
2290         elmo-folder-flag-as-read,
2291         elmo-folder-unflag-read,
2292         elmo-folder-flag-as-answered,
2293         elmo-folder-unflag-answered): Remove.
2294         (elmo-folder-set-flag): Define.
2295         (elmo-folder-unset-flag): Ditto.
2296
2297         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2298         (elmo-folder-set-flag): Define.
2299         (elmo-folder-unset-flag): Ditto.
2300         (elmo-folder-list-unreads): Remove.
2301         (elmo-folder-list-flagged): Define.
2302
2303         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2304         (elmo-folder-list-unreads,
2305         elmo-folder-list-importants,
2306         elmo-folder-list-answereds,
2307         elmo-folder-list-unreads-plugged,
2308         elmo-folder-list-importants-plugged,
2309         elmo-folder-list-answereds-plugged): Remove.
2310         (elmo-folder-list-flagged-plugged): New method.
2311         (elmo-folder-unflag-important,
2312         elmo-folder-flag-as-important,
2313         elmo-folder-unflag-read,
2314         elmo-folder-flag-as-read,
2315         elmo-folder-unflag-answered,
2316         elmo-folder-flag-as-answered,
2317         elmo-folder-flag-as-read-unplugged,
2318         elmo-folder-unflag-read-unplugged,
2319         elmo-folder-flag-as-important-unplugged,
2320         elmo-folder-unflag-important-unplugged,
2321         elmo-folder-flag-as-answered-unplugged,
2322         elmo-folder-unflag-answered-unplugged): Remove.
2323         (elmo-folder-set-flag): Define.
2324         (elmo-folder-unset-flag): Ditto.
2325         (elmo-folder-set-flag-unplugged): Ditto.
2326         (elmo-folder-unset-flag-unplugged): Ditto.
2327
2328         * elmo-multi.el (elmo-folder-list-unreads,
2329         elmo-folder-list-answereds,
2330         elmo-folder-list-importants,
2331         elmo-folder-flag-as-important,
2332         elmo-folder-unflag-important,
2333         elmo-folder-flag-as-read,
2334         elmo-folder-unflag-read,
2335         elmo-folder-flag-as-answered,
2336         elmo-folder-unflag-answered): Remove.
2337         (elmo-folder-set-flag): Define.
2338         (elmo-folder-unset-flag): Ditto.
2339
2340         * elmo-map.el (elmo-map-folder-unflag-important,
2341         elmo-map-folder-flag-as-important,
2342         elmo-map-folder-unflag-read,
2343         elmo-map-folder-flag-as-read,
2344         elmo-map-folder-unflag-answered,
2345         elmo-map-folder-flag-as-answered): Remove.
2346         (elmo-map-folder-set-flag): New method.
2347         (elmo-map-folder-unset-flag): Ditto.
2348         (elmo-map-folder-list-unreads,
2349         elmo-map-folder-list-importants,
2350         elmo-map-folder-list-answereds): Remove.
2351         (elmo-folder-list-flagged-internal): Define.
2352         (elmo-map-folder-list-flagged): New method.
2353
2354         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2355         (elmo-map-folder-list-unreads,
2356         elmo-map-folder-list-importants,
2357         elmo-map-folder-list-flagged): Remove.
2358         (elmo-map-folder-list-flagged): Define.
2359         (elmo-map-folder-flag-as-important,
2360         elmo-map-folder-unflag-important,
2361         elmo-map-folder-flag-as-read,
2362         elmo-map-folder-unflag-read,
2363         elmo-map-folder-flag-as-answered,
2364         elmo-map-folder-unflag-answered): Remove.
2365         (elmo-maildir-set-mark-messages): New internal function.
2366         (elmo-map-folder-set-flag): Define.
2367         (elmo-map-folder-unset-flag): Ditto.
2368
2369         * elmo.el (toplevel): Added autoload setting for
2370         `elmo-folder-list-global-flag-messages'.
2371         (elmo-folder-list-unreads,
2372         elmo-folder-list-importants,
2373         elmo-folder-list-answereds): Remove.
2374         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2375         Return a list whitch merged with messages have global flag.
2376         (elmo-folder-list-flagged-internal): New method.
2377         (elmo-folder-unflag-important,
2378         elmo-folder-flag-as-important,
2379         elmo-folder-unflag-read,
2380         elmo-folder-flag-as-read,
2381         elmo-folder-unflag-answered,
2382         elmo-folder-flag-as-answered): Remove.
2383         (elmo-folder-set-flag): New method.
2384         (elmo-folder-unset-flag): Ditto.
2385         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2386         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2387
2388         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2389         (elmo-folder-list-unreads-plugged,
2390         elmo-folder-list-importants-plugged,
2391         elmo-folder-list-answereds-plugged,
2392         elmo-folder-list-flagged-unplugged,
2393         elmo-folder-unflag-important-plugged,
2394         elmo-folder-flag-as-important-plugged,
2395         elmo-folder-unflag-read-plugged,
2396         elmo-folder-flag-as-read-plugged,
2397         elmo-folder-unflag-answered-plugged,
2398         elmo-folder-flag-as-answered-plugged): Remove.
2399         (elmo-folder-set-flag-plugged,
2400         elmo-folder-unset-flag-plugged): Define.
2401
2402         * elmo-flag.el (elmo-folder-initialize): Register to
2403         `elmo-global-flag-list' if flag is not global.
2404         (elmo-folder-append-messages): Set flag to source messages.
2405
2406         * elmo-filter.el (elmo-filter-folder-list-unreads,
2407         elmo-folder-list-unreads,
2408         elmo-filter-folder-list-importants,
2409         elmo-folder-list-importants,
2410         elmo-folder-flag-as-read,
2411         elmo-folder-unflag-read,
2412         elmo-folder-flag-as-important,
2413         elmo-folder-unflag-important,
2414         elmo-folder-flag-as-answered,
2415         elmo-folder-unflag-answered): Remove.
2416         (elmo-folder-set-flag): Define.
2417         (elmo-folder-unset-flag): Ditto.
2418
2419         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2420         elmo-folder-unflag-read-dop,
2421         elmo-folder-flag-as-important-dop,
2422         elmo-folder-unflag-important-dop,
2423         elmo-folder-flag-as-answered-dop,
2424         elmo-folder-unflag-answered-dop): Remove.
2425         (elmo-folder-set-flag-dop,
2426         elmo-folder-unset-flag-dop,
2427         elmo-folder-set-important-delayed,
2428         elmo-folder-unset-important-delayed,
2429         elmo-folder-set-read-delayed,
2430         elmo-folder-unset-read-delayed,
2431         elmo-folder-set-answered-delayed,
2432         elmo-folder-unset-answered-delayed): New function.
2433         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2434         (elmo-dop-queue-method-name-alist): Ditto.
2435
2436         * elmo-version.el (elmo-version): Up to 2.11.23.
2437
2438 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2439
2440         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2441
2442         * elsp-sa.el: New file.
2443
2444 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2445
2446         * modb-standard.el (modb-standard-message-entity): New function.
2447         (elmo-msgdb-message-entity): Use it.
2448
2449 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2450
2451         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2452         behavior when one-level is nil.
2453
2454         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2455
2456         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2457
2458 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2459
2460         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2461         get max number.
2462         (elmo-generic-folder-diff): Ditto.
2463
2464         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2465         (elmo-folder-update-number): Ditto.
2466
2467         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2468         (elmo-folder-next-message-number-dop): Ditto.
2469
2470 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2471
2472         * elmo-filter.el (elmo-folder-msgdb-create): Use
2473         `elmo-message-entity' and `elmo-message-flags' instead of
2474         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2475
2476 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2477
2478         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2479         `if-exists'.
2480
2481 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2482
2483         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2484
2485         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2486
2487         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2488
2489 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2490
2491         * elmo-version.el (elmo-version): Up to 2.11.22.
2492
2493 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2494
2495         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2496
2497 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2498
2499         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2500         if the message dose not exist.
2501
2502 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2503
2504         * elmo-version.el (elmo-version): Up to 2.11.21.
2505
2506 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2507
2508         * modb-standard.el (toplevel): Don't require mime.
2509
2510 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2511
2512         * elsp-bogofilter.el (toplevel): Don't require path-util.
2513         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2514         (elmo-spam-bogofilter-header): Abolish.
2515         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2516         (elmo-spam-bogofilter-args): New user option.
2517         (elsp-bogofilter-call-bogofilter): New internal function.
2518         (elmo-spam-buffer-spam-p): Use it.
2519         (elsp-bogofilter-register-buffer): Renamed from
2520         `elmo-spam-bogofilter-register-buffer';
2521         Use `elsp-bogofilter-call-bogofilter'.
2522         (elmo-spam-register-spam-buffer): Follow the change above.
2523         (elmo-spam-register-good-buffer): Ditto.
2524
2525 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2526
2527         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2528         message-id is nil do nothing.
2529
2530 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2531
2532         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2533         Revival.
2534         (elmo-imap4-session): Removed use-flag slot.
2535         (elmo-imap4-session-select-mailbox): Undo last change.
2536         (elmo-folder-use-flag-p): Use
2537         elmo-imap4-disuse-server-flag-mailbox-regexp.
2538
2539 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2540
2541         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2542         (elmo-imap4-session-select-mailbox): Set it up.
2543         (elmo-folder-use-flag-p): Return value of use-flag slot.
2544
2545 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2546
2547         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2548         message-id is nil.
2549         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2550
2551         * modb-entity.el (elmo-message-entity-handler): Likewise.
2552
2553 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2554
2555         * elmo.el (toplevel): Remove setting of autoloding for
2556         elmo-global-flag-initialize.
2557         (elmo-init): Don't call elmo-global-flag-initialize.
2558         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2559
2560         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2561         (elmo-global-mark-migrate): Don't call it.
2562         (elmo-global-mark-upgrade): Ditto.
2563
2564 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2565
2566         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2567         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2568
2569         * elmo-vars.el (elmo-init-hook): New user option.
2570
2571         * elmo.el (elmo-init): Run the elmo-init-hook.
2572
2573         * elmo-flag.el (elmo-global-mark-migrate): New function.
2574
2575 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2576
2577         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2578         Undo last change (move to elmo-msgdb-unset-flag).
2579         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2580         flag is unset.
2581
2582 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2583
2584         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2585         read flag is set.
2586         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2587         (elmo-msgdb-unset-flag): Ditto.
2588
2589 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2590
2591         * elmo-split.el (elmo-split): Return split message count.
2592
2593 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2594
2595         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2596         is nil.
2597
2598 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2599
2600         * elmo.el (elmo-folder-unflag-important): Call
2601         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2602         a symbol `always'.
2603
2604         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2605         before unset flag.
2606         (elmo-global-flag-detach): Delete the message from flag folder, if
2607         `delete-if-none' is a symbol `always'.
2608
2609 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2610
2611         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2612         `elmo-spam-spamfilter-decode-buffer'.
2613         (elsp-spamfilter-register-buffer-internal): New internal function.
2614         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2615         (elmo-spam-register-spam-buffer): Ditto.
2616         (elmo-spam-register-good-buffer): Ditto.
2617
2618         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2619         change.
2620         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2621         (elmo-spam-register-spam-buffer): Follow the API change.
2622         (elmo-spam-register-good-buffer): Ditto.
2623
2624         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2625         (elmo-split-spam-p): Added argument plist; Call
2626         `elmo-spam-buffer-spam-p' with new argument register.
2627
2628         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2629         `register'.
2630         (elmo-spam-message-spam-p): Ditto.
2631         (elmo-spam-register-spam-buffer): Added optional argument
2632         `restore'.
2633         (elmo-spam-register-good-buffer): Ditto.
2634         (elmo-spam-register-spam-messages): Ditto.
2635         (elmo-spam-register-good-messages): Ditto.
2636
2637 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2638
2639         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2640         register into good corpus.
2641         (elmo-spam-register-good-buffer): Fixed to register into bad
2642         corpus.
2643
2644 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2645
2646         * elmo-version.el (elmo-version): Up to 2.11.20.
2647
2648         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2649         change.
2650
2651         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2652         flag without depending on \Recent flag.
2653
2654 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2655
2656         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2657         (elmo-spam-modified-p): Defined.
2658         (elmo-spam-save-status): Set `modified' slot to nil.
2659         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2660         (elmo-spam-register-good-buffer): Ditto.
2661
2662         * elmo-spam.el (elmo-spam-modified-p): New API.
2663
2664 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2665
2666         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2667         duplicate definition.
2668
2669         * elmo-util.el (elmo-unfold-field-body): New function.
2670         (elmo-msgdb-get-message-id-from-buffer): Use it.
2671
2672         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2673         Fixed the last change; Use elmo-unfold-field-body.
2674
2675 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2676
2677         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2678         Unfold date value.
2679
2680 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2681
2682         * elmo-spam.el (elmo-spam-save-status): New API.
2683
2684         * elsp-spamfilter.el: New file.
2685
2686 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2687
2688         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2689
2690 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2691
2692         * elmo-split.el (elmo-split-spam-p): New function.
2693
2694         * elmo-spam.el: New file.
2695
2696         * elsp-bogofilter.el: Ditto.
2697
2698 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
2699
2700         * elmo.el (elmo-folder-next-message-number): New API.
2701         (elmo-folder-next-message-number): Define.
2702         (elmo-message-field): Don't check folder length.
2703
2704         * elmo-net.el (elmo-folder-next-message-number): Define.
2705         (elmo-folder-next-message-number-unplugged): Define.
2706
2707         * elmo-map.el (elmo-folder-next-message-number): Define.
2708         (elmo-folder-delete-messages): Clear hash value.
2709
2710         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
2711
2712         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2713         (elmo-folder-delete-messages-dop-delayed): Always return t.
2714
2715         * elmo-version.el (elmo-version): Up to 2.11.19.
2716
2717 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2718
2719         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2720         change.
2721
2722         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2723         identical cons cell into the mark-alist and the hash table.
2724
2725 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
2726
2727         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2728         elmo-folder-list-messages with argument `visible-only' as t.
2729
2730         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2731         (elmo-folder-msgdb-create): Check the target folder.
2732
2733 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
2734
2735         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2736         `permanentflag' instead of `flags'.
2737         (elmo-folder-open): Ditto.
2738         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2739         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2740         (elmo-folder-use-flag-p): Always return t.
2741         (elmo-imap4-session-select-mailbox): Use value of `flags' if
2742         `permanentflags' does not exist.
2743         (elmo-folder-open): Ditto.
2744
2745 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
2746
2747         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2748         is nil.
2749         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2750
2751         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2752         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2753         response.
2754         (elmo-folder-open): Ditto.
2755         (elmo-imap4-set-flag): Send store flag command only when the `flags'
2756         slot of the session includes the flag.
2757         (elmo-imap4-session-flag-available-p): New function.
2758         (elmo-imap4-folder-list-flagged): Ditto.
2759         (elmo-folder-list-unreads-plugged): Use it.
2760         (elmo-folder-list-importants-plugged): Ditto.
2761         (elmo-folder-list-answereds-plugged): Ditto.
2762         (elmo-imap4-search-internal-primitive): Ditto.
2763         (elmo-imap4-folder-list-any-plugged,
2764         elmo-imap4-folder-list-digest-plugged): Abolish.
2765
2766         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2767         if numbers is nil.
2768
2769 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2770
2771         * elmo-util.el (toplevel): Require emu for char-list-to-string.
2772
2773 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2774
2775         * elmo-util.el (elmo-get-hash-val): Simplify.
2776         (elmo-set-hash-val): Rewrite.
2777
2778 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2779
2780         * elmo.el (elmo-folder-list-messages): Append killed messages into
2781         result if `visible-only' is nil and `in-msgdb' is non-nil.
2782
2783         * elmo-util.el (elmo-uniq-list): Added optional argument
2784         `delete-function'.
2785
2786         * modb.el (elmo-msgdb-flag-count): New API.
2787
2788         * modb-standard.el (modb-standard): Added slot flag-count.
2789         (modb-standard-countup-flags): New function.
2790         (modb-standard-load-flag): Call it.
2791         (elmo-msgdb-append): Ditto.
2792         (elmo-msgdb-clear): Clear slot flag-count.
2793         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2794         (elmo-msgdb-unset-flag): Treat `all' flag and call
2795         modb-standard-countup-flags.
2796         (elmo-msgdb-flag-count): Define.
2797         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2798         (elmo-msgdb-delete-messages): Ditto.
2799
2800         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2801         (elmo-msgdb-flag-count): Define.
2802
2803         * elmo.el (elmo-folder-list-messages): Undo last change.
2804         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
2805         (elmo-folder-kill-messages): Unset all flags to numbers.
2806
2807         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
2808         elmo-folder-kill-messages.
2809
2810         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
2811         (elmo-nntp-folder-delete-messages): Abolish.
2812
2813         * elmo-version.el (elmo-version): Up to 2.11.18.
2814
2815 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2816
2817         * elmo.el (elmo-folder-kill-messages-before): Abolish.
2818         (elmo-folder-kill-messages-range): New function.
2819         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
2820         instead of elmo-folder-kill-messages-before.
2821
2822 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
2823
2824         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
2825         elmo-imap4-current-msgdb to decide entity handler.
2826
2827 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2828
2829         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
2830
2831         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
2832         inline function.
2833         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
2834         (elmo-msgdb-overview-entity-set-number,
2835         elmo-msgdb-overview-entity-get-references,
2836         elmo-msgdb-overview-entity-set-references,
2837         elmo-msgdb-overview-entity-get-from-no-decode,
2838         elmo-msgdb-overview-entity-get-from,
2839         elmo-msgdb-overview-entity-set-from,
2840         elmo-msgdb-overview-entity-get-subject,
2841         elmo-msgdb-overview-entity-get-subject-no-decode,
2842         elmo-msgdb-overview-entity-set-subject,
2843         elmo-msgdb-overview-entity-get-date,
2844         elmo-msgdb-overview-entity-set-date,
2845         elmo-msgdb-overview-entity-get-to,
2846         elmo-msgdb-overview-entity-get-cc,
2847         elmo-msgdb-overview-entity-get-size,
2848         elmo-msgdb-overview-entity-set-size,
2849         elmo-msgdb-overview-entity-get-extra,
2850         elmo-msgdb-overview-entity-set-extra,
2851         elmo-msgdb-overview-entity-get-extra-field,
2852         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
2853         (elmo-msgdb-make-index): Use
2854         `elmo-msgdb-overview-entity-get-number-internal'.
2855         (elmo-msgdb-clear-index): Ditto.
2856         (elmo-msgdb-append-entity): Ditto;
2857         Use `elmo-msgdb-overview-entity-get-id-internal'.
2858
2859         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
2860         elmo-msgdb-overview-entity-set-number,
2861         elmo-msgdb-overview-entity-get-references,
2862         elmo-msgdb-overview-entity-set-references,
2863         elmo-msgdb-overview-entity-get-from-no-decode,
2864         elmo-msgdb-overview-entity-get-from,
2865         elmo-msgdb-overview-entity-set-from,
2866         elmo-msgdb-overview-entity-get-subject,
2867         elmo-msgdb-overview-entity-get-subject-no-decode,
2868         elmo-msgdb-overview-entity-set-subject,
2869         elmo-msgdb-overview-entity-get-date,
2870         elmo-msgdb-overview-entity-set-date,
2871         elmo-msgdb-overview-entity-get-to,
2872         elmo-msgdb-overview-entity-get-cc,
2873         elmo-msgdb-overview-entity-get-size,
2874         elmo-msgdb-overview-entity-set-size,
2875         elmo-msgdb-overview-entity-get-extra,
2876         elmo-msgdb-overview-entity-set-extra,
2877         elmo-msgdb-overview-entity-get-extra-field,
2878         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
2879         and rewrote for backward compatibility.
2880
2881 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2882
2883         * elmo.el (elmo-message-entity-number,
2884         elmo-message-entity-set-number,
2885         elmo-message-entity-field,
2886         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
2887
2888         * elmo-msgdb.el (elmo-message-entity-number,
2889         elmo-message-entity-set-number,
2890         elmo-message-entity-field,
2891         elmo-message-entity-set-field): Moved from elmo.el.
2892
2893 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2894
2895         * elmo.el (toplevel): Changed definition orders.
2896
2897 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2898
2899         * modb.el (elmo-msgdb-search): New API .
2900         (elmo-msgdb-match-condition): Ditto.
2901
2902         * modb-standard.el (elmo-msgdb-search): Define.
2903
2904         * modb-legacy.el (elmo-msgdb-search): Ditto.
2905
2906         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
2907         from elmo-msgdb-match-condition-internal.
2908
2909         * elmo.el (elmo-folder-search-fast): Abolish.
2910         (elmo-folder-search): Use elmo-msgdb-search and
2911         elmo-with-progress-display.
2912
2913         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
2914         as msgdb API.
2915
2916         * elmo.el (elmo-folder): Remove slot message-modified and
2917         flag-modified.
2918         (elmo-folder-set-message-modified): Abolish.
2919         (elmo-generic-folder-commit): Follow the change above.
2920         (elmo-folder-synchronize): Ditto.
2921
2922         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
2923
2924         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2925
2926         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
2927
2928 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2929
2930         * modb-standard.el (modb-standard-make-message-entity,
2931         elmo-msgdb-make-message-entity,
2932         elmo-msgdb-create-message-entity-from-buffer,
2933         elmo-msgdb-message-entity-number,
2934         elmo-msgdb-message-entity-set-number,
2935         elmo-msgdb-message-entity-field,
2936         elmo-msgdb-message-entity-set-field,
2937         elmo-msgdb-copy-message-entity,
2938         elmo-msgdb-match-condition-internal): Remove.
2939
2940         * modb-entity.el: New file (again).
2941
2942         * modb.el (toplevel): Require modb-entity.
2943         (elmo-msgdb-message-entity-handler): New method.
2944
2945         * modb-standard.el (modb-standard-entity-id): Use
2946         elmo-message-entity-handler.
2947         (modb-standard-load-entity): Ditto.
2948         (elmo-msgdb-append-entity): Ditto.
2949         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2950
2951         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
2952         elmo-msgdb-decoded-cache-hashtb,
2953         (modb-legacy-make-message-entity,
2954         elmo-msgdb-make-message-entity,
2955         elmo-msgdb-create-message-entity-from-buffer,
2956         elmo-msgdb-message-entity-number,
2957         elmo-msgdb-message-entity-set-number,
2958         elmo-msgdb-message-entity-field,
2959         elmo-msgdb-message-entity-set-field,
2960         elmo-msgdb-copy-message-entity,
2961         elmo-msgdb-match-condition-internal,
2962         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
2963
2964         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
2965         (elmo-message-entity-set-number): Ditto.
2966         (elmo-message-entity-field): Ditto.
2967         (elmo-message-entity-set-field): Ditto.
2968
2969         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
2970
2971         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2972
2973         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2974
2975         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
2976         (elmo-nntp-msgdb-create-message): Ditto.
2977
2978         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
2979         (elmo-folder-msgdb-create): Add unread flag.
2980
2981         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2982
2983         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
2984
2985         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
2986
2987         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2988
2989         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
2990         elmo-msgdb-messge-entity-handler.
2991         * elmo-version.el (elmo-version): Up to 2.11.17.
2992
2993 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2994
2995         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
2996         change.
2997
2998 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2999
3000         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3001
3002         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3003         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3004         (elmo-msgdb-flag-table): Ditto.
3005         (elmo-msgdb-sort-by-date): Ditto.
3006
3007         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3008
3009         * modb-standard.el (toplevel): Require mime.
3010         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3011         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3012         elmo-msgdb-message-entity-number.
3013         (elmo-msgdb-append-entity): Ditto.
3014         (elmo-msgdb-create-message-entity-from-file): Remove.
3015         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3016         corresponds to the entity.
3017         (elmo-msgdb-message-entity-number): Do nothing currently.
3018         (elmo-msgdb-message-entity-field): Ditto.
3019         (elmo-msgdb-message-entity-set-field): Ditto.
3020         (elmo-msgdb-copy-message-entity): Ditto.
3021         (elmo-msgdb-match-condition-internal): Ditto.
3022
3023         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3024         elmo-util.el.
3025         (elmo-msgdb-create-message-entity-from-file): Remove.
3026
3027         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3028         modb-legacy.el.
3029         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3030
3031         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3032
3033 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3034
3035         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3036         (elmo-msgdb-message-entity-field): Ditto.
3037         (elmo-msgdb-message-entity-number): Ditto.
3038
3039 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3040
3041         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3042         Fixed how to set extra field into entity.
3043         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3044         symbol.
3045
3046         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3047         Fixed how to set extra field into entity.
3048         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3049         symbol.
3050
3051 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3052
3053         * modb.el (elmo-message-entity-db): New function.
3054         (elmo-msgdb-make-message-entity): New API.
3055         (elmo-msgdb-message-entity-number): Ditto.
3056         (elmo-msgdb-message-entity-set-number): Ditto.
3057         (elmo-msgdb-message-entity-field): Ditto.
3058         (elmo-msgdb-message-entity-set-field): Ditto.
3059         (elmo-msgdb-copy-message-entity): Ditto.
3060         (elmo-msgdb-create-message-entity-from-file): Ditto.
3061         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3062         (elmo-msgdb-match-condition-internal): Ditto.
3063
3064         * modb-standard.el (modb-legacy): Require modb-legacy.
3065         (modb-standard-make-message-entity): New inline function.
3066         (elmo-msgdb-make-message-entity): Define.
3067         (elmo-msgdb-create-message-entity-from-file): Ditto.
3068         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3069         (elmo-msgdb-message-entity-field): Ditto.
3070         (elmo-msgdb-message-entity-set-field): Ditto.
3071         (elmo-msgdb-copy-message-entity): Ditto.
3072         (elmo-msgdb-match-condition-internal): Ditto.
3073
3074         * modb-legacy.el: Don't require modb-entity.
3075         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3076         (elmo-msgdb-match-condition-primitive): Ditto.
3077         (elmo-msgdb-get-decoded-cache): Ditto.
3078         (elmo-msgdb-overview-entity-get-id): Ditto.
3079         (elmo-msgdb-overview-entity-get-number): Ditto.
3080         (elmo-msgdb-overview-entity-set-number): Ditto.
3081         (elmo-msgdb-overview-entity-get-references): Ditto.
3082         (elmo-msgdb-overview-entity-set-references): Ditto.
3083         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3084         (elmo-msgdb-overview-entity-get-from): Ditto.
3085         (elmo-msgdb-overview-entity-set-from): Ditto.
3086         (elmo-msgdb-overview-entity-get-subject): Ditto.
3087         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3088         (elmo-msgdb-overview-entity-set-subject): Ditto.
3089         (elmo-msgdb-overview-entity-get-date): Ditto.
3090         (elmo-msgdb-overview-entity-set-date): Ditto.
3091         (elmo-msgdb-overview-entity-get-to): Ditto.
3092         (elmo-msgdb-overview-entity-get-cc): Ditto.
3093         (elmo-msgdb-overview-entity-get-size): Ditto.
3094         (elmo-msgdb-overview-entity-set-size): Ditto.
3095         (elmo-msgdb-overview-entity-get-extra): Ditto.
3096         (elmo-msgdb-overview-entity-set-extra): Ditto.
3097         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3098         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3099         (elmo-msgdb-number-load): Ditto.
3100         (elmo-msgdb-overview-load): Ditto.
3101         (elmo-msgdb-mark-load): Ditto.
3102         (elmo-msgdb-number-save): Ditto.
3103         (elmo-msgdb-mark-save): Ditto.
3104         (elmo-msgdb-overview-save): Ditto.
3105         (modb-legacy-make-message-entity): New inline function.
3106         (elmo-msgdb-insert-file-header): Ditto.
3107         (elmo-msgdb-make-message-entity): Define.
3108         (elmo-msgdb-create-message-entity-from-file): Ditto.
3109         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3110         (elmo-msgdb-message-entity-number): Ditto.
3111         (elmo-msgdb-message-entity-set-number): Ditto.
3112         (elmo-msgdb-message-entity-field): Ditto.
3113         (elmo-msgdb-message-entity-set-field): Ditto.
3114         (elmo-msgdb-copy-message-entity): Ditto.
3115         (elmo-msgdb-match-condition-internal): Ditto.
3116
3117         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3118         (elmo-message-copy-entity): Rewrite.
3119         (elmo-message-entity-number): Ditto.
3120         (elmo-message-entity-set-number): Ditto.
3121         (elmo-message-entity-field): Use elmo-message-entity-db.
3122         (elmo-message-entity-set-field): Ditto.
3123         (elmo-message-field): Rewrite.
3124
3125         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3126         elmo-msgdb.el
3127         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3128
3129         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3130         elmo-message-entity-field.
3131         (elmo-shimbun-folder-shimbun-header): Ditto.
3132         (elmo-shimbun-entity-to-header): Ditto.
3133         (elmo-folder-msgdb-create): Ditto.
3134         (elmo-shimbun-msgdb-create-entity): Ditto;
3135         Use elmo-msgdb-create-message-entity-from-buffer.
3136         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3137         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3138
3139         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3140         elmo-msgdb-create-message-entity-from-file and 
3141         elmo-message-entity-field.
3142
3143         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3144         elmo-message-entity-number.
3145         (elmo-pop3-msgdb-create-message): Use
3146         elmo-msgdb-create-message-entity-from-buffer,
3147         elmo-message-entity-set-field, elmo-message-entity-number and
3148         elmo-message-entity-set-number.
3149
3150         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3151         the API change in elmo-msgdb-make-message-entity.
3152         (elmo-nntp-msgdb-create-message): Use
3153         elmo-msgdb-create-message-entity-from-buffer.
3154
3155         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3156         elmo-message-entity-field and
3157         elmo-msgdb-create-message-entity-from-file.
3158
3159         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3160         (elmo-msgdb-get-field): Abolish.
3161         (elmo-msgdb-get-number): Rewrite.
3162         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3163         (elmo-msgdb-flag-table): Ditto.
3164         (elmo-msgdb-get-last-message-id,
3165         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3166         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3167         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3168         (elmo-msgdb-create-overview-from-buffer,
3169         elmo-msgdb-overview-get-parent-entity): Abolish.
3170
3171         * elmo-mime.el (elmo-mime-display-as-is): Use
3172         elmo-message-entity-field.
3173
3174         * elmo-map.el (elmo-folder-pack-numbers): Use
3175         elmo-message-entity-set-number.
3176
3177         * elmo-maildir.el (elmo-folder-msgdb-create): 
3178         elmo-msgdb-create-message-entity-from-file instead of
3179         elmo-msgdb-create-overview-entity-from-file.
3180
3181         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3182         msgdb.
3183         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3184         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3185
3186         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3187         elmo-messge-entity-field and elmo-message-entity-number.
3188         (elmo-imap4-fetch-callback-1): Call
3189         elmo-msgdb-create-message-entity-from-buffer instead of
3190         elmo-msgdb-create-overview-from-buffer. 
3191         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3192         (elmo-find-fetch-strategy): Likewise.
3193
3194         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3195         elmo-localdir-msgdb-create-entity with argument msgdb.
3196
3197         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3198         and elmo-message-entity-set-number.
3199
3200         * elmo-cache.el (elmo-folder-msgdb-create): Use
3201         elmo-message-entity-field.
3202         (elmo-folder-msgdb-create): Call
3203         elmo-msgdb-create-message-entity-from-file instead of
3204         elmo-msgdb-create-overview-entity-from-file.
3205
3206         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3207         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3208         instead of elmo-msgdb-create-overview-from-buffer.
3209         (elmo-archive-msgdb-create-entity): Ditto.
3210         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3211         elmo-message-entity-field.
3212         (elmo-archive-parse-mmdf): Ditto.
3213
3214         * modb-entity.el: Removed.
3215
3216         * elmo-version.el (elmo-version): Up to 2.11.16.
3217
3218 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3219
3220         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3221         `is-local'.
3222         (elmo-folder-flag-as-answered): Ditto.
3223
3224 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3225
3226         * modb-standard.el: New file.
3227
3228         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3229         elmo-msgdb-convert-type is `sync'.
3230
3231         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3232         (elmo-msgdb-convert-type): New user option.
3233
3234         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3235         (elmo-load-msgdb): Auto detect saved type.
3236
3237         * elmo-version.el (elmo-version): Up to 2.11.15.
3238
3239 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3240
3241         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3242
3243         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3244         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3245         with argument `delete-if-none' when dst-folder is 'null.
3246
3247         * elmo-flag.el (elmo-folder-append-messages): Defined.
3248         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3249
3250 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3251
3252         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3253
3254 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3255
3256         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3257         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3258         (elmo-folder-commit): Ditto.
3259
3260 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3261
3262         * elmo-flag.el: New file.
3263
3264         * elmo-mark.el: Removed.
3265
3266         * modb-legacy.el (modb-legacy-new-mark,
3267         modb-legacy-unread-uncached-mark,
3268         modb-legacy-unread-cached-mark,
3269         modb-legacy-read-uncached-mark,
3270         modb-legacy-answered-cached-mark,
3271         modb-legacy-answered-uncached-mark,
3272         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3273         All other related portions are changed.
3274
3275         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3276         (elmo-folder-list-messages-with-global-mark): Abolish.
3277         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3278         (elmo-folder-flag-as-important): Ditto.
3279         (elmo-folder-unflag-read): Ditto.
3280         (elmo-folder-flag-as-read): Ditto.
3281         (elmo-folder-unflag-answered): Ditto.
3282         (elmo-folder-flag-as-answered): Ditto.
3283         (elmo-message-encache): Return the cache path.
3284         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3285         (elmo-message-set-flag): Transitional implementation.
3286         (elmo-message-unset-flag): Ditto.
3287         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3288         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3289         (elmo-init): Call elmo-global-flag-initialize.
3290         (toplevel): Added autoload settings for elmo-flag.
3291
3292         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3293
3294         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3295         (elmo-file-cache-delete): Don't treat global-mark.
3296
3297         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3298
3299         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3300
3301         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3302         `elmo-global-flags-set'.
3303
3304         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3305         `flag'.
3306         (elmo-folder-unflag-read): Ditto.
3307         (elmo-folder-unflag-important): Ditto.
3308         (elmo-folder-flag-as-important): Ditto.
3309         (elmo-folder-unflag-answered): Ditto.
3310         (elmo-folder-flag-as-answered): Ditto.
3311
3312         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3313         `elmo-global-flags-set'.
3314         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3315
3316         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3317
3318         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3319         `flag'.
3320         (elmo-folder-flag-as-important): Ditto.
3321         (elmo-folder-unflag-important): Ditto.
3322         (elmo-folder-flag-as-important): Ditto.
3323         (elmo-folder-unflag-read): Ditto.
3324         (elmo-folder-flag-as-read): Ditto.
3325         (elmo-folder-unflag-answered): Ditto.
3326         (elmo-folder-flag-as-answered): Ditto.
3327
3328         * elmo-multi.el (elmo-folder-list-importants): Don't call
3329         elmo-folder-list-messages-with-global-mark.
3330         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3331         (elmo-folder-unflag-important): Ditto.
3332         (elmo-folder-flag-as-read): Ditto.
3333         (elmo-folder-unflag-read): Ditto.
3334         (elmo-folder-flag-as-answered): Ditto.
3335         (elmo-folder-unflag-answered): Ditto.
3336
3337         * elmo-msgdb.el (elmo-msgdb-new-mark,
3338         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3339         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3340         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3341         (Moved to modb-legacy.el).
3342         (elmo-flag-table-get): Treat important flag too.
3343
3344         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3345         `mark' to `flag'.
3346         (elmo-map-folder-flag-as-important): Ditto.
3347         (elmo-map-folder-unflag-read): Ditto.
3348         (elmo-map-folder-flag-as-read): Ditto.
3349         (elmo-map-folder-unflag-answered): Ditto.
3350         (elmo-map-folder-flag-as-answered): Ditto.
3351         (elmo-folder-unflag-important): Ditto.
3352         (elmo-folder-flag-as-important): Ditto.
3353         (elmo-folder-unflag-read): Ditto.
3354         (elmo-folder-flag-as-read): Ditto.
3355         (elmo-folder-unflag-answered): Ditto.
3356         (elmo-folder-flag-as-answered): Ditto.
3357
3358         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3359         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3360         `flag'.
3361         (elmo-map-folder-unflag-important): Ditto.
3362         (elmo-map-folder-flag-as-read): Ditto.
3363         (elmo-map-folder-unflag-read): Ditto.
3364         (elmo-map-folder-flag-as-answered): Ditto.
3365         (elmo-map-folder-unflag-answered): Ditto.
3366
3367         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3368         `elmo-global-flags-set'.
3369         (elmo-global-flags-set): Added autoload setting.
3370
3371         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3372         `flag'.
3373
3374         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3375         `elmo-msgdb-global-mark-set'.
3376         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3377         Call `elmo-global-flags-set'.
3378         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3379         `flag'.
3380         (elmo-folder-flag-as-important-plugged): Ditto.
3381         (elmo-folder-unflag-read-plugged): Ditto.
3382         (elmo-folder-flag-as-read-plugged): Ditto.
3383         (elmo-folder-unflag-answered-plugged): Ditto.
3384         (elmo-folder-flag-as-answered-plugged): Ditto.
3385         (elmo-global-flags-set): Added autoload setting.
3386
3387         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3388         `flag'.
3389         (elmo-folder-unflag-read): Ditto.
3390         (elmo-folder-flag-as-important): Ditto.
3391         (elmo-folder-unflag-important): Ditto.
3392         (elmo-folder-flag-as-answered): Ditto.
3393         (elmo-folder-unflag-answered): Ditto.
3394
3395         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3396         change of `mark'->`flag'.
3397         (elmo-dop-queue-method-name-alist): Ditto.
3398         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3399         (elmo-folder-unflag-read-dop): Ditto.
3400         (elmo-folder-flag-as-important-dop): Ditto.
3401         (elmo-folder-unflag-important-dop): Ditto.
3402         (elmo-folder-flag-as-answered-dop): Ditto.
3403         (elmo-folder-unflag-answered-dop): Ditto.
3404
3405         * elmo-cache.el (elmo-folder-msgdb-create): Call
3406         `elmo-global-flags-set'.
3407
3408         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3409         Call `elmo-global-flags-set'.
3410         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3411         elmo-archive-parse-mmdf with argument `folder'.
3412         (elmo-archive-parse-mmdf): Added argument `folder';
3413         Call `elmo-global-flags-set'.
3414
3415         * elmo-version.el (elmo-version): Up to 2.11.14.
3416
3417 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3418
3419         * modb.el (elmo-msgdb-length): Define.
3420
3421         * elmo.el (elmo-make-folder): Fixed.
3422         (elmo-generic-folder-append-messages): Follow the API change.
3423
3424         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3425         API change.
3426
3427 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3428
3429         * modb.el: New file.
3430
3431         * modb-entity.el: Ditto.
3432
3433         * modb-legacy.el: Ditto.
3434
3435         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3436         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3437         of `elmo-msgdb-overview-get-entity'.
3438         (elmo-msgdb-get-field): Ditto.
3439         (elmo-msgdb-merge): Moved to `elmo.el'.
3440         (elmo-msgdb-length): Removed; redefine as modb method.
3441         (elmo-msgdb-change-mark): Abolish.
3442         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3443         (elmo-msgdb-match-condition): Don't use mark.
3444         (elmo-msgdb-overview-get-entity): Abolish.
3445         Split modb part into `modb*.el'.
3446
3447         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3448
3449         * elmo-shimbun.el (shimbun-mua-search-id): Use
3450         `elmo-msgdb-message-entity' instead of
3451         `elmo-msgdb-overview-get-entity'.
3452         (elmo-shimbun-folder-shimbun-header): Ditto.
3453         (elmo-shimbun-get-headers): Ditto.
3454         (elmo-shimbun-update-overview): Ditto.
3455
3456         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3457
3458         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3459
3460         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3461         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3462
3463         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3464         `elmo-msgdb-mark-to-flags'.
3465
3466         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3467         `elmo-msgdb-set-path'.
3468
3469         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3470  
3471         * elmo-version.el (elmo-version): Up to 2.11.13.
3472
3473         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3474
3475         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3476         of mark.
3477
3478 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3479
3480         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3481         mismatch.
3482
3483 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3484
3485         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3486         instead of `elmo-msgdb-get-cached'.
3487         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3488
3489         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3490         (elmo-msgdb-set-cached): Ditto.
3491         (elmo-msgdb-set-flag): Rewrite.
3492         (elmo-msgdb-unset-flag): Ditto.
3493
3494         * elmo-msgdb.el: Rewrite with luna.
3495
3496         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3497         (elmo-folder-msgdb): Follow the change above.
3498         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3499         (elmo-folder-unmark-important): Follow the API change.
3500         (elmo-folder-mark-as-important): Ditto.
3501         (elmo-folder-unmark-read): Ditto.
3502         (elmo-folder-mark-as-read): Ditto.
3503         (elmo-folder-unmark-answered): Ditto.
3504         (elmo-folder-mark-as-answered): Ditto.
3505         (elmo-folder-clear): Likewise.
3506
3507         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3508         instead of `elmo-msgdb-load' (renamed).
3509
3510         * elmo-version.el (elmo-version): Up to 2.11.12.
3511
3512 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3513
3514         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3515         change.
3516         (elmo-message-mark): Abolish.
3517         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3518         instead of `elmo-msgdb-change-mark'.
3519
3520         * elmo-pipe.el (elmo-message-mark): Abolish.
3521
3522         * elmo-multi.el (elmo-message-mark): Ditto.
3523
3524         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3525         (elmo-msgdb-unread-uncached-mark): Ditto.
3526         (elmo-msgdb-unread-cached-mark): Ditto.
3527         (elmo-msgdb-read-uncached-mark): Ditto.
3528         (elmo-msgdb-answered-cached-mark): Ditto.
3529         (elmo-msgdb-answered-uncached-mark): Ditto.
3530         (elmo-msgdb-important-mark): Ditto.
3531         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3532         `use-cache'.
3533         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3534         `flags'.
3535         (elmo-flag-table-load): Changed flag to list of flag.
3536         (elmo-flag-table-set): If flags is nil, set read flag.
3537         (elmo-flag-table-get): Return derived flags from global mark,
3538         cache status and saved flags.
3539         (elmo-msgdb-flag-table): Follow the change above.
3540         (elmo-msgdb-out-of-date-messages): New function.
3541
3542         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3543
3544         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3545
3546         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3547
3548         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3549         (elmo-nntp-msgdb-create-message): Ditto.
3550
3551         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3552
3553         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3554         independent.
3555         (elmo-folder-msgdb-create): Follow the API change.
3556
3557         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3558         (elmo-folder-append-messages): Ditto.
3559
3560         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3561         (elmo-folder-append-buffer): Ditto.
3562
3563         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3564
3565         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3566
3567         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3568         (elmo-archive-parse-mmdf): Ditto.
3569
3570         * elmo-version.el (elmo-version): Up to 2.11.11.
3571
3572 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3573
3574         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3575         `elmo-msgdb-mark'.
3576
3577         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3578
3579         * elmo-pipe.el (elmo-message-flags): Defined.
3580
3581         * elmo-multi.el (elmo-message-flags): Ditto.
3582
3583 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3584
3585         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3586         `elmo-msgdb-delete-msgs'.
3587
3588         * elmo.el (elmo-folder-count-flags): Don't use
3589         `elmo-msgdb-get-mark-alist'.
3590         (elmo-folder-detach-messages): Follow the API change.
3591
3592         * elmo.el (elmo-folder-list-messages): Append killed messages into
3593         result if `visible-only' is nil.
3594
3595         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3596         canceled messages.
3597         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3598         (elmo-folder-update-number): Likewise.
3599
3600         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3601         (elmo-pop3-sort-msgdb-by-original-number): Use
3602         `elmo-msgdb-sort-entities'.
3603
3604         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3605         (elmo-msgdb-sort-by-date): Use it.
3606         (elmo-msgdb-overview-sort-by-date): Abolish.
3607
3608         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3609
3610         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3611         (elmo-msgdb-flags): New function.
3612         (elmo-msgdb-merge): Use elmo-msgdb-append.
3613
3614         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3615         change.
3616
3617         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3618
3619         * elmo-dop.el (elmo-folder-status-dop): Use
3620         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3621
3622 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3623
3624         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3625
3626         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3627
3628         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3629
3630         * elmo-util.el (elmo-with-progress-display): New macro.
3631
3632         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3633
3634 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3635
3636         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3637         `elmo-folder-list-message-entities' instead of
3638         `elmo-msgdb-get-overview'.
3639         (elmo-map-folder-list-message-locations): Ditto.
3640
3641         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3642         methods instead of treat directly).
3643         (elmo-msgdb-clear): Ditto.
3644         (elmo-msgdb-delete-msgs): Ditto.
3645         (elmo-msgdb-sort-by-date): Ditto.
3646
3647         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3648         local variables.
3649         (elmo-nntp-folder-msgdb-create): Follow the API change.
3650
3651         * elmo-version.el (elmo-version): Up to 2.11.10.
3652
3653 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3654
3655         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3656         (elmo-msgdb-flags-to-mark): Ditto.
3657         (elmo-msgdb-append-entity): Ditto.
3658
3659         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3660         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3661         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3662         (elmo-archive-parse-mmdf): Ditto.
3663
3664         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3665
3666         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3667
3668         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3669
3670         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3671
3672         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3673
3674         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3675
3676         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3677
3678         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3679
3680         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3681         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3682         to empty msgdb.
3683
3684         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3685         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3686         instead of directly construction.
3687         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3688         instead of construct msgdb.
3689
3690         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3691         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
3692         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
3693         instead of construct msgdb.
3694
3695 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3696
3697         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
3698         when field is from or subject.
3699
3700 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
3701
3702         * elmo-multi.el (elmo-message-entity-parent): Define.
3703         (elmo-folder-search): Rewrite.
3704
3705 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3706
3707         * elmo-multi.el (elmo-message-cached-p): Define.
3708
3709         * elmo.el (elmo-message-cached-p): New method.
3710         (elmo-message-accessible-p): Use it instead of msgdb API directly.
3711         (elmo-message-flags): New method.
3712         (elmo-message-flagged-p): New function.
3713
3714         * elmo-version.el (elmo-version): Up to 2.11.9.
3715
3716 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3717
3718         * elmo-version.el (elmo-version): Up to 2.11.8.
3719
3720         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3721
3722         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3723
3724 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
3725
3726         * elmo.el (elmo-folder-detach-messages): Undo last change.
3727
3728 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
3729
3730         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3731
3732         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3733         only when src folder type is pop3.
3734
3735 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
3736
3737         * elmo-msgdb.el (elmo-msgdb-make-index): Use
3738         elmo-msgdb-overview-entity-get-number instead of
3739         elmo-message-entity-number.
3740
3741 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3742
3743         * elmo-version.el (elmo-version): Up to 2.11.7.
3744
3745 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
3746
3747         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3748         function.
3749
3750         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3751         (elmo-msgdb-merge): New function.
3752         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3753         (elmo-msgdb-make-index): Rewrite.
3754
3755         * elmo-version.el (elmo-version): Up to 2.11.6.
3756
3757         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3758         use it as a the path for loading message entities.
3759
3760         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3761
3762 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
3763
3764         * elmo-filter.el (elmo-folder-set-message-modified): Set 
3765         message-modified slot of itself if it does not require target msgdb.
3766
3767         * elmo-mime.el (elmo-mime-message-display): Display message entirely
3768         if folder length is zero.
3769         (elmo-mime-display-as-is): Ditto.
3770
3771         * elmo-filter.el (elmo-folder-set-message-modified): Define.
3772
3773         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3774
3775 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3776
3777         * elmo.el (elmo-folder-set-message-modified): New method.
3778         (elmo-generic-folder-commit): Use it.
3779         (elmo-folder-synchronize): Ditto.
3780
3781         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3782         (elmo-folder-commit): Remove duplicate definition.
3783
3784 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3785
3786         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3787
3788 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3789
3790         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3791         (elmo-strict-folder-diff): Ditto.
3792         (elmo-folder-set-info-max-by-numdb): Simplify.
3793
3794         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3795         elmo-msgdb-list-messages.
3796
3797         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3798         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3799
3800 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3801
3802         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
3803         visible-only is non-nil.
3804         (elmo-folder-confirm-appends): Changed message.
3805         (elmo-folder-synchronize): Added argument disable-killed.
3806
3807         * elmo-multi.el (elmo-folder-synchronize): Added argument
3808         disable-killed.
3809
3810         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
3811
3812         * elmo-version.el (elmo-version): Up to 2.11.5.
3813
3814         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
3815         elmo-list-filter.
3816
3817         * elmo-util.el (elmo-list-filter): Simplify.
3818
3819         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
3820         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
3821         (elmo-generic-folder-diff): Abolish argument.
3822         (elmo-msgdb-load): Don't use number-alist.
3823
3824         * elmo-filter.el (elmo-folder-diff): Abolish argument.
3825
3826         * elmo-pipe.el (elmo-folder-diff): Ditto.
3827
3828         * elmo-nmz.el (elmo-folder-diff): Ditto.
3829
3830         * elmo-net.el (elmo-folder-diff): Ditto.
3831
3832         * elmo-maildir.el (elmo-folder-diff): Ditto.
3833
3834         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
3835
3836         * elmo-multi.el (elmo-folder-diff): Ditto
3837         (elmo-multi-folder-diff): Rewrite.
3838
3839 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3840
3841         * elmo-pipe.el (elmo-folder-msgdb): Define.
3842
3843 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
3844
3845         * elmo.el (elmo-message-set-cached): Define as a method.
3846
3847         * elmo-pipe.el (elmo-message-set-cached): Define.
3848         (elmo-find-fetch-strategy): Ditto.
3849
3850         * elmo-multi.el (elmo-message-set-cached): Define.
3851         (elmo-find-fetch-strategy): Rewrite.
3852
3853         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
3854
3855         * elmo-pipe.el (elmo-message-folder): Fixed definition.
3856
3857 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
3858
3859         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
3860         instead of number-alist.
3861
3862         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
3863         mark nor message-id when msgdb of source folder is not loaded.
3864
3865         * elmo.el (elmo-generic-folder-append-messages): Ditto.
3866
3867         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
3868
3869 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
3870
3871         * elmo.el (elmo-folder-length): Don't require msgdb.
3872
3873 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
3874
3875         * elmo.el (elmo-message-mark): Cause an error when empty folder.
3876         (elmo-message-field): Ditto.
3877
3878         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
3879         (elmo-map-folder-list-message-locations): Setup `answered-locations'
3880         slot.
3881         (elmo-map-folder-list-answereds): Define.
3882         (elmo-maildir-list-location): Treat 'R' info.
3883         (elmo-folder-msgdb-create): Treat flag-table.
3884         (elmo-folder-append-messages): Save flag-table.
3885
3886 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
3887
3888         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
3889         Use SELECT when elmo-imap4-use-select-to-update-status is t.
3890
3891 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3892
3893         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
3894
3895         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
3896         'read when mark is null.
3897
3898 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
3899
3900         * elmo-version.el (elmo-version): Up to 2.11.4.
3901
3902 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3903
3904         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
3905         (elmo-folder-mark-as-answered): Ditto.
3906
3907 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
3908
3909         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
3910         (elmo-pop3-get-session): Make msgdb directory after session.
3911         (elmo-folder-exists-p): Check exactly at the first time even when the
3912         elmo-pop3-exists-exactly is nil.
3913
3914         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
3915         (elmo-folder-list-messages): Define instead of
3916         elmo-folder-list-messages-internal.
3917         (elmo-folder-check): Check destination folder.
3918         (elmo-folder-synchronize): Drain the pipe.
3919
3920         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
3921         when msgdb is not loaded.
3922
3923         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
3924
3925         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
3926         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
3927         messages.
3928
3929         * elmo.el (elmo-folder-kill-messages-before): New function.
3930         (elmo-folder-kill-messages): Ditto.
3931         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
3932
3933         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
3934         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
3935         killed not by synchronize (e.g. scoring).
3936
3937 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3938
3939         * elmo.el (elmo-folder-search-fast): Return t if condition is not
3940         treated.
3941         (elmo-folder-search): Follow the change above.
3942
3943         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
3944         into the candidates of search field.
3945
3946 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
3947
3948         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
3949         (elmo-msgdb-unset-flag): Ditto.
3950
3951         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
3952
3953 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
3954
3955         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
3956         (elmo-folder-commit): Define.
3957         (elmo-folder-synchronize): Ditto.
3958         (elmo-folder-list-flagged): Ditto.
3959         (elmo-folder-commit): Ditto.
3960         (elmo-folder-length): Ditto.
3961         (elmo-folder-count-flags): Ditto.
3962         (elmo-message-mark): Ditto.
3963         (elmo-message-field): Ditto.
3964         (elmo-message-entity): Ditto.
3965         (elmo-message-folder): Ditto.
3966
3967 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
3968
3969         * elmo.el (elmo-message-field): Define as a method.
3970
3971         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
3972         (elmo-message-field): Define.
3973
3974         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
3975         (elmo-folder-list-importants): Ditto.
3976         (elmo-folder-list-answereds): Ditto.
3977
3978         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
3979         qualifier.
3980         (elmo-folder-mark-as-read): Ditto.
3981         (elmo-folder-unmark-read): Ditto.
3982         (elmo-folder-mark-as-answered): Ditto.
3983         (elmo-folder-unmark-answered): Ditto.
3984         (elmo-folder-list-flagged): Define.
3985         (elmo-folder-commit): Ditto.
3986         (elmo-folder-length): Ditto.
3987         (elmo-folder-count-flags): Ditto.
3988
3989 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3990
3991         * elmo.el (elmo-folder-detach-messages): New method.
3992         (elmo-folder-move-messages): Use it.
3993         (elmo-folder-synchronize): Ditto.
3994
3995         * elmo-multi.el (elmo-folder-detach-messages): Define.
3996
3997         * elmo.el (elmo-message-copy-entity): New function.
3998         (elmo-message-entity-set-number): Ditto.
3999         (elmo-message-mark): Define as method.
4000
4001         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4002         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4003         (elmo-message-entity): Fixed last change.
4004         (elmo-message-mark): Define.
4005         (elmo-folder-msgdb-create): Abolish.
4006         (elmo-multi-folder-append-msgdb): Ditto.
4007         (elmo-multi-folder-diff): Fixed.
4008         (elmo-multi-split-number-alist): Removed.
4009         (elmo-multi-split-mark-alist): Removed.
4010         (elmo-folder-list-messages): Define.
4011         (elmo-folder-list-messages-internal): Removed.
4012
4013         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4014         local file messages.
4015         (elmo-folder-msgdb-create): Fixed read mark.
4016
4017 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4018
4019         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4020         if mark is nil.
4021
4022 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4023
4024         * elmo.el (elmo-folder-list-message-entities): Define as inline
4025         function.
4026         (elmo-folder-messages): Abolish.
4027
4028         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4029         folder.
4030         (elmo-folder-synchronize): Define.
4031         (elmo-message-entity): Define.
4032
4033 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4034
4035         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4036         elmo-imap4-session-select-mailbox.
4037
4038         * elmo.el (elmo-folder-move-messages): Don't display any message.
4039
4040         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4041         parsing.
4042         (elmo-imap4-session-check): Don't wait CHECK response.
4043         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4044
4045 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4046
4047         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4048
4049 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4050
4051         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4052         API.
4053         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4054
4055
4056         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4057         (elmo-folder-list-message-entities): Added argument in-msgdb and
4058         numbers.
4059         (elmo-folder-synchronize): Define as a method.
4060
4061         * elmo-nntp.el (elmo-folder-initialize): Don't use
4062         elmo-nntp-default-user if zero-length username is specified
4063         explicitly.
4064
4065 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4066
4067         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4068         server name in case with username.
4069         (XXX: this is ad-hoc fix against username includes "@", it
4070         should be solved fundamentally)
4071
4072 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4073
4074         * elmo-nntp.el (elmo-nntp-debug): New function.
4075         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4076         (elmo-network-authenticate-session): Hide auth-info from the log.
4077
4078         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4079         user name if it is equal to elmo-nntp-default-user.
4080
4081 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4082
4083         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4084         instead of shimbun-server-internal;
4085         Use shimbun-current-group instead of shimbun-current-group-internal.
4086         (elmo-folder-plugged-p): Use shimbun-server instead of
4087         shimbun-server-internal.
4088         (elmo-folder-set-plugged): Ditto.
4089         (elmo-net-port-info): Ditto.
4090         (elmo-folder-check): Ditto.
4091         (elmo-folder-expand-msgdb-path): Ditto.
4092         (elmo-folder-list-subfolders): Ditto.
4093
4094 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4095
4096         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4097         Convert field-name to lower case.
4098         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4099
4100 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4101
4102         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4103         `message' and `error' take format string.
4104
4105 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4106
4107         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4108
4109 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4110
4111         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4112         recursive call (can't byte compile on emacs 20.7).
4113
4114 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4115
4116         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4117         (elmo-folder-list-message-entities): New API.
4118         (elmo-message-entity): Ditto.
4119         (elmo-message-entity-parent): Ditto.
4120         (elmo-folder-do-each-message-entity): Ditto.
4121         (elmo-message-entity-number): Ditto.
4122         (elmo-message-entity-field): Ditto.
4123         (elmo-message-entity-set-field): Ditto.
4124         (elmo-folder-count-flags): Ditto.
4125         (elmo-folder-length): Ditto.
4126
4127         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4128         not.
4129
4130         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4131         (elmo-msgdb-count-marks): Abolish.
4132         (elmo-msgdb-make-entity): Ditto.
4133         (elmo-msgdb-do-each-entity): Ditto.
4134         (elmo-msgdb-message-entity): New inline function.
4135         (elmo-msgdb-message-entity-field): Ditto.
4136         (elmo-msgdb-message-entity-set-field): Ditto.
4137         (elmo-msgdb-make-message-entity): New function.
4138
4139 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4140
4141         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4142         to flag. (All other related portions are changed.)
4143         (elmo-folder-msgdb-create): Likewise.
4144         (elmo-generic-folder-append-messages): Use flag-table instead of
4145         seen-list.
4146         (elmo-folder-move-messages): Removed redundant process.
4147         (elmo-folder-synchronize): Likewise.
4148
4149         * elmo-msgdb.el (elmo-flag-table-get): New function.
4150         (elmo-flag-table-save): Fixed.
4151         (elmo-msgdb-length): New inline function.
4152         (elmo-msgdb-flag-table): New function.
4153         (elmo-msgdb-mark): Add optional argument new.
4154         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4155         (elmo-msgdb-seen-list): Ditto.
4156         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4157
4158
4159 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4160
4161         * elmo.el (elmo-message-set-mark): Abolish.
4162         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4163         (All related portions are changed.)
4164
4165         * elmo-msgdb.el (toplevel): Added comment.
4166         (elmo-load-msgdb): Added 4th element `path'.
4167         (elmo-msgdb-append): Follow the change above.
4168         (elmo-msgdb-clear): Ditto.
4169         (elmo-msgdb-delete-msgs): Ditto.
4170         (elmo-msgdb-get-path): New inline function.
4171         (elmo-msgdb-set-path): Ditto.
4172         (elmo-flag-table-filename): New variable.
4173         (elmo-flag-table-load): New function.
4174         (elmo-flag-table-set): Ditto.
4175         (elmo-flag-table-save): Ditto.
4176         (elmo-msgdb-get-field-value): Abolish.
4177         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4178
4179 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4180
4181         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4182         the folder has been deleted successfully.
4183         * elmo-imap4.el (elmo-folder-delete): Ditto.
4184         * elmo-archive.el (elmo-folder-delete): Ditto.
4185         * elmo-localdir.el (elmo-folder-delete): Ditto.
4186         * elmo-maildir.el (elmo-folder-delete): Ditto.
4187
4188 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4189
4190         * elmo-util.el (elmo-string-member-ignore-case): New function.
4191         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4192         (elmo-imap4-fetch-callback-1-subr): Likewise.
4193
4194 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4195
4196         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4197         the case of the name attribute "\Noselect".
4198
4199 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4200
4201         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4202
4203         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4204         flist, is not always a member of onum-alist.
4205
4206 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4207
4208         * elmo-version.el (elmo-version): Up to 2.11.3.
4209
4210 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4211
4212         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4213         copied from localdir's one.
4214
4215         * elmo-pipe.el (elmo-folder-rename): New method, rename
4216         destination folder with leaving source folder as it is.
4217
4218 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4219
4220         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4221         replace-regexp.
4222
4223 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4224
4225         * elmo-version.el (elmo-version): Up to 2.11.2.
4226
4227 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4228
4229         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4230         shimbun-open in case of "@".
4231         (elmo-folder-open-internal): Cope with shimbun = nil case.
4232         (elmo-folder-plugged-p): Ditto.
4233         (elmo-folder-list-subfolders): Make list for "@/" group.
4234
4235 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4236
4237         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4238         mailbox (e.g. for %~/something).
4239
4240 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4241
4242         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4243         Replace nested conditional with guard clauses.
4244
4245 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4246
4247         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4248         error [wl:11327].
4249
4250         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4251         print-depth.
4252
4253 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4254
4255         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4256         Replace nested conditional with guard clauses.
4257
4258 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4259
4260         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4261         (elmo-passwd-alist-save): Ditto.
4262         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4263
4264 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4265
4266         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4267         dir-name only if it is absolute path.
4268         (TODO: distinguish +/something and +something)
4269
4270 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4271
4272         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4273         path for "+~/something".
4274
4275 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4276
4277         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4278         as non-directory, cause error before rename-file.
4279         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4280         apropriately, mimic localdir's one.
4281         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4282
4283 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4284
4285         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4286
4287 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4288
4289         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4290
4291         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4292         
4293         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4294         is included in the global-mark or not.
4295
4296 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4297
4298         * utf7.el (toplevel): Avoid error when the function
4299         find-coding-system does not exist.
4300
4301 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4302
4303         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4304         cache even if the folder is plugged.
4305         (elmo-nntp-search-primitive): Do nothing when body search is
4306         invoked (although it is not used by the change above).
4307         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4308
4309 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4310
4311         * elmo-version.el (elmo-version): Up to 2.11.1.
4312
4313 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4314
4315         * elmo-archive.el: Specify charset.
4316
4317 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4318
4319         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4320         process buffer lives or not.
4321
4322         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4323         while flushing queues (It causes infinite loop).
4324
4325 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4326
4327         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4328
4329 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4330
4331         * utf7.el (toplevel): Check the ucs features dynamically.
4332         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4333
4334         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4335         folder is creatabe or not if it already exists.
4336
4337 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4338
4339         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4340
4341         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4342
4343         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4344         (elmo-imap4-read-response): Take care of garbage response.
4345
4346 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4347
4348         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4349         just return nil instead of error.
4350
4351 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4352
4353         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4354         search-key is "body".
4355
4356 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4357
4358         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4359         of elmo-string-matched-assoc to use match-data.
4360         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4361
4362 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4363
4364         * elmo-split.el (elmo-split->): New function.
4365         (elmo-split-<): Ditto.
4366
4367 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4368
4369         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4370         workaround for invalid message-id.
4371
4372 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4373
4374         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4375         return normal pop3 session or pop3 biff session.
4376
4377 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4378
4379         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4380         info part to the cur files when the new files already have it.
4381         (Adviced by Jared Rhine <jared@wordzoo.com>)
4382
4383 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4384
4385         * elmo-split.el (elmo-split-default-action): New variable.
4386         (elmo-split-subr): Use it if all other conditions are passed.
4387         Extend `fname' and rename it as `action'. (implemented
4388         Teranishi-san's idea in [wl:10800])
4389
4390 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4391
4392         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4393         * elmo-util.el: Ditto.
4394
4395 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4396
4397         * elmo.el (elmo-message-accessible-p): Renamed from
4398         elmo-message-cached-p and rewritten.
4399
4400 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4401
4402         * elmo.el (elmo-folder-list-flagged): New generic function.
4403         (elmo-folder-list-importants): New implementation.
4404         (elmo-folder-list-answereds): Ditto.
4405         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4406         Added 'digest'.
4407         (elmo-message-cached-p): New function.
4408         (elmo-message-set-flag): Ditto (no content).
4409         (elmo-message-unset-flag): Ditto.
4410         (elmo-folder-list-messages-mark-match): Abolish.
4411
4412         * elmo-util.el (elmo-regexp-opt): New function.
4413
4414         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4415         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4416         Added 'digest'.
4417         (elmo-msgdb-list-flagged): New function.
4418
4419         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4420         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4421         Added 'digest'.
4422
4423         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4424
4425 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4426
4427         * elmo-version.el (elmo-version): Up to 2.11.0.
4428
4429 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4430
4431         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4432         `elmo-file-cache-exists-p'; use proper mark that depends on
4433         `use-cache'.
4434         (elmo-msgdb-unset-flag): Ditto.
4435         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4436
4437         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4438         with 4th argument `use-cache'.
4439
4440 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4441
4442         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4443         (elmo-folder-mark-as-important): Ditto.
4444         (elmo-folder-unmark-read): Ditto.
4445         (elmo-folder-mark-as-read): Ditto.
4446         (elmo-folder-unmark-answered): Ditto.
4447         (elmo-folder-mark-as-answered): Ditto.
4448
4449         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4450         message status.
4451         (elmo-msgdb-mark): Likewise.
4452         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4453         (elmo-msgdb-unset-flag): Likewise.
4454
4455         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4456
4457 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4458
4459         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4460         `last:' filter.
4461
4462 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4463
4464         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4465         set spool-length to 0.
4466
4467 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4468
4469         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4470         (elmo-dop-queue-flush): Fixed last change.
4471
4472 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4473
4474         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4475         if require-msgdb slot is nil.
4476         (elmo-folder-list-importants): Likewise.
4477
4478 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4479
4480         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4481         mark is changed.
4482
4483         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4484         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4485         is changed.
4486
4487 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4488
4489         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4490
4491 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4492
4493         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4494
4495         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4496
4497 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4498
4499         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4500         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4501
4502 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4503
4504         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4505         the problem reported by Sean Rima [wl-en:180].
4506
4507 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4508
4509         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4510
4511         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4512
4513         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4514
4515         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4516
4517         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4518
4519         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4520
4521         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4522
4523 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4524
4525         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4526         status number.
4527
4528 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4529
4530         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4531         (elmo-folder-mark-as-read): Follow the API change.
4532         (elmo-message-set-cached): New function.
4533
4534         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4535
4536         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4537
4538         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4539         (elmo-folder-mark-as-important): Ditto.
4540         (elmo-folder-unmark-read): Ditto.
4541         (elmo-folder-mark-as-read): Ditto.
4542         (elmo-folder-unmark-answered): Ditto.
4543         (elmo-folder-mark-as-answered): Ditto.
4544
4545         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4546         (elmo-folder-unmark-important): Ditto.
4547         (elmo-folder-mark-as-read): Ditto.
4548         (elmo-folder-unmark-read): Ditto.
4549         (elmo-folder-mark-as-answered): Ditto.
4550         (elmo-folder-unmark-answered): Ditto.
4551
4552         * elmo-mark.el (toplevel): Removed some mark method definitions.
4553
4554         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4555         (elmo-map-folder-mark-as-answered): Ditto.
4556         (elmo-folder-unmark-important): Add :before qualifier.
4557         (elmo-folder-mark-as-important): Ditto.
4558         (elmo-folder-unmark-read): Ditto.
4559         (elmo-folder-mark-as-read): Ditto.
4560         (elmo-folder-unmark-answered): Define.
4561         (elmo-folder-mark-as-answered): Ditto.
4562
4563         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4564         (elmo-map-folder-unmark-answered): Ditto.
4565
4566         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4567
4568         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4569         (elmo-folder-mark-as-important): Ditto.
4570         (elmo-folder-unmark-read): Ditto.
4571         (elmo-folder-mark-as-read): Ditto.
4572         (elmo-folder-unmark-answered): Ditto.
4573         (elmo-folder-mark-as-answered): Ditto.
4574
4575         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4576         `mark'; evaluate mark condition.
4577         (elmo-msgdb-match-condition-internal): New function.
4578         (elmo-msgdb-match-condition): Call it; changed argument.
4579
4580         * elmo.el (elmo-folder-search): Follow the API change on
4581         `elmo-msgdb-match-condition'.
4582
4583 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4584
4585         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4586         original mark is non-nil.
4587
4588 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4589
4590         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4591         (elmo-map-folder-list-answereds): New method.
4592         (elmo-folder-list-unreads): Add :around qualifier.
4593         (elmo-folder-list-importants): Ditto.
4594         (elmo-folder-list-answereds): Ditto.
4595
4596 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4597
4598         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4599
4600         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4601         method if msgdb is not required.
4602         (elmo-filter-folder-list-importants): Don't treat global-mark.
4603
4604         * elmo.el (elmo-folder-list-importants): Ditto.
4605
4606         * elmo-net.el (elmo-folder-list-importants): Ditto.
4607
4608         * elmo-map.el (elmo-folder-list-importants): Ditto.
4609
4610         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4611
4612         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4613         (elmo-imap4-folder-list-any-plugged): New function.
4614         (elmo-imap4-search-internal-primitive): Use it.
4615
4616         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4617         only when require-msgdb slot is non-nil.
4618         (elmo-folder-close): Clear target folder's msgdb.
4619
4620 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4621
4622         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4623         (elmo-pop3-msgdb-create-by-header): Ditto.
4624         (elmo-pop3-msgdb-create-message): Ditto.
4625
4626         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4627
4628         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4629
4630         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4631
4632         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4633         (elmo-folder-msgdb-create): Ditto.
4634         (elmo-nntp-folder-msgdb-create): Ditto.
4635         (elmo-nntp-msgdb-create-by-header): Ditto.
4636         (elmo-nntp-msgdb-create-message): Ditto.
4637         (elmo-folder-list-unreads): Define.
4638
4639         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4640         (elmo-folder-append-messages): Ditto.
4641         (elmo-folder-list-unreads): Define.
4642         (elmo-folder-list-importants): Ditto.
4643         (elmo-folder-list-answereds): Ditto.
4644
4645         * elmo-net.el (elmo-folder-list-unreads): Define.
4646         (elmo-folder-list-importants): Ditto.
4647         (elmo-folder-list-answereds): Ditto.
4648         (elmo-folder-list-answereds-plugged): Ditto.
4649         (elmo-folder-msgdb-create): Follow the API change.
4650         (elmo-folder-msgdb-create-unplugged): Ditto.
4651         (elmo-folder-unmark-answered): Define.
4652         (elmo-folder-mark-as-answered-unplugged): Ditto.
4653         (elmo-folder-unmark-answered-unplugged): Ditto.
4654
4655         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4656         (elmo-msgdb-unread-uncached-mark): Ditto.
4657         (elmo-msgdb-unread-cached-mark): Ditto.
4658         (elmo-msgdb-read-uncached-mark): Ditto.
4659         (elmo-msgdb-answered-cached-mark): Ditto.
4660         (elmo-msgdb-answered-uncached-mark): Ditto.
4661         (elmo-msgdb-important-mark): Ditto.
4662         (elmo-msgdb-set-mark): Rewrite.
4663         (elmo-msgdb-count-marks): Rewrite.
4664         (elmo-msgdb-mark-alist-set): Abolish.
4665         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4666         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4667
4668         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4669         (elmo-folder-close): Define.
4670         (elmo-folder-msgdb-create): Follow the API change.
4671         (elmo-folder-list-unreads): Rewrite.
4672         (elmo-folder-mark-as-important): Ditto.
4673         (elmo-folder-unmark-important): Ditto.
4674         (elmo-folder-mark-as-read): Ditto.
4675         (elmo-folder-unmark-read): Ditto.
4676         (elmo-folder-mark-as-answered): Define.
4677         (elmo-folder-unmark-answered): Ditto.
4678
4679         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4680         (elmo-folder-append-messages): Ditto.
4681
4682         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4683
4684         * elmo-map.el (elmo-folder-list-unreads): Ditto.
4685         (elmo-folder-list-importants): Ditto.
4686
4687         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4688         (elmo-folder-append-messages): Ditto.
4689
4690         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4691         change.
4692         (elmo-folder-msgdb-create-plugged): Ditto.
4693         (elmo-folder-append-messages): Ditto.
4694         (elmo-folder-list-answereds-plugged): Define.
4695         (elmo-imap4-search-internal-primitive): Add `mark' processing.
4696         (elmo-folder-unmark-answered-plugged): Define.
4697         (elmo-folder-mark-as-answered-plugged): Ditto.
4698         (elmo-folder-search-requires-msgdb-p): Ditto.
4699
4700         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
4701         (elmo-folder-initialize): Set it.
4702         (elmo-folder-msgdb): Define.
4703         (elmo-folder-check): Call elmo-folder-synchronize.
4704         (elmo-folder-close): Define.
4705         (elmo-folder-commit): Ditto.
4706         (elmo-folder-msgdb-create): Rewrite.
4707         (elmo-folder-list-unreads): Ditto.
4708         (elmo-folder-list-importants): Ditto.
4709         (elmo-folder-mark-as-read): Ditto.
4710         (elmo-folder-unmark-read): Ditto.
4711         (elmo-folder-mark-as-important): Ditto.
4712         (elmo-folder-unmark-important): Ditto.
4713         (elmo-folder-mark-as-answered): Define.
4714         (elmo-folder-unmark-answered): Ditto.
4715
4716         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4717         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4718         (elmo-dop-queue-method-name-alist): Likewise.
4719         (elmo-folder-mark-as-answered-dop): New inline function.
4720         (elmo-folder-unmark-answered-dop): Ditto.
4721         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4722
4723         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4724         (elmo-folder-msgdb-create): Ditto.
4725         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4726         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4727         (elmo-archive-parse-mmdf): Ditto.
4728
4729         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4730         (elmo-folder-list-unreads-internal): Ditto.
4731
4732         * elmo.el (elmo-folder-msgdb): Define as generic function.
4733         (elmo-folder-list-messages): Added argument `in-msgdb'.
4734         (elmo-folder-list-unreads): Define as generic function.
4735         (elmo-folder-list-importants): Ditto.
4736         (elmo-folder-list-answereds): Ditto.
4737         (elmo-folder-list-messages-with-global-mark): New function.
4738         (elmo-folder-msgdb-create): Removed mark arguments.
4739         (elmo-folder-unmark-answered): New generic function.
4740         (elmo-folder-mark-as-answered): Ditto.
4741         (elmo-folder-append-messages): Removed argunment `unread-marks'
4742         (elmo-folder-list-unreads-internal): Abolish.
4743         (elmo-folder-list-importants-internal): Ditto.
4744         (elmo-folder-search-requires-msgdb-p): New generic function.
4745         (elmo-folder-search-requires-msgdb-p-internal): New function.
4746         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4747         elmo-msgdb-load.
4748         (elmo-folder-search-fast): Added key 'mark'.
4749         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4750         instead of unread-marks argument.
4751         (elmo-folder-move-messages): Removed argunment `unread-marks'
4752         (elmo-folder-unmark-important): Define.
4753         (elmo-folder-mark-as-important): Ditto.
4754         (elmo-folder-unmark-read): Ditto.
4755         (elmo-folder-mark-as-read): Ditto.
4756         (elmo-folder-unmark-answered): Ditto.
4757         (elmo-folder-mark-as-answered): Ditto.
4758         (elmo-folder-replace-marks): Abolish.
4759         (elmo-generic-folder-append-msgdb): Append msgdb before checking
4760         duplicates.
4761         (elmo-folder-synchronize): Removed mark arguments;
4762         return crosspost only number.
4763
4764 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4765
4766         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4767         Remove redundunt connectivity check.
4768
4769 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4770
4771         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4772         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4773
4774 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
4775
4776         * pldap.el (ldap-decode-string): Return string as-is if
4777         `ldap-coding-system' is nil.
4778         (ldap-encode-string): Ditto.
4779         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4780         (ldap-default-host): Fixed docstring.
4781
4782 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
4783
4784         * elmo-util.el (elmo-warning): Define as a macro which uses
4785         `display-warning' if it is defined as a function.
4786
4787         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4788         (elmo-split-equal): Use it.
4789         (elmo-split-match): Ditto.
4790         (elmo-split-message-entity): New buffer-local variable.
4791         (elmo-split-subr): Set it.
4792
4793         * elmo-version.el (elmo-version): Up to 2.9.15.
4794
4795 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
4796
4797         * elmo-imap4.el (elmo-network-initialize-session):
4798         Check capability after starttls.
4799
4800 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
4801
4802         * elmo-util.el (elmo-list-delete): Added optional argument
4803         DELETE-FUNCTION.
4804
4805         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
4806
4807         * elmo-util.el (elmo-warning): Ignore errors while recenter.
4808
4809         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
4810
4811         * elmo-imap4.el (elmo-folder-initialize): Don't use
4812         elmo-imap4-default-mailbox.
4813
4814 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4815
4816         * elmo-split.el (toplevel): Use `product-provide'.
4817         (elmo-split): Checkdoc.
4818
4819 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
4820
4821         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
4822         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
4823         the function `elmo-imap4-debug-1'.
4824
4825 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4826
4827         * elmo-split.el (elmo-split): Moved to run hooks and to show
4828         message from elmo-split-subr.
4829         (elmo-split-subr): Follow the change above.
4830
4831         * elmo-split.el (elmo-split-subr): New function (renamed from
4832         elmo-split-subr).
4833         (elmo-split): Changed to call elmo-split-subr by element of
4834         elmo-split-folder.
4835         (elmo-split-folder): Changed customization type to choice.
4836
4837 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4838
4839         * elmo-split.el (elmo-split-and): Fixed condition.
4840
4841 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4842
4843         * elmo-split.el: New file.
4844         (elmo-split): Fixed logic.
4845         Display "Test:" instead of "Folder:" when reharsal.
4846
4847         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
4848         explicitly.
4849
4850         * elmo-version.el (elmo-version): Up to 2.9.14.
4851
4852         * elmo-util.el (elmo-expand-newtext): New function (renamed from
4853         wl-expand-newtext).
4854
4855 2002-06-10  Kenichi Sato <ksato@sonycom.com>
4856
4857         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
4858         message with no message-id field.
4859
4860 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
4861
4862         * elmo-version.el (elmo-version): Up to 2.9.13.
4863
4864         * elmo-dop.el (elmo-folder-status-dop): Fix.
4865
4866 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
4867
4868         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
4869
4870         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
4871         changing default value of default-mime-charset.
4872         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
4873
4874         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
4875
4876         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
4877         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
4878         instead of elmo-dop-queue-method-name-alist to check merging queue.
4879         (elmo-folder-delete-messages-dop): Delete from queue if negative
4880         message number.
4881         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
4882         file is already removed.
4883
4884 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
4885
4886         * elmo-vars.el: Bind colon keywords for old Emacsen.
4887
4888 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4889
4890         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
4891         against non-exsisting charset.
4892
4893 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
4894
4895         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
4896         Use eword-decode-and-unfold-unstructured-field-body.
4897
4898         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
4899         (elmo-msgdb-create-overview-from-buffer): Use document charset if
4900         exists to decode raw subject string.
4901         (toplevel): Require 'mime.
4902
4903         * elmo-version.el (elmo-version): Up to 2.9.12.
4904
4905 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
4906
4907         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
4908         (elmo-msgdb-set-mark): Ditto.
4909
4910         * elmo-version.el (elmo-version): Up to 2.9.11.
4911
4912 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
4913
4914         * elmo-util.el (elmo-delete-match-files): New function.
4915
4916         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
4917         instead of elmo-delete-directory.
4918
4919         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
4920         elmo-hash-minimun-size as 63.
4921
4922         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
4923         elmo-diff-unread is nil.
4924
4925         * elmo-imap4.el (elmo-folder-open): Fix.
4926
4927         * elmo.el (elmo-message-mark): Rewrite.
4928         (elmo-message-field): Ditto.
4929         (elmo-message-set-mark): Ditto.
4930         (elmo-folder-replace-marks): New function.
4931         (elmo-generic-folder-append-msgdb): Removed third argument for
4932         elmo-msgdb-append.
4933         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
4934         (elmo-msgdb-load): New implementation.
4935
4936         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
4937
4938         * elmo-util.el (elmo-list-insert): New implementation.
4939
4940         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
4941         argument for elmo-msgdb-append.
4942         
4943
4944         * elmo-msgdb.el (elmo-load-msgdb): New function.
4945         (elmo-make-msgdb): Ditto.
4946         (elmo-msgdb-get-index): New inline function.
4947         (elmo-msgdb-set-index): Ditto.
4948         (elmo-msgdb-get-entity-hashtb): Ditto.
4949         (elmo-msgdb-get-mark-hashtb): Ditto.
4950         (elmo-msgdb-get-mark): Ditto.
4951         (elmo-msgdb-set-mark): Ditto.
4952         (elmo-msgdb-count-marks): Ditto.
4953         (elmo-msgdb-get-number): Ditto.
4954         (elmo-msgdb-get-field): Ditto.
4955         (elmo-msgdb-seen-list): Ditto.
4956         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
4957         (elmo-msgdb-delete-msgs): Follow the changes above.
4958         (elmo-msgdb-overview-get-entity): Ditto.
4959         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4960         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
4961         and rewritten.
4962         (elmo-msgdb-make-index): Likewise.
4963         (elmo-msgdb-append): Removed third argument.
4964         (elmo-msgdb-clear): Clear index as nil.
4965         (elmo-folder-set-info-hashtb): Removed.
4966         (elmo-folder-set-info-max-by-numdb): Ditto.
4967         (elmo-folder-info-make-hashtb): Ditto.
4968
4969         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
4970
4971         * elmo-map.el (elmo-folder-pack-number): Ditto.
4972
4973 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
4974
4975         * elmo-version.el (elmo-version): Up to 2.9.10.
4976
4977         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
4978
4979         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
4980
4981 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
4982
4983         * elmo-utils.el (elmo-make-directory): Add option.
4984         Default file mode is 700.
4985
4986 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4987
4988         * elmo-shimbun.el (elmo-folder-local-p): Defined.
4989
4990 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
4991
4992         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
4993         mime-charset.
4994
4995         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
4996         and "smaller".
4997
4998 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4999
5000         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5001         (elmo-shimbun-folder-entity-hash): New function.
5002         (elmo-shimbun-folder-shimbun-header): Ditto.
5003         (elmo-shimbun-entity-to-header): Ditto.
5004         (elmo-shimbun-msgdb-to-headers): Removed.
5005         (elmo-shimbun-folder-setup): Ditto.
5006         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5007         for hash key.
5008         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5009         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5010         Removed useless local bind.
5011         (elmo-folder-open-internal): Don't call
5012         `elmo-shimbun-folder-setup'.
5013         (elmo-folder-close-internal): Clear entity-hash slot.
5014         (elmo-folder-clear): Ditto.
5015         (elmo-shimbun-msgdb-create-entity): Use
5016         `elmo-shimbun-folder-shimbun-header'.
5017         (elmo-map-message-fetch): Ditto.
5018         (elmo-shimbun-update-overview): Use overview entity instead of
5019         shimbun header to lookup id by references.
5020         (elmo-map-folder-list-message-locations): Use not only headers but
5021         also overviews to list locations.
5022
5023 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5024
5025         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5026         msgdb path.
5027
5028         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5029
5030 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5031
5032         * elmo-util.el (elmo-read-search-condition-internal): Give default
5033         value for date.
5034
5035 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5036
5037         * elmo-util.el (elmo-condition-parse-search-value): Accept
5038         YYYY-MM-DD format to search.
5039         * elmo-date.el (elmo-date-get-datevec): Likewise.
5040
5041 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5042
5043         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5044         debugging code.
5045
5046 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5047
5048         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5049         from t.
5050
5051         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5052
5053         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5054         case from `elmo-folder-exists-p'.
5055         (elmo-folder-exists-p): Removed.
5056         (elmo-folder-creatable-p) Ditto.
5057
5058         * elmo-net.el (elmo-folder-create): Defined.
5059         (elmo-folder-create-unplugged): New function.
5060         (elmo-folder-exists-p): Changed default value to nil from t.
5061
5062         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5063         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5064
5065         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5066         `elmo-create-folder-dop' and append queue
5067         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5068         (elmo-folder-create-dop-delayed): New function.
5069
5070         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5071
5072         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5073
5074         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5075         (elmo-folder-writable-p) : Ditto.
5076
5077         * elmo-version.el (elmo-version): Up to 2.9.9.
5078
5079 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5080
5081         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5082         `elmo-message-use-cache-p' returns nil.
5083         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5084         (ignore cache file and refer the substance in local folders)
5085
5086 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5087
5088         * elmo-version.el (elmo-version): Up to 2.9.8.
5089
5090 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5091
5092         * elmo-version.el (elmo-version): Up to 2.9.7.
5093
5094         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5095
5096 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5097
5098         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5099
5100 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5101
5102         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5103         from --early.
5104         (elmo-map-folder-list-message-locations): Reverse location list.
5105
5106 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5107
5108         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5109
5110 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5111
5112         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5113         as a key.
5114         (elmo-nntp-folder-list-subfolders): Follow the change above.
5115
5116 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5117
5118         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5119         name if authentication type is specified.
5120
5121 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5122
5123         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5124         variable.
5125         (elmo-default-nntp-stream-type): Ditto.
5126         (elmo-default-pop3-stream-type): Ditto.
5127
5128 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5129
5130         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5131
5132 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5133
5134         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5135         elmo-vars.el.
5136         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5137
5138         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5139         (elmo-maildir-folder-path): Ditto.
5140         (elmo-maildir-list): Ditto (abolished).
5141
5142 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5143
5144         * elmo-version.el (elmo-version): Up to 2.9.6.
5145
5146 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5147
5148         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5149         (elmo-maildir-folder-path): Ditto.
5150         (elmo-msgdb-directory): Ditto.
5151         (elmo-passwd-life-time): Ditto.
5152         (elmo-msgdb-extra-fields): Ditto.
5153         (elmo-enable-disconnected-operation): Ditto.
5154
5155 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5156
5157         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5158         other choices.
5159         (elmo-pop3-default-authenticate-type): Ditto.
5160
5161 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5162
5163         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5164         choices for custom.
5165         (elmo-pop3-default-authenticate-type): Ditto.
5166
5167 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5168
5169         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5170         mailbox to new-folder.
5171
5172 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5173
5174         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5175         less than new, set new as unread.
5176
5177         * elmo-util.el (elmo-string): Don't put text-property if nil.
5178
5179 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5180
5181         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5182         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5183
5184 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5185
5186         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5187         is nil on `completing-read'.
5188
5189 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5190
5191         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5192         for namespace part.
5193         (elmo-imap4-parse-namespace-subr): Ditto.
5194         (elmo-folder-list-subfolders): Append a delimiter when the specified
5195         folder path is a root with namespace and does not end with delimiter.
5196
5197 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5198
5199         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5200         was used.
5201
5202 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5203
5204         * elmo-util.el (elmo-save-buffer): The first argument of message
5205         is a format control string.
5206
5207 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5208
5209         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5210         `elmo-folder-diff').
5211         (elmo-diff-unread): Likewise.
5212
5213 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5214
5215         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5216         is t on `completing-read'.
5217
5218 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5219
5220         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5221         method of target folder with self mark-alist if MARK-ALIST is nil.
5222
5223 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5224
5225         * elmo-version.el (elmo-version): Up to 2.9.5.
5226
5227 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5228
5229         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5230         (elmo-dop-merge-funcs): Remove.
5231
5232 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5233
5234         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5235         Return t if PATH is directory, too.
5236         Use `dolist' instead of while loop.
5237
5238 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5239
5240         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5241         is deleted.
5242
5243 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5244
5245         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5246         return value to t.
5247         (elmo-folder-list-messages-unplugged): Return t if
5248         elmo-enable-disconnected-operation is nil.
5249
5250         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5251         `elmo-folder-list-messages-internal'.
5252
5253 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5254
5255         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5256         Change to looking-at `[23][0-9]+'.
5257         (elmo-network-initialize-session): Use 'error-msg'
5258         * elmo-net.el (elmo-network-open-session): Set unplugged
5259         if elmo-network-initialize-session returns 'elmo-open-err.
5260
5261 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5262
5263         * elmo-version.el (elmo-version): Up to 2.9.4.
5264
5265 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5266
5267         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5268         `elmo-folder-list-messages-internal'.
5269
5270 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5271
5272         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5273         (elmo-message-match-condition): New method.
5274         (elmo-folder-search-fast): New inline function.
5275         (elmo-msgdb-search): Removed.
5276
5277         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5278         target folder if it is unplugged.
5279         (elmo-folder-list-messages-internal): Return t if target folder is
5280         unplugged and itself is persistent; In this case, use list be
5281         searched already.
5282
5283         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5284         (elmo-msgdb-search-internal-primitive): Ditto.
5285         (elmo-msgdb-match-condition): New function.
5286         (elmo-msgdb-match-condition-primitive): Ditto.
5287
5288         * elmo-util.el (elmo-filter-condition-p): New macro.
5289
5290         * elmo-cache.el (elmo-folder-search): Removed.
5291
5292         * elmo-localdir.el (elmo-folder-search): Ditto.
5293
5294         * elmo-maildir.el (elmo-folder-search): Ditto.
5295
5296         * elmo-mark.el (elmo-folder-search): Ditto.
5297
5298         * elmo-nmz.el (elmo-folder-search): Ditto.
5299
5300         * elmo-sendlog.el (elmo-folder-search): Ditto.
5301
5302         * elmo-shimbun.el (elmo-folder-search): Ditto.
5303
5304         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5305         if folder is unplugged.
5306
5307         * elmo-nntp.el (elmo-folder-search): Likewise.
5308         (elmo-nntp-search-internal): New function.
5309
5310         * elmo-version.el (elmo-version): Up to 2.9.3.
5311
5312 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5313
5314         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5315
5316 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5317
5318         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5319
5320 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5321
5322         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5323
5324 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5325
5326         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5327         (elmo-map-folder-list-message-locations): Do drive letter conversion
5328         on Windows environment.
5329         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5330         (elmo-map-message-fetch): Ditto.
5331
5332 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5333
5334         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5335         (elmo-network-initialize-session): Ditto.
5336
5337 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5338
5339         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5340
5341         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5342
5343         * elmo-util.el (elmo-progress-clear): Ditto.
5344
5345         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5346         `DD-Mon-YYYY' type date.
5347
5348 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5349
5350         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5351         `elmo-date-make-sortable-string' instead of
5352         `timezone-make-date-sortable'.
5353
5354         * elmo-date.el (elmo-date-make-sortable-string): Use
5355         `timezone-make-time-string'.
5356
5357 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5358
5359         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5360
5361         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5362         `since'; Fix timezone.
5363
5364         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5365
5366         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5367
5368 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5369
5370         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5371
5372 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5373
5374         * elmo.el (elmo-generic-folder-append-messages): Make
5375         fetch-strategy with `use-cache' as 'maybe. Check return value of
5376         `elmo-message-fetch'.
5377         (elmo-message-fetch): Return return value of
5378         `elmo-message-fetch-with-cache-process'.
5379         (elmo-message-fetch-with-cache-process): Return non-nil if
5380         fetching was succeed. Load cache when fetching was failed and
5381         fetch-strategy-use-cache is 'maybe.
5382
5383         * elmo-util.el (elmo-file-cache-load): New function.
5384
5385         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5386         defun.
5387
5388         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5389         non-nil if fetching was succeed.
5390
5391         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5392
5393         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5394
5395         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5396         (elmo-message-fetch-with-cache-process): Likwise.
5397
5398         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5399
5400         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5401
5402         * elmo-version.el (elmo-version): Up to 2.9.2.
5403
5404 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5405
5406         * elmo.el (elmo-folder-delete): Delete msgdb path.
5407
5408         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5409
5410         * elmo-maildir.el (elmo-folder-delete): Ditto.
5411
5412         * elmo-localdir.el (elmo-folder-delete): Ditto.
5413
5414         * elmo-imap4.el (elmo-folder-delete): Ditto.
5415
5416 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5417
5418         * elmo.el (luna-define-class): Added `biff' slot.
5419
5420         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5421         (elmo-pop3-debug-inhibit-logging): Abolished.
5422         (elmo-network-close-session): Eliminated needless let.
5423         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5424         (elmo-pop3-send-command): Added `no-log' argument.
5425         (elmo-pop3-process-filter): Use `with-current-buffer'.
5426         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5427         if login failure.
5428         (elmo-pop3-auth-apop): Likewise.
5429         (elmo-network-authenticate-session): Likewise.
5430
5431         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5432         if biff folder.
5433
5434         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5435         string to determine protocol.
5436         (elmo-network-session-name-prefix): Abolished.
5437         (elmo-network-session-cache-key): Follow the change above.
5438         (elmo-network-open-session): Ditto.
5439
5440         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5441         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5442
5443         * elmo-version.el (elmo-version): Up to 2.9.1.
5444
5445         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5446         unmatch condition checking.
5447
5448         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5449         condition.
5450
5451 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5452
5453         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5454
5455 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5456
5457         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5458         test for while loop to execute at least one SEARCH command.
5459
5460 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5461
5462         * elmo-version.el (elmo-version): Up to 2.9.0.
5463
5464 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5465
5466         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5467         (elmo-archive-folder-path): Define.
5468         (elmo-folder-initialize): Setup `dir-name' slot.
5469         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5470         Use `dir-name' as prefix of each subfolders.
5471         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5472
5473 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5474
5475         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5476         (elmo-pipe-folder-list-target-messages): New internal function.
5477         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5478         `killed-list'.
5479         (elmo-pipe-folder-copied-list-load): New function.
5480         (elmo-pipe-folder-copied-list-save): Ditto.
5481         (elmo-folder-open-internal): Follow the change above.
5482         (elmo-folder-status): Fixed for copy.
5483
5484 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5485
5486         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5487
5488 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5489
5490         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5491         elmo-copy-file instead of elmo-add-name-to-file.
5492
5493         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5494
5495         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5496         "file://..." index.
5497
5498         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5499         of accept-process-output as 1.
5500         (elmo-pop3-read-contents): Ditto.
5501         (elmo-pop3-read-body): Ditto.
5502
5503 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5504
5505         * elmo-version.el (product-version-as-string): Remove define.
5506
5507 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5508
5509         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5510         (elmo-imap4-copy-messages): Chop number set using
5511         `elmo-imap4-number-set-chop-length'.
5512         (elmo-imap4-set-flag): Ditto.
5513         (elmo-imap4-search-internal-primitive): Ditto.
5514
5515 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5516
5517         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5518         `elmo-folder-make-temp-dir'
5519
5520         * elmo-vars.el (elmo-cache-directory): New variable.
5521         (elmo-cache-dir): Abolished.
5522         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5523
5524         * elmo-version.el (elmo-version): Up to 2.7.7.
5525
5526 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5527
5528         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5529         defcustom; Set default value as t.
5530
5531 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5532
5533         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5534         (ldap-search-program-arguments): Changed default value.
5535         (ldap-search-basic): Accept exit status 4.
5536         (ldap/field-body): Parse options.
5537         (ldap/collect-field): Ditto.
5538         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5539
5540         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5541         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5542         (elmo-imap4-accept-ok): Ditto.
5543         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5544         'notify-bye, only BYE error is reported.
5545         (elmo-folder-exists-p-plugged): Set no-error argument of
5546         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5547
5548         * elmo.el (elmo-imap4-bye-error): Changed message.
5549
5550         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5551         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5552         queues (It causes infinite loop).
5553
5554 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5555
5556         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5557         (RECENT UNSEEN MESSAGES) extension.
5558
5559 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5560
5561         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5562         Check number of overview fields.
5563
5564 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5565
5566         * elmo.el (elmo-folder-confirm-appends): Changed message.
5567         (elmo-folder-confirm-appends): Ditto.
5568
5569         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5570         `with-temp-buffer'.
5571         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5572
5573 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5574
5575         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5576         of elmo-folder-update-threshold is nil, which can be set by
5577         wl-summary-update-confirm-threshold.
5578
5579 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5580
5581         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5582         (elmo-nmz-index-alias-alist): Ditto.
5583         (elmo-map-folder-list-message-locations): Follow the change above.
5584
5585 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5586
5587         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5588
5589         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5590
5591         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5592
5593         * elmo-util.el (elmo-read): Ditto.
5594         (elmo-display-error): Ditto.
5595
5596         * elmo-vars.el (elmo-date-match): Ditto.
5597
5598         * pldap.el (ldap-coding-system): Ditto.
5599
5600         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5601         `elmo-inhibit-number-mapping' as nil.
5602
5603 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5604
5605         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5606         space delimiter for list response.
5607
5608 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5609
5610         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5611
5612 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5613
5614         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5615         (elmo-map-message-fetch): Fix.
5616         * elmo-map.el (elmo-folder-status): Fix for killed.
5617
5618 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5619
5620         * elmo-sendlog.el: New file.
5621         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5622
5623 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5624
5625         * acap.el (acap-logging-out): New buffer local variable.
5626         (acap-close): Set it.
5627         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5628         an error.
5629
5630 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5631
5632         * acap.el (acap-response-bye-p): New function.
5633         (acap-response-bye-message): Ditto.
5634         (acap-wait-for-response): If bye response is received, cause an error.
5635         (acap-parse-response): Make bye response when 'Bye' is received.
5636
5637 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5638
5639         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5640
5641 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5642
5643         * elmo-util.el (elmo-copy-file): Added argument
5644         `ok-if-already-exists'.
5645         (elmo-copy-file): Fixed typo.
5646
5647 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5648
5649         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5650
5651 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5652
5653         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5654
5655 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5656
5657         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5658         to killed-list.
5659
5660 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5661
5662         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5663         (elmo-folder-initialize): Fix for `copy'.
5664         (elmo-pipe-drain): Ditto.
5665         (elmo-folder-open-internal): Ditto.
5666         (elmo-folder-newsgroups): Fix.
5667
5668 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5669
5670         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5671         for each message.
5672
5673         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5674         recent value is returned from imap folder.
5675
5676         * elmo.el (elmo-folder-newsgroups): New generic function.
5677
5678         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5679         (elmo-folder-initialize): Set it.
5680         (elmo-folder-expand-msgdb-path): Use it.
5681         (elmo-folder-newsgroups): Define.
5682
5683         * elmo-filter.el (elmo-folder-newsgroups): Define.
5684
5685         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5686
5687         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5688
5689         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5690
5691 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5692
5693         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
5694         user option.
5695         (elmo-shimbun-header-extra-field): New inline function.
5696         (elmo-shimbun-header-set-extra-field): Ditto.
5697         (elmo-shimbun-folder-header-hash-setup): Ditto.
5698         (elmo-shimbun-update-overview): Ditto.
5699         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
5700         (elmo-shimbun-folder-setup): Use
5701         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
5702         (elmo-shimbun-get-headers): Ditto.
5703         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
5704         Insert `X-Shimbun-Id:' header if extra field is set.
5705         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
5706         field's value instead of `shimbun-header-id'.
5707
5708         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
5709         inline function.
5710         (elmo-msgdb-overview-entity-set-date): Ditto.
5711         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
5712
5713 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
5714
5715         * mmimap.el (mmimap-entity-section): Changed body node number from
5716         "0" to "1".
5717
5718 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5719
5720         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5721         `elmo-folder-delete-messages'.
5722
5723         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5724         (elmo-folder-initialize): Changed to expand alias into index path.
5725
5726         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5727         `elmo-mime-insert-header-from-buffer' with 6th arg
5728         `sorted-fields'.
5729
5730 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5731
5732         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5733
5734         * elmo.el (elmo-diff-new): New inline function.
5735         (elmo-diff-unread): Ditto.
5736         (elmo-diff-all): Ditto.
5737
5738         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5739         value from responseb.
5740         (elmo-imap4-folder-diff-plugged): Ditto.
5741         (elmo-imap4-server-diff-async): Added recent argument.
5742         (elmo-server-diff-async): Ditto.
5743         (elmo-imap4-folder-diff-plugged): Ditto.
5744
5745         * elmo-version.el (elmo-version): Up to 2.7.6.
5746
5747 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5748
5749         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5750         in quoted-stirng.
5751
5752 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
5753
5754         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5755
5756         * elmo-imap4.el (elmo-folder-initialize): Ditto.
5757
5758         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5759
5760         * elmo-multi.el (elmo-folder-initialize): Ditto.
5761
5762         * elmo-util.el (elmo-parse-token): New function.
5763         (elmo-parse-prefixed-element): Ditto.
5764
5765 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
5766
5767         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5768         delete process.
5769         (elmo-imap4-accept-ok): Ditto.
5770
5771 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5772
5773         * mmimap.el (mime-imap-entity-header-string): Don't check first
5774         element of node-id is `0' (Follow last change).
5775
5776 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5777
5778         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5779         assigned irregular node-id to nested multipart section.
5780         (initialize-instance): Followed above change.
5781
5782 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5783
5784         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5785         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5786         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5787         `elmo-shimbun-get-headers');
5788         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5789         visible article on summary exists in headers).
5790         (elmo-map-message-fetch): Cause an error when folder is unplugged.
5791
5792 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5793
5794         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5795         definition.
5796
5797 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
5798
5799         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5800
5801 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5802
5803         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
5804         header separator into loop condition.
5805
5806 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5807
5808         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
5809         Return duplicate folder if it has subfolder.
5810
5811 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
5812
5813         * elmo.el (elmo-make-folder): Add folder name error check.
5814
5815         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
5816         (elmo-nntp-encode-group-string): New inline function.
5817         (elmo-nntp-decode-group-string): Ditto.
5818         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
5819         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
5820         Use `not' instead of `null';
5821         Use elmo-nntp-decode-group-string.
5822
5823         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
5824
5825         * elmo-version.el (elmo-version): Up to 2.7.5.
5826
5827 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5828
5829         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
5830         Hide progress gauge if `elmo-folder-move-messages' exits
5831         nonlocally.
5832
5833 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
5834
5835         * elmo-imap4.el (elmo-folder-initialize): Use
5836         `elmo-imap4-encode-folder-string' for folder name.
5837
5838 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5839
5840         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
5841         `done'.
5842
5843 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5844
5845         * elmo-util.el (elmo-progress-counter-alist): New internal
5846         variable.
5847         (elmo-progress-counter-value): New macro.
5848         (elmo-progress-counter-all-value): Ditto.
5849         (elmo-progress-counter-format): Ditto.
5850         (elmo-progress-counter-set-value): Ditto.
5851         (elmo-progress-set): New function.
5852         (elmo-progress-clear): Ditto.
5853         (elmo-progress-notify): Ditto.
5854
5855         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
5856         counter.
5857
5858         * elmo.el (elmo-generic-folder-append-messages): Call
5859         `elmo-progress-notify'.
5860         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
5861
5862         * elmo-archive.el (elmo-folder-append-messages): Call
5863         `elmo-progress-notify'.
5864
5865         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
5866
5867         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
5868
5869         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
5870
5871 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
5872
5873         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
5874         'Create'.
5875         (elmo-message-encache-dop): Added argument `read'.
5876
5877         * elmo-shimbun.el (elmo-message-encache): Ditto.
5878
5879         * elmo-net.el (elmo-message-encache): Ditto.
5880
5881         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
5882         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
5883         elmo-imap4-seen-messages.
5884         (elmo-folder-msgdb-create-plugged): Initialize
5885         elmo-imap4-seen-messages;
5886         Set seen mark on elmo-imap4-seen-messages.
5887
5888         * elmo-pipe.el (elmo-folder-message-file-p): Define.
5889
5890         * elmo.el (elmo-generic-folder-append-messages): Check return value of
5891         elmo-folder-append-buffer.
5892         (elmo-folder-encache): Added optional argument `read'.
5893         (elmo-message-encache): Ditto.
5894
5895         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
5896
5897         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
5898
5899         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
5900         if append buffer content succeds.
5901
5902 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
5903
5904         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
5905         elmo-display-progress.
5906
5907         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
5908         Set 4th argument of mime-display-message.
5909         (elmo-mime-display-as-is): Ditto.
5910
5911 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
5912
5913         * elmo-nmz.el (toplevel): Require 'mime-edit.
5914         (elmo-nmz-content-type-alist): Abolished.
5915         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
5916         content is not a message.
5917         (elmo-map-message-fetch): Changed behavior exept for message content;
5918         Detect mime-charset automatically, Use `mime-find-file-type' to detect
5919         content-type, Add From: and Subject: field.
5920
5921 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5922
5923         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
5924         (elmo-map-message-fetch): Add `Content-Type' field if contents is
5925         not a message.
5926
5927 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5928
5929         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
5930         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
5931
5932         * elmo-archive.el (elmo-folder-writable-p): Defined.
5933
5934         * elmo-cache.el (elmo-folder-writable-p): Ditto.
5935
5936         * elmo-filter.el (elmo-folder-writable-p): Ditto.
5937
5938         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
5939
5940         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
5941
5942         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
5943
5944         * elmo-mark.el (elmo-folder-writable-p): Ditto.
5945
5946         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
5947
5948         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
5949
5950 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
5951
5952         * elmo-util.el (elmo-address-quote-specials): New function;
5953         Renamed from `wl-address-quote-specials'.
5954
5955 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5956
5957         * elmo-version.el (elmo-version): Up to 2.7.4.
5958
5959 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
5960
5961         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
5962
5963 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
5964
5965         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
5966         both compile-time and run-time to avoid byte-compile warning.
5967
5968 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
5969
5970         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
5971
5972 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5973
5974         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
5975         option.
5976         (elmo-mime-display-as-is-internal): Use it.
5977
5978         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
5979         if `read-passwd' is not defined.
5980
5981 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
5982
5983         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
5984         by original number.
5985         (elmo-folder-status): Call `elmo-folder-open-internal';
5986         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
5987         (elmo-folder-close-internal): Set location-alist as nil.
5988         (elmo-folder-clear): Define.
5989         (elmo-folder-check): Don't set location-alist as nil.
5990
5991         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
5992
5993 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
5994
5995         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
5996         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
5997
5998         * mmimap.el (mime-imap-entity::requested): New slot.
5999         (mime-imap-location-fetch-entity-p): New generic function.
6000         (mime-decode-parameters): Define using `defun-maybe'.
6001         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6002         content-type structure.
6003         (mime-entity-body): Return empty body if
6004         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6005
6006         * elmo.el (elmo-message-displaying): New variable.
6007
6008         * elmo-mime.el (elmo-mime-message-display): Bind
6009         elmo-message-displaying as t.
6010
6011         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6012
6013 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6014
6015         * acap.el (acap-open): erase buffer before starting network process.
6016         (acap-store): Rewrite.
6017
6018 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6019
6020         * elmo-imap4.el (elmo-imap4-default-mailbox,
6021         elmo-imap4-default-server
6022         elmo-imap4-default-authenticate-type,
6023         elmo-imap4-default-user,
6024         elmo-imap4-default-port,
6025         elmo-imap4-default-stream-type,
6026         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6027
6028         * elmo-pop3.el (elmo-pop3-default-user,
6029         elmo-pop3-default-server,
6030         elmo-pop3-default-authenticate-type,
6031         elmo-pop3-default-port,
6032         elmo-pop3-default-stream-type,
6033         elmo-pop3-stream-type-alist): Ditto.
6034
6035         * elmo-nntp.el (elmo-nntp-default-server,
6036         elmo-nntp-default-user,
6037         elmo-nntp-default-port,
6038         elmo-nntp-default-stream-type,
6039         elmo-nntp-stream-type-alist): Ditto.
6040
6041         * elmo-vars.el: Follow changes above.
6042         (elmo-setting): New custom group; added 'elmo-setting group to
6043         above variables.
6044
6045         * elmo-version.el (elmo-version): Up to 2.7.3.
6046
6047         * acap.el (acap-parse-response): Don't delete process when BYE
6048         response (It causes hang-up on slow network environment).
6049         (toplevel): Added comment.
6050
6051 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6052
6053         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6054
6055         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6056         parsing NIL.
6057         (acap-parse-return-metadata): Ditto.
6058
6059         * slp.el: New file.
6060         (toplevel): Fixed typo.
6061
6062         * acap.el: New file.
6063         (acap-network-stream-open): Show "Connecting..." message.
6064         (acap-parse-response): Fixed problem for BYE untagged response.
6065         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6066         (toplevel): Added tiny comments.
6067
6068 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6069
6070         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6071         space delimiter for uidl response.
6072
6073 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6074
6075         * elmo-vars.el (elmo-use-semi): Eliminated.
6076
6077         * elmo-util.el (elmo-string-assoc-all): New function.
6078
6079 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6080
6081         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6082         property 'mime-preview-situation for `mime-preview-quit'.
6083
6084 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6085
6086         * elmo.el (elmo-message-fetch-with-cache-process): Call
6087         elmo-message-fetch-internal instead of causing an error when fetch
6088         strategy is 'entire but only 'section cache is available.
6089
6090 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6091
6092         * elmo-version.el (elmo-version): Up to 2.7.2.
6093
6094         * elmo.el (elmo-generic-folder-append-messages): Make
6095         fetch-strategy with `use-cache'.
6096
6097         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6098         (elmo-dop-queue-method-name): New macro.
6099
6100 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6101
6102         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6103         unbalanced parenthesis.
6104
6105 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6106
6107         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6108
6109 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6110
6111         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6112         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6113
6114 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6115
6116         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6117         local variables.
6118
6119 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6120
6121         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6122         (elmo-message-use-cache-p): Define.
6123         (elmo-folder-msgdb-create): Treat cache.
6124
6125 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6126
6127         * elmo-nntp.el (elmo-network-initialize-session): Call
6128         `elmo-nntp-send-mode-reader'.
6129         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6130
6131 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6132
6133         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6134         alist.
6135         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6136         assoc.
6137
6138         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6139         for `elmo-plugged-p'.
6140         (elmo-open-network-stream): Fixed stream-type argument.
6141
6142 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6143
6144         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6145         unknown archive type is specified.
6146
6147 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6148
6149         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6150
6151         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6152         while loading msgdb.
6153
6154         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6155         (elmo-folder-open-internal): Rewrite.
6156
6157 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6158
6159         * elmo-mime.el (elmo-mime-display-as-is-internal):
6160         Adjust buffer-multibyte status.
6161
6162 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6163
6164         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6165         of elmo-condition-find-key.
6166
6167         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6168         (elmo-condition-in-msgdb-p): Ditto.
6169         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6170         argument.
6171
6172 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6173
6174         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6175
6176 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6177
6178         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6179         label for elmo-display-progress.
6180
6181 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6182
6183         * elmo.el (elmo-folder-clear): New method.
6184         (elmo-folder-clear): Define.
6185         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6186
6187         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6188         (elmo-folder-clear): Define.
6189
6190         * elmo-map.el (elmo-folder-clear): Define.
6191
6192         * elmo-version.el (elmo-version): Up to 2.7.1.
6193
6194 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6195
6196         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6197         updates.
6198
6199 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6200
6201         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6202         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6203
6204 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6205
6206         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6207
6208         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6209         and re-written.
6210
6211         * elmo-imap4.el (elmo-folder-initialize): Use
6212         elmo-get-network-stream-type.
6213
6214         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6215
6216         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6217
6218 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6219
6220         * elmo.el (elmo-message-encache): Set unread argument for
6221         elmo-message-fetch.
6222
6223         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6224
6225         * elmo.el (elmo-net-port-info): New method.
6226
6227         * elmo-shimbun.el (elmo-net-port-info): Define.
6228         (elmo-message-encache): Ditto.
6229
6230         * elmo-net.el (elmo-net-port-info): Define as method.
6231
6232         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6233         unplugged status when elmo-enable-disconnected-operation is t.
6234
6235         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6236         of spool folder before checking new number.
6237
6238 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6239
6240         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6241         (elmo-network-setup-session): Ditto.
6242         (elmo-message-fetch-plugged): Ditto.
6243         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6244         (elmo-network-initialize-session): Ditto.
6245         (elmo-pop3-read-response): Abolish 3rd argument.
6246         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6247         (elmo-pop3-read-contents): Ditto.
6248         (elmo-pop3-read-body): Ditto.
6249         (elmo-folder-status): Call elmo-folder-close.
6250         (elmo-pop3-lock): Abolish.
6251         (elmo-pop3-unlock): Ditto.
6252         (elmo-pop3-locked-p): Ditto.
6253         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6254
6255 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6256
6257         * elmo-version.el (elmo-version): Up to 2.7.0.
6258
6259         * elmo-pop3.el (elmo-pop3-debug): New variable.
6260         (elmo-pop3-debug-inhibit-logging): Ditto.
6261         (elmo-pop3-debug): New function.
6262         (elmo-pop3-send-command): Call elmo-pop3-debug.
6263         (elmo-pop3-read-response): Added keep-lock optional argument;
6264         Don't unlock if keep-lock is non-nil.
6265         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6266         (elmo-network-authenticate-session): Bind
6267         elmo-pop3-debug-inhibit-logging as t.
6268         (elmo-network-setup-session): Call elmo-pop3-read-response with
6269         keep-lock argument.
6270         (elmo-pop3-read-msg): Ditto.
6271         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6272         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6273         (elmo-network-initialize-session): Call elmo-pop3-lock.
6274         (elmo-folder-close-internal): Don't clear location-alist slot.
6275         (elmo-folder-check): Clear location-alist slot.
6276
6277 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6278
6279         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6280         (elmo-pop3-send-command): Call elmo-pop3-lock.
6281         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6282         (elmo-pop3-read-contents): Ditto.
6283         (elmo-pop3-lock): New function.
6284         (elmo-pop3-unlock): Ditto.
6285         (elmo-pop3-locked-p): Ditto.
6286         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6287         returns t.
6288
6289 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6290
6291         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6292
6293         * elmo-util.el (elmo-file-field-primitive-condition-match):
6294         New inline function (Don't fetch file content if "first" or "last").
6295         (elmo-file-field-condition-match): Use
6296         elmo-file-field-primitive-condition-match.
6297
6298         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6299         "first".
6300
6301         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6302         (elmo-message-fetch-plugged): Fixed.
6303
6304         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6305
6306 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6307
6308         * elmo.el (elmo-folder-move-messages): Bind
6309         elmo-inhibit-display-retrieval-progress as t while moving messages.
6310
6311         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6312         New variable.
6313         (elmo-inhibit-display-retrieval-progress): Ditto.
6314
6315         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6316         for retrieval progress;
6317         Don't display progress when total buffer size is smaller than
6318         elmo-display-retrieval-progress-threshold.
6319         (elmo-message-fetch-plugged): Don't display progress when
6320         elmo-inhibit-display-retrieval-progress is non-nil.
6321
6322         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6323         for retrieval progress;
6324         Don't display progress when literal size is smaller than
6325         elmo-display-retrieval-progress-threshold.
6326         (elmo-imap4-message-fetch): Don't display progress when
6327         elmo-inhibit-display-retrieval-progress is non-nil.
6328
6329 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6330
6331         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6332         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6333         (elmo-imap4-message-fetch): Likewise.
6334
6335         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6336         (elmo-shimbun-index-range-alist): Ditto.
6337         (elmo-shimbun-use-entire-index): Abolish.
6338         (shimbun-mua-use-entire-index): Ditto.
6339         (elmo-shimbun-folder): Added new slot `range'.
6340         (elmo-folder-initialize): Setup slot `range'.
6341
6342 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6343
6344         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6345         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6346         (elmo-shimbun-get-headers): Use return value of
6347         `shimbun-article-expiration-days'.
6348         (elmo-folder-close-internal): Clean up last-check slot.
6349
6350         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6351         (elmo-pop3-total-size): New variable.
6352         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6353
6354         * elmo.el (elmo-folder-reserve-status-p): New method.
6355
6356         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6357         (elmo-shimbun-use-entire-index): New user option.
6358         (shimbun-elmo-mua): New class.
6359         (shimbun-mua-search-id): Define.
6360         (shimbun-mua-use-entire-index): Ditto.
6361         (elmo-shimbun-folder:last-check): New slot.
6362         (elmo-shimbun-headers-cache-header-list): Abolish.
6363         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6364         (elmo-shimbun-headers-cache-header-hash): Ditto.
6365         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6366         (elmo-shimbun-headers-cache-last-check): Ditto.
6367         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6368         (elmo-shimbun-headers-check-p): Rewrite.
6369         (elmo-shimbun-msgdb-to-headers): New function.
6370         (elmo-shimbun-get-headers): Rewrite.
6371         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6372         (elmo-folder-open-internal): Get headers only if
6373         `elmo-shimbun-headers-check-p' is non-nil.
6374         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6375         is non-nil.
6376         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6377         (elmo-quit): Removed.
6378
6379         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6380         function.
6381         (elmo-msgdb-overview-entity-set-extra): Ditto.
6382         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6383
6384         * elmo-map.el (elmo-folder-status): Don't call
6385         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6386         is non-nil.
6387
6388 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6389
6390         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6391         of `elmo-msgdb-search-internal-primitive' when condition's car is
6392         `and' or `or'.
6393
6394 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6395
6396         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6397
6398 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6399
6400         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6401         call `elmo-pipe-drain'.
6402
6403 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6404
6405         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6406         typo. (elmo-cache-folder -> elmo-mark-folder)
6407
6408 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6409
6410         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6411         `elmo-message-fetch'.
6412
6413 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6414
6415         * elmo-net.el (elmo-message-encache): Fixed typo.
6416         (elmo-message-fetch-unplugged): Changed call
6417         `elmo-message-fetch-internal' without argument `outbuf'.
6418
6419 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6420
6421         * elmo.el (elmo-message-encache): Define as generic function.
6422         (elmo-message-fetch-field): New generic function.
6423         (elmo-message-fetch-with-cache-process): Cause an error when
6424         fetch strategy is 'entire but only 'section cache is available.
6425         (toplevel): Fixed nmz folder definition.
6426
6427         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6428         (elmo-msgdb-resume-list-filename): Ditto.
6429         (elmo-queue-filename): Ditto.
6430         (elmo-enable-disconnected-operation): Changed default value to t.
6431
6432         * elmo-util.el (elmo-cache-path-section-p): New function.
6433         (elmo-file-cache-get): Use it.
6434         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6435         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6436         (elmo-dop-queue-save): Ditto.
6437
6438         * elmo-net.el (elmo-folder-status-unplugged): Call
6439         elmo-folder-status-dop.
6440         (elmo-folder-list-messages-unplugged): Implemented.
6441         (elmo-folder-delete-messages-unplugged): Define.
6442         (elmo-folder-msgdb-create): Define.
6443         (elmo-folder-msgdb-create-unplugged): Define.
6444         (elmo-folder-mark-as-read-unplugged): Ditto.
6445         (elmo-folder-unmark-read-unplugged): Ditto.
6446         (elmo-folder-mark-as-important-unplugged): Ditto.
6447         (elmo-folder-unmark-important-unplugged): Ditto.
6448         (elmo-message-encache): Ditto.
6449
6450         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6451         (elmo-dop-queue-save): Ditto.
6452
6453         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6454         `elmo-folder-msgdb-create'.
6455         (elmo-folder-append-buffer): Implemented unplugged operation.
6456         (elmo-folder-append-messages): Call parent method in unplugged status.
6457         (elmo-message-fetch-unplugged): Removed definition.
6458         (elmo-message-fetch-field): Implemented.
6459
6460         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6461         (elmo-dop-folder): Removed variable definition.
6462         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6463         (elmo-dop-queue-flush): Implemented.
6464         (elmo-dop-queue-merge): Removed definition (TODO).
6465         (elmo-dop-spool-folder): New function.
6466         (elmo-dop-spool-folder-append-buffer): Ditto.
6467         (elmo-dop-spool-folder-list-messages): Ditto.
6468         (elmo-dop-list-deleting-messages): Ditto.
6469         (elmo-folder-append-buffer-dop): Ditto.
6470         (elmo-folder-delete-messages-dop): Ditto.
6471         (elmo-message-encache-dop): New inline function.
6472         (elmo-create-folder-dop): Ditto.
6473         (elmo-folder-mark-as-read-dop): Ditto.
6474         (elmo-folder-unmark-read-dop): Ditto.
6475         (elmo-folder-mark-as-important-dop): Ditto.
6476         (elmo-folder-unmark-important-dop): Ditto.
6477         (elmo-folder-status-dop): Fixed.
6478         (elmo-folder-append-buffer-dop-delayed): New function.
6479         (elmo-folder-delete-messages-dop-delayed): Ditto.
6480         (elmo-dop-msgdb): Ditto.
6481
6482 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6483
6484         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6485
6486 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6487
6488         * elmo.el (elmo-folder-move-messages): Fixed problem when
6489         `dst-folder' is 'null.
6490
6491 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6492
6493         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6494         instead of current mark.
6495
6496         * elmo-multi.el (elmo-folder-list-importants-internal): No
6497         operation if importants is not list.
6498
6499         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6500         Return t if importants is not list.
6501
6502         * elmo-map.el (elmo-map-folder-list-importants): Define.
6503         (elmo-folder-list-importants-internal): Check return value of
6504         `elmo-map-folder-list-importants-internal'.
6505
6506         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6507
6508         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6509
6510         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6511
6512         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6513
6514 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6515
6516         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6517         (Patch is provided by <kita@coe.nttdata.co.jp>).
6518
6519 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6520
6521         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6522         mark folder.
6523
6524 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6525
6526         * elmo.el (elmo-message-fetch): Define.
6527         (elmo-message-fetch-with-cache-process): New generic method.
6528         (elmo-message-fetch-internal): New generic method.
6529         (elmo-folder-synchronize):
6530
6531         * elmo-archive.el (elmo-message-fetch-internal): Define.
6532         (elmo-message-fetch): Eliminated.
6533
6534         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6535         (elmo-message-fetch): Eliminated.
6536
6537         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6538         argument OUTBUF.
6539         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6540
6541         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6542         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6543
6544         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6545         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6546
6547         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6548
6549         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6550
6551         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6552
6553         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6554         (elmo-message-fetch-unplugged): New generic method.
6555         (elmo-message-fetch-internal): Remove cache process (Renamed from
6556         `elmo-message-fetch').
6557
6558         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6559         (elmo-message-fetch): Eliminated.
6560         (elmo-message-fetch-unplugged): Ditto.
6561
6562         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6563
6564 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6565
6566         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6567         of `to-be-deleted' from number-alist to number-list.
6568
6569 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6570
6571         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6572         (elmo-folder-mark-as-important): Ditto.
6573
6574 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6575
6576         * elmo.el (elmo-folder): Added process-duplicates slot.
6577
6578         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6579         (elmo-folder-unmark-read): Ditto.
6580         (elmo-folder-unmark-important): Ditto.
6581         (elmo-folder-mark-as-important): Ditto.
6582
6583         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6584         duplicated message processing.
6585
6586         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6587
6588 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6589
6590         * elmo-util.el (elmo-list-subdirectories-1): New function.
6591         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6592         (elmo-mapcar-list-of-list): New function.
6593
6594         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6595         `elmo-mapcar-list-of-list' instead of `mapcar'.
6596
6597         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6598
6599         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6600         `elmo-have-link-count'. Return the fully qualified folder name.
6601
6602 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6603
6604         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6605         (elmo-shimbun-headers-cache): New internal variable.
6606         (elmo-shimbun-headers-cache-header-list): New inline function.
6607         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6608         (elmo-shimbun-headers-cache-header-hash): Ditto.
6609         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6610         (elmo-shimbun-headers-cache-last-check): Ditto.
6611         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6612         (elmo-shimbun-lapse-seconds): Ditto.
6613         (elmo-shimbun-headers-cache-check-p): Ditto.
6614         (elmo-shimbun-get-headers): New function.
6615         (elmo-folder-open-internal): Call it.
6616         (elmo-quit): Define (Clear headers-cache).
6617
6618 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6619
6620         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6621
6622         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6623         (elmo-msgdb-flist-save): Ditto.
6624
6625         * elmo-shimbun.el (elmo-folder-list-subfolders):
6626         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6627         (elmo-folder-exists-p): Ditto.
6628
6629         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6630         argument for `shimbun-header-insert'.
6631
6632 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6633
6634         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6635         at first time.
6636
6637         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6638         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6639
6640 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6641
6642         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6643         (elmo-folder-plugged-p): Define.
6644         (elmo-folder-set-plugged): Ditto.
6645         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6646         (elmo-folder-list-messages-internal): Return t if unplugged.
6647         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6648
6649         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6650         when elmo-folder-list-messages-internal method of children returns t.
6651
6652         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6653         pair is nil.
6654         (elmo-folder-open-internal): Don't update if unplugged status.
6655
6656 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6657
6658         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6659         new message.
6660
6661 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6662
6663         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6664
6665         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6666         saving.
6667
6668 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6669
6670         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6671
6672         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6673         (elmo-folder-open-internal): Set up headers slot.
6674         (elmo-folder-check): Call elmo-folder-close-internal and
6675         elmo-folder-open-internal.
6676         (elmo-folder-close-internal): Clean up headers slot.
6677
6678 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6679
6680         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6681         exactly folder list.
6682         (elmo-folder-append-messages): Fixed append archive with prefix.
6683
6684         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6685         make temp files with start-number.
6686
6687         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6688
6689 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6690
6691         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
6692         argument `visible-only'.
6693         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
6694         instead of `if'.
6695
6696         * elmo-pop3.el (elmo-folder-open-internal): Check
6697         `elmo-inhibit-number-mapping' is non-nil.
6698
6699         * elmo-pipe.el (elmo-folder-status): Fixed.
6700
6701 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
6702
6703         * elmo.el (elmo-dop-queue-flush): Added autload setting.
6704
6705         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
6706         (elmo-folder-open-internal): Setup `header-hash' slot.
6707         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
6708         information.
6709         (elmo-map-message-fetch): Ditto.
6710
6711 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
6712
6713         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6714         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6715         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6716         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6717
6718         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6719
6720 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
6721
6722         * sb-airs.el: Added footer.
6723
6724         * shimbun.el (shimbun-article): Define as luna-method.
6725
6726         * sb-tcup.el: New file.
6727
6728         * sb-airs.el (toplevel): Require 'sb-mhonarc.
6729         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6730
6731 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
6732
6733         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6734         (shimbun-get-headers): Ditto.
6735
6736         * elmo.el: Moved obsolete variable definitions from
6737         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6738
6739         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6740         groups.
6741
6742         * shimbun.el: New file.
6743
6744         * elmo-shimbun.el: New file.
6745
6746         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6747         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6748         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6749         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6750
6751 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
6752
6753         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6754         hierarchy is t.
6755
6756 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
6757
6758         * elmo.el (elmo-folder-msgdb): Define as macro.
6759         (elmo-folder-open): Added argument `load-msgdb'.
6760         (elmo-generic-folder-open): Ditto.
6761         (elmo-folder-encache): New function.
6762
6763         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6764
6765         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6766
6767         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6768         Eliminated argument FOLDER and added argument MSGDB.
6769         (elmo-dop-queue-load): Moved from elmo-dop.el.
6770         (elmo-dop-queue-save): Ditto.
6771
6772         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6773
6774         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6775
6776         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6777         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6778         (elmo-filter-folder-list-importants-internal): Ditto.
6779
6780         * elmo-map.el (elmo-folder-pack-number): Ditto.
6781
6782         * elmo-mime.el (elmo-mime-message-display): Ditto.
6783
6784         * elmo.el (elmo-generic-folder-commit): Ditto.
6785         (elmo-folder-list-unreads): Ditto.
6786         (elmo-folder-list-importants): Ditto.
6787         (elmo-generic-folder-commit): Ditto.
6788         (elmo-message-set-mark): Ditto.
6789         (elmo-generic-folder-append-msgdb): Ditto.
6790         (elmo-folder-synchronize): Ditto.
6791         (elmo-folder-messages): Ditto.
6792         (elmo-init): Call elmo-dop-queue-load.
6793         (elmo-folder-list-messages): Ditto.
6794
6795         * elmo-nntp.el (elmo-folder-update-number): Ditto.
6796         (elmo-nntp-folder-process-crosspost): Ditto.
6797         (elmo-folder-list-unreads-internal): Ditto.
6798
6799         * elmo-dop.el: Removed old functions.
6800
6801 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
6802
6803         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
6804         `folder' to `msgdb'.
6805
6806 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
6807
6808         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
6809         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
6810
6811         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
6812         case-fold-search.
6813
6814 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
6815
6816         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
6817         defined.
6818
6819         * mmimap.el (toplevel): Require 'mime-parse and 'static.
6820         (mmimap-parse-parameters-from-list): Define as alias for
6821         `mime-decode-parameter-plist' if it is defined as function.
6822         (mmimap-make-mime-entity): Added argument `number'.
6823         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
6824         as 0.
6825         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
6826
6827         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
6828
6829         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
6830
6831         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
6832
6833 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
6834
6835         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
6836
6837         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
6838         when elmo-imap4-default-authenticate-type is nil.
6839         (elmo-folder-list-subfolders): Ditto
6840         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
6841         (elmo-imap4-fetch-callback-1-subr): Renamed from
6842         `elmo-imap4-fetch-callback-1' and define as inline function.
6843         (elmo-imap4-fetch-callback-1):
6844         Renamed from `elmo-imap4-fetch-callback'.
6845         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
6846
6847         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
6848         msgdb path (To keep compatibility with main trunk).
6849
6850         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
6851
6852         * elmo-util.el (elmo-make-file-cache): Moved position of
6853         some macros.
6854
6855         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
6856         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
6857         instead of `elmo-pop3-inhibit-uidl'.
6858         (elmo-folder-exists-p): Ditto.
6859         (elmo-pop3-folder-list-messages): Ditto.
6860
6861         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
6862         instead of `elmo-pop3-inhibit-uidl'.
6863         (elmo-folder-status): Ditto.
6864
6865         * elmo-dop.el (elmo-dop-folder): New variable.
6866         (elmo-dop-lock-message): Eliminated.
6867         (elmo-dop-unlock-message): Ditto.
6868         (elmo-dop-lock-list-load): Ditto.
6869         (elmo-dop-lock-list-save): Ditto.
6870         (elmo-dop-delete-folder): Ditto.
6871         (elmo-dop-rename-folder): Ditto.
6872
6873         * elmo.el: Removed incomplete commentary.
6874
6875 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6876
6877         * elmo.el (toplevel): Require 'elmo-version first;
6878         for little `recursive-load-depth' settings.
6879         Fix "ends here" comment.
6880
6881 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
6882
6883         * elmo-util.el (toplevel): Require 'poem;
6884         Some functions are moved from elmo-cache.el.
6885
6886         * elmo-net.el (toplevel): Require 'elmo-cache.
6887
6888         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
6889
6890         * elmo.el (toplevel): Ditto.
6891
6892         * elmo-cache.el: Rewrite with luna;
6893         Some functions are moved to elmo-util.el.
6894
6895         * elmo-internal.el (elmo-internal-folder-list): New variable.
6896         (elmo-internal-folder-initialize): Rewrite.
6897         (elmo-folder-list-subfolders): Ditto.
6898
6899         * elmo-cache.el (elmo-cache-search-all): Eliminated.
6900         (elmo-cache-collect-sub-directories): Ditto.
6901
6902 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
6903
6904         * elmo-version.el (elmo-version): Up to 2.5.8.
6905
6906         * elmo.el (elmo-folder-list-messages-mark-match): New function.
6907
6908         * elmo-util.el (elmo-list-insert): New function.
6909
6910 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
6911
6912         * elmo.el (elmo-init): New function.
6913         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
6914
6915         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
6916         (Renamed from `elmo-localdir-header-chop-length').
6917
6918         * elmo-pop3.el (elmo-pop3-use-cache,
6919         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
6920
6921         * elmo-nntp.el (elmo-message-fetch): Define.
6922         (elmo-message-fetch-unplugged): Ditto.
6923         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
6924         (elmo-nntp-use-cache): Ditto.
6925         (elmo-nntp-max-number-precedes-list-active): Ditto.
6926
6927         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
6928
6929         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
6930         `elmo-msgdb-insert-file-header'.
6931         Use `elmo-msgdb-file-header-chop-length'.
6932
6933         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
6934         `elmo-vars.el'.
6935
6936         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
6937         (elmo-cache-msgdb-create-overview-entity-from-file): Use
6938         `elmo-msgdb-insert-file-header'.
6939
6940         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
6941         Use new variable;
6942         Define obsolete variables with `elmo-define-obsolete-variable',
6943
6944         * elmo-util.el (elmo-warning-buffer-name): New constant.
6945         (elmo-warning): New function.
6946         (elmo-obsolete-variable-alist): New variable.
6947         (elmo-obsolete-variable-show-warnings): New variable.
6948         (elmo-define-obsolete-variable): New function.
6949         (elmo-resque-obsolete-variable): Ditto.
6950         (elmo-resque-obsolete-variables): Ditto.
6951
6952 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6953
6954         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
6955         Eliminated.
6956
6957         * elmo-pop3.el, elmo-nntp.el: Use custom.
6958
6959 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6960
6961         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
6962         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
6963
6964 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6965
6966         * Luna-fy Kenichi OKADA's following changes.
6967         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
6968         `nohide'.
6969         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
6970
6971 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
6972
6973         * elmo-util.el (elmo-display-progress): Prefer
6974         `progress-feedback-with-label' to `lprogress-display'.
6975
6976 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6977
6978         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
6979
6980 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
6981
6982         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
6983         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
6984         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6985         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6986         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
6987         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
6988         * elmo-archive.el (elmo-archive-list-folder): Ditto.
6989         * elmo-filter.el (elmo-filter-list-folder): Ditto.
6990         * elmo-internal.el (elmo-internal-list-folder): Ditto.
6991         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6992         * elmo-multi.el (elmo-multi-list-folder): Ditto.
6993         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6994         * elmo-dop.el (elmo-dop-list-folder): Ditto.
6995
6996 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6997
6998         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
6999         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7000
7001 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7002
7003         * elmo.el (elmo-folder-process-crosspost): New generic method.
7004         (elmo-folder-writable-p): Ditto.
7005         (elmo-folder-message-appendable-p): Eliminated.
7006         (elmo-generic-folder-append-msgdb): Rewrite.
7007         (elmo-newsgroups-hashtb): New internal variable.
7008         (elmo-crosspost-message-set): Eliminated.
7009         (elmo-crosspost-message-delete): Ditto.
7010         (elmo-setup-subscribed-newsgroups): New function.
7011         (elmo-crosspost-message-alist-modified): New internal variable.
7012         (elmo-crosspost-message-alist-load): New function (Renamed from
7013         `wl-crosspost-alist-load').
7014         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7015         `wl-crosspost-alist-save').
7016
7017         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7018
7019         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7020         `unreads'.
7021         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7022         elmo-newsgroups-hashtb).
7023         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7024         `elmo-nntp-folder-update-crosspost-message-alist'.
7025         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7026         `elmo-nntp-groups-hashtb'.
7027         (elmo-nntp-make-groups-hashtb): Eliminated.
7028         (elmo-nntp-parse-newsgroups): New function (Renamed from
7029         `wl-parse-newsgroups').
7030         (elmo-folder-creatable-p, elmo-folder-writable-p,
7031         elmo-folder-close-internal, elmo-folder-mark-as-read,
7032         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7033         Define.
7034         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7035
7036         * elmo-net.el (elmo-message-fetch): Check buffer size.
7037
7038         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7039
7040         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7041
7042         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7043         before `close' command.
7044
7045         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7046         `mark-alist' (All other related portions are changed).
7047
7048 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7049
7050         * elmo-util.el (elmo-create-hash-size): Eliminated.
7051         (elmo-make-hash) Make a hash with `one less than a power of two'
7052         length.
7053
7054         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7055         (elmo-hash-maximum-size): Changed value.
7056
7057 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7058
7059         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7060         (elmo-mime-message-display-as-is): Ditto.
7061
7062 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7063
7064         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7065         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7066
7067 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7068
7069         * elmo-mark.el: New file.
7070
7071         * elmo-internal.el: Rewrite (Almost empty).
7072
7073 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7074
7075         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7076         (mime-imap-entity-header-string): Ditto.
7077         (mmimap-entity-section): Rewrite.
7078
7079 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7080
7081         * elmo-nmz.el: New file.
7082
7083         * elmo-pipe.el: Rewrite with luna.
7084
7085 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7086
7087         * elmo-archive.el: Rewrite with luna.
7088
7089         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7090         (elmo-folder-list-importants-internal): Ditto.
7091
7092 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7093
7094         * elmo-archive.el (elmo-archive-version): Abolish.
7095         (toplevel) Removed `boso' comment.
7096
7097 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7098
7099         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7100         elmo-msgdb-add-msgs-to-seen-list-subr;
7101         Changed argument seen-marks to unread-marks.
7102
7103         * elmo-nntp.el: Rewrite with luna.
7104
7105 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7106
7107         * elmo-filter.el: Rewrite with luna.
7108
7109 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7110
7111         * elmo-pop3.el: Rewrite with luna.
7112
7113 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7114
7115         * elmo-multi.el: Rewrite with luna.
7116
7117         * elmo-vars.el (elmo-use-killed-list): Abolish.
7118         All other related portions are changed.
7119         (elmo-filename-replace-string-alist): Renamed from
7120         elmo-msgid-replace-string-alist.
7121
7122 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7123
7124         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7125
7126         * elmo-map.el: New file.
7127         * elmo-maildir.el: Rewrite with luna.
7128
7129 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7130
7131         * elmo.el: Changed meaning of `elmo-folder-commit'.
7132         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7133
7134 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7135
7136         * elmo.el (elmo-folder-append-buffer): New function.
7137         (Renamed from `elmo-append-msg')
7138
7139 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7140
7141         * elmo-mime.el: New file.
7142
7143 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7144
7145         * elmo-cache.el: Rewrite.
7146
7147 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7148
7149         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7150
7151 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7152
7153         * elmo-vars.el (elmo): New group.
7154         (elmo-strict-diff-folder-regexp): New variable.
7155
7156         * elmo-util.el (elmo-call-func): Abolish.
7157         (elmo-folder-get-type): Ditto.
7158         (elmo-*-get-spec): Ditto.
7159         (elmo-*-spec-*): Ditto.
7160         (elmo-imap4-identical-name-space-p): Ditto.
7161         (elmo-folder-identical-system-p): Ditto.
7162         (elmo-folder-direct-copy-alist): Ditto.
7163         (elmo-folder-direct-copy-p): Ditto.
7164
7165         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7166         (elmo-folder-initialize): Define.
7167         (elmo-folder-get-primitive-list): Ditto.
7168
7169         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7170         (elmo-folder-initialize): Define.
7171         Renamed `elmo-network-session-host-internal' to
7172         `elmo-network-session-server-internal'.
7173
7174         * elmo-multi.el (elmo-multi-folder): New luna class.
7175         (elmo-folder-initialize): Define.
7176         (elmo-folder-get-primitive-list): Ditto.
7177         (elmo-folder-contains-type): Ditto.
7178         (elmo-message-use-cache-p): Ditto.
7179
7180         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7181         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7182
7183         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7184         (elmo-folder-initialize): Define.
7185
7186         * elmo-filter.el (elmo-filter-folder): New luna class.
7187         (elmo-folder-initialize): Define.
7188         (elmo-folder-get-primitive-list): Ditto.
7189         (elmo-folder-contains-type): Ditto.
7190
7191 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7192
7193         * elmo-imap4.el: Rewrite with luna.
7194
7195         * mmimap.el: New file.
7196
7197         * mmelmo.el, mmelmo-imap4.el: Removed.
7198
7199         * elmo-net.el: Ditto.
7200
7201         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7202         (elmo-folder-initialize): Define.
7203
7204         * elmo-archive.el (elmo-archive-folder): New luna class.
7205         (elmo-folder-initialize): Define.
7206
7207         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7208         `elmo-folder-msgdb-path'.
7209         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7210         `elmo-make-folder'.
7211
7212 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7213
7214         * elmo.el: New file.
7215
7216         * elmo2.el: Renamed to elmo.el.
7217
7218 \f
7219 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7220
7221         * elmo-cache.el (elmo-cache-expire-by-size): Count
7222         a disk usage for a cache file entry in KB even when
7223         its kind is a directory.
7224
7225 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7226
7227         * elmo-version.el (elmo-version): Up to 2.5.7.
7228
7229 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7230
7231         * elmo-version.el (elmo-version): Up to 2.5.6.
7232
7233 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7234
7235         * elmo-version.el (elmo-version): Up to 2.5.5.
7236
7237 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7238
7239         * elmo-imap4.el (elmo-network-authenticate-session):
7240         Fixed a logic for response checking.
7241
7242 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7243
7244         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7245         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7246         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7247         `sasl-mechanisms'.
7248
7249         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7250         for `starttls-open-stream' and `starttls-negotiate'.
7251
7252         * elmo-nntp.el: Remove autoload settings for
7253         `starttls-open-stream' and `starttls-negotiate'.
7254
7255         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7256         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7257         `luna-define-class' with `eval-and-compile'.
7258
7259 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7260
7261         * elmo-util.el (elmo-read-search-condition-internal):
7262         Require an element of table for searching field.
7263
7264 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7265
7266         * elmo-version.el (elmo-version): Up to 2.5.4.
7267
7268 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7269
7270         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7271
7272 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7273
7274         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7275
7276 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7277
7278         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7279         before greeting.
7280
7281 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7282
7283         * elmo-imap4.el (elmo-imap4-delete-folder):
7284         Send "close" before "delete" (Use commented out line).
7285         (elmo-imap4-rename-folder): Ditto.
7286
7287         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7288         folder string itself.
7289         (elmo-dop-list-deleted): New function.
7290         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7291         killed.
7292
7293         * elmo-util.el (elmo-string-rassoc-all): New function.
7294
7295 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7296
7297         * elmo-version.el (elmo-version): Up to 2.5.3.
7298
7299         * elmo-net.el (elmo-network-get-session): Changed logic for
7300         checking process status.
7301
7302         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7303         process is nil;
7304         Changed logic for checking process status.
7305
7306 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7307
7308         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7309         before greeting.
7310         (elmo-network-setup-session): Set UIDL hash size according to
7311         the length of list response.
7312         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7313         according to the length of list response;
7314         Return the length of list response.
7315         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7316
7317 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7318
7319         * elmo-imap4.el (toplevel): Require 'ssl.
7320         Add autoload 'starttls.
7321         * elmo-pop3.el (toplevel): Ditto.
7322         * elmo-nntp.el (toplevel): Ditto.
7323
7324 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7325
7326         * elmo-imap4.el (toplevel): defun at compile time.
7327         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7328         sasl-next-step, sasl-step-data, sasl-step-set-data.
7329         * elmo-pop3.el (toplevel): Ditto.
7330
7331 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7332
7333         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7334
7335 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7336
7337         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7338         if error.
7339         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7340         and `elmo-pop-auth-apop'.
7341
7342 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7343
7344         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7345
7346 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7347
7348         * elmo-pop3.el (elmo-network-authenticate-session): Split
7349         encoded response value.
7350
7351 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7352
7353         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7354         `elmo-pop3-force-login'.
7355         Redefine `sasl-mechanisms'.
7356         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7357
7358 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7359
7360         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7361         Delete `elmo-imap4-authenticator-alist'.
7362         (elmo-imap4-auth-cram-md5): Delete.
7363         (elmo-imap4-auth-digest-md5): Delete.
7364
7365 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7366
7367         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7368         (elmo-pop3-auth-scram-md5): Ditto.
7369         (elmo-pop3-auth-cram-md5): Ditto.
7370
7371 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7372
7373         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7374         Delete `elmo-pop3-authenticator-alist'.
7375
7376 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7377
7378         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7379         new SASL API.
7380         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7381
7382 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7383
7384         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7385
7386 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7387
7388         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7389         Fixed problem when `elmo-pop3-use-uidl' is nil.
7390         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7391
7392 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7393
7394         * elmo-version.el (elmo-version): Up to 2.5.2.
7395
7396 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7397
7398         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7399         New function.
7400         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7401         (elmo-pop3-msgdb-create-as-numlist): Use it.
7402
7403         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7404         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7405
7406         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7407         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7408
7409 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7410
7411         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7412         when elmo-mark-as-read is called with second argument nil.
7413
7414 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7415
7416         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7417         Moved to elmo-util.el.
7418
7419         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7420         Moved from elmo-pipe.el
7421
7422         * elmo-archive.el (elmo-archive-call-process): Enclose with
7423         static-if.
7424
7425         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7426         "RFC822" (because RFC822.PEEK is obsolete).
7427         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7428
7429 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7430
7431         * elmo-archive.el (elmo-archive-call-process): Don't check for
7432         the exit status when Nemacs is running.
7433
7434 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7435
7436         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7437         'plain.
7438
7439         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7440         (elmo-pop3-get-spec): Set default of auth to 'user.
7441
7442         * elmo-imap4.el (elmo-imap4-session-check):
7443         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7444         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7445         (elmo-imap4-auth-login): New function; Revival.
7446         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7447         `elmo-imap4-auth-login'.
7448
7449 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7450
7451         * elmo2.el (toplevel): Move `product-provide' declare.
7452         * mmelmo.el (toplevel): Ditto.
7453
7454 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7455
7456         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7457
7458 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7459
7460         * elmo-util.el (elmo-folder-get-store-type): New function.
7461         (elmo-folder-direct-copy-p): Use it.
7462
7463 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7464
7465         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7466         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7467         and result of `elmo-imap4-use-flag-p'.
7468         (elmo-imap4-fetch-callback-1): Set mark according to
7469         the result of `elmo-imap4-use-flag-p'.
7470
7471 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7472
7473         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7474         (elmo-generic-list-folder-unread): Ditto.
7475         (elmo-folder-get-info): Ditto.
7476         (elmo-folder-set-info-max-by-numdb): Ditto.
7477         (elmo-folder-get-info-max): Ditto.
7478         (elmo-folder-get-info-length): Ditto.
7479         (elmo-folder-get-info-unread): Ditto.
7480         (elmo-folder-info-make-hashtb): Ditto.
7481
7482         * elmo2.el: Removed above functions.
7483
7484 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7485
7486         * elmo-imap4.el (toplevel): Require 'ssl.
7487         Add autoload 'starttls.
7488         * elmo-pop3.el (toplevel): Ditto.
7489         * elmo-nntp.el (toplevel): Ditto.
7490
7491 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7492
7493         * elmo-imap4.el (toplevel): defun at compile time.
7494         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7495         sasl-next-step, sasl-step-data, sasl-step-set-data.
7496         * elmo-pop3.el (toplevel): Ditto.
7497
7498 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7499
7500         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7501
7502 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7503
7504         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7505         if error.
7506         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7507         and `elmo-pop-auth-apop'.
7508
7509 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7510
7511         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7512
7513 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7514
7515         * elmo-pop3.el (elmo-network-authenticate-session): Split
7516         encoded response value.
7517
7518 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7519
7520         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7521         `elmo-pop3-force-login'.
7522         Redefine `sasl-mechanisms'.
7523         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7524
7525 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7526
7527         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7528         Delete `elmo-imap4-authenticator-alist'.
7529         (elmo-imap4-auth-cram-md5): Delete.
7530         (elmo-imap4-auth-digest-md5): Delete.
7531
7532 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7533
7534         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7535         (elmo-pop3-auth-scram-md5): Ditto.
7536         (elmo-pop3-auth-cram-md5): Ditto.
7537
7538 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7539
7540         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7541         Delete `elmo-pop3-authenticator-alist'.
7542
7543 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7544
7545         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7546         new SASL API.
7547         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7548
7549 \f
7550 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7551
7552         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7553
7554 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7555
7556         * elmo-nntp.el (elmo-nntp-get-folders-info):
7557         Fixed problem when '\' character is contained in user-id.
7558         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7559
7560 \f
7561 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7562
7563         * elmo-imap4.el (elmo-imap4-delete-folder):
7564         Send "close" before "delete" (Use commented out line).
7565         (elmo-imap4-rename-folder): Ditto.
7566
7567         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7568         folder string itself.
7569         (elmo-dop-list-deleted): New function.
7570         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7571         killed.
7572
7573         * elmo-util.el (elmo-string-rassoc-all): New function.
7574
7575         * elmo-version.el (elmo-version): Up to 2.5.1.
7576
7577 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7578
7579         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7580
7581         * elmo-internal.el (elmo-internal-search): Fix last change.
7582
7583 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7584
7585         * elmo-internal.el (elmo-internal-search): Rewrite.
7586         (Fixed problem which is pointed out by Akihiro MOTOKI
7587         <motoki@da.jp.nec.com>)
7588
7589         * elmo-version.el (elmo-version): Up to 2.5.0.
7590
7591 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7592
7593         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7594
7595 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7596
7597         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7598         non-nil, make hierarchy.
7599
7600 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7601
7602         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7603         `elmo-pop3-use-uidl' must be bound to nil.
7604         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7605
7606 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7607
7608         * elmo-util.el (elmo-copy-file): Don't cause an error after
7609         `add-name-to-file' failed.
7610
7611         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7612         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7613
7614 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7615
7616         * elmo-version.el (elmo-version): Up to 2.3.93.
7617
7618 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7619
7620         * elmo-util.el (elmo-flatten): New function.
7621
7622 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7623
7624         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7625         sync Author header.
7626         * elmo-cache.el (toplevel): Ditto.
7627         * elmo-database.el (toplevel): Ditto.
7628         * elmo-date.el (toplevel): Ditto.
7629         * elmo-dop.el (toplevel): Ditto.
7630         * elmo-filter.el (toplevel): Ditto.
7631         * elmo-imap4.el (toplevel): Ditto.
7632         * elmo-internal.el (toplevel): Ditto.
7633         * elmo-localdir.el (toplevel): Ditto.
7634         * elmo-localnews.el (toplevel): Ditto.
7635         * elmo-maildir.el (toplevel): Ditto.
7636         * elmo-msgdb.el (toplevel): Ditto.
7637         * elmo-multi.el (toplevel): Ditto.
7638         * elmo-net.el (toplevel): Ditto.
7639         * elmo-nntp.el (toplevel): Ditto.
7640         * elmo-pipe.el (toplevel): Ditto.
7641         * elmo-pop3.el (toplevel): Ditto.
7642         * elmo-util.el (toplevel): Ditto.
7643         * elmo-vars.el (toplevel): Ditto.
7644         * elmo2.el (toplevel): Ditto.
7645         * mmelmo-imap4.el (toplevel): Ditto.
7646         * mmelmo.el (toplevel): Ditto.
7647
7648         * elmo-version.el (elmo-version): Move to top.
7649
7650         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7651         * elmo-imap4.el (toplevel): Ditto.
7652         * elmo-localdir.el (toplevel): Ditto.
7653         * elmo-msgdb.el (toplevel): Ditto.
7654         * elmo-nntp.el (toplevel): Ditto.
7655         * elmo-pop3.el (toplevel): Ditto.
7656         * elmo-version.el (toplevel): Ditto.
7657
7658         * elmo-localnews.el (toplevel): Added Keyword header.
7659
7660 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7661
7662         * elmo-version.el (product-version-as-string): Defined using
7663         `defun-maybe'.
7664         (toplevel): Use it.
7665
7666         * elmo-localdir.el (toplevel): Updated copyright notice.
7667         * elmo-version.el (toplevel): Ditto.
7668         * elmo-msgdb.el (toplevel): Ditto.
7669         * elmo-imap4.el (toplevel): Ditto.
7670         * elmo-nntp.el (toplevel): Ditto.
7671         * elmo-pop3.el (toplevel): Ditto.
7672
7673 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7674
7675         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7676         messages.
7677
7678         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7679         parameter value (It sometimes contains raw kanji).
7680
7681 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7682
7683         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7684         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7685
7686 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7687
7688         * elmo-imap4.el (elmo-network-initialize-session): Fix.
7689
7690 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7691
7692         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
7693         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
7694
7695 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
7696
7697         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
7698         value if selecting folder succceeded.
7699         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
7700
7701 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7702
7703         * elmo-util.el (elmo-make-directory): Fixed permission lateral
7704         representation.
7705
7706         * elmo-util.el (elmo-string-matched-member): New function.
7707
7708 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
7709
7710         * elmo-util.el (elmo-unintern): New macro.
7711         (elmo-number-set-member): Fixed docstring.
7712
7713         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7714         tag token.
7715
7716 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
7717
7718         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7719         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7720
7721 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
7722
7723         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7724         `no-error'.
7725         Added docstring.
7726         Return non-nil if selecting folder succeeded.
7727         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7728
7729 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
7730
7731         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7732         `file-name-completion' returns t.
7733         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7734         (elmo-maildir-set-mark): Put `info' part to the files in the cur
7735         directory if it does not exist.
7736         (elmo-maildir-update-current): Use `while' instead of `mapcar'
7737         for iteration.
7738
7739 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
7740
7741         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7742         enclosure (It's harmful in unplugged status).
7743
7744         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7745
7746         * mmelmo-1.el: Removed.
7747
7748         * mmelmo-2.el: Ditto.
7749
7750         * mmelmo-imap4-1.el: Ditto.
7751
7752         * mmelmo-imap4-2.el: Ditto.
7753
7754         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7755
7756         * mmelmo.el: Merged mmelmo-2.el.
7757
7758         * elmo-version.el (elmo-version): Up to 2.3.92.
7759
7760 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7761
7762         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7763         elmo-update-number): Remove last period in "...done." message.
7764         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7765         Ditto.
7766         * elmo-cache.el (elmo-cache-expire-by-size,
7767         elmo-cache-get-sorted-cache-file-list,
7768         elmo-cache-msgdb-create-as-numlist): Ditto.
7769         * elmo-dop.el (elmo-dop-save-pending-messages,
7770         (elmo-dop-flush-pending-append-operations): Ditto.
7771         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7772         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7773         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7774         (elmo-localdir-pack-number): Ditto.
7775         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7776         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7777         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7778         mime-write-entity-content): Ditto.
7779         * pldap.el (ldap-search-basic): Ditto.
7780
7781 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
7782
7783         * elmo-version.el (elmo-version): Up to 2.3.91.
7784
7785         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7786         Only when filter is 'last'.
7787
7788         * elmo-util.el (elmo-condition-atom-regexp): New constant.
7789         (elmo-condition-parse-search-value): Use it.
7790         (elmo-read-search-condition-internal): Quote value only when
7791         it is not an atom.
7792
7793 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
7794
7795         * elmo2.el (elmo-generic-folder-diff): Fix.
7796
7797 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
7798
7799         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7800         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7801         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7802         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7803         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
7804         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
7805
7806 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
7807
7808         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
7809         extra-fields.
7810
7811 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
7812
7813         * elmo-version.el (elmo-version): Up to 2.3.90.
7814
7815         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
7816         (elmo-imap4-list-folder-important): Ditto.
7817
7818 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7819
7820         * elmo-nntp.el (elmo-network-initialize-session): Fix.
7821
7822 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7823
7824         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
7825
7826 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
7827
7828         * elmo-nntp.el (elmo-network-initialize-session):
7829         Add starttls negotiation.
7830
7831 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7832
7833         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
7834         response.
7835         (elmo-network-setup-session): Define.
7836         Call `elmo-nntp-send-mode-reader' when session opened.
7837
7838 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7839
7840         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
7841
7842 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
7843
7844         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
7845         an invalid SPACE character ahead of `SEARCH' command.  Move
7846         a valid SPACE character following `SEARCH' from conditional
7847         `format' arguments to control-strings.
7848
7849 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7850
7851         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
7852         was succeeded.
7853
7854         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
7855
7856 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
7857
7858         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
7859         `w32-get-true-file-link-count' as t.
7860
7861         * elmo-imap4.el (elmo-imap4-read): Abolished.
7862         (Renamed to `elmo-read' and moved to elmo-util.el)
7863         All other related portions are changed.
7864
7865         * elmo-util.el (elmo-read): New function.
7866         (elmo-condition-parse-search-value): Use it.
7867
7868 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
7869
7870         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
7871
7872         * elmo-nntp.el (elmo-nntp-session): Define.
7873         (elmo-nntp-setting): Abolished.
7874         All other related portions are changed.
7875         (elmo-nntp-get-server-command): Changed argument.
7876         (elmo-nntp-set-server-command): Ditto.
7877         (elmo-nntp-xover-p): Ditto.
7878         (elmo-nntp-set-xover): Ditto.
7879         (elmo-nntp-listgroup-p): Ditto.
7880         (elmo-nntp-set-listgroup): Ditto.
7881         (elmo-nntp-list-active-p): Ditto.
7882         (elmo-nntp-set-list-active): Ditto.
7883         (elmo-nntp-xhdr-p): Ditto.
7884         (elmo-nntp-set-xhdr): Ditto.
7885         (elmo-nntp-flush-connection): Abolished.
7886         (elmo-nntp-get-connection): Abolished.
7887         (elmo-nntp-get-session): New function.
7888         (elmo-network-initialize-session): Defined.
7889         (elmo-network-authenticate-session): Ditto.
7890         (elmo-nntp-send-mode-reader): Changed argument.
7891         (elmo-nntp-send-command): Changed argument.
7892         All other related portions are changed.
7893         (elmo-nntp-read-response): Ditto.
7894         (elmo-nntp-read-raw-response): Ditto.
7895         (elmo-nntp-read-contents): Ditto.
7896         (elmo-nntp-read-body): Ditto.
7897         (elmo-nntp-goto-folder): Abolished.
7898         (elmo-nntp-select-group): New function.
7899         All other related portions are changed.
7900         (This function substitutes `elmo-nntp-goto-folder')
7901         (elmo-nntp-msgdb-create-by-header): Rewrite.
7902         (elmo-nntp-get-overview): Eliminated.
7903         (elmo-nntp-get-message): Ditto.
7904         (elmo-nntp-open-connection) Abolished.
7905         (elmo-nntp-read-msg): Rewrite.
7906         (elmo-nntp-post): Ditto.
7907         (elmo-nntp-send-data): Abolished.
7908         (elmo-nntp-send-buffer): New function.
7909         (elmo-nntp-send-data-line): Define as inline function.
7910         (elmo-nntp-get-folders-info-prepare): Use session as key.
7911         (elmo-nntp-groups-read-response): Changed argument.
7912         (elmo-nntp-retrieve-headers): Ditto.
7913         (elmo-nntp-msgdb-create-message): Ditto.
7914
7915         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
7916         when searching by 'since' or 'before'.
7917
7918 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7919
7920         * elmo-version.el (toplevel): Use product-version-as-string for set
7921         verstion-string, if defined.
7922
7923 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
7924
7925         * elmo-util.el: Doc fixes.
7926
7927 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7928
7929         * elmo-archive.el (toplevel): Use product-provide.
7930         * elmo-cache.el (toplevel): Ditto.
7931         * elmo-database.el (toplevel): Ditto.
7932         * elmo-date.el (toplevel): Ditto.
7933         * elmo-dop.el (toplevel): Ditto.
7934         * elmo-filter.el (toplevel): Ditto.
7935         * elmo-imap4.el (toplevel): Ditto.
7936         * elmo-internal.el (toplevel): Ditto.
7937         * elmo-localdir.el (toplevel): Ditto.
7938         * elmo-localnews.el (toplevel): Ditto.
7939         * elmo-maildir.el (toplevel): Ditto.
7940         * elmo-msgdb.el (toplevel): Ditto.
7941         * elmo-multi.el (toplevel): Ditto.
7942         * elmo-net.el (toplevel): Ditto.
7943         * elmo-nntp.el (toplevel): Ditto.
7944         * elmo-pipe.el (toplevel): Ditto.
7945         * elmo-pop3.el (toplevel): Ditto.
7946         * elmo-util.el (toplevel): Ditto.
7947         * elmo-vars.el (toplevel): Ditto.
7948         * elmo2.el (toplevel): Ditto.
7949         * mmelmo-1.el (toplevel): Ditto.
7950         * mmelmo-2.el (toplevel): Ditto.
7951         * mmelmo-imap4-1.el (toplevel): Ditto.
7952         * mmelmo-imap4-2.el (toplevel): Ditto.
7953         * mmelmo-imap4.el (toplevel): Ditto.
7954         * mmelmo.el (toplevel): Ditto.
7955
7956 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
7957
7958         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
7959         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
7960
7961 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
7962
7963         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
7964         before splitting.
7965         (elmo-multi-split-number-alist): Ditto.
7966
7967 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7968
7969         * elmo-version.el: New file.  Use product.el.
7970         * elmo2.el: Add (require 'elmo-version).
7971         * elmo-vars.el (elmo-appname, elmo-version): Move to
7972         elmo-version.el
7973
7974 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
7975
7976         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
7977         `elmo-msgdb-expand-path'.
7978         (elmo-msgdb-load): Ditto.
7979         Abolished 2nd argument. If 1st argument is not string, treat as spec.
7980         (elmo-generic-list-folder-unread): Rewrite.
7981         (elmo-generic-list-folder-important): Changed argument.
7982         (elmo-list-folder-unread): Ditto.
7983         (elmo-list-folder-important): Ditto.
7984         (elmo-folder-diff): Rewrite.
7985         (elmo-generic-folder-diff): New function.
7986         (elmo-multi-get-number-alist-list): Abolished
7987         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
7988         (elmo-multi-folder-diff): Moved to elmo-multi.el
7989         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
7990
7991         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
7992         `elmo-msgdb-expand-path'.
7993         (elmo-pop3-msgdb-create-as-numlist): Ditto.
7994         (elmo-pop3-read-msg): Ditto.
7995         (elmo-pop3-delete-msgs): Ditto.
7996         (elmo-pop3-folder-diff): New alias.
7997
7998         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
7999         `elmo-msgdb-expand-path'.
8000         (elmo-pipe-list-folder-unread): Changed arguments.
8001         (elmo-pipe-list-folder-important): Ditto.
8002         (elmo-pipe-folder-diff): New alias.
8003
8004         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8005         `elmo-msgdb-expand-path'.
8006         (elmo-nntp-max-of-folder): Ditto.
8007         (elmo-nntp-msgdb-create): Ditto.
8008         (elmo-nntp-delete-msgs): Ditto.
8009         (elmo-nntp-folder-diff): New alias.
8010
8011         * elmo-multi.el (elmo-multi-folder-diff): New function.
8012         (elmo-multi-split-mark-alist): Ditto.
8013         (elmo-multi-split-number-alist): Ditto.
8014         (elmo-multi-mark-alist-list): Abolished (Renamed to
8015         elmo-multi-split-mark-alist).
8016         (elmo-multi-list-folder-unread): Rewrite.
8017         (elmo-multi-list-folder-important): Ditto.
8018         (elmo-multi-list-folder): Set `spec' as 1st argument for
8019         `elmo-msgdb-expand-path'.
8020         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8021         instead of `elmo-multi-get-number-alist-list'.
8022
8023         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8024         If 1st argument is not string, treat as spec.
8025         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8026         `elmo-msgdb-expand-path'.
8027         (elmo-msgdb-flist-load): Ditto.
8028         (elmo-msgdb-flist-save): Ditto.
8029         (elmo-msgdb-delete-path): Ditto.
8030         (elmo-msgdb-rename-path): Ditto.
8031
8032         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8033         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8034         (elmo-maildir-delete-mark-msgs): Ditto.
8035         (elmo-maildir-msgdb-create): Ditto.
8036         (elmo-maildir-read-msg): Ditto.
8037         (elmo-maildir-delete-msgs): Ditto.
8038         (elmo-maildir-list-folder-subr): Ditto.
8039         (elmo-maildir-search): Ditto.
8040         (elmo-maildir-get-msg-filename): Ditto.
8041         (elmo-maildir-pack-number): Ditto.
8042         (elmo-maildir-folder-diff): New alias.
8043
8044         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8045
8046         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8047         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8048         (elmo-localdir-folder-diff): New alias.
8049
8050         * elmo-internal.el (elmo-internal-list-folder-subr):
8051         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8052         (elmo-internal-list-folder-by-location): Ditto.
8053         (elmo-internal-msgdb-create): Ditto.
8054         (elmo-internal-delete-msgs): Ditto.
8055         (elmo-internal-read-msg): Ditto.
8056         (elmo-internal-folder-diff): New alias.
8057
8058         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8059         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8060         `elmo-msgdb-expand-path'.
8061         (elmo-imap4-list-folder-unread): Changed arguments.
8062         (elmo-imap4-list-folder-important): Ditto.
8063
8064         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8065         (elmo-filter-list-folder-important): Ditto.
8066         (elmo-filter-folder-diff): New function.
8067
8068         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8069
8070         * elmo-cache.el (elmo-cache-list-folder):
8071         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8072         (elmo-cache-copy-msgs): Ditto.
8073         (elmo-cache-folder-diff): New alias.
8074
8075         * elmo-archive.el (elmo-archive-list-folder-subr):
8076         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8077         (elmo-archive-get-archive-name): Ditto.
8078         (elmo-archive-create-file): Ditto.
8079         (elmo-archive-append-msg): Ditto.
8080         (elmo-archive-copy-msgs): Ditto.
8081         (elmo-archive-copy-msgs-froms): Ditto.
8082         (elmo-archive-get-msg-filename): Ditto.
8083         (elmo-archive-folder-diff): New alias.
8084
8085 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8086
8087         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8088         (elmo-pop3-stream-type-alist): New variable.
8089         (elmo-nntp-stream-type-alist): New variable.
8090
8091         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8092         (elmo-kill-buffer): Ditto.
8093         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8094         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8095         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8096         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8097         (elmo-imap4-get-spec): Take into account
8098         `elmo-imap4-stream-type-alist'.
8099
8100 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8101
8102         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8103         (elmo-nntp-list-folders-get-cache): Ditto.
8104
8105 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8106
8107         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8108         character before 'uid'.
8109
8110 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8111
8112         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8113
8114         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8115
8116         * elmo-util.el (elmo-number-set-member): New function.
8117         (elmo-number-set-append-list): Ditto.
8118         (elmo-number-set-append): Ditto.
8119
8120         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8121         Use `elmo-number-set-member'.
8122         (elmo-living-messages): Ditto.
8123         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8124         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8125
8126         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8127         (elmo-imap4-add-to-cont-list): Abolished.
8128         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8129         instead of elmo-imap4-add-to-cont-list.
8130
8131         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8132         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8133
8134         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8135
8136 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8137
8138         * elmo-util.el (elmo-condition-parse-search-value):
8139         Fixed date parsing.
8140
8141 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8142
8143         * elmo-util.el (elmo-condition-find-key-internal): New function.
8144         (elmo-condition-find-key): Ditto.
8145
8146         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8147         (elmo-msgdb-search-internal): Ditto.
8148         (elmo-msgdb-search): Ditto.
8149
8150 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8151
8152         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8153         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8154
8155         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8156         (elmo-nntp-search-primitive): Fixed problem when condition is
8157         'unmatch'.
8158
8159         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8160
8161         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8162         (elmo-nntp-xhdr-p): New macro.
8163         (elmo-nntp-set-xhdr): Ditto.
8164         (elmo-nntp-parse-xhdr-response): New function.
8165         (elmo-nntp-retrieve-field): Ditto.
8166         (elmo-nntp-search-primitive): Ditto.
8167         (elmo-nntp-search): Implemented.
8168
8169         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8170
8171         * elmo-archive.el (elmo-archive-search): Set all number list to
8172         `elmo-archive-field-condition-match'
8173
8174         * elmo-localdir.el (elmo-localdir-search): Likewise.
8175
8176         * elmo-maildir.el (elmo-maildir-search): Likewise.
8177
8178 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8179
8180         * elmo-msgdb.el (elmo-living-messages): New function.
8181         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8182         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8183         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8184         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8185         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8186         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8187         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8188         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8189         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8190         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8191         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8192
8193 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8194
8195         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8196
8197         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8198
8199         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8200
8201         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8202         arguments for `SEARCH' command.
8203         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8204         All other related portions are changed.
8205
8206         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8207
8208         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8209         (elmo-list-folder-unread): Rewrite.
8210         (elmo-list-folder-important): Ditto.
8211
8212         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8213         (elmo-condition-parse-error): New inline function.
8214         (elmo-read-search-condition): New function.
8215         (elmo-read-search-condition-internal): Ditto.
8216         (elmo-parse-search-condition): Rewrite.
8217         (elmo-condition-parse): New function.
8218         (elmo-condition-parse-or-expr): Ditto.
8219         (elmo-condition-parse-and-expr): Ditto.
8220         (elmo-condition-parse-primitive): Ditto.
8221         (elmo-condition-parse-search-value): Ditto.
8222         (elmo-buffer-field-primitive-condition-match): Ditto.
8223         (elmo-buffer-field-condition-match): Rewrite.
8224         (elmo-file-field-condition-match): Ditto.
8225
8226         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8227         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8228
8229         * elmo-internal.el (elmo-internal-search): Set `number' and
8230         `number-list' argument of `elmo-file-field-condition-match'.
8231
8232         * elmo-maildir.el (elmo-maildir-search): Ditto.
8233
8234         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8235         `msgdb' as argument instead of `mark-alist'.
8236         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8237         `overview'.
8238
8239         * elmo-multi.el: Likewise.
8240
8241         * elmo-pipe.el: Likewise.
8242
8243         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8244         (elmo-imap4-search-internal): Rewrite.
8245         (elmo-imap4-search): Ditto.
8246
8247         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8248         (elmo-filter-list-folder-unread): Ditto.
8249         (elmo-filter-list-folder-important): Ditto.
8250         (elmo-filter-search): Rewrite.
8251
8252         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8253         `number-list' argument of `elmo-file-field-condition-match'.
8254         (elmo-cache-search): Ditto.
8255
8256         * elmo-localdir.el: Likewise.
8257
8258         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8259         number-list and pass it to `elmo-buffer-field-condition-match'.
8260         (elmo-archive-field-condition-match): Pass `number-list' to
8261         `elmo-archive-field-condition-match'
8262
8263 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8264
8265         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8266         `listgroup'.
8267
8268         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8269         (elmo-folder-diff-async-callback-data): Ditto.
8270         (elmo-folder-diff-async): New function.
8271
8272         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8273         (elmo-network-session-cache-key): Use it as a prefix of the session
8274         name.
8275         (elmo-network-open-session): Ditto.
8276
8277         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8278         (elmo-imap4-status-callback-data): Ditto.
8279         (elmo-imap4-server-diff-async-callback): New variable.
8280         (elmo-imap4-server-diff-async-callback-data): Ditto.
8281         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8282         `elmo-imap4-status-callback-data'.
8283         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8284         `elmo-imap4-status-callback-data' as nil.
8285         (elmo-imap4-server-diff): Ditto.
8286         (elmo-imap4-server-diff-async-callback-1): New function.
8287         (elmo-imap4-server-diff-async): Ditto.
8288         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8289
8290 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8291
8292         * elmo-util.el (elmo-list-delete): Doc fix.
8293         (elmo-delete-lists): Abolish.
8294         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8295         instead of `elmo-delete-lists'.
8296
8297 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8298
8299         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8300         before `sort'.
8301
8302 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8303
8304         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8305         `elmo-imap4-literal-subr'.
8306         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8307         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8308
8309 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8310
8311         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8312         (elmo-archive-list-folder): Fix.
8313         (elmo-archive-max-of-folder): Fix.
8314
8315 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8316
8317         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8318          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8319         (elmo-localdir-append-msg): Ditto.
8320         (elmo-localdir-list-folder): Fix for `nonsort'.
8321         (elmo-localdir-list-folder-subr): Fix for `killed'.
8322         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8323         (elmo-maildir-list-folder-subr): Ditto.
8324         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8325         (elmo-archive-list-folder-subr): Ditto.
8326         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8327         (elmo-internal-list-folder-subr): Ditto.
8328
8329 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8330
8331         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8332
8333 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8334
8335         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8336
8337 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8338
8339         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8340         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8341
8342         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8343         before greeting.
8344         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8345         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8346
8347 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8348
8349         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8350
8351         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8352         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8353         before STORE command.
8354
8355 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8356
8357         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8358
8359         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8360         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8361         of `response'.
8362         (elmo-imap4-list-folders): Removed unused local variable.
8363         (elmo-network-initialize-session): Ditto.
8364         (elmo-imap4-delete-msg-by-id): Ditto.
8365         (elmo-imap4-parse-fetch): Ditto.
8366         (elmo-imap4-copy-msgs): Ditto.
8367         Use `dst-spec' instead of `dst-folder'.
8368         (elmo-network-authenticate-session): Check authenticate type `plain'.
8369
8370 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8371
8372         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8373         garbage checking.
8374         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8375         `elmo-imap4-response-value'.
8376         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8377
8378 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8379
8380         * elmo-imap4.el (elmo-imap4-send-command):
8381         Cause elmo-imap4-bye-error when current response is BYE.
8382         (elmo-imap4-arrival-filter): Changed greeting response value.
8383
8384         * elmo2.el (elmo-imap4-bye-error): Define.
8385
8386         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8387         (elmo-imap4-server-diff): Ditto.
8388         (elmo-imap4-response-bye-p): New macro.
8389         (elmo-imap4-response-error-text): Get text from BYE response.
8390         (elmo-imap4-read-response): Return if BYE response.
8391         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8392         (elmo-imap4-folder-exists-p): Ditto.
8393         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8394         (elmo-imap4-parse-bye): New function.
8395         (elmo-imap4-parse-response): Remove needless let.
8396         Call `elmo-imap4-parse-bye'.
8397
8398 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8399
8400         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8401         the mailbox does not exist.
8402         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8403
8404 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8405
8406         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8407
8408 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8409
8410         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8411
8412         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8413         (elmo-network-initialize-session-buffer): Defined.
8414
8415         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8416         Abolished.
8417         (mmelmo-imap4-get-mime-entity): Rewrite.
8418
8419         * elmo2.el (elmo-error): Capitalize error message.
8420
8421         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8422         (elmo-network-session-buffer): New macro.
8423         (elmo-network-open-session): Use it.
8424
8425         * elmo-imap4.el: Rewrite.
8426
8427 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8428
8429         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8430
8431 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8432
8433         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8434         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8435         (elmo-imap4-create-msgdb-from-overview-string): Use
8436         `elmo-msgdb-create-overview-from-buffer'.
8437
8438 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8439
8440         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8441         (elmo-imap4-default-hierarchy-delimiter): New variable.
8442         (elmo-imap4-list-folders): Use it.
8443
8444 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8445
8446         * elmo-net.el (elmo-network-open-session): Add user and
8447         stream-type for process-buffer name.
8448
8449         * elmo-pop3.el (elmo-network-initialize-session): Call
8450         buffer-disable-undo.
8451
8452         * elmo-imap4.el (elmo-network-initialize-session):
8453         Set current-buffer as an argument for `buffer-disable-undo'.
8454
8455         * elmo-pop3.el (elmo-network-close-session): Don't use
8456         `process-live-p'.
8457
8458         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8459         Set default as 'user.
8460
8461         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8462
8463         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8464         and `elmo-imap4-flush-connection'.
8465
8466         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8467         (elmo-pop3-get-spec): Assume auth as symbol.
8468         (elmo-open-network-stream): Moved to `elmo-net'.
8469
8470         * elmo-pop3.el (toplevel): Require 'elmo-net.
8471         Define `sasl-cram-md5' to silence byte compilier.
8472         (elmo-pop3-connection-cache) Abolished.
8473         (elmo-pop3-authenticator-alist) New variable.
8474         (elmo-pop3-session): Define.
8475         (elmo-pop3-connection-get-process): Abolished.
8476         (elmo-pop3-connection-get-buffer): Ditto.
8477         (elmo-pop3-close-connection): Ditto.
8478         (elmo-pop3-flush-connection): Ditto.
8479         (elmo-pop3-get-connection): Ditto.
8480         (elmo-pop3-get-session): New function.
8481         (Replacement for `elmo-pop3-get-connection').
8482         All other related modules are changed.
8483         (elmo-network-close-session): Define.
8484         (elmo-pop3-send-command): Abolished argument `buffer'.
8485         All other related modules are changed.
8486         (elmo-pop3-read-response): Likewise.
8487         (elmo-pop3-open-connection): Abolished.
8488         (elmo-pop3-auth-user): New function.
8489         (elmo-pop3-auth-apop): Ditto.
8490         (elmo-pop3-auth-cram-md5): Ditto.
8491         (elmo-pop3-auth-scram-md5): Ditto.
8492         (elmo-pop3-auth-digest-md5): Ditto.
8493         (elmo-network-initialize-session): Define.
8494         (elmo-network-authenticate-session): Ditto.
8495         (elmo-network-setup-session): Ditto.
8496
8497         * elmo-imap4.el (toplevel): Require 'elmo-net.
8498         (elmo-imap4-session): Define.
8499         (elmo-imap4-connection-cache): Abolished.
8500         (elmo-imap4-password-key): Ditto.
8501         (elmo-imap4-flush-connection): Ditto.
8502         (elmo-imap4-get-connection): Ditto.
8503         All other related modules are changed.
8504         (elmo-imap4-get-session): New function
8505         (Replacement for `elmo-imap4-get-connection').
8506         (elmo-imap4-read-response): Abolished argument `buffer'.
8507         All other related modules are changed.
8508         (elmo-imap4-send-command): Likewise.
8509         (elmo-imap4-select-folder): Abolished.
8510         All other related modules are changed.
8511         (elmo-imap4-select-mailbox): New function.
8512         (Replacement for `elmo-imap4-select-folder').
8513         (elmo-imap4-auth-login): Simplify.
8514         (Assume current buffer as process buffer)
8515         (elmo-imap4-auth-cram-md5): Ditto.
8516         (elmo-imap4-auth-digest-md5): Ditto.
8517         (elmo-imap4-login): Ditto.
8518         (elmo-imap4-open-connection): Abolished.
8519         (elmo-imap4-open-connection-1): Abolished.
8520         (elmo-network-initialize-sessoin): Define.
8521         (elmo-network-authenticate-session): Ditto.
8522         (elmo-network-setup-session): Ditto.
8523
8524         * elmo-net.el: New module.
8525
8526 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8527
8528         * elmo-util.el (elmo-define-error): New function.
8529
8530         * elmo2.el (elmo-error): Define.
8531         (elmo-open-error): Define.
8532         (elmo-authenticate-error): Define.
8533
8534         * elmo-imap4.el (elmo-imap4-error): Abolish.
8535         (elmo-imap4-error-type): Abolish.
8536         (elmo-imap4-error-process): Abolish.
8537         (elmo-imap4-error-message): Abolish
8538         (elmo-imap4-list-folders): Don't quote lambda.
8539         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8540         (elmo-imap4-parse-namespace): Ditto.
8541         (elmo-imap4-open-connection): Rewrite.
8542         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8543         (elmo-imap4-get-connection): Abolish local variable `result'.
8544
8545 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8546
8547         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8548         wrong-type-argument error when auth is nil.
8549
8550 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8551
8552         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8553         (elmo-default-nntp-stream-type): Ditto.
8554         (elmo-default-pop3-stream-type): Ditto.
8555         (elmo-network-stream-type-alist): Ditto.
8556         (elmo-default-imap4-ssl): Abolished.
8557         (elmo-default-nntp-ssl): Ditto.
8558         (elmo-default-pop3-ssl): Ditto.
8559
8560         * elmo-util.el: (toplevel): Removed needless requires.
8561         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8562         (elmo-open-network-stream): Open network stream according to
8563         the value of `elmo-network-stream-type-alist'.
8564         (elmo-get-network-stream-type): New function.
8565         (elmo-network-stream-type-spec-string): New macro.
8566         (elmo-network-stream-type-symbol): Ditto.
8567         (elmo-network-stream-type-function): Ditto.
8568
8569         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8570         network-stream-type. All other related portions are changed.
8571         (elmo-pop3-open-connection): Ditto.
8572
8573         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8574         network-stream-type. All other related portions are changed.
8575
8576         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8577         network-stream-type.All other related portions are changed.
8578         (elmo-imap4-error): New macro.
8579         (elmo-imap4-error-type): Ditto.
8580         (elmo-imap4-error-process): Ditto.
8581         (elmo-imap4-error-message): Ditto.
8582         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8583         (elmo-imap4-auth-cram-md5): Ditto.
8584         (elmo-imap4-auth-digest-md5): Ditto.
8585         (elmo-imap4-login): Ditto.
8586         (elmo-imap4-open-connection): Remove password entry if authentication
8587         was in vain.
8588         (elmo-imap4-user-at-host): Abolished.
8589         (elmo-imap4-password-key): New buffer local variable.
8590         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8591         using protocol, port, auth and stream-type.
8592
8593         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8594
8595 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8596
8597         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8598
8599         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8600
8601         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8602         (elmo-imap4-authenticator-alist): New variable.
8603         (elmo-imap4-open-connection-1): Rename from
8604         elmo-imap4-open-connection.
8605         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8606         only wraps elmo-imap4-open-connection-1.
8607         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8608         user-at-host.
8609         (elmo-imap4-auth-login): New function.
8610         (elmo-imap4-auth-cram-md5): New function.
8611         (elmo-imap4-auth-digest-md5): New function.
8612         (elmo-imap4-login): New function.
8613
8614 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8615
8616         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8617         function `error'.
8618
8619 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8620
8621         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8622
8623 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8624
8625         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8626
8627 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8628
8629         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8630         for server responses, quote `*' regardless of where it appears.
8631
8632 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8633
8634         * elmo-maildir.el (elmo-maildir-commit): New alias.
8635
8636 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8637
8638         * elmo-util.el (elmo-display-progress):
8639                 Use `progress-feedback-with-label'.
8640
8641 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8642
8643         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8644         (elmo-imap4-non-atom-char-regex): Ditto.
8645         (elmo-imap4-non-text-char-regex): Ditto.
8646         (elmo-imap4-literal-threshold): Ditto.
8647         (elmo-imap4-atom-p): New function.
8648         (elmo-imap4-quotable-p): Ditto.
8649         (elmo-imap4-nil): Ditto.
8650         (elmo-imap4-atom): Ditto.
8651         (elmo-imap4-quoted): Ditto.
8652         (elmo-imap4-literal-subr): Ditto.
8653         (elmo-imap4-literal): Ditto.
8654         (elmo-imap4-buffer-literal): Ditto.
8655         (elmo-imap4-string-subr): Ditto.
8656         (elmo-imap4-string): Ditto.
8657         (elmo-imap4-buffer-string): Ditto.
8658         (elmo-imap4-astring-subr): Ditto.
8659         (elmo-imap4-astring): Ditto.
8660         (elmo-imap4-buffer-astring): Ditto.
8661         (elmo-imap4-nstring): Ditto.
8662         (elmo-imap4-buffer-nstring): Ditto.
8663         (elmo-imap4-mailbox): New alias.
8664         (elmo-imap4-field-body): Ditto.
8665         (elmo-imap4-userid): Ditto.
8666         (elmo-imap4-password): Ditto.
8667         (elmo-imap4-format-quoted): New function.
8668         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8669         arguments and handle "atom", "quoted" and "literal" string here.
8670         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8671         `elmo-imap4-send-command'.
8672         (elmo-imap4-folder-exists-p): Likewise.
8673         (elmo-imap4-create-folder): Likewise.
8674         (elmo-imap4-delete-folder): Likewise.
8675         (elmo-imap4-rename-folder): Likewise.
8676         (elmo-imap4-max-of-folder): Likewise.
8677         (elmo-imap4-check-validity): Likewise.
8678         (elmo-imap4-sync-validity): Likewise.
8679         (elmo-imap4-server-diff): Likewise.
8680         (elmo-imap4-select-folder): Likewise.
8681         (elmo-imap4-copy-msgs): Likewise.
8682         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8683         (elmo-imap4-mark-set-on-msgs): Likewise.
8684         (elmo-imap4-read-part): Likewise.
8685         (elmo-imap4-read-msg): Likewise.
8686         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8687         `elmo-imap4-password' for `elmo-imap4-send-command'.
8688         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8689         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8690         `elmo-imap4-buffer-literal'.
8691         (elmo-imap4-append-msg): Likewise.
8692
8693         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
8694         `delete' for removing dead connection from the connection cache.
8695         Move deletion of the process buffer after that.
8696         (elmo-imap4-list): Change `defsubst' to `defun'.
8697         (elmo-imap4-commit): Make error message verbose.
8698         (elmo-imap4-search): Ditto.
8699         (elmo-imap4-list): Ditto.
8700         (elmo-imap4-select-folder): Ditto.
8701         (elmo-imap4-copy-msgs): Ditto.
8702         (elmo-imap4-delete-msg-by-id): Ditto.
8703         (elmo-imap4-append-msg-by-id): Ditto.
8704         (elmo-imap4-append-msg): Ditto.
8705
8706 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
8707
8708         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
8709         when dired is used on XEmacs.
8710
8711 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
8712
8713         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8714         instead of `append'.
8715         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8716         `elmo-plugged-p' directly.
8717         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8718         of `elmo-plugged-p' directly.
8719
8720         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8721         Eliminate unused variable.  Use `memq' for checking a process status.
8722         Use `cons' instead of `append' for updating the connection cache.
8723         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8724         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8725
8726 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
8727
8728         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8729         `elmo-imap4-read-point' exactly.
8730
8731         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8732         the local variable `folder' to `mailbox'.
8733         Rename the argument `fld' to `folder'.
8734
8735 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
8736
8737         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8738         * elmo-imap4.el (elmo-imap4-commit): Ditto.
8739
8740 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
8741
8742         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8743         (elmo-pop3-number-uidl-hash): New buffer-local variable.
8744         (elmo-pop3-uidl-number-hash): Ditto.
8745         (elmo-pop3-size-hash): Ditto.
8746         (elmo-pop3-uidl-done): Ditto.
8747         (elmo-pop3-list-done): Ditto.
8748         (elmo-pop3-connection-get-process): New defmacro.
8749         (elmo-pop3-connection-get-buffer): Ditto.
8750         (elmo-pop3-close-connection): Delete buffer and process.
8751         (elmo-pop3-flush-connection): Don't delete buffer and process.
8752         (elmo-pop3-get-connection): Added optional argument `if-exists'.
8753         Setup UIDL and size hash.
8754         (elmo-pop3-send-command-no-erase): Deleted
8755         (elmo-pop3-send-command): Added optional argument `no-erase'.
8756         (elmo-pop3-parse-uidl-response): New function.
8757         (elmo-pop3-parse-list-response): Set size hash.
8758         (elmo-pop3-list-location): New function.
8759         (elmo-pop3-list-by-uidl-subr): Ditto.
8760         (elmo-pop3-list-by-list): Ditto.
8761         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8762         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8763         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8764         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8765         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8766         Use uidl.
8767         (elmo-pop3-uidl-to-number): New function.
8768         (elmo-pop3-number-to-uidl): Ditto.
8769         (elmo-pop3-number-to-size): Ditto.
8770         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8771         Set number by use of uidl.
8772         (elmo-pop3-msgdb-create-message): Likewise.
8773         Set size, loc-alist in msgdb.
8774         (elmo-pop3-read-msg): Set number by use of uidl.
8775         Added optional argument `msgdb'.
8776         (elmo-pop3-delete-msg): Ditto.
8777         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8778         (elmo-pop3-commit): Close connection.
8779
8780         * elmo-pipe.el (elmo-pipe-max-of-folder):
8781         Bind `elmo-pop3-use-uidl' as nil.
8782         (elmo-pipe-drain): Ditto.
8783         Call `elmo-commit'.
8784
8785         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8786         (elmo-msgdb-overview-entity-set-size): New defsubst.
8787
8788 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
8789
8790         * elmo-vars.el (elmo-use-killed-list): New variable
8791         (Renamed from `elmo-nntp-use-killed-list').
8792         (elmo-nntp-use-killed-list): Eliminated.
8793
8794         * elmo-msgdb.el (elmo-msgdb-expand-path):
8795         Changed expanding msgdb path for elmo-multi.
8796
8797         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8798         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8799         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8800         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8801         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8802         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
8803         (toplevel): Deleted time-stamp line.
8804
8805         * elmo2.el (elmo-clear-killed ): Defined as function
8806         (Abolished defining as a backend function).
8807         All other related modules are changed.
8808
8809 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
8810
8811         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
8812
8813 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
8814
8815         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
8816
8817 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
8818
8819         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
8820
8821 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
8822
8823         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
8824         asynchronous folder check.
8825
8826         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
8827
8828         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
8829         `elmo-nntp-use-killed-list'.
8830         (elmo-nntp-list-folder): Use killed list.
8831         (elmo-nntp-max-of-folder): Ditto.
8832         (elmo-nntp-msgdb-create): Set killed list.
8833
8834         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
8835
8836         * elmo2.el (elmo-clear-killed): New backend function.
8837         All other related modules are changed.
8838
8839 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
8840
8841         * elmo-util.el (elmo-imap4-spec-folder): Use
8842         `elmo-imap4-spec-mailbox'; Mark as obsolete.
8843         All callers changed.
8844
8845 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
8846
8847         * mmelmo-2.el (initialize-instance):
8848         Use `mime-buffer-entity-buffer-internal' instead of
8849         `mime-entity-buffer'.
8850
8851         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
8852         (mime-entity-body): Implemented.
8853         (mime-goto-header-start-point): Deleted.
8854         (mime-goto-body-end-point): Ditto.
8855         (mime-entity-point-min): Ditto.
8856         (mime-entity-point-max): Ditto.
8857         (mime-entity-children): Ditto.
8858         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
8859         instead of `mime-entity-buffer'.
8860         (mime-entity-header-buffer): Ditto.
8861         (mime-entity-body-buffer): Ditto.
8862         (mime-write-entity-content): Ditto.
8863
8864         * pldap.el (ldap-static-if): New macro.
8865         (toplevel): Use it instead of `static-if'.
8866
8867 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
8868
8869         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
8870         included in `attrs' argument.
8871
8872 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
8873
8874         * elmo-util.el (elmo-get-passwd): Use old backquote style.
8875
8876         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
8877         (ldap-ldif-safe-init-char-regexp): Ditto.
8878         (ldap-ldif-safe-string-regexp): Ditto.
8879         (ldap/ldif-safe-string-p): New macro.
8880         (ldap/ldif-insert-field): Ditto.
8881         (ldap-modify): Use it.
8882         (ldap-add): Ditto.
8883         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
8884         (ldap-decode-attribute): Decode only when `attr' is consp.
8885         (ldap-delete): Bind `ret'.
8886         (toplevel): Require 'cl at compile time.
8887         Removed (require 'poe) and (require 'std11).
8888         (pldap-version): Eliminated.
8889         (ldap-search-basic): Removed auth and dn binding.
8890         (ldap-ldif-field-name-regexp): New constant.
8891         (ldap-ldif-field-head-regexp): Ditto.
8892         (ldap-ldif-next-field-head-regexp): Ditto.
8893         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
8894         (ldap/field-end): New function.
8895         (ldap/field-body): Use it.
8896         (ldap/collect-field): Ditto.
8897         (ldap-search-basic): Use `ldap/field-body'.
8898
8899 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
8900
8901         * pldap.el (ldap-default-attribute-encoder): New user option.
8902         (ldap/field-body): Decode base64 string.
8903         (ldap/collect-field): Ditto.
8904         (ldap-encode-attribute): New function.
8905         (ldap-add-entries): Use it.
8906         (ldap-modify-entries): Ditto.
8907         (ldap-search-entries): Enclosed decoding function with
8908         `with-temp-buffer' and set as unibyte.
8909         (ldap-search-basic): Set process buffer as unibyte.
8910
8911         * elmo-util.el (elmo-folder-identical-system-p):
8912         Eliminated name space checking.
8913
8914         * pldap.el: New module.
8915         toplevel: Changed condition to detect built-in ldap feature.
8916         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
8917         (ldap-add): Added error handling.
8918         (ldap-modify): Ditto.
8919         (ldap-delete): Ditto.
8920
8921 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
8922
8923         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
8924         Initialize local variables with `let'.  Inline a temporary
8925         variable for the progress percentage.  Sort `setq' to reduce
8926         function call in the while-loop.
8927
8928         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
8929         into the conditional branch.
8930
8931 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
8932
8933         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
8934         Move a conditional out of the while-loop.
8935
8936 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8937
8938         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
8939         elmo-msgdb-overview-get-entity-by-number.
8940         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
8941         throw.
8942
8943 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
8944
8945         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
8946         the local variable for a packed number self descriptively.
8947
8948 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8949
8950         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
8951         * elmo-localdir.el (elmo-localdir-pack-number): Use
8952         `elmo-msgdb-overview-get-entity' instead of
8953         `elmo-msgdb-overview-get-entity-by-number'.
8954         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
8955         (elmo-msgdb-search-overview-entity): Removed.
8956         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
8957         by message-id or number.
8958         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
8959         instead of `elmo-msgdb-overview-get-entity-by-number'.
8960
8961 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8962
8963         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
8964         non-nil, use hash table for overview.
8965         (elmo-hash-maximum-size): New variable.
8966         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
8967         (elmo-msgdb-make-overview-hashtb): New function.
8968         (elmo-msgdb-clear-overview-hashtb): New function.
8969         (elmo-clear-hash-val): New macro.
8970         All other related modules are changed.
8971
8972 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
8973
8974         * elmo2.el (elmo-move-msgs): If there's other message with
8975         same message-id, don't use cache.
8976
8977 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
8978
8979         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
8980         number is already packed.
8981
8982 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
8983
8984         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
8985
8986 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8987
8988         * elmo-vars.el (elmo-display-progress-threshold): New variable.
8989         All other related modules are changed.
8990
8991 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
8992
8993         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
8994         of refiling failure on Maildir.
8995
8996 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8997
8998         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
8999         decoded mime-charset with cache.
9000         (elmo-msgdb-overview-entity-get-from): Ditto.
9001         (elmo-msgdb-overview-entity-get-subject): Ditto.
9002         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9003
9004 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9005
9006         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9007         (elmo-remove-passwd): Fill password with 0 before erase.
9008         * elmo-vars.el (elmo-passwd-life-time): New variable.
9009
9010 \f
9011 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9012
9013         * elmo-cache.el (elmo-buffer-cache-add):
9014         Set message cache buffer as unibyte.
9015
9016 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9017
9018         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9019         become nil.
9020
9021 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9022
9023         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9024         when display is finished.
9025         (elmo-nntp-msgdb-create): Ditto.
9026         (elmo-nntp-groups-read-response): Ditto.
9027         (elmo-nntp-retrieve-headers): Ditto.
9028         (elmo-nntp-msgdb-create-message): Ditto.
9029         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9030         (elmo-pop3-msgdb-create-message): Ditto.
9031
9032 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9033
9034         * elmo-maildir.el (elmo-maildir-msgdb-create):
9035         Use `elmo-msgdb-sort-by-date'.
9036
9037 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9038
9039         * elmo2.el (elmo-read-msg-no-cache):
9040         Eliminated arguments after `outbuf'.
9041         Don't use cache even if it exists.
9042         (elmo-read-msg): Don't pass arguments after `outbuf' to
9043         `elmo-read-msg-no-cache'.
9044
9045 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9046
9047         * elmo-archive.el (elmo-archive-list-folders):
9048         Use `file-name-directory' if base folder does not exist.
9049
9050 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9051
9052         * elmo-archive.el (elmo-archive-list-folders): Don't use
9053         `file-name-directory'.
9054
9055 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9056
9057         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9058         If `force' is non-nil, try flushing all operation queues.
9059
9060 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9061
9062         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9063         as-binary-process.
9064
9065 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9066
9067         * elmo-util.el (elmo-display-progress): Fixed.
9068
9069 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9070
9071         * elmo-util.el (elmo-display-progress): New function.
9072         All other related modules are changed.