93b3a571906ad8ae0e75ca8f9ad29cda5d4cf0e2
[elisp/wanderlust.git] / elmo / ChangeLog
1 2008-01-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
2
3         * elmo-imap4.el (elmo-folder-list-messages-plugged): Don't include
4         messages with \Deleted flag.
5         (elmo-folder-delete-messages-plugged): Ask before sending expunge
6         command if there are messages with \Deleted flag.
7
8 2007-04-24  Yoichi NAKAYAMA  <yoichi@geiin.org>
9
10         * elmo-pop3.el (elmo-pop3-auth-apop): Use more strict regexp.
11         http://seclists.org/bugtraq/2007/Apr/0018.html
12         (Suggested by Tatsuya Kinoshita)
13
14 2007-04-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
15
16         * elmo-imap4.el (elmo-folder-delete): Don't call close for mailbox
17         with \Noselect attribute.
18
19 2007-04-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
20
21         * elmo-imap4.el (elmo-folder-list-subfolders): Fix handling of
22         hierarchical folder structure with UW-imapd.
23
24 2007-02-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
25
26         * elmo-imap4.el (elmo-imap4-clear-login): Don't send LOGIN command
27         when the LOGINDISABLED capability is advertised.
28
29 2007-01-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
30
31         * elmo-msgdb.el (elmo-msgdb-extra-fields): Make it non-destructive.
32
33 2007-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
34
35         * elmo-shimbun.el (elmo-shimbun-update-overview): Add argnument
36         `entity'.
37         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview' only
38         if the message entity is exists.
39
40 2007-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
41
42         * elmo-util.el (elmo-msgdb-insert-file-header): Call
43         `elmo-delete-cr-buffer'.
44
45         * elmo-localdir.el (elmo-message-fetch-internal): Use
46         `insert-file-contents-as-raw-text' instead of
47         `insert-file-contents-as-binary'.
48
49         * elmo-maildir.el (elmo-map-message-fetch): Ditto.
50
51 2006-12-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
52
53         * elmo-imap4.el (elmo-network-initialize-session): Check to
54         retrieve a whole greeting message.
55
56 2006-11-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
57
58         * elmo-flag.el (elmo-folder-commit): Encode `.minfo' at save.
59
60 2006-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
61
62         * elmo-util.el (elmo-safe-plist-get): New alias or macro.
63         (elmo-progress-notify): Use it instead of `plist-get'.
64
65 2006-11-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
66
67         * elmo.el (elmo-generic-folder-append-messages): Remove unused
68         variable `table'.
69
70 2006-11-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
71
72         * elmo-pipe.el (elmo-folder-set-plugged): Define.
73
74 2006-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
75
76         * elsp-bsfilter.el (elmo-spam-bsfilter-use-remote): New user option.
77         (elmo-spam-list-spam-messages): Check it option.
78
79 2006-11-08  Tetsurou Okazaki  <okazaki@be.to>
80
81         * elmo-util.el (elmo-with-progress-display): Return the value
82         of the last form in `body'.
83
84 2006-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
85
86         * elmo-util.el (elmo-progress-start): Accept nil for `total'.  Set
87         `elmo-progress-counter' as t when a query callback returns nil.
88         (elmo-progress-clear): New function.
89         (elmo-progress-done): Split into `elmo-progress-clear'.
90         (elmo-progress-notify): Update a total slot when it is nil.
91         (elmo-with-progress-display): Call `elmo-progress-clear' in
92         unwind-protect and move calling `elmo-progress-done' to outside.
93
94         * elmo-imap4.el (elmo-imap4-find-next-line): Call
95         `elmo-progress-notify' with :total parameter instead of
96         `elmo-progress-counter-set-total'.
97
98 2006-11-07  Tetsurou Okazaki  <okazaki@be.to>
99
100         * elmo-util.el (elmo-cache-expire-by-age): Add docstring.
101         Make it interactive.
102         (elmo-progress-start): Avoid updating `elmo-progress-counter'
103         when a query callback returns nil.  Return a progress counter
104         instead of t whenever a start callback was called.
105
106 2006-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
107
108         * elmo-imap4.el (elmo-imap4-session-capable-p): New macro.
109         (elmo-imap4-send-command): Use it.
110         (elmo-network-initialize-session): Ditto.
111         (elmo-network-setup-session): Ditto.
112         (elmo-folder-msgdb-create-plugged): Ditto.
113
114 2006-11-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
115
116         * elmo-util.el (elmo-progress-done): Fix a miss refer to
117         `elmo-progress-counter'.
118
119 2006-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
120
121         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Abolish.
122         (elsp-bsfilter-list-spam-filter): New function.
123         (elsp-bsfilter-start-list-spam): Ditto.
124         (elsp-bsfilter-read-list-spam): Ditto.
125         (elmo-spam-list-spam-messages): Use async process to display
126         progress message by each message.
127
128 2006-11-03  Yoichi NAKAYAMA  <yoichi@geiin.org>
129
130         * elmo-spam.el (elmo-spam-process-messages-as-mbox): Fix problem
131         of flushing previously inserted message contents.
132
133         * elmo-imap4.el (elmo-folder-search): Fix return value.
134
135 2006-11-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
136
137         * elmo-imap4.el (elmo-imap4-find-next-line): Check whether a label
138         of reporter is enable or not.
139
140 2006-10-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
141
142         * elmo-util.el (elmo-list-bigger-diff): Abolish.
143         (elmo-display-progress): Ditto.
144         (elmo-progress-counter-alist): Ditto.
145         (elmo-progress-set): Ditto.
146         (elmo-progress-clear): Ditto.
147         (elmo-progress-counter-all-value): Rename to
148         `elmo-progress-counter-total'.
149         (elmo-progress-counter-format): Rename to
150         `elmo-progress-counter-action'.
151         (elmo-progress-counter): New internal variable.
152         (elmo-progress-callback-function): Ditto.
153         (elmo-progress-counter-label): New function.
154         (elmo-progress-counter-set-total): Ditto.
155         (elmo-progress-counter-set-action): Ditto.
156         (elmo-progress-call-callback): Ditto.
157         (elmo-progress-start): Ditto.
158         (elmo-progress-done): Ditto.
159         (elmo-progress-notify): Rewrite.
160         (elmo-with-progress-display): Remove first argument
161         `condition'. Add optional argument `var' in `spec'.
162
163         * elmo-vars.el (elmo-display-progress-threshold): Abolish.
164         (elmo-display-retrieval-progress-threshold): Ditto.
165         (elmo-inhibit-display-retrieval-progress): Ditto.
166
167         * Replace all pair of `elmo-progress-set' and
168         `elmo-progress-clear' into `elmo-with-progress-display'.
169
170         * Replace to call `elmo-display-progress' into pair of
171         `elmo-progress-notify' and `elmo-with-progress-display'.
172
173         * elmo-version.el (elmo-version): Up to 2.15.5.
174
175 2006-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
176
177         * elmo-imap4.el (elmo-imap4-arrival-filter): Use `case' instead of
178         `cond'.
179
180 2006-10-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
181
182         * elmo-imap4.el (elmo-imap4-arrival-filter): Call delete-region in
183         cleanup-forms [wl:14027].
184
185 2006-10-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
186
187         * elmo-flag.el (elmo-global-flag-set-internal): Use
188         `elmo-copy-file' by priority when the message is a file.
189
190 2006-10-01  Yoichi NAKAYAMA  <yoichi@geiin.org>
191
192         * elmo.el: Fix typo: disptch -> dispatch.
193
194 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
195
196         * elmo.el (elmo-file-tag): New class.
197         (elmo-append-messages-disptch-table): New constant.
198         (elmo-folder-type-p): New function.
199         (elmo-folder-append-messages): Redefine as function.
200
201         * elmo-null.el (elmo-folder-append-messages): Renamed from
202         `elmo-folder-append-messages'.
203
204         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
205         (elmo-folder-append-messages-*-maildir): Renamed from
206         `elmo-folder-append-messages'.
207
208         * elmo-localdir.el (elmo-localdir-folder): Inherit
209         `elmo-file-tag'.
210         (elmo-folder-append-messages-*-localdir): Renamed from
211         `elmo-folder-append-messages'.
212
213         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
214         from `elmo-folder-append-messages'.
215
216         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
217         `elmo-folder-append-messages'.
218
219         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
220         function.
221         (elmo-folder-append-messages-*-filter): Ditto.
222
223         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
224
225         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
226         (elmo-folder-append-messages-*-pipe): Renamed from
227         `elmo-folder-append-messages'.
228
229         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
230
231         * elmo-file.el (elmo-file-folder): Ditto.
232
233         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
234
235         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
236         from `elmo-folder-append-messages'
237
238 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
239
240         * elmo-map.el (elmo-location-map-setup): Change an argument
241         `locations' to optional.
242         (elmo-location-map-clear): Abolish.
243         (elmo-folder-clear): Follow the API change.
244
245         * elmo-pop3.el (elmo-folder-clear): Ditto.
246
247         * elmo-pop3.el (toplevel): Require elmo-map.
248         (elmo-pop3-folder): Inherit elmo-location-map and abolish
249         location-alist slot (All other related portions are changed).
250         (elmo-pop3-folder-use-uidl): New function.
251         (elmo-folder-msgdb-create): Don't sort message entities.
252         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
253         (elmo-pop3-number-to-size): Convert return value to number.
254         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
255         working buffer.
256
257         * elmo-map.el: Use `location-map' as a variable name for instance
258         instead of `mapper'.
259         (elmo-location-map-setup): Return location alist.
260         (elmo-location-map-update): Ditto.
261
262 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
263
264         * elmo-map.el (elmo-location-map): New class; split location and
265         number mapping from elmo-map-folder (All other related portions
266         are changed).
267
268         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
269         change.
270
271         * elmo-version.el (elmo-version): Up to 2.15.4.
272
273 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
274
275         * elmo-vars.el (elmo-use-hardlink): New user option.
276
277         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
278         `elmo-use-hardlink'.
279
280         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
281         killed-list.
282         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
283         instead of `*-internal'. Use `elmo-with-progress-display'.
284
285 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
286
287         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
288         `elmo-spam-process-messages-as-mbox'.
289
290         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
291
292 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
293
294         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
295         argument BUFFER of `call-process'.
296
297 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
298
299         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
300         args.
301         (elsp-bsfilter-list-spam-files): Ditto.
302
303 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
304
305         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
306         (elmo-spam-bsfilter-max-messages-per-process): New use option.
307         (elmo-spam-bsfilter-debug): Fix a group.
308         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
309         `--homedir'.
310         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
311         (elsp-bsfilter-list-spam-files): New function.
312         (elmo-spam-list-spam-messages): Define.
313         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
314         (elmo-spam-bsfilter-register-messages): New function.
315         (elmo-spam-register-spam-messages): Define.
316         (elmo-spam-register-good-messages): Ditto.
317
318         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
319
320         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
321         `nconc' and `consp'.
322
323 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
324
325         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
326         hash table to test whether a location is exists.
327
328 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
329
330         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
331         even if some error occurred.
332
333         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
334         meaningless unwind-protect.
335
336         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
337         start-number correctly.
338         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
339         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
340
341 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
342
343         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
344         (elmo-folder-initialize): Use it.
345         (elmo-global-flag-replace-referrer): New function.
346
347         * elmo.el (toplevel): Added autoload setting for
348         `elmo-global-flag-replace-referrer'.
349         (elmo-folder-rename): Rewrite the last change use
350         `elmo-global-flag-replace-referrer'.
351
352         * elmo-pipe.el (elmo-folder-rename): Call
353         `elmo-global-flag-replace-referrer'.
354
355 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
356
357         * elmo.el (elmo-folder-rename): Set meta data for global flags
358         follow the rename.
359
360 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
361
362         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
363         as 'not-loaded.
364         (elmo-folder-close): Ditto.
365         (elmo-filter-folder-number-list-loaded-p): New function.
366         (elmo-filter-folder-number-list): Check whether loaded or not.
367         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
368         of `elmo-filter-folder-number-list-internal'.
369         (elmo-folder-delete-messages): Ditto.
370         (elmo-folder-length): Check whether number-list is loaded or not.
371
372 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
373
374         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
375         field `real field' into each element of list.
376         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
377         (elmo-msgdb-message-entity-field): Ditto.
378         (modb-entity-ml-info-real-fields): New function.
379
380         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
381
382         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
383         `elmo-msgdb-extra-fields'.
384
385 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
386
387         * elmo-util.el (elmo-passwd-alist-load): Move point to min
388         position before read.
389
390 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
391
392         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
393         (elmo-global-flags-initialize): Ditto.
394
395 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
396
397         * elmo-archive.el (toplevel): Don't require emu, std11
398         and elmo-localdir.
399
400         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
401         definition.
402
403 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
404
405         * elmo.el (elmo-folder-confirm-appends): Display folder name.
406
407 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
408
409         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
410         literals.
411
412 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
413
414         * elmo-maildir.el (elmo-maildir-list-location): Reduce
415         `elmo-get-last-modification-time' call.
416
417 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
418
419         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
420         expression.
421         (elmo-maildir-set-mark): Ditto.
422         (elmo-maildir-delete-mark): Ditto.
423
424 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
425
426         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
427         optional argument `separators'.
428
429 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
430
431         * elmo.el (cache-changed): Abolish.
432         (status-changed): New signal.
433         (elmo-message-killed-p): New generic function and define for
434         elmo-folder.
435         (elmo-folder-recover-messages): Ditto.
436         (elmo-message-set-cached): Emit signal `status-changed' instead of
437         `cache-changed'.
438         (elmo-message-status): New macro.
439         (elmo-message-status-folder): Ditto.
440         (elmo-message-status-number): Ditto.
441         (elmo-message-status-set-flags): Ditto.
442         (elmo-message-status-set-killed): Ditto.
443         (elmo-message-status-flags): New function.
444         (elmo-message-status-cached-p): Ditto.
445         (elmo-message-status-killed-p): Ditto.
446
447         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
448         `status-changed' instead of `cache-changed'.
449         (elmo-folder-recover-messages): Define.
450         (elmo-message-killed-p): Ditto.
451
452         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
453         `status-changed' instead of `cache-changed'.
454
455         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
456         (elmo-message-killed-p): Define.
457         (elmo-folder-recover-messages): Ditto.
458
459         * elmo-version.el (elmo-version): Up to 2.15.3.
460
461 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
462
463         * elmo-signal.el (elmo-signal-bindings): Use cons to append
464         element into list.
465         (elmo-define-signal-handler): Add docstring.
466         (elmo-define-signal-filter): Ditto.
467
468         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
469
470 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
471
472         * elmo-util.el (elmo-flatten): Don't use recursive call.
473
474         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
475         assignment.
476         (elmo-folder-message-make-temp-files): Use `number-to-string'
477         instead of `int-to-string'.
478
479 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
480
481         * elmo-search.el (elmo-folder-delete-messages): Define.
482
483 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
484
485         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
486         customization type.
487         (elmo-mailing-list-count-spec-list): Ditto.
488
489         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
490         for `list-id'.
491
492 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
493
494         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
495         handling.
496
497 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
498
499         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
500         (elmo-mailing-list-count-spec-list): Ditto.
501
502         * elmo-util.el (elmo-map-until-success): New function.
503         (elmo-string-match-substring): Ditto.
504         (elmo-find-list-match-value): Ditto.
505
506         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
507         Removed.
508         (modb-entity-extract-ml-info-from-subject): Ditto.
509         (modb-entity-extract-ml-info-from-return-path): Ditto.
510         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
511         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
512         (modb-entity-extract-ml-info-from-mailman): Ditto.
513         (modb-entity-extract-mailing-list-info-functions): Ditto.
514         (modb-entity-extract-mailing-list-info): Rewrite with
515         `elmo-find-list-match-value'.
516
517 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
518
519         * elmo-net.el (elmo-network-session-retry-count): New user option.
520         (elmo-network-session-buffer-name): New internal function.
521         (elmo-network-session-buffer-create): Ditto.
522         (elmo-network-open-session): Retry open network session
523         `elmo-network-session-retry-count' times.
524
525 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
526
527         * elmo-util.el (elmo-list-filter): Rewritten.
528
529 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
530
531         * elmo-util.el (elmo-string-member): Allow symbol element in list.
532
533 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
534
535         * elmo-search.el (elmo-make-search-engine): Use prefix
536         `elmo-search-' for require symbol instead of `else-'.
537         (elmo-search-engine-extprog): New class.
538         (elmo-search-engine-do-search): Remove nil from argument
539         list. Added argument pattern to evaluate element as function.
540         (elmo-search-engine-local-file): Derived from
541         `elmo-search-engine-extprog'.
542         (elmo-search-engine-create-message-entity): Check existance of file.
543         (elmo-search-engine-fetch-message): Ditto.
544         (elmo-search-namazu-index): Follow the API change.
545         (elmo-search-grep-target): Ditto.
546
547 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
548
549         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
550         characters of working buffer.
551
552         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
553         Does not bind `default-mime-charset'.
554         (elmo-msgdb-create-message-entity-from-buffer): Removed
555         unnecessary local bind.
556
557         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
558         function.
559         (modb-entity-extract-mailing-list-info-functions): Added it.
560
561 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
562
563         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
564         when number and message-id are non-nil.
565
566         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
567
568         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
569         conditional steatment.
570         (elmo-pop3-auth-apop): Likewise.
571         (elmo-network-authenticate-session): Likewise.
572
573 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
574
575         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
576         symbol `fill-column'.
577         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
578         decode field value.
579
580         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
581         (elmo-decoded-field-body): Ditto.
582
583 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
584
585         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
586         `tokens' to `params'.
587
588 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
589
590         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
591         working buffer.
592
593 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
594
595         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
596         decide index.
597
598 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
599
600         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
601         Set default value as nil.
602         (toplevel): Register search engines by
603         `elmo-search-register-engine' if there are not defined.
604
605         * elmo.el (autoload): Added autoload setting for
606         `elmo-search-register-engine'.
607
608 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
609
610         * elmo.el (toplevel): `[' is redefined as the prefix of the search
611         folder instead of nmz folder.
612         (elmo-nmz-default-index-path): Added obsolete variable setting.
613         (elmo-nmz-index-alias-alist): Ditto.
614         (elmo-nmz-use-drive-letter): Ditto.
615
616         * elmo-search.el (elmo-search-register-engine): New function.
617
618         * elmo-nmz.el: Removed.
619
620         * elmo-version.el (elmo-version): Up to 2.15.2.
621
622 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
623
624         * elmo-search.el: New file.
625
626 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
627
628         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
629         condition `larger' and `smaller'.
630
631 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
632
633         * elmo-util.el (elmo-safe-filename): Rewrite to replace
634         `"' (double quote) into "_Q_".
635
636 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
637
638         * elmo-net.el (elmo-net-quote-chars): Abolish.
639         (elmo-net-format-quoted): Ditto.
640
641 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
642
643         * elmo.el (elmo-get-folder-function): New variable.
644         (elmo-get-folder): New function.
645         (elmo-folder-rename): Call `elmo-make-folder' with specified
646         mime-charset.
647
648         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
649         `elmo-make-folder'.
650         (elmo-split-subr): Ditto.
651
652         * elmo-multi.el (elmo-folder-initialize): Ditto.
653
654         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
655
656         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
657         (elmo-flag-get-folder): Ditto.
658
659         * elmo-filter.el (elmo-folder-initialize): Ditto.
660
661         * elmo-access.el (elmo-folder-initialize): Ditto.
662         (elmo-access-folder-update-children): Ditto.
663
664         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
665         (elmo-dop-queue-flush): Ditto.
666         (elmo-folder-append-buffer-dop-delayed): Ditto.
667         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
668         mime-charset.
669
670         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
671         instead of `elmo-make-folder'.
672         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
673         destination folder instead of send `elmo-folder-rename-internal'.
674
675         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
676         slot of subfolder instead of create it.
677
678 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
679
680         * elmo-util.el (elmo-collect-separators): New function.
681         (elmo-collect-separators-internal): Ditto.
682         (elmo-collect-trail-separators): Ditto.
683         (elmo-parse-separated-tokens): Ditto.
684         (elmo-parse-separated-tokens-internal): Ditto.
685         (elmo-quote-syntactical-element): Ditto.
686
687         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
688         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
689
690         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
691         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
692         (elmo-nntp-folder-list-subfolders): Quote a user name.
693
694         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
695         (elmo-net-parse-network): Abolish.
696         (elmo-net-folder-set-parameters): New function.
697         (elmo-folder-initialize): Follow the above change.
698
699         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
700         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
701         (elmo-folder-list-subfolders): Use
702         `elmo-quote-syntactical-element' instead of
703         `elmo-net-format-quoted' to quote mailbox and user name.
704
705 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
706
707         * elmo-util.el (elmo-token-valid-p): New function.
708         (elmo-parse-token): Add optional argument `requirement'.
709         (elmo-parse-prefixed-element): Likewise.
710
711         * elmo-net.el (elmo-net-quote-chars): Renamed from
712         `elmo-net-quote-chars-regexp'.
713         (elmo-net-format-quoted): Add optional argument `extra-chars'.
714
715         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
716         by info document. Check token `uidl' is started an alphabet.
717
718         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
719         by info document. Check token `user' is started an alphabet.
720
721         * elmo-imap4.el (elmo-folder-initialize): Ditto.
722         (elmo-folder-list-subfolders): Quote user.
723
724 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
725
726         * elmo-util.el (elmo-quoted-specials-list): New constant.
727         (elmo-quoted-token): New function.
728
729         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
730         (elmo-net-format-quoted): New function.
731         (elmo-net-parse-network): Ditto.
732         (elmo-folder-initialize): Use it.
733
734         * elmo-nntp.el (elmo-folder-initialize): Use
735         `elmo-net-parse-network' to parse network specification instead of
736         `elmo-folder-initialize#elmo-net'.
737
738         * elmo-pop3.el (elmo-folder-initialize): Ditto.
739
740         * elmo-imap4.el (elmo-folder-initialize): Ditto.
741         (elmo-folder-list-subfolders): Quote folder name by
742         `elmo-net-format-quoted'.
743
744 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
745
746         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
747         (elmo-folder-search): Use it.
748
749 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
750
751         * modb-standard.el (modb-standard-loaded-message-id): Use
752         `elmo-msgdb-message-entity-field'.
753
754 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
755
756         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
757         without filename.
758
759 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
760
761         * elmo-util.el (elmo-set-auto-coding): New function.
762         (elmo-object-load): Use it.
763
764 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
765
766         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
767         (elmo-time<): Define as alias of `elmo-time-less-p'.
768         (elmo-time-to-datevec): New function.
769
770         * elmo-date.el (elmo-time-to-days): New function.
771
772 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
773
774         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
775         is not cons cell.
776
777 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
778
779         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
780         parenthesis.
781
782         * elmo-util.el (elmo-map-recursive): New function.
783
784         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
785         (modb-entity-encode-string-recursive): Ditto.
786
787 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
788
789         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
790         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
791         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
792         compare sequence number when last modified time is nil.
793
794 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
795
796         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
797
798         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
799
800 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
801
802         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
803         modification time of the file.
804
805 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
806
807         * elmo-util.el (elmo-condition-optimize): Discriminated against
808         preserved fields, extra fields and the other weight.
809
810 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
811
812         * modb-entity.el (initialize-instance): Define.
813         (modb-entity-handler-mime-charset): New internal function.
814         (modb-standard-entity-set-field): Use it.
815         (elmo-msgdb-message-entity-field): Ditto.
816         (elmo-msgdb-message-entity-field): Ditto.
817
818         * modb.el (elmo-msgdb-match-condition): Rewrite with
819         `elmo-condition-match'.
820         (elmo-msgdb-match-condition-primitive): New function.
821
822         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
823         arguments `flags' and `numbers'.
824         (elmo-msgdb-match-condition-primitive): Abolished (merged to
825         `elmo-msgdb-message-match-condition').
826         (modb-buffer-entity-handler): New class.
827
828         * elmo.el (elmo-folder-search): Optimize condition to use
829         `elmo-condition-optimize'.
830         (elmo-message-buffer-match-condition): New function.
831         (elmo-message-match-condition): Use
832         `elmo-message-buffer-match-condition' instead of
833         `elmo-buffer-field-condition-match'.
834
835         * elmo-util.el (elmo-condition-match): New function.
836         (elmo-condition-optimize): Ditto.
837         (elmo-buffer-field-primitive-condition-match): Abolish.
838         (elmo-buffer-field-condition-match): Ditto.
839
840         * elmo-archive.el (elmo-archive-field-condition-match): Use
841         `elmo-message-buffer-match-condition' instead of
842         `elmo-buffer-field-condition-match'.
843
844 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
845
846         * elmo-flag.el (elmo-global-flags-initialize): Check the
847         existence of the flag directory.
848
849 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
850
851         * elmo-access.el (elmo-folder-initialize): Call
852         `elmo-multi-connect-signals'.
853
854         * elmo-pipe.el (elmo-folder-close): Define.
855
856         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
857         children folders.
858
859         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
860         with target folder.
861
862         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
863         `number'.
864
865         * elmo-multi.el (elmo-message-entity): Don't use return value of
866         `elmo-message-entity-set-number'.
867
868 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
869
870         * modb.el (modb-generic): Added slot `mime-charset'.
871
872         * modb-standard.el (modb-standard): Added slot `overview-handler'.
873         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
874         and `modb-entity-handler-dump-parameters'.
875         (modb-standard-default-entity-handler): Abolish.
876         (elmo-msgdb-message-entity-handler): Save created handler by
877         instance slot.
878
879         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
880         (modb-entity-handler-list-parameters): New method.
881         (modb-entity-handler-equal-p): New function.
882         (modb-entity-handler-dump-parameters): Ditto.
883         (modb-entity-parse-address-string): Encode return value.
884         (modb-entity-make-address-string): Decode argument value.
885         (modb-entity-decode-string-recursive): New function.
886         (modb-entity-encode-string-recursive): Ditto.
887         (modb-standard-entity-normalizer): Set to encode field value.
888         (modb-standard-entity-specializer): Follow the above change.
889         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
890         mime-charset of handler.
891         (elmo-msgdb-message-entity-field): Ditto.
892         (elmo-msgdb-copy-message-entity): Fixed reference to internal
893         structure.
894         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
895
896         * elmo.el (elmo-folder): Added slot `mime-charset'.
897         (elmo-make-folder): Added argument `mime-charset'.
898         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
899         `mime-charest'.
900
901         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
902         (elmo-make-msgdb): Likewise.
903
904         * elmo-internal.el (elmo-internal-folder-initialize): Call
905         `luna-make-entity' with :mime-charset parameter.
906
907 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
908
909         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
910         encoded words in `from' and `subject' field.
911
912 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
913
914         * modb.el (elmo-msgdb-message-field): Add argument `type'.
915         (elmo-msgdb-match-condition): Get handler from entity instead of
916         msgdb.
917
918         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
919         (modb-standard-load-entity): Treat new file format.
920         (modb-standard-save-entity-1): Save as new file format.
921         (modb-standard-save-entity): Split messages into section here.
922         (elmo-msgdb-message-field): Follow the API change.
923         (modb-standard-default-entity-handler): New internal variable.
924         (elmo-msgdb-message-entity-handler): Define.
925
926         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
927         to `elmo-vars.el'.
928         (modb-entity-field-extractor-alist): New user option.
929         (elmo-msgdb-message-entity-field): Removed argument `decode' and
930         added argument `type'.
931         (elmo-msgdb-copy-message-entity): Add optional argument
932         `make-handler'.
933         (modb-set-field-converter): New function.
934         (modb-convert-field-value): Ditto.
935         (modb-entity-string-decoder): Ditto.
936         (modb-entity-string-encoder): Ditto.
937         (modb-entity-parse-date-string): Ditto.
938         (modb-entity-make-date-string): Ditto.
939         (modb-entity-mime-decoder): Ditto.
940         (modb-entity-mime-encoder): Ditto.
941         (modb-entity-address-list-decoder): Ditto.
942         (modb-entity-address-list-encoder): Ditto.
943         (modb-entity-parse-address-string): Ditto.
944         (modb-entity-make-address-string): Ditto.
945         (modb-entity-create-field-indices): Ditto.
946         (modb-legacy-entity-field-slots): New constant.
947         (modb-legacy-entity-field-indices): Ditto.
948         (modb-legacy-entity-normalizer): New variable.
949         (modb-legacy-entity-specializer): Ditto.
950         (modb-legacy-entity-field-index): New macro.
951         (modb-legacy-entity-set-field): New function.
952         (modb-legacy-make-message-entity): Rewrite.
953         (elmo-msgdb-create-message-entity-from-buffer): Use
954         `elmo-msgdb-get-references-from-buffer'. Use
955         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
956         Use `modb-legacy-entity-set-field' instead of
957         `elmo-msgdb-message-entity-set-field'.
958         (elmo-msgdb-message-entity-field): Rewrite.
959         (elmo-msgdb-message-entity-set-field): Ditto.
960         (elmo-msgdb-copy-message-entity): Make new entity by
961         `make-handler' if it specified.
962         (elmo-msgdb-message-match-condition): Define a method of
963         `modb-entity-handler' and follow the API change.
964         (modb-standard-entity-handler): New class.
965         (modb-entity-extract-ml-info-from-x-sequence): New function.
966         (modb-entity-extract-ml-info-from-subject): Ditto.
967         (modb-entity-extract-ml-info-from-return-path): Ditto.
968         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
969         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
970         (modb-entity-extract-mailing-list-info): Ditto.
971         (modb-entity-extract-mailing-list-info-functions): New variable.
972
973         * elmo.el (elmo-message-field): Add optional argument `type'.
974
975         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
976         from `modb-entity.el'.
977
978         * elmo-util.el (elmo-object-load): Decode by coding-system from
979         `set-auto-coding-function'.
980         (elmo-object-save): Use `detect-mime-charset-region' and add
981         coding cookie if encode.
982         (elmo-msgdb-get-references-from-buffer): New function.
983         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
984
985         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
986
987         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
988         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
989         instead of `shimbun-make-header' and follow the API change.
990         (elmo-shimbun-update-overview): Follow the API change.
991         (elmo-map-folder-list-message-locations): Ditto.
992
993         * elmo-pipe.el (elmo-message-field): Ditto.
994
995         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
996         Ditto.
997
998         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
999
1000         * elmo-multi.el (elmo-message-field): Ditto.
1001
1002         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
1003         (elmo-msgdb-sort-by-date): Ditto.
1004         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
1005         `elmo-message-entity-field'.
1006         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
1007         change.
1008         (elmo-msgdb-overview-entity-get-from): Ditto.
1009         (elmo-msgdb-overview-entity-get-subject): Ditto.
1010         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1011         (elmo-msgdb-overview-entity-get-date): Ditto.
1012         (elmo-msgdb-overview-entity-get-to): Ditto.
1013         (elmo-msgdb-overview-entity-get-cc): Ditto.
1014
1015         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1016         (elmo-mime-collect-message/partial-pieces): Ditto.
1017
1018         * elmo-filter.el (elmo-message-field): Ditto.
1019
1020         * elmo-date.el (elmo-datevec-to-time): New function.
1021         (elmo-time-parse-date-string): Ditto.
1022         (elmo-time-make-date-string): Ditto.
1023         (elmo-time<): Ditto.
1024
1025         * elmo-version.el (elmo-version): Up to 2.15.1.
1026
1027 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
1028
1029         * elmo-flag.el (elmo-global-flags-initialize): Don't include
1030         member of elmo-local-flags.
1031
1032 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
1033
1034         * elmo-version.el (elmo-version): Up to 2.15.0.
1035
1036 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1037
1038         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
1039         `ignore-msgdb' is non-nil.
1040
1041 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1042
1043         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
1044         (elmo-condition-in-msgdb-p): Ditto.
1045         (elmo-file-field-primitive-condition-match): Ditto.
1046         (elmo-file-field-condition-match): Ditto.
1047
1048         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
1049
1050 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1051
1052         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
1053         subdirectories here.
1054         (elmo-global-flags-initialize): New function.
1055
1056         * elmo.el (toplevel): Added autoload setting for
1057         `elmo-global-flags-initialize'.
1058
1059 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
1060
1061         * elmo.el (message-number-changed): Define new signal.
1062         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
1063         message-number-changed signal.
1064         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1065         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1066         Respect `elmo-pack-number-check-strict'.
1067
1068 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1069
1070         * elmo-signal.el (elmo-connect-signal): Document.
1071         (elmo-emit-signal): Ditto.
1072         (elmo-emit-signal): It should pass source argument to filter and
1073         handler, not slot-source.
1074
1075 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1076
1077         * modb.el (elmo-msgdb-update-entity): New API and define generic
1078         implement.
1079
1080         * modb-standard.el (elmo-msgdb-update-entity): Define.
1081
1082         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
1083         API and define generic implement.
1084
1085         * elmo.el (update-overview): New singnal.
1086
1087         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
1088         `elmo-msgdb-update-entity' and emit signal `update-overview'.
1089         (elmo-message-entity-parent): Define.
1090
1091         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
1092         `update-overview'.
1093
1094         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
1095
1096         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
1097
1098 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
1099
1100         * elmo.el (elmo-folder-synchronize): Sort the return value of
1101         `elmo-list-diff'.
1102
1103         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
1104         list.
1105
1106 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1107
1108         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
1109         `default-enable-multibyte-characters'.
1110         (elmo-object-load): Use `with-temp-buffer' instead of
1111         `elmo-set-work-buf'.
1112         (elmo-object-save): Ditto.
1113         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
1114         `elmo-set-work-buf'.
1115         (elmo-decoded-field-body): Ditto.
1116
1117         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
1118
1119         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
1120         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
1121
1122         * elmo-version.el (elmo-version): Up to 2.13.3.
1123
1124 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
1125
1126         * elmo-util.el (elmo-list-diff): Fix the last change.
1127         Reverse order of result lists.
1128
1129 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
1130
1131         * modb-standard.el (elmo-msgdb-set-flag): Use
1132         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
1133         (elmo-msgdb-unset-flag): Ditto.
1134
1135         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
1136         `elmo-list-diff'.
1137
1138         * elmo-util.el (elmo-list-diff): Rewrite.
1139         (elmo-list-diff-nonsortable): New function.
1140
1141 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
1142
1143         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
1144         `elmo-multibypte-buffer-name'.  All referers are updated.
1145
1146 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1147
1148         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
1149         (elmo-mime-entity-fragment-p): New function.
1150         (mime-elmo-buffer-entity): Added slot `reassembled'.
1151         (elmo-message-mime-entity): Added 4th argument `reassemble'.
1152         (elmo-message-mime-entity-internal): New function (renamed from
1153         `elmo-message-mime-entity').
1154         (elmo-mime-inherit-field-list-from-enclosed): New constant.
1155         (elmo-mime-make-reassembled-mime-entity): New function.
1156         (elmo-message-reassembled-mime-entity): Ditto.
1157         (elmo-mime-collect-message/partial-pieces): Ditto.
1158
1159 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1160
1161         * elmo.el (elmo-message-fetch-string): Disable multibyte.
1162
1163         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
1164         (elmo-with-enable-multibyte): New macro.
1165
1166         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
1167
1168 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1169
1170         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
1171         argument `number'.
1172         (elmo-filter-connect-signals): Follow the above change.
1173
1174 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
1175
1176         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
1177
1178         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
1179         that only the first flag is used.
1180
1181 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1182
1183         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
1184         if available.
1185
1186 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1187
1188         * elmo-signal.el: New file.
1189
1190         * elmo.el (toplevel): Require elmo-signal.
1191         (flag-changing, flag-changed, cache-changed): New signal.
1192         (elmo-folder): Remove slog `handlers'.
1193         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1194         `elmo-folder-notify-event'.
1195         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1196         (elmo-folder-unset-flag): Ditto.
1197         (elmo-event-handler): Abolish.
1198         (elmo-event-handler-flag-changed): Ditto.
1199         (elmo-event-handler-cache-changed): Ditto.
1200         (elmo-folder-add-handler): Ditto.
1201         (elmo-folder-remove-handler): Ditto.
1202         (elmo-folder-notify-event): Ditto.
1203
1204         * elmo-pipe.el (toplevel): Require elmo-signal.
1205         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1206         (elmo-pipe-connect-signals): New function.
1207         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1208         (elmo-folder-set-flag): Ditto.
1209         (elmo-folder-unset-flag): Ditto.
1210         (elmo-message-set-cached): Ditto.
1211
1212         * elmo-multi.el (toplevel): Require elmo-signal.
1213         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1214         (elmo-multi-connect-signals): New function.
1215         (elmo-multi-map-numbers): Ditto.
1216         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1217         (elmo-message-fetch): Ditto.
1218         (elmo-folder-set-flag): Ditto.
1219         (elmo-folder-unset-flag): Ditto.
1220
1221         * elmo-filter.el (toplevel): Require elmo-signal.
1222         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1223         (elmo-filter-connect-signals): New function.
1224         (elmo-filter-add-flag-count): Ditto.
1225         (elmo-message-fetch): Does not call
1226         `elmo-filter-folder-countup-message-flags' and
1227         `elmo-folder-notify-event'.
1228         (elmo-message-set-cached): Ditto.
1229         (elmo-folder-set-flag): Ditto.
1230         (elmo-folder-unset-flag): Ditto.
1231
1232         * elmo-version.el (elmo-version): Up to 2.13.2.
1233
1234 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1235
1236         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1237         `flags'.
1238
1239 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1240
1241         * elmo-filter.el (elmo-message-set-cached): Call
1242         `elmo-folder-notify-event' with event `cache-changed'.
1243
1244         * elmo-multi.el (elmo-message-set-cached): Ditto.
1245
1246         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1247
1248 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1249
1250         * elmo.el (elmo-folder-encache): Abolish.
1251
1252 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1253
1254         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1255         (elmo-folder-next-message-number-dop): Return appropriate negative
1256         integer.
1257
1258 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1259
1260         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1261         clearing pending operations.
1262         (elmo-folder-next-message-number-dop): Return appropriate negative
1263         integer.
1264
1265 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1266
1267         * elmo.el (toplevel): Added autoload setting for `md5'.
1268         (elmo-msgdb-path-encode-threshold): New user option.
1269         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1270         longer than `elmo-msgdb-path-encode-threshold'.
1271
1272         * elmo-flag.el (elmo-global-mark-migrate): Use
1273         `elmo-folder-expand-msgdb-path' instead of
1274         `elmo-folder-msgdb-path'.
1275
1276 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1277
1278         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1279         element of the difference is nil.
1280
1281 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1282
1283         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1284         to the check logic of file systems which are weak in colon character.
1285
1286 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1287
1288         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1289
1290 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1291
1292         * elmo-maildir.el (elmo-maildir-move-file): New function.
1293         (elmo-folder-append-buffer): Use it.
1294         (elmo-folder-append-messages): Ditto.
1295         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1296
1297         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1298         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1299
1300         * elmo-maildir.el (elmo-maildir-separator): New user option.
1301         (elmo-maildir-adjust-separator): New macro.
1302         (elmo-maildir-list-location): Use it.
1303         (elmo-maildir-update-current): Ditto.
1304         (elmo-maildir-set-mark): Ditto.
1305         (elmo-maildir-delete-mark): Ditto.
1306         (These changes are based on Hiroya Murata's patch [wl: 13437])
1307
1308 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1309
1310         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1311
1312 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1313
1314         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1315         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1316         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1317
1318 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1319
1320         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1321         Use `with-temp-buffer'.
1322
1323 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1324
1325         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1326
1327         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1328         `wl-read-search-condition').
1329         (elmo-read-search-condition-internal): Likewise.
1330
1331         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1332         (elmo-flag-valid-p): New function.
1333         (elmo-folder-initialize): Check flag name is valid.
1334
1335 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1336
1337         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1338         delimiter to obtain root mailbox itself.
1339
1340 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1341
1342         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1343         type mismatch.
1344
1345 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1346
1347         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1348         as t.
1349
1350 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1351
1352         * elmo-shimbun.el (toplevel): Require cl at compile.
1353
1354         * elmo-nntp.el (toplevel): Ditto.
1355
1356         * elmo-nmz.el (toplevel): Ditto.
1357
1358         * elmo-multi.el (toplevel): Ditto.
1359
1360         * elmo-file.el (toplevel): Ditto.
1361
1362         * elmo-dop.el (toplevel): Ditto.
1363
1364         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1365
1366 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1367
1368         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1369         as nil.
1370
1371         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1372         size of elmo-message-fetch-internal is 0 byte.
1373
1374 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1375
1376         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1377
1378 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1379
1380         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1381         always plugged.
1382
1383 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1384
1385         * elmo-maildir.el (elmo-map-message-fetch): Call
1386         `elmo-map-folder-set-flag'.
1387
1388         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1389         (elmo-message-fetch): Merge from
1390         `elmo-message-fetch-with-cache-process'.
1391
1392         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1393         (elmo-message-fetch): Define.
1394
1395         * elmo-nntp.el (elmo-message-fetch): Renamed from
1396         `elmo-message-fetch-with-cache-process'.
1397
1398         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1399         (elmo-message-fetch): Define.
1400
1401         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1402         search-key.
1403
1404         * elmo-shimbun.el (shimbun-mua-search-id): Use
1405         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1406         (elmo-shimbun-folder-shimbun-header): Ditto.
1407         (elmo-shimbun-get-headers): Ditto.
1408         (elmo-shimbun-update-overview): Ditto.
1409
1410         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1411
1412         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1413         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1414
1415 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1416
1417         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1418         message is cached.
1419         (elmo-message-fetch-string): Fixed argument.
1420
1421 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1422
1423         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1424         exchange order of arguments `section' and `unread'.
1425         (elmo-message-encache): Follow the API change.
1426         (elmo-message-match-condition): Ditto.
1427         (elmo-generic-folder-append-messages): Ditto.
1428         (elmo-message-fetch-string): New function.
1429
1430         * elmo-split.el (elmo-split-subr): Ditto.
1431
1432         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1433
1434         * elmo-pipe.el (elmo-message-fetch): Ditto.
1435
1436         * elmo-multi.el (elmo-message-fetch): Ditto.
1437
1438         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1439
1440         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1441
1442         * elmo-filter.el (elmo-message-fetch): Ditto.
1443
1444         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1445
1446         * elmo-imap4.el (mime-imap-location-section-body): Use
1447         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1448         follow the API change.
1449
1450 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1451
1452         * elmo-access.el: New file.
1453
1454         * elmo-null.el: Ditto.
1455
1456         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1457
1458 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1459
1460         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1461         (elmo-network-session): New attribute `last-accessed'.
1462         (elmo-network-get-session): Discard network cache if elapsed time
1463         since last-accessed is larger than elmo-network-session-idle-timeout.
1464
1465 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1466
1467         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1468         and added `number', `require-entireness'.
1469         (elmo-find-fetch-strategy): Rewrite.
1470         (elmo-message-fetch): Unset `unread' flag when argument unread is
1471         non-nil.
1472
1473         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1474
1475         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1476         (elmo-message-fetch): Notify event `flag-changed'.
1477
1478         * elmo-pipe.el: Likewise.
1479
1480         * elmo-mime.el (elmo-mime-entity): New class.
1481         (elmo-mime-entity-display-p): New generic function.
1482         (elmo-mime-entity-display): Ditto.
1483         (elmo-mime-entity-display-as-is): Ditto.
1484         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1485         elmo-mime-entity.
1486         (elmo-make-mime-message-location): Removed.
1487         (elmo-mime-message-display): Ditto.
1488         (elmo-mime-display-as-is): Ditto.
1489         (elmo-message-mime-entity): New function.
1490
1491         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1492
1493         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1494         change.
1495         (elmo-message-fetch): Re-count flagged message number and notify
1496         event `flag-changed'.
1497
1498         * elmo-version.el (elmo-version): Up to 2.13.1.
1499
1500 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1501
1502         * elmo-filter.el (elmo-message-field): Define.
1503         (elmo-message-set-field): Ditto.
1504
1505 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1506
1507         * elmo.el (elmo-message-set-cached): Call
1508         `elmo-folder-notify-event' with cache-changed.
1509         (elmo-event-handler-cache-changed): New generic function.
1510
1511 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1512
1513         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1514         instead of elmo-add-name-to-file.
1515         (elmo-folder-append-messages): Ditto.
1516
1517 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1518
1519         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1520
1521 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1522
1523         * elmo-version.el (elmo-version): Up to 2.13.0.
1524
1525         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1526         `auto'.
1527
1528         * modb-standard.el (modb-standard-economize-entity-size): Changed
1529         default value to `t'.
1530
1531         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1532         `standard'.
1533
1534         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1535         after parsing greeting string.
1536
1537 2004-11-23  Daishi Kato <daishi@axlight.com>
1538
1539         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1540         New user option.
1541         (elmo-spam-spamoracle-call): Use it.
1542
1543 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1544
1545         * elmo.el (elmo-message-accessible-p): Message in dop spool
1546         is accessible.
1547
1548 2004-11-23  Daishi Kato <daishi@axlight.com>
1549
1550         * elsp-spamoracle.el: New file.
1551
1552 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1553
1554         * elmo.el (elmo-message-flags-for-append): New function.
1555         (elmo-generic-folder-append-messages): Use it.
1556
1557         * elmo-split.el (elmo-split-subr): Ditto.
1558
1559         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1560         `flags' and use elmo-folder-append-buffer instead of
1561         write-region-as-binary.
1562         (elmo-dop-filter-pending-messages): New function.
1563         (elmo-folder-append-buffer-dop): Call
1564         elmo-dop-spool-folder-append-buffer with `flag'.
1565         (elmo-folder-set-flag-dop): Filter messages by
1566         elmo-dop-filter-pending-messages.
1567         (elmo-folder-unset-flag-dop): Ditto.
1568         (elmo-folder-append-buffer-dop-delayed): Use
1569         elmo-message-flags-for-append to get flags of the message and
1570         simplify.
1571
1572 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1573
1574         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1575
1576 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1577
1578         * elmo.el (elmo-folder): Added handlers slot.
1579         (elmo-event-handler): New class.
1580         (elmo-event-handler-flag-changed): New API.
1581         (elmo-folder-add-handler): New function.
1582         (elmo-folder-remove-handler): Ditto.
1583         (elmo-folder-notify-event): Ditto.
1584         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1585         `flag-changed'.
1586         (elmo-folder-unset-flag): Ditto.
1587
1588         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1589         (elmo-folder-unset-flag): Ditto.
1590
1591         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1592         (elmo-folder-unset-flag): Ditto.
1593
1594         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1595         (elmo-folder-unset-flag): Ditto.
1596
1597         * elmo-version.el (elmo-version): Up to 2.11.33.
1598
1599 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1600
1601         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1602
1603 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1604
1605         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1606
1607         * elmo-flag.el (elmo-folder-unset-flag): Define.
1608         (elmo-global-flag-detach): Do process when the flag is not target
1609         flag.
1610
1611 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1612
1613         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1614         variable.
1615         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1616
1617 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1618
1619         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1620         function.
1621         (elmo-folder-delete-messages): Detach messages before delete
1622         messages from target folder.
1623         (elmo-folder-detach-messages): Set updated number-list to slot.
1624
1625 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1626
1627         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1628
1629 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1630
1631         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1632
1633 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1634
1635         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1636         internal use only).
1637         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1638         not modified.
1639         (elmo-folder-delete-messages): Define.
1640         (elmo-folder-move-messages): Don't call
1641         `elmo-folder-detach-messages'.
1642         (elmo-folder-synchronize): Rewrite.
1643         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1644
1645         * elmo-util.el (elmo-last): New function.
1646         (elmo-set-list): Ditto.
1647         (elmo-number-set-delete-list): Ditto.
1648         (elmo-number-set-delete): Ditto.
1649
1650         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1651
1652         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1653         `elmo-folder-delete-messages' and don't delete location map.
1654         (elmo-folder-detach-messages): Define.
1655
1656         * elmo-imap4.el (elmo-folder-delete): Use
1657         `elmo-folder-delete-messages-internal' instead of
1658         `elmo-folder-delete-messages'.
1659
1660         * elmo-filter.el (elmo-folder-delete-messages): Call
1661         `elmo-folder-detach-messages'.
1662         (elmo-folder-detach-messages): Don't call
1663         `elmo-folder-detach-messages' for target folder.
1664
1665         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1666         message deletion is succeeded.
1667
1668         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1669
1670         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1671         from `elmo-folder-delete-messages'.
1672
1673         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1674
1675         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1676
1677         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1678
1679         * elmo-version.el (elmo-version): Up to 2.11.32.
1680
1681 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1682
1683         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1684         (elmo-global-flag-list): Added obsolete variable setting.
1685
1686         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1687
1688         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1689         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1690         `elmo-mime-display-header-analysis' is nil.
1691
1692         * elmo-flag.el (elmo-global-flags): Renamed from
1693         `elmo-global-flag-list' (All other related portions are changed).
1694         (elmo-local-flags): New variable.
1695         (elmo-local-flag-p): New function.
1696         (elmo-global-flag-set-internal): Cause an error when flag is not
1697         global.
1698
1699 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1700
1701         * elmo-util.el (elmo-concat-path): Treat empty path.
1702
1703 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1704
1705         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1706         field-or-fields).
1707         (elmo-split-address-match): Ditto.
1708         (elmo-split-equal): Ditto.
1709         (elmo-split-match): Ditto.
1710
1711 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1712
1713         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1714         (elmo-generic-folder-append-messages): If src message exists but
1715         has no flag, pass (read) for the FLAG argument of
1716         `elmo-folder-append-buffer'. Otherwise, pass nil.
1717
1718         * elmo-split.el (elmo-split-subr): Likewise.
1719
1720         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1721
1722         * elmo-multi.el (elmo-message-flags): Ditto.
1723
1724         * elmo-filter.el (elmo-message-flags): Ditto.
1725
1726         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1727         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1728         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1729         
1730 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1731
1732         * elmo-split.el (elmo-split-rule): Update comment.
1733         (elmo-split-address-equal): Allow 2nd argument to be a list.
1734         (elmo-split-address-match): Ditto.
1735         (elmo-split-equal): Ditto.
1736         (elmo-split-match): Ditto.
1737
1738 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1739
1740         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1741         (elmo-folder-append-msgdb): Don't treat `read'.
1742         (elmo-message-flags): Don't return `read'.
1743
1744         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1745         (elmo-folder-unset-read-delayed): Ditto.
1746
1747         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1748
1749 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1750
1751         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1752         deletion.
1753
1754 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1755
1756         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1757         header.
1758
1759 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1760
1761         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1762         here.
1763         (elmo-msgdb-save): Bind inhibit-quit.
1764         (modb-standard-message-entity): Ditto.
1765
1766 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1767
1768         * elmo-database.el: No need to require elmo-msgdb.
1769
1770 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1771
1772         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1773         instead of `elmo-list-subdirectories'.
1774
1775 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1776
1777         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1778         group entry.
1779         (elmo-folder-exists-p): "[" is empty.
1780         (elmo-folder-list-subfolders): Define.
1781         (elmo-folder-have-subfolder-p): Ditto.
1782
1783 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1784
1785         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1786
1787 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1788
1789         * elmo-filter.el (elmo-folder-local-p): Define.
1790
1791 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1792
1793         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1794         when entity is garbaged.
1795         (modb-standard-save-entity-1): Don't modify the original entity.
1796
1797 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1798
1799         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1800
1801 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1802
1803         * elmo.el (elmo-strict-folder-diff): Use
1804         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1805
1806 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1807
1808         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1809         (elmo-msgdb-message-number): Ditto.
1810         (elmo-msgdb-message-field): Ditto.
1811
1812         * modb-standard.el (modb-standard-economize-entity-size): New user
1813         option.
1814         (modb-standard-loaded-message-id): New inline function.
1815         (modb-standard-load-entity): Use it.
1816         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1817         throw message-id string away.
1818         (elmo-msgdb-flag-available-p): Define.
1819         (elmo-msgdb-message-number): Ditto.
1820         (elmo-msgdb-message-field): Ditto.
1821
1822         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1823         (suppoted -> supported).
1824         (modb-legacy-supported-flag-p): Ditto.
1825         (elmo-msgdb-set-flag): Ditto.
1826         (elmo-msgdb-unset-flag): Ditto.
1827         (elmo-msgdb-flag-available-p): Define.
1828
1829         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1830         is `t', treat it as legacy entity.
1831         
1832         * elmo.el (elmo-message-flag-available-p): New generic function.
1833         (elmo-message-number): Ditto.
1834         (elmo-message-field): Use `elmo-msgdb-message-field'.
1835
1836         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1837
1838         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1839         (elmo-message-number): Ditto.
1840
1841         * elmo-multi.el (elmo-message-number): Define.
1842         (elmo-message-flag-available-p): Ditto.
1843
1844         * elmo-filter.el (elmo-message-flag-available-p): Define.
1845         (elmo-message-number): Ditto.
1846
1847         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1848         (elmo-folder-initialize): Load `max-number'.
1849         (elmo-folder-commit): Save it.
1850         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1851         (elmo-global-flag-set-internal): Set up max-number slot.
1852
1853 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1854
1855         * elmo-version.el (elmo-version): Up to 2.11.31.
1856
1857 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1858
1859         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1860         unibyte string of the current buffer for the argument of `md5'
1861         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1862
1863 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1864
1865         * modb-legacy.el (modb-legacy-flag-list): New constant.
1866         (modb-legacy-suppoted-flag-p): New internal function.
1867         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1868         (elmo-msgdb-unset-flag): Ditto.
1869
1870 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1871
1872         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1873
1874         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1875         from msgdb.
1876
1877 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1878
1879         * elmo-multi.el (elmo-folder-count-flags): Changed return value
1880         (follow the API change).
1881
1882         * elmo-filter.el (elmo-folder-count-flags): Ditto.
1883
1884 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
1885
1886         * modb-standard.el (modb-standard-digest-flags): Abolish.
1887         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
1888
1889         * elmo-vars.el (elmo-digest-flags): New variable.
1890         (elmo-preserved-flags): Moved from elmo-flag.el.
1891
1892         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
1893         (elmo-imap4-flag-to-imap-criteria): Ditto.
1894         (elmo-imap4-folder-list-flagged): Use it.
1895
1896         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
1897
1898         * elmo.el (elmo-folder-count-flags): Changed return value.
1899
1900         * elmo-flag.el (elmo-preserved-flags): New variable.
1901         (elmo-get-global-flags): Use it.
1902
1903         * modb-standard.el (modb-standard-digest-flags): New variable.
1904         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
1905         Changed behavior of `any'.
1906
1907         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1908         which are defined the Internet draft
1909         (draft-melnikov-imap-keywords-03.txt).
1910         (elmo-imap4-flags-to-imap): New function.
1911         (elmo-folder-append-buffer): Use it.
1912
1913         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1914         in the docstring.
1915
1916         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1917         avoid the bug of Emacs 21.3.
1918
1919 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
1920
1921         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1922         function find-coding-system does not exist.
1923
1924 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1925
1926         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1927         parsing.
1928
1929 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1930
1931         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1932         response codes.
1933
1934 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1935
1936         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1937         (elmo-network-close-session): Follow the changes in
1938         `elmo-pop3-read-response'.
1939         (elmo-pop3-auth-user): Ditto.
1940         (elmo-pop3-auth-apop): Ditto.
1941         (elmo-network-initialize-session): Ditto.
1942         (elmo-network-authenticate-session): Ditto.
1943         (elmo-network-setup-session): Ditto.
1944         (elmo-folder-status): Ditto.
1945         (elmo-message-fetch-plugged): Ditto.
1946         (elmo-pop3-delete-msg): Ditto.
1947
1948 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1949
1950         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1951         on failure.
1952
1953 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1954
1955         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1956         style.
1957         (elmo-bind-directory): Ditto.
1958
1959 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1960
1961         * elmo.el (elmo-folder-append-messages): Note on return value.
1962         * elmo-archive.el (elmo-folder-append-messages): Don't return
1963         message numbers which could not be appended.
1964
1965 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1966
1967         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1968
1969 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1970
1971         * elmo-version.el (elmo-version): Up to 2.11.30.
1972
1973 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1974
1975         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1976         `mask'.
1977
1978         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1979
1980         * elmo-multi.el (elmo-folder-synchronize): Likewise.
1981         (elmo-multi-split-numbers): Add elmo-folder object into each
1982         element of return value at first.
1983         (elmo-folder-delete-messages): Follow the above change.
1984         (elmo-folder-detach-messages): Ditto.
1985
1986         * elmo-filter.el (elmo-folder-synchronize): Minimize message
1987         number which is synchronized in target folder.
1988
1989 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1990
1991         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1992         Change default value to symbol `all'.
1993         (elmo-map-message-fetch): Change condition to update overview
1994         follow the above.
1995
1996 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1997
1998         * elmo-shimbun.el (elmo-map-message-fetch): Change default
1999         behavior to update overview.
2000         (elmo-shimbun-update-overview-folder-list): Note it.
2001
2002 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2003
2004         * modb-standard.el (modb-standard-message-entity): Avoid infinite
2005         recursive call.
2006
2007 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2008
2009         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
2010         buffer-disable-undo, it is unnecessary.
2011         (elmo-spam-register-good-messages): Ditto.
2012
2013         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2014         Ditto.
2015
2016         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
2017
2018 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2019
2020         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
2021         (elmo-set-work-buf): Use set-buffer-multibyte instead of
2022         elmo-set-buffer-multibyte.
2023         (elmo-object-load): Ditto.
2024         (elmo-save-buffer): Ditto.
2025         (elmo-delete-char): Ditto.
2026         (elmo-file-field-primitive-condition-match): Ditto.
2027         (elmo-mime-string): Ditto.
2028
2029         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
2030         (elmo-archive-field-condition-match): Ditto.
2031
2032         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
2033
2034         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
2035
2036         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
2037         (elmo-nntp-msgdb-create-message): Ditto.
2038
2039         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2040
2041         * elmo.el (elmo-message-match-condition): Ditto.
2042         (elmo-message-match-condition): Ditto.
2043
2044         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2045         Ditto.
2046
2047         * elmo-version.el (elmo-version): Up to 2.11.29.
2048
2049         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
2050         (elsp-header): New backend.
2051
2052         * elmo-util.el (elmo-decoded-field-body): New function.
2053
2054 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2055
2056         * elmo-version.el (elmo-version): Up to 2.11.28.
2057
2058 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2059
2060         * elmo-filter.el: Rewrite.
2061
2062         * elmo-version.el (elmo-version): Up to 2.11.27.
2063
2064 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
2065
2066         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
2067         msgdb path for the localdir folder with absolute path.
2068
2069         * utf7.el: Synch up with latest gnus/utf7.el;
2070         Modified for latest Emacs.
2071
2072 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2073
2074         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
2075         shimbun backend couldn't open.
2076
2077 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
2078
2079         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
2080         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
2081         when a destination folder is a filter folder.
2082
2083 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2084
2085         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
2086         (elmo-generic-folder-append-messages): Call elmo-message-flags
2087         with argument `msgid'.
2088
2089         * elmo-split.el (elmo-split-subr): Ditto.
2090
2091         * elmo-pipe.el (elmo-message-flags): Follow the API change.
2092
2093         * elmo-multi.el (elmo-message-flags): Ditto.
2094
2095 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2096
2097         * elmo.el (elmo-folder): Add new slot `flag-table'.
2098         (elmo-folder-flag-table): New API.
2099         (elmo-folder-close-flag-table): Ditto.
2100         (elmo-folder-preserve-flags): New function.
2101         (elmo-generic-folder-append-messages): Use
2102         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
2103         Flag of a non-registered message, it sets to nil.
2104         Does not set flag to flag-table.
2105
2106         * elmo-maildir.el (elmo-folder-append-buffer): Use
2107         `elmo-folder-preserve-flags'.
2108         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2109         `elmo-folder-close-flag-table'.
2110
2111         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
2112         (elmo-archive-folder-append-buffer): Use
2113         `elmo-folder-preserve-flags'.
2114
2115         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
2116
2117         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
2118
2119         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2120         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2121         `elmo-folder-close-flag-table'.
2122
2123         * elmo-version.el (elmo-version): Up to 2.11.26.
2124
2125 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2126
2127         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
2128
2129         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
2130         md5's 4th and 5th argument (non-existent in flim one).
2131
2132 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2133
2134         * elmo-split.el (elmo-split-subr): Flag of a non-registered
2135         message, It sets to nil.
2136
2137 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2138
2139         * elmo.el (elmo-folder-list-messages): Merge lists only if both
2140         list is non-nil.
2141
2142 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
2143
2144         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
2145
2146         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
2147
2148         * elmo-util.el (elmo-uniq-sorted-list): New function.
2149         (elmo-make-number-list): Ditto.
2150         (elmo-number-set-to-number-list): Use elmo-make-number-list
2151         and don't use nreverse.
2152
2153 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2154
2155         * elmo-version.el (elmo-version): Up to 2.11.25.
2156
2157 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2158
2159         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
2160         field not exists in message, Use md5 message digest of header.
2161
2162 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2163
2164         * elmo.el (elmo-folder-append-buffer): Add note on return value.
2165         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
2166         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2167         * elmo-split.el (elmo-split-subr): Check return value of
2168         elmo-folder-append-buffer.
2169
2170         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
2171         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2172
2173         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
2174         message-id.
2175
2176 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
2177
2178         * elmo-split.el (elmo-split-subr): Append message with flag.
2179
2180         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
2181         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
2182         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2183
2184 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
2185
2186         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
2187         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
2188         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2189
2190 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
2191
2192         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2193         with a function call of `process-buffer'.  All callers are updated.
2194         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2195         Remove redundant `set-buffer' in a while loop.
2196
2197 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2198
2199         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2200         calls.
2201
2202 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2203
2204         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2205         elsp-spamfilter-register-buffer-internal with current buffer.
2206         (elmo-spam-register-spam-buffer): Ditto.
2207         (elmo-spam-register-good-buffer): Ditto.
2208
2209 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2210
2211         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2212         if it is not contained in the response(A workaround for courier-imap).
2213
2214 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2215
2216         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2217         parenthesis.
2218
2219 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2220
2221         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2222         range.
2223
2224 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2225
2226         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2227         of nconc.
2228
2229         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2230         argument handler.
2231         (elmo-msgdb-message-match-condition): Follow the change above.
2232
2233 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2234
2235         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2236         folder name.
2237
2238 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2239
2240         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2241
2242 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2243
2244         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2245
2246 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2247
2248         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2249         not found.
2250
2251 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2252
2253         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2254         value.
2255         (elmo-file-command-argument): Undo last change for cygwin.
2256         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2257         Don't return nil.
2258         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2259
2260 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2261
2262         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2263         value returned from elmo-file-find is nil.
2264
2265 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2266
2267         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2268         to elmo-vars.el.
2269
2270         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2271         instead of insert-file-contents-as-binary.
2272         (elmo-message-set-field): New generic function.
2273
2274         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2275         behavior change on `split-string'.
2276
2277         * elmo-file.el (elmo-file-find): New function.
2278         (elmo-file-command): New user option.
2279         (elmo-file-command-argument): Ditto.
2280         (elmo-file-fetch-max-size): Ditto.
2281         (elmo-file-detect-format): New function.
2282         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2283         Use elmo-file-detect-format.
2284         (elmo-map-folder-list-message-locations): Don't treat directories.
2285
2286 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2287
2288         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2289         (elmo-passwd-alist-clear): Shred password before clear.
2290         (elmo-remove-passwd): Remove all mached pair.
2291
2292 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2293
2294         * elmo.el (elmo-folder-synchronize): Fix description of the return
2295         value.
2296
2297 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2298
2299         * elmo.el (elmo-message-fetch-bodystructure): New method.
2300         (elmo-message-fetch-bodystructure): Define default.
2301
2302         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2303         elmo-message-fetch-bodystructure.
2304         (elmo-message-fetch-bodystructure): Define.
2305
2306         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2307
2308 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2309
2310         * elmo-filter.el (elmo-message-folder): Define.
2311
2312 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2313
2314         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2315         elmo-delete-cr-buffer.
2316
2317         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2318
2319         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2320
2321         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2322
2323         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2324         type seems to be a text.
2325
2326 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2327
2328         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2329         (elmo-spam-register-good-buffer): Ditto.
2330         (elmo-spam-spamassassin-register-messages): Ditto.
2331
2332         * elmo-util.el (elmo-string-member-ignore-case): Define with
2333         static-cond.
2334
2335 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2336
2337         * elmo.el (elmo-folder-type): Undo last change.
2338
2339         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2340
2341         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2342         warnings.
2343
2344         * elmo-file.el: New file.
2345         
2346         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2347
2348         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2349         variable.
2350         (elmo-spam-spamassassin-register-messages): New inline function.
2351         (elmo-spam-register-spam-messages): Define.
2352         (elmo-spam-register-good-messages): Ditto.
2353
2354         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2355         Fixed typo.
2356
2357         * elmo.el (toplevel): Added autoload setting for
2358         `elmo-get-global-flags'.
2359         (elmo-message-has-global-flag-p): New function.
2360         (elmo-message-set-global-flags): Ditto.
2361         (elmo-folder-type): Improvement for name: format.
2362
2363         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2364         availability of keyword flags.
2365         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2366         (elmo-folder-list-flagged-plugged): Renamed from
2367         elmo-folder-list-flagged-unplugged.
2368         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2369         accept any flag as keyword flag.
2370         (elmo-folder-set-flag-plugged): Accept keyword flags.
2371         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2372
2373         * elmo-flag.el (elmo-get-global-flags): New function.
2374
2375         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2376         folders.
2377
2378         * elmo-version.el (elmo-version): Up to 2.11.24.
2379
2380 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2381
2382         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2383         elmo-multiple-field-body instead of std11-field-body to check all
2384         headers.
2385
2386 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2387
2388         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2389         or "size".
2390
2391 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2392
2393         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2394         unintern is unbound.
2395
2396 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2397
2398         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2399         Protect from infinite loop.
2400
2401 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2402
2403         * elsp-bogofilter.el
2404         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2405         (elmo-spam-bogofilter-register-messages): New internal function.
2406         (elmo-spam-register-spam-messages): Define.
2407         (elmo-spam-register-good-messages): Ditto.
2408
2409 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2410
2411         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2412         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2413         (elmo-spam-bogofilter-call): Fixed the last change.
2414         (elmo-spam-bogofilter-arguments): Ditto.
2415
2416         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2417         Follow the options change of latest bogofilter.
2418
2419         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2420         (elmo-spam-bogofilter-good-switch): Ditto.
2421         (elmo-spam-bogofilter-arguments-alist): New user option.
2422         (elmo-spam-bogofilter-debug): Ditto.
2423         (elmo-spam-bogofilter-call): Renamed from
2424         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2425         is non-nil, insert output in buffer for debug.
2426         (elmo-spam-bogofilter-arguments): New macro.
2427         (elmo-spam-buffer-spam-p): Use it.
2428         (elsp-bogofilter-register-buffer): Ditto.
2429
2430 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2431
2432         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2433         regexp.
2434
2435 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2436
2437         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2438         value as "ruby".
2439         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2440         (elmo-spam-bsfilter-program): Set default value as full path for
2441         `bsfilter'.
2442         (elmo-spam-bsfilter-debug): New user option.
2443         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2444         non-nil, insert output in buffer for debug. Fix treating of
2445         argument.
2446
2447 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2448
2449         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2450         `elmo-maildir-flag-specs' element instead of one.
2451         (elmo-map-folder-unset-flag): Ditto.
2452         (Reported by Ken Makimura <macky@astem.or.jp>)
2453
2454         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2455         (elmo-folder-unset-flag-plugged): Ditto.
2456
2457 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2458
2459         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2460         to `reads' slot only if `in-msgdb' is nil.
2461
2462 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2463
2464         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2465         and complement argument list.
2466
2467 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2468
2469         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2470         instead of elmo-folder-list-flagged.
2471
2472 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2473
2474         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2475
2476         * elsp-bsfilter.el: New file.
2477
2478         * elmo-pipe.el (elmo-folder-list-unreads,
2479         elmo-folder-list-answereds,
2480         elmo-folder-list-importants,
2481         elmo-folder-flag-as-important,
2482         elmo-folder-unflag-important,
2483         elmo-folder-flag-as-read,
2484         elmo-folder-unflag-read,
2485         elmo-folder-flag-as-answered,
2486         elmo-folder-unflag-answered): Remove.
2487         (elmo-folder-set-flag): Define.
2488         (elmo-folder-unset-flag): Ditto.
2489
2490         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2491         (elmo-folder-set-flag): Define.
2492         (elmo-folder-unset-flag): Ditto.
2493         (elmo-folder-list-unreads): Remove.
2494         (elmo-folder-list-flagged): Define.
2495
2496         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2497         (elmo-folder-list-unreads,
2498         elmo-folder-list-importants,
2499         elmo-folder-list-answereds,
2500         elmo-folder-list-unreads-plugged,
2501         elmo-folder-list-importants-plugged,
2502         elmo-folder-list-answereds-plugged): Remove.
2503         (elmo-folder-list-flagged-plugged): New method.
2504         (elmo-folder-unflag-important,
2505         elmo-folder-flag-as-important,
2506         elmo-folder-unflag-read,
2507         elmo-folder-flag-as-read,
2508         elmo-folder-unflag-answered,
2509         elmo-folder-flag-as-answered,
2510         elmo-folder-flag-as-read-unplugged,
2511         elmo-folder-unflag-read-unplugged,
2512         elmo-folder-flag-as-important-unplugged,
2513         elmo-folder-unflag-important-unplugged,
2514         elmo-folder-flag-as-answered-unplugged,
2515         elmo-folder-unflag-answered-unplugged): Remove.
2516         (elmo-folder-set-flag): Define.
2517         (elmo-folder-unset-flag): Ditto.
2518         (elmo-folder-set-flag-unplugged): Ditto.
2519         (elmo-folder-unset-flag-unplugged): Ditto.
2520
2521         * elmo-multi.el (elmo-folder-list-unreads,
2522         elmo-folder-list-answereds,
2523         elmo-folder-list-importants,
2524         elmo-folder-flag-as-important,
2525         elmo-folder-unflag-important,
2526         elmo-folder-flag-as-read,
2527         elmo-folder-unflag-read,
2528         elmo-folder-flag-as-answered,
2529         elmo-folder-unflag-answered): Remove.
2530         (elmo-folder-set-flag): Define.
2531         (elmo-folder-unset-flag): Ditto.
2532
2533         * elmo-map.el (elmo-map-folder-unflag-important,
2534         elmo-map-folder-flag-as-important,
2535         elmo-map-folder-unflag-read,
2536         elmo-map-folder-flag-as-read,
2537         elmo-map-folder-unflag-answered,
2538         elmo-map-folder-flag-as-answered): Remove.
2539         (elmo-map-folder-set-flag): New method.
2540         (elmo-map-folder-unset-flag): Ditto.
2541         (elmo-map-folder-list-unreads,
2542         elmo-map-folder-list-importants,
2543         elmo-map-folder-list-answereds): Remove.
2544         (elmo-folder-list-flagged-internal): Define.
2545         (elmo-map-folder-list-flagged): New method.
2546
2547         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2548         (elmo-map-folder-list-unreads,
2549         elmo-map-folder-list-importants,
2550         elmo-map-folder-list-flagged): Remove.
2551         (elmo-map-folder-list-flagged): Define.
2552         (elmo-map-folder-flag-as-important,
2553         elmo-map-folder-unflag-important,
2554         elmo-map-folder-flag-as-read,
2555         elmo-map-folder-unflag-read,
2556         elmo-map-folder-flag-as-answered,
2557         elmo-map-folder-unflag-answered): Remove.
2558         (elmo-maildir-set-mark-messages): New internal function.
2559         (elmo-map-folder-set-flag): Define.
2560         (elmo-map-folder-unset-flag): Ditto.
2561
2562         * elmo.el (toplevel): Added autoload setting for
2563         `elmo-folder-list-global-flag-messages'.
2564         (elmo-folder-list-unreads,
2565         elmo-folder-list-importants,
2566         elmo-folder-list-answereds): Remove.
2567         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2568         Return a list whitch merged with messages have global flag.
2569         (elmo-folder-list-flagged-internal): New method.
2570         (elmo-folder-unflag-important,
2571         elmo-folder-flag-as-important,
2572         elmo-folder-unflag-read,
2573         elmo-folder-flag-as-read,
2574         elmo-folder-unflag-answered,
2575         elmo-folder-flag-as-answered): Remove.
2576         (elmo-folder-set-flag): New method.
2577         (elmo-folder-unset-flag): Ditto.
2578         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2579         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2580
2581         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2582         (elmo-folder-list-unreads-plugged,
2583         elmo-folder-list-importants-plugged,
2584         elmo-folder-list-answereds-plugged,
2585         elmo-folder-list-flagged-unplugged,
2586         elmo-folder-unflag-important-plugged,
2587         elmo-folder-flag-as-important-plugged,
2588         elmo-folder-unflag-read-plugged,
2589         elmo-folder-flag-as-read-plugged,
2590         elmo-folder-unflag-answered-plugged,
2591         elmo-folder-flag-as-answered-plugged): Remove.
2592         (elmo-folder-set-flag-plugged,
2593         elmo-folder-unset-flag-plugged): Define.
2594
2595         * elmo-flag.el (elmo-folder-initialize): Register to
2596         `elmo-global-flag-list' if flag is not global.
2597         (elmo-folder-append-messages): Set flag to source messages.
2598
2599         * elmo-filter.el (elmo-filter-folder-list-unreads,
2600         elmo-folder-list-unreads,
2601         elmo-filter-folder-list-importants,
2602         elmo-folder-list-importants,
2603         elmo-folder-flag-as-read,
2604         elmo-folder-unflag-read,
2605         elmo-folder-flag-as-important,
2606         elmo-folder-unflag-important,
2607         elmo-folder-flag-as-answered,
2608         elmo-folder-unflag-answered): Remove.
2609         (elmo-folder-set-flag): Define.
2610         (elmo-folder-unset-flag): Ditto.
2611
2612         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2613         elmo-folder-unflag-read-dop,
2614         elmo-folder-flag-as-important-dop,
2615         elmo-folder-unflag-important-dop,
2616         elmo-folder-flag-as-answered-dop,
2617         elmo-folder-unflag-answered-dop): Remove.
2618         (elmo-folder-set-flag-dop,
2619         elmo-folder-unset-flag-dop,
2620         elmo-folder-set-important-delayed,
2621         elmo-folder-unset-important-delayed,
2622         elmo-folder-set-read-delayed,
2623         elmo-folder-unset-read-delayed,
2624         elmo-folder-set-answered-delayed,
2625         elmo-folder-unset-answered-delayed): New function.
2626         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2627         (elmo-dop-queue-method-name-alist): Ditto.
2628
2629         * elmo-version.el (elmo-version): Up to 2.11.23.
2630
2631 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2632
2633         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2634
2635         * elsp-sa.el: New file.
2636
2637 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2638
2639         * modb-standard.el (modb-standard-message-entity): New function.
2640         (elmo-msgdb-message-entity): Use it.
2641
2642 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2643
2644         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2645         behavior when one-level is nil.
2646
2647         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2648
2649         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2650
2651 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2652
2653         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2654         get max number.
2655         (elmo-generic-folder-diff): Ditto.
2656
2657         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2658         (elmo-folder-update-number): Ditto.
2659
2660         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2661         (elmo-folder-next-message-number-dop): Ditto.
2662
2663 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2664
2665         * elmo-filter.el (elmo-folder-msgdb-create): Use
2666         `elmo-message-entity' and `elmo-message-flags' instead of
2667         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2668
2669 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2670
2671         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2672         `if-exists'.
2673
2674 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2675
2676         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2677
2678         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2679
2680         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2681
2682 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2683
2684         * elmo-version.el (elmo-version): Up to 2.11.22.
2685
2686 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2687
2688         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2689
2690 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2691
2692         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2693         if the message dose not exist.
2694
2695 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2696
2697         * elmo-version.el (elmo-version): Up to 2.11.21.
2698
2699 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2700
2701         * modb-standard.el (toplevel): Don't require mime.
2702
2703 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2704
2705         * elsp-bogofilter.el (toplevel): Don't require path-util.
2706         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2707         (elmo-spam-bogofilter-header): Abolish.
2708         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2709         (elmo-spam-bogofilter-args): New user option.
2710         (elsp-bogofilter-call-bogofilter): New internal function.
2711         (elmo-spam-buffer-spam-p): Use it.
2712         (elsp-bogofilter-register-buffer): Renamed from
2713         `elmo-spam-bogofilter-register-buffer';
2714         Use `elsp-bogofilter-call-bogofilter'.
2715         (elmo-spam-register-spam-buffer): Follow the change above.
2716         (elmo-spam-register-good-buffer): Ditto.
2717
2718 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2719
2720         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2721         message-id is nil do nothing.
2722
2723 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2724
2725         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2726         Revival.
2727         (elmo-imap4-session): Removed use-flag slot.
2728         (elmo-imap4-session-select-mailbox): Undo last change.
2729         (elmo-folder-use-flag-p): Use
2730         elmo-imap4-disuse-server-flag-mailbox-regexp.
2731
2732 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2733
2734         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2735         (elmo-imap4-session-select-mailbox): Set it up.
2736         (elmo-folder-use-flag-p): Return value of use-flag slot.
2737
2738 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2739
2740         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2741         message-id is nil.
2742         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2743
2744         * modb-entity.el (elmo-message-entity-handler): Likewise.
2745
2746 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2747
2748         * elmo.el (toplevel): Remove setting of autoloding for
2749         elmo-global-flag-initialize.
2750         (elmo-init): Don't call elmo-global-flag-initialize.
2751         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2752
2753         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2754         (elmo-global-mark-migrate): Don't call it.
2755         (elmo-global-mark-upgrade): Ditto.
2756
2757 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2758
2759         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2760         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2761
2762         * elmo-vars.el (elmo-init-hook): New user option.
2763
2764         * elmo.el (elmo-init): Run the elmo-init-hook.
2765
2766         * elmo-flag.el (elmo-global-mark-migrate): New function.
2767
2768 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2769
2770         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2771         Undo last change (move to elmo-msgdb-unset-flag).
2772         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2773         flag is unset.
2774
2775 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2776
2777         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2778         read flag is set.
2779         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2780         (elmo-msgdb-unset-flag): Ditto.
2781
2782 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2783
2784         * elmo-split.el (elmo-split): Return split message count.
2785
2786 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2787
2788         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2789         is nil.
2790
2791 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2792
2793         * elmo.el (elmo-folder-unflag-important): Call
2794         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2795         a symbol `always'.
2796
2797         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2798         before unset flag.
2799         (elmo-global-flag-detach): Delete the message from flag folder, if
2800         `delete-if-none' is a symbol `always'.
2801
2802 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2803
2804         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2805         `elmo-spam-spamfilter-decode-buffer'.
2806         (elsp-spamfilter-register-buffer-internal): New internal function.
2807         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2808         (elmo-spam-register-spam-buffer): Ditto.
2809         (elmo-spam-register-good-buffer): Ditto.
2810
2811         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2812         change.
2813         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2814         (elmo-spam-register-spam-buffer): Follow the API change.
2815         (elmo-spam-register-good-buffer): Ditto.
2816
2817         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2818         (elmo-split-spam-p): Added argument plist; Call
2819         `elmo-spam-buffer-spam-p' with new argument register.
2820
2821         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2822         `register'.
2823         (elmo-spam-message-spam-p): Ditto.
2824         (elmo-spam-register-spam-buffer): Added optional argument
2825         `restore'.
2826         (elmo-spam-register-good-buffer): Ditto.
2827         (elmo-spam-register-spam-messages): Ditto.
2828         (elmo-spam-register-good-messages): Ditto.
2829
2830 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2831
2832         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2833         register into good corpus.
2834         (elmo-spam-register-good-buffer): Fixed to register into bad
2835         corpus.
2836
2837 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2838
2839         * elmo-version.el (elmo-version): Up to 2.11.20.
2840
2841         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2842         change.
2843
2844         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2845         flag without depending on \Recent flag.
2846
2847 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2848
2849         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2850         (elmo-spam-modified-p): Defined.
2851         (elmo-spam-save-status): Set `modified' slot to nil.
2852         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2853         (elmo-spam-register-good-buffer): Ditto.
2854
2855         * elmo-spam.el (elmo-spam-modified-p): New API.
2856
2857 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2858
2859         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2860         duplicate definition.
2861
2862         * elmo-util.el (elmo-unfold-field-body): New function.
2863         (elmo-msgdb-get-message-id-from-buffer): Use it.
2864
2865         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2866         Fixed the last change; Use elmo-unfold-field-body.
2867
2868 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2869
2870         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2871         Unfold date value.
2872
2873 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2874
2875         * elmo-spam.el (elmo-spam-save-status): New API.
2876
2877         * elsp-spamfilter.el: New file.
2878
2879 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2880
2881         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2882
2883 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2884
2885         * elmo-split.el (elmo-split-spam-p): New function.
2886
2887         * elmo-spam.el: New file.
2888
2889         * elsp-bogofilter.el: Ditto.
2890
2891 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
2892
2893         * elmo.el (elmo-folder-next-message-number): New API.
2894         (elmo-folder-next-message-number): Define.
2895         (elmo-message-field): Don't check folder length.
2896
2897         * elmo-net.el (elmo-folder-next-message-number): Define.
2898         (elmo-folder-next-message-number-unplugged): Define.
2899
2900         * elmo-map.el (elmo-folder-next-message-number): Define.
2901         (elmo-folder-delete-messages): Clear hash value.
2902
2903         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
2904
2905         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2906         (elmo-folder-delete-messages-dop-delayed): Always return t.
2907
2908         * elmo-version.el (elmo-version): Up to 2.11.19.
2909
2910 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2911
2912         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2913         change.
2914
2915         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2916         identical cons cell into the mark-alist and the hash table.
2917
2918 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
2919
2920         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2921         elmo-folder-list-messages with argument `visible-only' as t.
2922
2923         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2924         (elmo-folder-msgdb-create): Check the target folder.
2925
2926 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
2927
2928         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2929         `permanentflag' instead of `flags'.
2930         (elmo-folder-open): Ditto.
2931         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2932         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2933         (elmo-folder-use-flag-p): Always return t.
2934         (elmo-imap4-session-select-mailbox): Use value of `flags' if
2935         `permanentflags' does not exist.
2936         (elmo-folder-open): Ditto.
2937
2938 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
2939
2940         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2941         is nil.
2942         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2943
2944         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2945         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2946         response.
2947         (elmo-folder-open): Ditto.
2948         (elmo-imap4-set-flag): Send store flag command only when the `flags'
2949         slot of the session includes the flag.
2950         (elmo-imap4-session-flag-available-p): New function.
2951         (elmo-imap4-folder-list-flagged): Ditto.
2952         (elmo-folder-list-unreads-plugged): Use it.
2953         (elmo-folder-list-importants-plugged): Ditto.
2954         (elmo-folder-list-answereds-plugged): Ditto.
2955         (elmo-imap4-search-internal-primitive): Ditto.
2956         (elmo-imap4-folder-list-any-plugged,
2957         elmo-imap4-folder-list-digest-plugged): Abolish.
2958
2959         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2960         if numbers is nil.
2961
2962 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2963
2964         * elmo-util.el (toplevel): Require emu for char-list-to-string.
2965
2966 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2967
2968         * elmo-util.el (elmo-get-hash-val): Simplify.
2969         (elmo-set-hash-val): Rewrite.
2970
2971 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2972
2973         * elmo.el (elmo-folder-list-messages): Append killed messages into
2974         result if `visible-only' is nil and `in-msgdb' is non-nil.
2975
2976         * elmo-util.el (elmo-uniq-list): Added optional argument
2977         `delete-function'.
2978
2979         * modb.el (elmo-msgdb-flag-count): New API.
2980
2981         * modb-standard.el (modb-standard): Added slot flag-count.
2982         (modb-standard-countup-flags): New function.
2983         (modb-standard-load-flag): Call it.
2984         (elmo-msgdb-append): Ditto.
2985         (elmo-msgdb-clear): Clear slot flag-count.
2986         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2987         (elmo-msgdb-unset-flag): Treat `all' flag and call
2988         modb-standard-countup-flags.
2989         (elmo-msgdb-flag-count): Define.
2990         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2991         (elmo-msgdb-delete-messages): Ditto.
2992
2993         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2994         (elmo-msgdb-flag-count): Define.
2995
2996         * elmo.el (elmo-folder-list-messages): Undo last change.
2997         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
2998         (elmo-folder-kill-messages): Unset all flags to numbers.
2999
3000         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
3001         elmo-folder-kill-messages.
3002
3003         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
3004         (elmo-nntp-folder-delete-messages): Abolish.
3005
3006         * elmo-version.el (elmo-version): Up to 2.11.18.
3007
3008 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3009
3010         * elmo.el (elmo-folder-kill-messages-before): Abolish.
3011         (elmo-folder-kill-messages-range): New function.
3012         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
3013         instead of elmo-folder-kill-messages-before.
3014
3015 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
3016
3017         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
3018         elmo-imap4-current-msgdb to decide entity handler.
3019
3020 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3021
3022         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
3023
3024         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
3025         inline function.
3026         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
3027         (elmo-msgdb-overview-entity-set-number,
3028         elmo-msgdb-overview-entity-get-references,
3029         elmo-msgdb-overview-entity-set-references,
3030         elmo-msgdb-overview-entity-get-from-no-decode,
3031         elmo-msgdb-overview-entity-get-from,
3032         elmo-msgdb-overview-entity-set-from,
3033         elmo-msgdb-overview-entity-get-subject,
3034         elmo-msgdb-overview-entity-get-subject-no-decode,
3035         elmo-msgdb-overview-entity-set-subject,
3036         elmo-msgdb-overview-entity-get-date,
3037         elmo-msgdb-overview-entity-set-date,
3038         elmo-msgdb-overview-entity-get-to,
3039         elmo-msgdb-overview-entity-get-cc,
3040         elmo-msgdb-overview-entity-get-size,
3041         elmo-msgdb-overview-entity-set-size,
3042         elmo-msgdb-overview-entity-get-extra,
3043         elmo-msgdb-overview-entity-set-extra,
3044         elmo-msgdb-overview-entity-get-extra-field,
3045         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
3046         (elmo-msgdb-make-index): Use
3047         `elmo-msgdb-overview-entity-get-number-internal'.
3048         (elmo-msgdb-clear-index): Ditto.
3049         (elmo-msgdb-append-entity): Ditto;
3050         Use `elmo-msgdb-overview-entity-get-id-internal'.
3051
3052         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
3053         elmo-msgdb-overview-entity-set-number,
3054         elmo-msgdb-overview-entity-get-references,
3055         elmo-msgdb-overview-entity-set-references,
3056         elmo-msgdb-overview-entity-get-from-no-decode,
3057         elmo-msgdb-overview-entity-get-from,
3058         elmo-msgdb-overview-entity-set-from,
3059         elmo-msgdb-overview-entity-get-subject,
3060         elmo-msgdb-overview-entity-get-subject-no-decode,
3061         elmo-msgdb-overview-entity-set-subject,
3062         elmo-msgdb-overview-entity-get-date,
3063         elmo-msgdb-overview-entity-set-date,
3064         elmo-msgdb-overview-entity-get-to,
3065         elmo-msgdb-overview-entity-get-cc,
3066         elmo-msgdb-overview-entity-get-size,
3067         elmo-msgdb-overview-entity-set-size,
3068         elmo-msgdb-overview-entity-get-extra,
3069         elmo-msgdb-overview-entity-set-extra,
3070         elmo-msgdb-overview-entity-get-extra-field,
3071         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
3072         and rewrote for backward compatibility.
3073
3074 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3075
3076         * elmo.el (elmo-message-entity-number,
3077         elmo-message-entity-set-number,
3078         elmo-message-entity-field,
3079         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
3080
3081         * elmo-msgdb.el (elmo-message-entity-number,
3082         elmo-message-entity-set-number,
3083         elmo-message-entity-field,
3084         elmo-message-entity-set-field): Moved from elmo.el.
3085
3086 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3087
3088         * elmo.el (toplevel): Changed definition orders.
3089
3090 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3091
3092         * modb.el (elmo-msgdb-search): New API .
3093         (elmo-msgdb-match-condition): Ditto.
3094
3095         * modb-standard.el (elmo-msgdb-search): Define.
3096
3097         * modb-legacy.el (elmo-msgdb-search): Ditto.
3098
3099         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
3100         from elmo-msgdb-match-condition-internal.
3101
3102         * elmo.el (elmo-folder-search-fast): Abolish.
3103         (elmo-folder-search): Use elmo-msgdb-search and
3104         elmo-with-progress-display.
3105
3106         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
3107         as msgdb API.
3108
3109         * elmo.el (elmo-folder): Remove slot message-modified and
3110         flag-modified.
3111         (elmo-folder-set-message-modified): Abolish.
3112         (elmo-generic-folder-commit): Follow the change above.
3113         (elmo-folder-synchronize): Ditto.
3114
3115         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
3116
3117         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3118
3119         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
3120
3121 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3122
3123         * modb-standard.el (modb-standard-make-message-entity,
3124         elmo-msgdb-make-message-entity,
3125         elmo-msgdb-create-message-entity-from-buffer,
3126         elmo-msgdb-message-entity-number,
3127         elmo-msgdb-message-entity-set-number,
3128         elmo-msgdb-message-entity-field,
3129         elmo-msgdb-message-entity-set-field,
3130         elmo-msgdb-copy-message-entity,
3131         elmo-msgdb-match-condition-internal): Remove.
3132
3133         * modb-entity.el: New file (again).
3134
3135         * modb.el (toplevel): Require modb-entity.
3136         (elmo-msgdb-message-entity-handler): New method.
3137
3138         * modb-standard.el (modb-standard-entity-id): Use
3139         elmo-message-entity-handler.
3140         (modb-standard-load-entity): Ditto.
3141         (elmo-msgdb-append-entity): Ditto.
3142         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3143
3144         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
3145         elmo-msgdb-decoded-cache-hashtb,
3146         (modb-legacy-make-message-entity,
3147         elmo-msgdb-make-message-entity,
3148         elmo-msgdb-create-message-entity-from-buffer,
3149         elmo-msgdb-message-entity-number,
3150         elmo-msgdb-message-entity-set-number,
3151         elmo-msgdb-message-entity-field,
3152         elmo-msgdb-message-entity-set-field,
3153         elmo-msgdb-copy-message-entity,
3154         elmo-msgdb-match-condition-internal,
3155         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
3156
3157         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
3158         (elmo-message-entity-set-number): Ditto.
3159         (elmo-message-entity-field): Ditto.
3160         (elmo-message-entity-set-field): Ditto.
3161
3162         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
3163
3164         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3165
3166         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3167
3168         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3169         (elmo-nntp-msgdb-create-message): Ditto.
3170
3171         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
3172         (elmo-folder-msgdb-create): Add unread flag.
3173
3174         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3175
3176         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
3177
3178         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
3179
3180         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3181
3182         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
3183         elmo-msgdb-messge-entity-handler.
3184         * elmo-version.el (elmo-version): Up to 2.11.17.
3185
3186 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3187
3188         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
3189         change.
3190
3191 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3192
3193         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3194
3195         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3196         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3197         (elmo-msgdb-flag-table): Ditto.
3198         (elmo-msgdb-sort-by-date): Ditto.
3199
3200         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3201
3202         * modb-standard.el (toplevel): Require mime.
3203         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3204         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3205         elmo-msgdb-message-entity-number.
3206         (elmo-msgdb-append-entity): Ditto.
3207         (elmo-msgdb-create-message-entity-from-file): Remove.
3208         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3209         corresponds to the entity.
3210         (elmo-msgdb-message-entity-number): Do nothing currently.
3211         (elmo-msgdb-message-entity-field): Ditto.
3212         (elmo-msgdb-message-entity-set-field): Ditto.
3213         (elmo-msgdb-copy-message-entity): Ditto.
3214         (elmo-msgdb-match-condition-internal): Ditto.
3215
3216         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3217         elmo-util.el.
3218         (elmo-msgdb-create-message-entity-from-file): Remove.
3219
3220         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3221         modb-legacy.el.
3222         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3223
3224         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3225
3226 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3227
3228         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3229         (elmo-msgdb-message-entity-field): Ditto.
3230         (elmo-msgdb-message-entity-number): Ditto.
3231
3232 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3233
3234         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3235         Fixed how to set extra field into entity.
3236         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3237         symbol.
3238
3239         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3240         Fixed how to set extra field into entity.
3241         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3242         symbol.
3243
3244 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3245
3246         * modb.el (elmo-message-entity-db): New function.
3247         (elmo-msgdb-make-message-entity): New API.
3248         (elmo-msgdb-message-entity-number): Ditto.
3249         (elmo-msgdb-message-entity-set-number): Ditto.
3250         (elmo-msgdb-message-entity-field): Ditto.
3251         (elmo-msgdb-message-entity-set-field): Ditto.
3252         (elmo-msgdb-copy-message-entity): Ditto.
3253         (elmo-msgdb-create-message-entity-from-file): Ditto.
3254         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3255         (elmo-msgdb-match-condition-internal): Ditto.
3256
3257         * modb-standard.el (modb-legacy): Require modb-legacy.
3258         (modb-standard-make-message-entity): New inline function.
3259         (elmo-msgdb-make-message-entity): Define.
3260         (elmo-msgdb-create-message-entity-from-file): Ditto.
3261         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3262         (elmo-msgdb-message-entity-field): Ditto.
3263         (elmo-msgdb-message-entity-set-field): Ditto.
3264         (elmo-msgdb-copy-message-entity): Ditto.
3265         (elmo-msgdb-match-condition-internal): Ditto.
3266
3267         * modb-legacy.el: Don't require modb-entity.
3268         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3269         (elmo-msgdb-match-condition-primitive): Ditto.
3270         (elmo-msgdb-get-decoded-cache): Ditto.
3271         (elmo-msgdb-overview-entity-get-id): Ditto.
3272         (elmo-msgdb-overview-entity-get-number): Ditto.
3273         (elmo-msgdb-overview-entity-set-number): Ditto.
3274         (elmo-msgdb-overview-entity-get-references): Ditto.
3275         (elmo-msgdb-overview-entity-set-references): Ditto.
3276         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3277         (elmo-msgdb-overview-entity-get-from): Ditto.
3278         (elmo-msgdb-overview-entity-set-from): Ditto.
3279         (elmo-msgdb-overview-entity-get-subject): Ditto.
3280         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3281         (elmo-msgdb-overview-entity-set-subject): Ditto.
3282         (elmo-msgdb-overview-entity-get-date): Ditto.
3283         (elmo-msgdb-overview-entity-set-date): Ditto.
3284         (elmo-msgdb-overview-entity-get-to): Ditto.
3285         (elmo-msgdb-overview-entity-get-cc): Ditto.
3286         (elmo-msgdb-overview-entity-get-size): Ditto.
3287         (elmo-msgdb-overview-entity-set-size): Ditto.
3288         (elmo-msgdb-overview-entity-get-extra): Ditto.
3289         (elmo-msgdb-overview-entity-set-extra): Ditto.
3290         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3291         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3292         (elmo-msgdb-number-load): Ditto.
3293         (elmo-msgdb-overview-load): Ditto.
3294         (elmo-msgdb-mark-load): Ditto.
3295         (elmo-msgdb-number-save): Ditto.
3296         (elmo-msgdb-mark-save): Ditto.
3297         (elmo-msgdb-overview-save): Ditto.
3298         (modb-legacy-make-message-entity): New inline function.
3299         (elmo-msgdb-insert-file-header): Ditto.
3300         (elmo-msgdb-make-message-entity): Define.
3301         (elmo-msgdb-create-message-entity-from-file): Ditto.
3302         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3303         (elmo-msgdb-message-entity-number): Ditto.
3304         (elmo-msgdb-message-entity-set-number): Ditto.
3305         (elmo-msgdb-message-entity-field): Ditto.
3306         (elmo-msgdb-message-entity-set-field): Ditto.
3307         (elmo-msgdb-copy-message-entity): Ditto.
3308         (elmo-msgdb-match-condition-internal): Ditto.
3309
3310         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3311         (elmo-message-copy-entity): Rewrite.
3312         (elmo-message-entity-number): Ditto.
3313         (elmo-message-entity-set-number): Ditto.
3314         (elmo-message-entity-field): Use elmo-message-entity-db.
3315         (elmo-message-entity-set-field): Ditto.
3316         (elmo-message-field): Rewrite.
3317
3318         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3319         elmo-msgdb.el
3320         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3321
3322         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3323         elmo-message-entity-field.
3324         (elmo-shimbun-folder-shimbun-header): Ditto.
3325         (elmo-shimbun-entity-to-header): Ditto.
3326         (elmo-folder-msgdb-create): Ditto.
3327         (elmo-shimbun-msgdb-create-entity): Ditto;
3328         Use elmo-msgdb-create-message-entity-from-buffer.
3329         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3330         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3331
3332         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3333         elmo-msgdb-create-message-entity-from-file and 
3334         elmo-message-entity-field.
3335
3336         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3337         elmo-message-entity-number.
3338         (elmo-pop3-msgdb-create-message): Use
3339         elmo-msgdb-create-message-entity-from-buffer,
3340         elmo-message-entity-set-field, elmo-message-entity-number and
3341         elmo-message-entity-set-number.
3342
3343         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3344         the API change in elmo-msgdb-make-message-entity.
3345         (elmo-nntp-msgdb-create-message): Use
3346         elmo-msgdb-create-message-entity-from-buffer.
3347
3348         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3349         elmo-message-entity-field and
3350         elmo-msgdb-create-message-entity-from-file.
3351
3352         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3353         (elmo-msgdb-get-field): Abolish.
3354         (elmo-msgdb-get-number): Rewrite.
3355         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3356         (elmo-msgdb-flag-table): Ditto.
3357         (elmo-msgdb-get-last-message-id,
3358         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3359         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3360         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3361         (elmo-msgdb-create-overview-from-buffer,
3362         elmo-msgdb-overview-get-parent-entity): Abolish.
3363
3364         * elmo-mime.el (elmo-mime-display-as-is): Use
3365         elmo-message-entity-field.
3366
3367         * elmo-map.el (elmo-folder-pack-numbers): Use
3368         elmo-message-entity-set-number.
3369
3370         * elmo-maildir.el (elmo-folder-msgdb-create): 
3371         elmo-msgdb-create-message-entity-from-file instead of
3372         elmo-msgdb-create-overview-entity-from-file.
3373
3374         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3375         msgdb.
3376         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3377         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3378
3379         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3380         elmo-messge-entity-field and elmo-message-entity-number.
3381         (elmo-imap4-fetch-callback-1): Call
3382         elmo-msgdb-create-message-entity-from-buffer instead of
3383         elmo-msgdb-create-overview-from-buffer. 
3384         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3385         (elmo-find-fetch-strategy): Likewise.
3386
3387         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3388         elmo-localdir-msgdb-create-entity with argument msgdb.
3389
3390         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3391         and elmo-message-entity-set-number.
3392
3393         * elmo-cache.el (elmo-folder-msgdb-create): Use
3394         elmo-message-entity-field.
3395         (elmo-folder-msgdb-create): Call
3396         elmo-msgdb-create-message-entity-from-file instead of
3397         elmo-msgdb-create-overview-entity-from-file.
3398
3399         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3400         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3401         instead of elmo-msgdb-create-overview-from-buffer.
3402         (elmo-archive-msgdb-create-entity): Ditto.
3403         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3404         elmo-message-entity-field.
3405         (elmo-archive-parse-mmdf): Ditto.
3406
3407         * modb-entity.el: Removed.
3408
3409         * elmo-version.el (elmo-version): Up to 2.11.16.
3410
3411 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3412
3413         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3414         `is-local'.
3415         (elmo-folder-flag-as-answered): Ditto.
3416
3417 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3418
3419         * modb-standard.el: New file.
3420
3421         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3422         elmo-msgdb-convert-type is `sync'.
3423
3424         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3425         (elmo-msgdb-convert-type): New user option.
3426
3427         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3428         (elmo-load-msgdb): Auto detect saved type.
3429
3430         * elmo-version.el (elmo-version): Up to 2.11.15.
3431
3432 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3433
3434         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3435
3436         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3437         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3438         with argument `delete-if-none' when dst-folder is 'null.
3439
3440         * elmo-flag.el (elmo-folder-append-messages): Defined.
3441         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3442
3443 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3444
3445         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3446
3447 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3448
3449         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3450         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3451         (elmo-folder-commit): Ditto.
3452
3453 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3454
3455         * elmo-flag.el: New file.
3456
3457         * elmo-mark.el: Removed.
3458
3459         * modb-legacy.el (modb-legacy-new-mark,
3460         modb-legacy-unread-uncached-mark,
3461         modb-legacy-unread-cached-mark,
3462         modb-legacy-read-uncached-mark,
3463         modb-legacy-answered-cached-mark,
3464         modb-legacy-answered-uncached-mark,
3465         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3466         All other related portions are changed.
3467
3468         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3469         (elmo-folder-list-messages-with-global-mark): Abolish.
3470         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3471         (elmo-folder-flag-as-important): Ditto.
3472         (elmo-folder-unflag-read): Ditto.
3473         (elmo-folder-flag-as-read): Ditto.
3474         (elmo-folder-unflag-answered): Ditto.
3475         (elmo-folder-flag-as-answered): Ditto.
3476         (elmo-message-encache): Return the cache path.
3477         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3478         (elmo-message-set-flag): Transitional implementation.
3479         (elmo-message-unset-flag): Ditto.
3480         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3481         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3482         (elmo-init): Call elmo-global-flag-initialize.
3483         (toplevel): Added autoload settings for elmo-flag.
3484
3485         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3486
3487         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3488         (elmo-file-cache-delete): Don't treat global-mark.
3489
3490         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3491
3492         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3493
3494         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3495         `elmo-global-flags-set'.
3496
3497         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3498         `flag'.
3499         (elmo-folder-unflag-read): Ditto.
3500         (elmo-folder-unflag-important): Ditto.
3501         (elmo-folder-flag-as-important): Ditto.
3502         (elmo-folder-unflag-answered): Ditto.
3503         (elmo-folder-flag-as-answered): Ditto.
3504
3505         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3506         `elmo-global-flags-set'.
3507         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3508
3509         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3510
3511         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3512         `flag'.
3513         (elmo-folder-flag-as-important): Ditto.
3514         (elmo-folder-unflag-important): Ditto.
3515         (elmo-folder-flag-as-important): Ditto.
3516         (elmo-folder-unflag-read): Ditto.
3517         (elmo-folder-flag-as-read): Ditto.
3518         (elmo-folder-unflag-answered): Ditto.
3519         (elmo-folder-flag-as-answered): Ditto.
3520
3521         * elmo-multi.el (elmo-folder-list-importants): Don't call
3522         elmo-folder-list-messages-with-global-mark.
3523         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3524         (elmo-folder-unflag-important): Ditto.
3525         (elmo-folder-flag-as-read): Ditto.
3526         (elmo-folder-unflag-read): Ditto.
3527         (elmo-folder-flag-as-answered): Ditto.
3528         (elmo-folder-unflag-answered): Ditto.
3529
3530         * elmo-msgdb.el (elmo-msgdb-new-mark,
3531         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3532         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3533         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3534         (Moved to modb-legacy.el).
3535         (elmo-flag-table-get): Treat important flag too.
3536
3537         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3538         `mark' to `flag'.
3539         (elmo-map-folder-flag-as-important): Ditto.
3540         (elmo-map-folder-unflag-read): Ditto.
3541         (elmo-map-folder-flag-as-read): Ditto.
3542         (elmo-map-folder-unflag-answered): Ditto.
3543         (elmo-map-folder-flag-as-answered): Ditto.
3544         (elmo-folder-unflag-important): Ditto.
3545         (elmo-folder-flag-as-important): Ditto.
3546         (elmo-folder-unflag-read): Ditto.
3547         (elmo-folder-flag-as-read): Ditto.
3548         (elmo-folder-unflag-answered): Ditto.
3549         (elmo-folder-flag-as-answered): Ditto.
3550
3551         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3552         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3553         `flag'.
3554         (elmo-map-folder-unflag-important): Ditto.
3555         (elmo-map-folder-flag-as-read): Ditto.
3556         (elmo-map-folder-unflag-read): Ditto.
3557         (elmo-map-folder-flag-as-answered): Ditto.
3558         (elmo-map-folder-unflag-answered): Ditto.
3559
3560         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3561         `elmo-global-flags-set'.
3562         (elmo-global-flags-set): Added autoload setting.
3563
3564         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3565         `flag'.
3566
3567         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3568         `elmo-msgdb-global-mark-set'.
3569         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3570         Call `elmo-global-flags-set'.
3571         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3572         `flag'.
3573         (elmo-folder-flag-as-important-plugged): Ditto.
3574         (elmo-folder-unflag-read-plugged): Ditto.
3575         (elmo-folder-flag-as-read-plugged): Ditto.
3576         (elmo-folder-unflag-answered-plugged): Ditto.
3577         (elmo-folder-flag-as-answered-plugged): Ditto.
3578         (elmo-global-flags-set): Added autoload setting.
3579
3580         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3581         `flag'.
3582         (elmo-folder-unflag-read): Ditto.
3583         (elmo-folder-flag-as-important): Ditto.
3584         (elmo-folder-unflag-important): Ditto.
3585         (elmo-folder-flag-as-answered): Ditto.
3586         (elmo-folder-unflag-answered): Ditto.
3587
3588         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3589         change of `mark'->`flag'.
3590         (elmo-dop-queue-method-name-alist): Ditto.
3591         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3592         (elmo-folder-unflag-read-dop): Ditto.
3593         (elmo-folder-flag-as-important-dop): Ditto.
3594         (elmo-folder-unflag-important-dop): Ditto.
3595         (elmo-folder-flag-as-answered-dop): Ditto.
3596         (elmo-folder-unflag-answered-dop): Ditto.
3597
3598         * elmo-cache.el (elmo-folder-msgdb-create): Call
3599         `elmo-global-flags-set'.
3600
3601         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3602         Call `elmo-global-flags-set'.
3603         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3604         elmo-archive-parse-mmdf with argument `folder'.
3605         (elmo-archive-parse-mmdf): Added argument `folder';
3606         Call `elmo-global-flags-set'.
3607
3608         * elmo-version.el (elmo-version): Up to 2.11.14.
3609
3610 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3611
3612         * modb.el (elmo-msgdb-length): Define.
3613
3614         * elmo.el (elmo-make-folder): Fixed.
3615         (elmo-generic-folder-append-messages): Follow the API change.
3616
3617         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3618         API change.
3619
3620 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3621
3622         * modb.el: New file.
3623
3624         * modb-entity.el: Ditto.
3625
3626         * modb-legacy.el: Ditto.
3627
3628         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3629         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3630         of `elmo-msgdb-overview-get-entity'.
3631         (elmo-msgdb-get-field): Ditto.
3632         (elmo-msgdb-merge): Moved to `elmo.el'.
3633         (elmo-msgdb-length): Removed; redefine as modb method.
3634         (elmo-msgdb-change-mark): Abolish.
3635         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3636         (elmo-msgdb-match-condition): Don't use mark.
3637         (elmo-msgdb-overview-get-entity): Abolish.
3638         Split modb part into `modb*.el'.
3639
3640         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3641
3642         * elmo-shimbun.el (shimbun-mua-search-id): Use
3643         `elmo-msgdb-message-entity' instead of
3644         `elmo-msgdb-overview-get-entity'.
3645         (elmo-shimbun-folder-shimbun-header): Ditto.
3646         (elmo-shimbun-get-headers): Ditto.
3647         (elmo-shimbun-update-overview): Ditto.
3648
3649         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3650
3651         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3652
3653         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3654         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3655
3656         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3657         `elmo-msgdb-mark-to-flags'.
3658
3659         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3660         `elmo-msgdb-set-path'.
3661
3662         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3663  
3664         * elmo-version.el (elmo-version): Up to 2.11.13.
3665
3666         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3667
3668         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3669         of mark.
3670
3671 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3672
3673         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3674         mismatch.
3675
3676 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3677
3678         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3679         instead of `elmo-msgdb-get-cached'.
3680         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3681
3682         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3683         (elmo-msgdb-set-cached): Ditto.
3684         (elmo-msgdb-set-flag): Rewrite.
3685         (elmo-msgdb-unset-flag): Ditto.
3686
3687         * elmo-msgdb.el: Rewrite with luna.
3688
3689         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3690         (elmo-folder-msgdb): Follow the change above.
3691         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3692         (elmo-folder-unmark-important): Follow the API change.
3693         (elmo-folder-mark-as-important): Ditto.
3694         (elmo-folder-unmark-read): Ditto.
3695         (elmo-folder-mark-as-read): Ditto.
3696         (elmo-folder-unmark-answered): Ditto.
3697         (elmo-folder-mark-as-answered): Ditto.
3698         (elmo-folder-clear): Likewise.
3699
3700         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3701         instead of `elmo-msgdb-load' (renamed).
3702
3703         * elmo-version.el (elmo-version): Up to 2.11.12.
3704
3705 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3706
3707         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3708         change.
3709         (elmo-message-mark): Abolish.
3710         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3711         instead of `elmo-msgdb-change-mark'.
3712
3713         * elmo-pipe.el (elmo-message-mark): Abolish.
3714
3715         * elmo-multi.el (elmo-message-mark): Ditto.
3716
3717         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3718         (elmo-msgdb-unread-uncached-mark): Ditto.
3719         (elmo-msgdb-unread-cached-mark): Ditto.
3720         (elmo-msgdb-read-uncached-mark): Ditto.
3721         (elmo-msgdb-answered-cached-mark): Ditto.
3722         (elmo-msgdb-answered-uncached-mark): Ditto.
3723         (elmo-msgdb-important-mark): Ditto.
3724         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3725         `use-cache'.
3726         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3727         `flags'.
3728         (elmo-flag-table-load): Changed flag to list of flag.
3729         (elmo-flag-table-set): If flags is nil, set read flag.
3730         (elmo-flag-table-get): Return derived flags from global mark,
3731         cache status and saved flags.
3732         (elmo-msgdb-flag-table): Follow the change above.
3733         (elmo-msgdb-out-of-date-messages): New function.
3734
3735         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3736
3737         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3738
3739         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3740
3741         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3742         (elmo-nntp-msgdb-create-message): Ditto.
3743
3744         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3745
3746         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3747         independent.
3748         (elmo-folder-msgdb-create): Follow the API change.
3749
3750         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3751         (elmo-folder-append-messages): Ditto.
3752
3753         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3754         (elmo-folder-append-buffer): Ditto.
3755
3756         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3757
3758         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3759
3760         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3761         (elmo-archive-parse-mmdf): Ditto.
3762
3763         * elmo-version.el (elmo-version): Up to 2.11.11.
3764
3765 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3766
3767         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3768         `elmo-msgdb-mark'.
3769
3770         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3771
3772         * elmo-pipe.el (elmo-message-flags): Defined.
3773
3774         * elmo-multi.el (elmo-message-flags): Ditto.
3775
3776 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3777
3778         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3779         `elmo-msgdb-delete-msgs'.
3780
3781         * elmo.el (elmo-folder-count-flags): Don't use
3782         `elmo-msgdb-get-mark-alist'.
3783         (elmo-folder-detach-messages): Follow the API change.
3784
3785         * elmo.el (elmo-folder-list-messages): Append killed messages into
3786         result if `visible-only' is nil.
3787
3788         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3789         canceled messages.
3790         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3791         (elmo-folder-update-number): Likewise.
3792
3793         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3794         (elmo-pop3-sort-msgdb-by-original-number): Use
3795         `elmo-msgdb-sort-entities'.
3796
3797         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3798         (elmo-msgdb-sort-by-date): Use it.
3799         (elmo-msgdb-overview-sort-by-date): Abolish.
3800
3801         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3802
3803         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3804         (elmo-msgdb-flags): New function.
3805         (elmo-msgdb-merge): Use elmo-msgdb-append.
3806
3807         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3808         change.
3809
3810         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3811
3812         * elmo-dop.el (elmo-folder-status-dop): Use
3813         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3814
3815 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3816
3817         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3818
3819         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3820
3821         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3822
3823         * elmo-util.el (elmo-with-progress-display): New macro.
3824
3825         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3826
3827 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3828
3829         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3830         `elmo-folder-list-message-entities' instead of
3831         `elmo-msgdb-get-overview'.
3832         (elmo-map-folder-list-message-locations): Ditto.
3833
3834         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3835         methods instead of treat directly).
3836         (elmo-msgdb-clear): Ditto.
3837         (elmo-msgdb-delete-msgs): Ditto.
3838         (elmo-msgdb-sort-by-date): Ditto.
3839
3840         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3841         local variables.
3842         (elmo-nntp-folder-msgdb-create): Follow the API change.
3843
3844         * elmo-version.el (elmo-version): Up to 2.11.10.
3845
3846 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3847
3848         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3849         (elmo-msgdb-flags-to-mark): Ditto.
3850         (elmo-msgdb-append-entity): Ditto.
3851
3852         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3853         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3854         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3855         (elmo-archive-parse-mmdf): Ditto.
3856
3857         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3858
3859         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3860
3861         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3862
3863         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3864
3865         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3866
3867         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3868
3869         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3870
3871         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3872
3873         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3874         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3875         to empty msgdb.
3876
3877         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3878         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3879         instead of directly construction.
3880         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3881         instead of construct msgdb.
3882
3883         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3884         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
3885         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
3886         instead of construct msgdb.
3887
3888 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3889
3890         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
3891         when field is from or subject.
3892
3893 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
3894
3895         * elmo-multi.el (elmo-message-entity-parent): Define.
3896         (elmo-folder-search): Rewrite.
3897
3898 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3899
3900         * elmo-multi.el (elmo-message-cached-p): Define.
3901
3902         * elmo.el (elmo-message-cached-p): New method.
3903         (elmo-message-accessible-p): Use it instead of msgdb API directly.
3904         (elmo-message-flags): New method.
3905         (elmo-message-flagged-p): New function.
3906
3907         * elmo-version.el (elmo-version): Up to 2.11.9.
3908
3909 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3910
3911         * elmo-version.el (elmo-version): Up to 2.11.8.
3912
3913         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3914
3915         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3916
3917 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
3918
3919         * elmo.el (elmo-folder-detach-messages): Undo last change.
3920
3921 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
3922
3923         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3924
3925         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3926         only when src folder type is pop3.
3927
3928 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
3929
3930         * elmo-msgdb.el (elmo-msgdb-make-index): Use
3931         elmo-msgdb-overview-entity-get-number instead of
3932         elmo-message-entity-number.
3933
3934 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3935
3936         * elmo-version.el (elmo-version): Up to 2.11.7.
3937
3938 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
3939
3940         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3941         function.
3942
3943         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3944         (elmo-msgdb-merge): New function.
3945         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3946         (elmo-msgdb-make-index): Rewrite.
3947
3948         * elmo-version.el (elmo-version): Up to 2.11.6.
3949
3950         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3951         use it as a the path for loading message entities.
3952
3953         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3954
3955 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
3956
3957         * elmo-filter.el (elmo-folder-set-message-modified): Set 
3958         message-modified slot of itself if it does not require target msgdb.
3959
3960         * elmo-mime.el (elmo-mime-message-display): Display message entirely
3961         if folder length is zero.
3962         (elmo-mime-display-as-is): Ditto.
3963
3964         * elmo-filter.el (elmo-folder-set-message-modified): Define.
3965
3966         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3967
3968 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3969
3970         * elmo.el (elmo-folder-set-message-modified): New method.
3971         (elmo-generic-folder-commit): Use it.
3972         (elmo-folder-synchronize): Ditto.
3973
3974         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3975         (elmo-folder-commit): Remove duplicate definition.
3976
3977 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3978
3979         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3980
3981 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3982
3983         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3984         (elmo-strict-folder-diff): Ditto.
3985         (elmo-folder-set-info-max-by-numdb): Simplify.
3986
3987         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3988         elmo-msgdb-list-messages.
3989
3990         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3991         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3992
3993 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3994
3995         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
3996         visible-only is non-nil.
3997         (elmo-folder-confirm-appends): Changed message.
3998         (elmo-folder-synchronize): Added argument disable-killed.
3999
4000         * elmo-multi.el (elmo-folder-synchronize): Added argument
4001         disable-killed.
4002
4003         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
4004
4005         * elmo-version.el (elmo-version): Up to 2.11.5.
4006
4007         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
4008         elmo-list-filter.
4009
4010         * elmo-util.el (elmo-list-filter): Simplify.
4011
4012         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
4013         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
4014         (elmo-generic-folder-diff): Abolish argument.
4015         (elmo-msgdb-load): Don't use number-alist.
4016
4017         * elmo-filter.el (elmo-folder-diff): Abolish argument.
4018
4019         * elmo-pipe.el (elmo-folder-diff): Ditto.
4020
4021         * elmo-nmz.el (elmo-folder-diff): Ditto.
4022
4023         * elmo-net.el (elmo-folder-diff): Ditto.
4024
4025         * elmo-maildir.el (elmo-folder-diff): Ditto.
4026
4027         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
4028
4029         * elmo-multi.el (elmo-folder-diff): Ditto
4030         (elmo-multi-folder-diff): Rewrite.
4031
4032 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4033
4034         * elmo-pipe.el (elmo-folder-msgdb): Define.
4035
4036 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
4037
4038         * elmo.el (elmo-message-set-cached): Define as a method.
4039
4040         * elmo-pipe.el (elmo-message-set-cached): Define.
4041         (elmo-find-fetch-strategy): Ditto.
4042
4043         * elmo-multi.el (elmo-message-set-cached): Define.
4044         (elmo-find-fetch-strategy): Rewrite.
4045
4046         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
4047
4048         * elmo-pipe.el (elmo-message-folder): Fixed definition.
4049
4050 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4051
4052         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
4053         instead of number-alist.
4054
4055         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
4056         mark nor message-id when msgdb of source folder is not loaded.
4057
4058         * elmo.el (elmo-generic-folder-append-messages): Ditto.
4059
4060         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4061
4062 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
4063
4064         * elmo.el (elmo-folder-length): Don't require msgdb.
4065
4066 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
4067
4068         * elmo.el (elmo-message-mark): Cause an error when empty folder.
4069         (elmo-message-field): Ditto.
4070
4071         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
4072         (elmo-map-folder-list-message-locations): Setup `answered-locations'
4073         slot.
4074         (elmo-map-folder-list-answereds): Define.
4075         (elmo-maildir-list-location): Treat 'R' info.
4076         (elmo-folder-msgdb-create): Treat flag-table.
4077         (elmo-folder-append-messages): Save flag-table.
4078
4079 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
4080
4081         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
4082         Use SELECT when elmo-imap4-use-select-to-update-status is t.
4083
4084 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4085
4086         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
4087
4088         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
4089         'read when mark is null.
4090
4091 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
4092
4093         * elmo-version.el (elmo-version): Up to 2.11.4.
4094
4095 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4096
4097         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
4098         (elmo-folder-mark-as-answered): Ditto.
4099
4100 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
4101
4102         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
4103         (elmo-pop3-get-session): Make msgdb directory after session.
4104         (elmo-folder-exists-p): Check exactly at the first time even when the
4105         elmo-pop3-exists-exactly is nil.
4106
4107         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
4108         (elmo-folder-list-messages): Define instead of
4109         elmo-folder-list-messages-internal.
4110         (elmo-folder-check): Check destination folder.
4111         (elmo-folder-synchronize): Drain the pipe.
4112
4113         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
4114         when msgdb is not loaded.
4115
4116         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
4117
4118         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
4119         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
4120         messages.
4121
4122         * elmo.el (elmo-folder-kill-messages-before): New function.
4123         (elmo-folder-kill-messages): Ditto.
4124         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
4125
4126         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
4127         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
4128         killed not by synchronize (e.g. scoring).
4129
4130 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4131
4132         * elmo.el (elmo-folder-search-fast): Return t if condition is not
4133         treated.
4134         (elmo-folder-search): Follow the change above.
4135
4136         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
4137         into the candidates of search field.
4138
4139 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
4140
4141         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
4142         (elmo-msgdb-unset-flag): Ditto.
4143
4144         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
4145
4146 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
4147
4148         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
4149         (elmo-folder-commit): Define.
4150         (elmo-folder-synchronize): Ditto.
4151         (elmo-folder-list-flagged): Ditto.
4152         (elmo-folder-commit): Ditto.
4153         (elmo-folder-length): Ditto.
4154         (elmo-folder-count-flags): Ditto.
4155         (elmo-message-mark): Ditto.
4156         (elmo-message-field): Ditto.
4157         (elmo-message-entity): Ditto.
4158         (elmo-message-folder): Ditto.
4159
4160 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
4161
4162         * elmo.el (elmo-message-field): Define as a method.
4163
4164         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
4165         (elmo-message-field): Define.
4166
4167         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
4168         (elmo-folder-list-importants): Ditto.
4169         (elmo-folder-list-answereds): Ditto.
4170
4171         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
4172         qualifier.
4173         (elmo-folder-mark-as-read): Ditto.
4174         (elmo-folder-unmark-read): Ditto.
4175         (elmo-folder-mark-as-answered): Ditto.
4176         (elmo-folder-unmark-answered): Ditto.
4177         (elmo-folder-list-flagged): Define.
4178         (elmo-folder-commit): Ditto.
4179         (elmo-folder-length): Ditto.
4180         (elmo-folder-count-flags): Ditto.
4181
4182 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4183
4184         * elmo.el (elmo-folder-detach-messages): New method.
4185         (elmo-folder-move-messages): Use it.
4186         (elmo-folder-synchronize): Ditto.
4187
4188         * elmo-multi.el (elmo-folder-detach-messages): Define.
4189
4190         * elmo.el (elmo-message-copy-entity): New function.
4191         (elmo-message-entity-set-number): Ditto.
4192         (elmo-message-mark): Define as method.
4193
4194         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4195         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4196         (elmo-message-entity): Fixed last change.
4197         (elmo-message-mark): Define.
4198         (elmo-folder-msgdb-create): Abolish.
4199         (elmo-multi-folder-append-msgdb): Ditto.
4200         (elmo-multi-folder-diff): Fixed.
4201         (elmo-multi-split-number-alist): Removed.
4202         (elmo-multi-split-mark-alist): Removed.
4203         (elmo-folder-list-messages): Define.
4204         (elmo-folder-list-messages-internal): Removed.
4205
4206         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4207         local file messages.
4208         (elmo-folder-msgdb-create): Fixed read mark.
4209
4210 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4211
4212         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4213         if mark is nil.
4214
4215 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4216
4217         * elmo.el (elmo-folder-list-message-entities): Define as inline
4218         function.
4219         (elmo-folder-messages): Abolish.
4220
4221         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4222         folder.
4223         (elmo-folder-synchronize): Define.
4224         (elmo-message-entity): Define.
4225
4226 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4227
4228         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4229         elmo-imap4-session-select-mailbox.
4230
4231         * elmo.el (elmo-folder-move-messages): Don't display any message.
4232
4233         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4234         parsing.
4235         (elmo-imap4-session-check): Don't wait CHECK response.
4236         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4237
4238 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4239
4240         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4241
4242 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4243
4244         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4245         API.
4246         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4247
4248
4249         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4250         (elmo-folder-list-message-entities): Added argument in-msgdb and
4251         numbers.
4252         (elmo-folder-synchronize): Define as a method.
4253
4254         * elmo-nntp.el (elmo-folder-initialize): Don't use
4255         elmo-nntp-default-user if zero-length username is specified
4256         explicitly.
4257
4258 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4259
4260         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4261         server name in case with username.
4262         (XXX: this is ad-hoc fix against username includes "@", it
4263         should be solved fundamentally)
4264
4265 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4266
4267         * elmo-nntp.el (elmo-nntp-debug): New function.
4268         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4269         (elmo-network-authenticate-session): Hide auth-info from the log.
4270
4271         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4272         user name if it is equal to elmo-nntp-default-user.
4273
4274 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4275
4276         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4277         instead of shimbun-server-internal;
4278         Use shimbun-current-group instead of shimbun-current-group-internal.
4279         (elmo-folder-plugged-p): Use shimbun-server instead of
4280         shimbun-server-internal.
4281         (elmo-folder-set-plugged): Ditto.
4282         (elmo-net-port-info): Ditto.
4283         (elmo-folder-check): Ditto.
4284         (elmo-folder-expand-msgdb-path): Ditto.
4285         (elmo-folder-list-subfolders): Ditto.
4286
4287 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4288
4289         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4290         Convert field-name to lower case.
4291         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4292
4293 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4294
4295         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4296         `message' and `error' take format string.
4297
4298 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4299
4300         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4301
4302 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4303
4304         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4305         recursive call (can't byte compile on emacs 20.7).
4306
4307 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4308
4309         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4310         (elmo-folder-list-message-entities): New API.
4311         (elmo-message-entity): Ditto.
4312         (elmo-message-entity-parent): Ditto.
4313         (elmo-folder-do-each-message-entity): Ditto.
4314         (elmo-message-entity-number): Ditto.
4315         (elmo-message-entity-field): Ditto.
4316         (elmo-message-entity-set-field): Ditto.
4317         (elmo-folder-count-flags): Ditto.
4318         (elmo-folder-length): Ditto.
4319
4320         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4321         not.
4322
4323         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4324         (elmo-msgdb-count-marks): Abolish.
4325         (elmo-msgdb-make-entity): Ditto.
4326         (elmo-msgdb-do-each-entity): Ditto.
4327         (elmo-msgdb-message-entity): New inline function.
4328         (elmo-msgdb-message-entity-field): Ditto.
4329         (elmo-msgdb-message-entity-set-field): Ditto.
4330         (elmo-msgdb-make-message-entity): New function.
4331
4332 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4333
4334         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4335         to flag. (All other related portions are changed.)
4336         (elmo-folder-msgdb-create): Likewise.
4337         (elmo-generic-folder-append-messages): Use flag-table instead of
4338         seen-list.
4339         (elmo-folder-move-messages): Removed redundant process.
4340         (elmo-folder-synchronize): Likewise.
4341
4342         * elmo-msgdb.el (elmo-flag-table-get): New function.
4343         (elmo-flag-table-save): Fixed.
4344         (elmo-msgdb-length): New inline function.
4345         (elmo-msgdb-flag-table): New function.
4346         (elmo-msgdb-mark): Add optional argument new.
4347         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4348         (elmo-msgdb-seen-list): Ditto.
4349         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4350
4351
4352 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4353
4354         * elmo.el (elmo-message-set-mark): Abolish.
4355         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4356         (All related portions are changed.)
4357
4358         * elmo-msgdb.el (toplevel): Added comment.
4359         (elmo-load-msgdb): Added 4th element `path'.
4360         (elmo-msgdb-append): Follow the change above.
4361         (elmo-msgdb-clear): Ditto.
4362         (elmo-msgdb-delete-msgs): Ditto.
4363         (elmo-msgdb-get-path): New inline function.
4364         (elmo-msgdb-set-path): Ditto.
4365         (elmo-flag-table-filename): New variable.
4366         (elmo-flag-table-load): New function.
4367         (elmo-flag-table-set): Ditto.
4368         (elmo-flag-table-save): Ditto.
4369         (elmo-msgdb-get-field-value): Abolish.
4370         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4371
4372 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4373
4374         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4375         the folder has been deleted successfully.
4376         * elmo-imap4.el (elmo-folder-delete): Ditto.
4377         * elmo-archive.el (elmo-folder-delete): Ditto.
4378         * elmo-localdir.el (elmo-folder-delete): Ditto.
4379         * elmo-maildir.el (elmo-folder-delete): Ditto.
4380
4381 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4382
4383         * elmo-util.el (elmo-string-member-ignore-case): New function.
4384         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4385         (elmo-imap4-fetch-callback-1-subr): Likewise.
4386
4387 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4388
4389         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4390         the case of the name attribute "\Noselect".
4391
4392 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4393
4394         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4395
4396         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4397         flist, is not always a member of onum-alist.
4398
4399 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4400
4401         * elmo-version.el (elmo-version): Up to 2.11.3.
4402
4403 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4404
4405         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4406         copied from localdir's one.
4407
4408         * elmo-pipe.el (elmo-folder-rename): New method, rename
4409         destination folder with leaving source folder as it is.
4410
4411 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4412
4413         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4414         replace-regexp.
4415
4416 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4417
4418         * elmo-version.el (elmo-version): Up to 2.11.2.
4419
4420 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4421
4422         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4423         shimbun-open in case of "@".
4424         (elmo-folder-open-internal): Cope with shimbun = nil case.
4425         (elmo-folder-plugged-p): Ditto.
4426         (elmo-folder-list-subfolders): Make list for "@/" group.
4427
4428 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4429
4430         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4431         mailbox (e.g. for %~/something).
4432
4433 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4434
4435         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4436         Replace nested conditional with guard clauses.
4437
4438 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4439
4440         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4441         error [wl:11327].
4442
4443         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4444         print-depth.
4445
4446 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4447
4448         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4449         Replace nested conditional with guard clauses.
4450
4451 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4452
4453         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4454         (elmo-passwd-alist-save): Ditto.
4455         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4456
4457 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4458
4459         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4460         dir-name only if it is absolute path.
4461         (TODO: distinguish +/something and +something)
4462
4463 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4464
4465         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4466         path for "+~/something".
4467
4468 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4469
4470         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4471         as non-directory, cause error before rename-file.
4472         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4473         apropriately, mimic localdir's one.
4474         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4475
4476 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4477
4478         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4479
4480 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4481
4482         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4483
4484         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4485         
4486         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4487         is included in the global-mark or not.
4488
4489 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4490
4491         * utf7.el (toplevel): Avoid error when the function
4492         find-coding-system does not exist.
4493
4494 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4495
4496         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4497         cache even if the folder is plugged.
4498         (elmo-nntp-search-primitive): Do nothing when body search is
4499         invoked (although it is not used by the change above).
4500         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4501
4502 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4503
4504         * elmo-version.el (elmo-version): Up to 2.11.1.
4505
4506 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4507
4508         * elmo-archive.el: Specify charset.
4509
4510 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4511
4512         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4513         process buffer lives or not.
4514
4515         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4516         while flushing queues (It causes infinite loop).
4517
4518 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4519
4520         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4521
4522 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4523
4524         * utf7.el (toplevel): Check the ucs features dynamically.
4525         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4526
4527         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4528         folder is creatabe or not if it already exists.
4529
4530 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4531
4532         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4533
4534         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4535
4536         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4537         (elmo-imap4-read-response): Take care of garbage response.
4538
4539 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4540
4541         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4542         just return nil instead of error.
4543
4544 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4545
4546         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4547         search-key is "body".
4548
4549 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4550
4551         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4552         of elmo-string-matched-assoc to use match-data.
4553         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4554
4555 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4556
4557         * elmo-split.el (elmo-split->): New function.
4558         (elmo-split-<): Ditto.
4559
4560 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4561
4562         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4563         workaround for invalid message-id.
4564
4565 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4566
4567         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4568         return normal pop3 session or pop3 biff session.
4569
4570 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4571
4572         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4573         info part to the cur files when the new files already have it.
4574         (Adviced by Jared Rhine <jared@wordzoo.com>)
4575
4576 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4577
4578         * elmo-split.el (elmo-split-default-action): New variable.
4579         (elmo-split-subr): Use it if all other conditions are passed.
4580         Extend `fname' and rename it as `action'. (implemented
4581         Teranishi-san's idea in [wl:10800])
4582
4583 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4584
4585         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4586         * elmo-util.el: Ditto.
4587
4588 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4589
4590         * elmo.el (elmo-message-accessible-p): Renamed from
4591         elmo-message-cached-p and rewritten.
4592
4593 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4594
4595         * elmo.el (elmo-folder-list-flagged): New generic function.
4596         (elmo-folder-list-importants): New implementation.
4597         (elmo-folder-list-answereds): Ditto.
4598         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4599         Added 'digest'.
4600         (elmo-message-cached-p): New function.
4601         (elmo-message-set-flag): Ditto (no content).
4602         (elmo-message-unset-flag): Ditto.
4603         (elmo-folder-list-messages-mark-match): Abolish.
4604
4605         * elmo-util.el (elmo-regexp-opt): New function.
4606
4607         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4608         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4609         Added 'digest'.
4610         (elmo-msgdb-list-flagged): New function.
4611
4612         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4613         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4614         Added 'digest'.
4615
4616         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4617
4618 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4619
4620         * elmo-version.el (elmo-version): Up to 2.11.0.
4621
4622 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4623
4624         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4625         `elmo-file-cache-exists-p'; use proper mark that depends on
4626         `use-cache'.
4627         (elmo-msgdb-unset-flag): Ditto.
4628         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4629
4630         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4631         with 4th argument `use-cache'.
4632
4633 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4634
4635         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4636         (elmo-folder-mark-as-important): Ditto.
4637         (elmo-folder-unmark-read): Ditto.
4638         (elmo-folder-mark-as-read): Ditto.
4639         (elmo-folder-unmark-answered): Ditto.
4640         (elmo-folder-mark-as-answered): Ditto.
4641
4642         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4643         message status.
4644         (elmo-msgdb-mark): Likewise.
4645         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4646         (elmo-msgdb-unset-flag): Likewise.
4647
4648         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4649
4650 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4651
4652         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4653         `last:' filter.
4654
4655 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4656
4657         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4658         set spool-length to 0.
4659
4660 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4661
4662         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4663         (elmo-dop-queue-flush): Fixed last change.
4664
4665 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4666
4667         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4668         if require-msgdb slot is nil.
4669         (elmo-folder-list-importants): Likewise.
4670
4671 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4672
4673         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4674         mark is changed.
4675
4676         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4677         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4678         is changed.
4679
4680 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4681
4682         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4683
4684 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4685
4686         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4687
4688         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4689
4690 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4691
4692         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4693         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4694
4695 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4696
4697         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4698         the problem reported by Sean Rima [wl-en:180].
4699
4700 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4701
4702         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4703
4704         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4705
4706         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4707
4708         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4709
4710         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4711
4712         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4713
4714         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4715
4716 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4717
4718         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4719         status number.
4720
4721 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4722
4723         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4724         (elmo-folder-mark-as-read): Follow the API change.
4725         (elmo-message-set-cached): New function.
4726
4727         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4728
4729         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4730
4731         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4732         (elmo-folder-mark-as-important): Ditto.
4733         (elmo-folder-unmark-read): Ditto.
4734         (elmo-folder-mark-as-read): Ditto.
4735         (elmo-folder-unmark-answered): Ditto.
4736         (elmo-folder-mark-as-answered): Ditto.
4737
4738         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4739         (elmo-folder-unmark-important): Ditto.
4740         (elmo-folder-mark-as-read): Ditto.
4741         (elmo-folder-unmark-read): Ditto.
4742         (elmo-folder-mark-as-answered): Ditto.
4743         (elmo-folder-unmark-answered): Ditto.
4744
4745         * elmo-mark.el (toplevel): Removed some mark method definitions.
4746
4747         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4748         (elmo-map-folder-mark-as-answered): Ditto.
4749         (elmo-folder-unmark-important): Add :before qualifier.
4750         (elmo-folder-mark-as-important): Ditto.
4751         (elmo-folder-unmark-read): Ditto.
4752         (elmo-folder-mark-as-read): Ditto.
4753         (elmo-folder-unmark-answered): Define.
4754         (elmo-folder-mark-as-answered): Ditto.
4755
4756         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4757         (elmo-map-folder-unmark-answered): Ditto.
4758
4759         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4760
4761         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4762         (elmo-folder-mark-as-important): Ditto.
4763         (elmo-folder-unmark-read): Ditto.
4764         (elmo-folder-mark-as-read): Ditto.
4765         (elmo-folder-unmark-answered): Ditto.
4766         (elmo-folder-mark-as-answered): Ditto.
4767
4768         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4769         `mark'; evaluate mark condition.
4770         (elmo-msgdb-match-condition-internal): New function.
4771         (elmo-msgdb-match-condition): Call it; changed argument.
4772
4773         * elmo.el (elmo-folder-search): Follow the API change on
4774         `elmo-msgdb-match-condition'.
4775
4776 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4777
4778         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4779         original mark is non-nil.
4780
4781 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4782
4783         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4784         (elmo-map-folder-list-answereds): New method.
4785         (elmo-folder-list-unreads): Add :around qualifier.
4786         (elmo-folder-list-importants): Ditto.
4787         (elmo-folder-list-answereds): Ditto.
4788
4789 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4790
4791         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4792
4793         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4794         method if msgdb is not required.
4795         (elmo-filter-folder-list-importants): Don't treat global-mark.
4796
4797         * elmo.el (elmo-folder-list-importants): Ditto.
4798
4799         * elmo-net.el (elmo-folder-list-importants): Ditto.
4800
4801         * elmo-map.el (elmo-folder-list-importants): Ditto.
4802
4803         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4804
4805         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4806         (elmo-imap4-folder-list-any-plugged): New function.
4807         (elmo-imap4-search-internal-primitive): Use it.
4808
4809         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4810         only when require-msgdb slot is non-nil.
4811         (elmo-folder-close): Clear target folder's msgdb.
4812
4813 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4814
4815         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4816         (elmo-pop3-msgdb-create-by-header): Ditto.
4817         (elmo-pop3-msgdb-create-message): Ditto.
4818
4819         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4820
4821         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4822
4823         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4824
4825         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4826         (elmo-folder-msgdb-create): Ditto.
4827         (elmo-nntp-folder-msgdb-create): Ditto.
4828         (elmo-nntp-msgdb-create-by-header): Ditto.
4829         (elmo-nntp-msgdb-create-message): Ditto.
4830         (elmo-folder-list-unreads): Define.
4831
4832         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4833         (elmo-folder-append-messages): Ditto.
4834         (elmo-folder-list-unreads): Define.
4835         (elmo-folder-list-importants): Ditto.
4836         (elmo-folder-list-answereds): Ditto.
4837
4838         * elmo-net.el (elmo-folder-list-unreads): Define.
4839         (elmo-folder-list-importants): Ditto.
4840         (elmo-folder-list-answereds): Ditto.
4841         (elmo-folder-list-answereds-plugged): Ditto.
4842         (elmo-folder-msgdb-create): Follow the API change.
4843         (elmo-folder-msgdb-create-unplugged): Ditto.
4844         (elmo-folder-unmark-answered): Define.
4845         (elmo-folder-mark-as-answered-unplugged): Ditto.
4846         (elmo-folder-unmark-answered-unplugged): Ditto.
4847
4848         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4849         (elmo-msgdb-unread-uncached-mark): Ditto.
4850         (elmo-msgdb-unread-cached-mark): Ditto.
4851         (elmo-msgdb-read-uncached-mark): Ditto.
4852         (elmo-msgdb-answered-cached-mark): Ditto.
4853         (elmo-msgdb-answered-uncached-mark): Ditto.
4854         (elmo-msgdb-important-mark): Ditto.
4855         (elmo-msgdb-set-mark): Rewrite.
4856         (elmo-msgdb-count-marks): Rewrite.
4857         (elmo-msgdb-mark-alist-set): Abolish.
4858         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4859         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4860
4861         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4862         (elmo-folder-close): Define.
4863         (elmo-folder-msgdb-create): Follow the API change.
4864         (elmo-folder-list-unreads): Rewrite.
4865         (elmo-folder-mark-as-important): Ditto.
4866         (elmo-folder-unmark-important): Ditto.
4867         (elmo-folder-mark-as-read): Ditto.
4868         (elmo-folder-unmark-read): Ditto.
4869         (elmo-folder-mark-as-answered): Define.
4870         (elmo-folder-unmark-answered): Ditto.
4871
4872         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4873         (elmo-folder-append-messages): Ditto.
4874
4875         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4876
4877         * elmo-map.el (elmo-folder-list-unreads): Ditto.
4878         (elmo-folder-list-importants): Ditto.
4879
4880         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4881         (elmo-folder-append-messages): Ditto.
4882
4883         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4884         change.
4885         (elmo-folder-msgdb-create-plugged): Ditto.
4886         (elmo-folder-append-messages): Ditto.
4887         (elmo-folder-list-answereds-plugged): Define.
4888         (elmo-imap4-search-internal-primitive): Add `mark' processing.
4889         (elmo-folder-unmark-answered-plugged): Define.
4890         (elmo-folder-mark-as-answered-plugged): Ditto.
4891         (elmo-folder-search-requires-msgdb-p): Ditto.
4892
4893         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
4894         (elmo-folder-initialize): Set it.
4895         (elmo-folder-msgdb): Define.
4896         (elmo-folder-check): Call elmo-folder-synchronize.
4897         (elmo-folder-close): Define.
4898         (elmo-folder-commit): Ditto.
4899         (elmo-folder-msgdb-create): Rewrite.
4900         (elmo-folder-list-unreads): Ditto.
4901         (elmo-folder-list-importants): Ditto.
4902         (elmo-folder-mark-as-read): Ditto.
4903         (elmo-folder-unmark-read): Ditto.
4904         (elmo-folder-mark-as-important): Ditto.
4905         (elmo-folder-unmark-important): Ditto.
4906         (elmo-folder-mark-as-answered): Define.
4907         (elmo-folder-unmark-answered): Ditto.
4908
4909         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4910         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4911         (elmo-dop-queue-method-name-alist): Likewise.
4912         (elmo-folder-mark-as-answered-dop): New inline function.
4913         (elmo-folder-unmark-answered-dop): Ditto.
4914         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4915
4916         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4917         (elmo-folder-msgdb-create): Ditto.
4918         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4919         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4920         (elmo-archive-parse-mmdf): Ditto.
4921
4922         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4923         (elmo-folder-list-unreads-internal): Ditto.
4924
4925         * elmo.el (elmo-folder-msgdb): Define as generic function.
4926         (elmo-folder-list-messages): Added argument `in-msgdb'.
4927         (elmo-folder-list-unreads): Define as generic function.
4928         (elmo-folder-list-importants): Ditto.
4929         (elmo-folder-list-answereds): Ditto.
4930         (elmo-folder-list-messages-with-global-mark): New function.
4931         (elmo-folder-msgdb-create): Removed mark arguments.
4932         (elmo-folder-unmark-answered): New generic function.
4933         (elmo-folder-mark-as-answered): Ditto.
4934         (elmo-folder-append-messages): Removed argunment `unread-marks'
4935         (elmo-folder-list-unreads-internal): Abolish.
4936         (elmo-folder-list-importants-internal): Ditto.
4937         (elmo-folder-search-requires-msgdb-p): New generic function.
4938         (elmo-folder-search-requires-msgdb-p-internal): New function.
4939         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4940         elmo-msgdb-load.
4941         (elmo-folder-search-fast): Added key 'mark'.
4942         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4943         instead of unread-marks argument.
4944         (elmo-folder-move-messages): Removed argunment `unread-marks'
4945         (elmo-folder-unmark-important): Define.
4946         (elmo-folder-mark-as-important): Ditto.
4947         (elmo-folder-unmark-read): Ditto.
4948         (elmo-folder-mark-as-read): Ditto.
4949         (elmo-folder-unmark-answered): Ditto.
4950         (elmo-folder-mark-as-answered): Ditto.
4951         (elmo-folder-replace-marks): Abolish.
4952         (elmo-generic-folder-append-msgdb): Append msgdb before checking
4953         duplicates.
4954         (elmo-folder-synchronize): Removed mark arguments;
4955         return crosspost only number.
4956
4957 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4958
4959         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4960         Remove redundunt connectivity check.
4961
4962 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4963
4964         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4965         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4966
4967 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
4968
4969         * pldap.el (ldap-decode-string): Return string as-is if
4970         `ldap-coding-system' is nil.
4971         (ldap-encode-string): Ditto.
4972         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4973         (ldap-default-host): Fixed docstring.
4974
4975 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
4976
4977         * elmo-util.el (elmo-warning): Define as a macro which uses
4978         `display-warning' if it is defined as a function.
4979
4980         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4981         (elmo-split-equal): Use it.
4982         (elmo-split-match): Ditto.
4983         (elmo-split-message-entity): New buffer-local variable.
4984         (elmo-split-subr): Set it.
4985
4986         * elmo-version.el (elmo-version): Up to 2.9.15.
4987
4988 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
4989
4990         * elmo-imap4.el (elmo-network-initialize-session):
4991         Check capability after starttls.
4992
4993 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
4994
4995         * elmo-util.el (elmo-list-delete): Added optional argument
4996         DELETE-FUNCTION.
4997
4998         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
4999
5000         * elmo-util.el (elmo-warning): Ignore errors while recenter.
5001
5002         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
5003
5004         * elmo-imap4.el (elmo-folder-initialize): Don't use
5005         elmo-imap4-default-mailbox.
5006
5007 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5008
5009         * elmo-split.el (toplevel): Use `product-provide'.
5010         (elmo-split): Checkdoc.
5011
5012 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
5013
5014         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
5015         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
5016         the function `elmo-imap4-debug-1'.
5017
5018 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5019
5020         * elmo-split.el (elmo-split): Moved to run hooks and to show
5021         message from elmo-split-subr.
5022         (elmo-split-subr): Follow the change above.
5023
5024         * elmo-split.el (elmo-split-subr): New function (renamed from
5025         elmo-split-subr).
5026         (elmo-split): Changed to call elmo-split-subr by element of
5027         elmo-split-folder.
5028         (elmo-split-folder): Changed customization type to choice.
5029
5030 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5031
5032         * elmo-split.el (elmo-split-and): Fixed condition.
5033
5034 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5035
5036         * elmo-split.el: New file.
5037         (elmo-split): Fixed logic.
5038         Display "Test:" instead of "Folder:" when reharsal.
5039
5040         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
5041         explicitly.
5042
5043         * elmo-version.el (elmo-version): Up to 2.9.14.
5044
5045         * elmo-util.el (elmo-expand-newtext): New function (renamed from
5046         wl-expand-newtext).
5047
5048 2002-06-10  Kenichi Sato <ksato@sonycom.com>
5049
5050         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
5051         message with no message-id field.
5052
5053 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
5054
5055         * elmo-version.el (elmo-version): Up to 2.9.13.
5056
5057         * elmo-dop.el (elmo-folder-status-dop): Fix.
5058
5059 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
5060
5061         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
5062
5063         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
5064         changing default value of default-mime-charset.
5065         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
5066
5067         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
5068
5069         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
5070         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
5071         instead of elmo-dop-queue-method-name-alist to check merging queue.
5072         (elmo-folder-delete-messages-dop): Delete from queue if negative
5073         message number.
5074         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
5075         file is already removed.
5076
5077 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
5078
5079         * elmo-vars.el: Bind colon keywords for old Emacsen.
5080
5081 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5082
5083         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
5084         against non-exsisting charset.
5085
5086 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
5087
5088         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
5089         Use eword-decode-and-unfold-unstructured-field-body.
5090
5091         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
5092         (elmo-msgdb-create-overview-from-buffer): Use document charset if
5093         exists to decode raw subject string.
5094         (toplevel): Require 'mime.
5095
5096         * elmo-version.el (elmo-version): Up to 2.9.12.
5097
5098 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
5099
5100         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
5101         (elmo-msgdb-set-mark): Ditto.
5102
5103         * elmo-version.el (elmo-version): Up to 2.9.11.
5104
5105 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
5106
5107         * elmo-util.el (elmo-delete-match-files): New function.
5108
5109         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
5110         instead of elmo-delete-directory.
5111
5112         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
5113         elmo-hash-minimun-size as 63.
5114
5115         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
5116         elmo-diff-unread is nil.
5117
5118         * elmo-imap4.el (elmo-folder-open): Fix.
5119
5120         * elmo.el (elmo-message-mark): Rewrite.
5121         (elmo-message-field): Ditto.
5122         (elmo-message-set-mark): Ditto.
5123         (elmo-folder-replace-marks): New function.
5124         (elmo-generic-folder-append-msgdb): Removed third argument for
5125         elmo-msgdb-append.
5126         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
5127         (elmo-msgdb-load): New implementation.
5128
5129         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
5130
5131         * elmo-util.el (elmo-list-insert): New implementation.
5132
5133         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
5134         argument for elmo-msgdb-append.
5135         
5136
5137         * elmo-msgdb.el (elmo-load-msgdb): New function.
5138         (elmo-make-msgdb): Ditto.
5139         (elmo-msgdb-get-index): New inline function.
5140         (elmo-msgdb-set-index): Ditto.
5141         (elmo-msgdb-get-entity-hashtb): Ditto.
5142         (elmo-msgdb-get-mark-hashtb): Ditto.
5143         (elmo-msgdb-get-mark): Ditto.
5144         (elmo-msgdb-set-mark): Ditto.
5145         (elmo-msgdb-count-marks): Ditto.
5146         (elmo-msgdb-get-number): Ditto.
5147         (elmo-msgdb-get-field): Ditto.
5148         (elmo-msgdb-seen-list): Ditto.
5149         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
5150         (elmo-msgdb-delete-msgs): Follow the changes above.
5151         (elmo-msgdb-overview-get-entity): Ditto.
5152         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
5153         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
5154         and rewritten.
5155         (elmo-msgdb-make-index): Likewise.
5156         (elmo-msgdb-append): Removed third argument.
5157         (elmo-msgdb-clear): Clear index as nil.
5158         (elmo-folder-set-info-hashtb): Removed.
5159         (elmo-folder-set-info-max-by-numdb): Ditto.
5160         (elmo-folder-info-make-hashtb): Ditto.
5161
5162         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
5163
5164         * elmo-map.el (elmo-folder-pack-number): Ditto.
5165
5166 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
5167
5168         * elmo-version.el (elmo-version): Up to 2.9.10.
5169
5170         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
5171
5172         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
5173
5174 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
5175
5176         * elmo-utils.el (elmo-make-directory): Add option.
5177         Default file mode is 700.
5178
5179 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5180
5181         * elmo-shimbun.el (elmo-folder-local-p): Defined.
5182
5183 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
5184
5185         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
5186         mime-charset.
5187
5188         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
5189         and "smaller".
5190
5191 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5192
5193         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5194         (elmo-shimbun-folder-entity-hash): New function.
5195         (elmo-shimbun-folder-shimbun-header): Ditto.
5196         (elmo-shimbun-entity-to-header): Ditto.
5197         (elmo-shimbun-msgdb-to-headers): Removed.
5198         (elmo-shimbun-folder-setup): Ditto.
5199         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5200         for hash key.
5201         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5202         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5203         Removed useless local bind.
5204         (elmo-folder-open-internal): Don't call
5205         `elmo-shimbun-folder-setup'.
5206         (elmo-folder-close-internal): Clear entity-hash slot.
5207         (elmo-folder-clear): Ditto.
5208         (elmo-shimbun-msgdb-create-entity): Use
5209         `elmo-shimbun-folder-shimbun-header'.
5210         (elmo-map-message-fetch): Ditto.
5211         (elmo-shimbun-update-overview): Use overview entity instead of
5212         shimbun header to lookup id by references.
5213         (elmo-map-folder-list-message-locations): Use not only headers but
5214         also overviews to list locations.
5215
5216 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5217
5218         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5219         msgdb path.
5220
5221         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5222
5223 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5224
5225         * elmo-util.el (elmo-read-search-condition-internal): Give default
5226         value for date.
5227
5228 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5229
5230         * elmo-util.el (elmo-condition-parse-search-value): Accept
5231         YYYY-MM-DD format to search.
5232         * elmo-date.el (elmo-date-get-datevec): Likewise.
5233
5234 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5235
5236         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5237         debugging code.
5238
5239 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5240
5241         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5242         from t.
5243
5244         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5245
5246         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5247         case from `elmo-folder-exists-p'.
5248         (elmo-folder-exists-p): Removed.
5249         (elmo-folder-creatable-p) Ditto.
5250
5251         * elmo-net.el (elmo-folder-create): Defined.
5252         (elmo-folder-create-unplugged): New function.
5253         (elmo-folder-exists-p): Changed default value to nil from t.
5254
5255         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5256         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5257
5258         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5259         `elmo-create-folder-dop' and append queue
5260         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5261         (elmo-folder-create-dop-delayed): New function.
5262
5263         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5264
5265         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5266
5267         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5268         (elmo-folder-writable-p) : Ditto.
5269
5270         * elmo-version.el (elmo-version): Up to 2.9.9.
5271
5272 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5273
5274         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5275         `elmo-message-use-cache-p' returns nil.
5276         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5277         (ignore cache file and refer the substance in local folders)
5278
5279 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5280
5281         * elmo-version.el (elmo-version): Up to 2.9.8.
5282
5283 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5284
5285         * elmo-version.el (elmo-version): Up to 2.9.7.
5286
5287         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5288
5289 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5290
5291         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5292
5293 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5294
5295         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5296         from --early.
5297         (elmo-map-folder-list-message-locations): Reverse location list.
5298
5299 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5300
5301         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5302
5303 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5304
5305         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5306         as a key.
5307         (elmo-nntp-folder-list-subfolders): Follow the change above.
5308
5309 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5310
5311         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5312         name if authentication type is specified.
5313
5314 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5315
5316         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5317         variable.
5318         (elmo-default-nntp-stream-type): Ditto.
5319         (elmo-default-pop3-stream-type): Ditto.
5320
5321 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5322
5323         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5324
5325 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5326
5327         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5328         elmo-vars.el.
5329         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5330
5331         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5332         (elmo-maildir-folder-path): Ditto.
5333         (elmo-maildir-list): Ditto (abolished).
5334
5335 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5336
5337         * elmo-version.el (elmo-version): Up to 2.9.6.
5338
5339 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5340
5341         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5342         (elmo-maildir-folder-path): Ditto.
5343         (elmo-msgdb-directory): Ditto.
5344         (elmo-passwd-life-time): Ditto.
5345         (elmo-msgdb-extra-fields): Ditto.
5346         (elmo-enable-disconnected-operation): Ditto.
5347
5348 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5349
5350         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5351         other choices.
5352         (elmo-pop3-default-authenticate-type): Ditto.
5353
5354 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5355
5356         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5357         choices for custom.
5358         (elmo-pop3-default-authenticate-type): Ditto.
5359
5360 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5361
5362         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5363         mailbox to new-folder.
5364
5365 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5366
5367         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5368         less than new, set new as unread.
5369
5370         * elmo-util.el (elmo-string): Don't put text-property if nil.
5371
5372 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5373
5374         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5375         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5376
5377 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5378
5379         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5380         is nil on `completing-read'.
5381
5382 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5383
5384         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5385         for namespace part.
5386         (elmo-imap4-parse-namespace-subr): Ditto.
5387         (elmo-folder-list-subfolders): Append a delimiter when the specified
5388         folder path is a root with namespace and does not end with delimiter.
5389
5390 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5391
5392         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5393         was used.
5394
5395 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5396
5397         * elmo-util.el (elmo-save-buffer): The first argument of message
5398         is a format control string.
5399
5400 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5401
5402         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5403         `elmo-folder-diff').
5404         (elmo-diff-unread): Likewise.
5405
5406 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5407
5408         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5409         is t on `completing-read'.
5410
5411 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5412
5413         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5414         method of target folder with self mark-alist if MARK-ALIST is nil.
5415
5416 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5417
5418         * elmo-version.el (elmo-version): Up to 2.9.5.
5419
5420 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5421
5422         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5423         (elmo-dop-merge-funcs): Remove.
5424
5425 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5426
5427         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5428         Return t if PATH is directory, too.
5429         Use `dolist' instead of while loop.
5430
5431 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5432
5433         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5434         is deleted.
5435
5436 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5437
5438         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5439         return value to t.
5440         (elmo-folder-list-messages-unplugged): Return t if
5441         elmo-enable-disconnected-operation is nil.
5442
5443         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5444         `elmo-folder-list-messages-internal'.
5445
5446 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5447
5448         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5449         Change to looking-at `[23][0-9]+'.
5450         (elmo-network-initialize-session): Use 'error-msg'
5451         * elmo-net.el (elmo-network-open-session): Set unplugged
5452         if elmo-network-initialize-session returns 'elmo-open-err.
5453
5454 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5455
5456         * elmo-version.el (elmo-version): Up to 2.9.4.
5457
5458 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5459
5460         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5461         `elmo-folder-list-messages-internal'.
5462
5463 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5464
5465         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5466         (elmo-message-match-condition): New method.
5467         (elmo-folder-search-fast): New inline function.
5468         (elmo-msgdb-search): Removed.
5469
5470         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5471         target folder if it is unplugged.
5472         (elmo-folder-list-messages-internal): Return t if target folder is
5473         unplugged and itself is persistent; In this case, use list be
5474         searched already.
5475
5476         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5477         (elmo-msgdb-search-internal-primitive): Ditto.
5478         (elmo-msgdb-match-condition): New function.
5479         (elmo-msgdb-match-condition-primitive): Ditto.
5480
5481         * elmo-util.el (elmo-filter-condition-p): New macro.
5482
5483         * elmo-cache.el (elmo-folder-search): Removed.
5484
5485         * elmo-localdir.el (elmo-folder-search): Ditto.
5486
5487         * elmo-maildir.el (elmo-folder-search): Ditto.
5488
5489         * elmo-mark.el (elmo-folder-search): Ditto.
5490
5491         * elmo-nmz.el (elmo-folder-search): Ditto.
5492
5493         * elmo-sendlog.el (elmo-folder-search): Ditto.
5494
5495         * elmo-shimbun.el (elmo-folder-search): Ditto.
5496
5497         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5498         if folder is unplugged.
5499
5500         * elmo-nntp.el (elmo-folder-search): Likewise.
5501         (elmo-nntp-search-internal): New function.
5502
5503         * elmo-version.el (elmo-version): Up to 2.9.3.
5504
5505 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5506
5507         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5508
5509 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5510
5511         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5512
5513 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5514
5515         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5516
5517 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5518
5519         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5520         (elmo-map-folder-list-message-locations): Do drive letter conversion
5521         on Windows environment.
5522         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5523         (elmo-map-message-fetch): Ditto.
5524
5525 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5526
5527         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5528         (elmo-network-initialize-session): Ditto.
5529
5530 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5531
5532         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5533
5534         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5535
5536         * elmo-util.el (elmo-progress-clear): Ditto.
5537
5538         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5539         `DD-Mon-YYYY' type date.
5540
5541 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5542
5543         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5544         `elmo-date-make-sortable-string' instead of
5545         `timezone-make-date-sortable'.
5546
5547         * elmo-date.el (elmo-date-make-sortable-string): Use
5548         `timezone-make-time-string'.
5549
5550 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5551
5552         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5553
5554         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5555         `since'; Fix timezone.
5556
5557         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5558
5559         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5560
5561 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5562
5563         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5564
5565 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5566
5567         * elmo.el (elmo-generic-folder-append-messages): Make
5568         fetch-strategy with `use-cache' as 'maybe. Check return value of
5569         `elmo-message-fetch'.
5570         (elmo-message-fetch): Return return value of
5571         `elmo-message-fetch-with-cache-process'.
5572         (elmo-message-fetch-with-cache-process): Return non-nil if
5573         fetching was succeed. Load cache when fetching was failed and
5574         fetch-strategy-use-cache is 'maybe.
5575
5576         * elmo-util.el (elmo-file-cache-load): New function.
5577
5578         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5579         defun.
5580
5581         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5582         non-nil if fetching was succeed.
5583
5584         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5585
5586         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5587
5588         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5589         (elmo-message-fetch-with-cache-process): Likwise.
5590
5591         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5592
5593         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5594
5595         * elmo-version.el (elmo-version): Up to 2.9.2.
5596
5597 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5598
5599         * elmo.el (elmo-folder-delete): Delete msgdb path.
5600
5601         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5602
5603         * elmo-maildir.el (elmo-folder-delete): Ditto.
5604
5605         * elmo-localdir.el (elmo-folder-delete): Ditto.
5606
5607         * elmo-imap4.el (elmo-folder-delete): Ditto.
5608
5609 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5610
5611         * elmo.el (luna-define-class): Added `biff' slot.
5612
5613         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5614         (elmo-pop3-debug-inhibit-logging): Abolished.
5615         (elmo-network-close-session): Eliminated needless let.
5616         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5617         (elmo-pop3-send-command): Added `no-log' argument.
5618         (elmo-pop3-process-filter): Use `with-current-buffer'.
5619         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5620         if login failure.
5621         (elmo-pop3-auth-apop): Likewise.
5622         (elmo-network-authenticate-session): Likewise.
5623
5624         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5625         if biff folder.
5626
5627         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5628         string to determine protocol.
5629         (elmo-network-session-name-prefix): Abolished.
5630         (elmo-network-session-cache-key): Follow the change above.
5631         (elmo-network-open-session): Ditto.
5632
5633         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5634         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5635
5636         * elmo-version.el (elmo-version): Up to 2.9.1.
5637
5638         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5639         unmatch condition checking.
5640
5641         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5642         condition.
5643
5644 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5645
5646         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5647
5648 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5649
5650         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5651         test for while loop to execute at least one SEARCH command.
5652
5653 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5654
5655         * elmo-version.el (elmo-version): Up to 2.9.0.
5656
5657 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5658
5659         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5660         (elmo-archive-folder-path): Define.
5661         (elmo-folder-initialize): Setup `dir-name' slot.
5662         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5663         Use `dir-name' as prefix of each subfolders.
5664         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5665
5666 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5667
5668         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5669         (elmo-pipe-folder-list-target-messages): New internal function.
5670         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5671         `killed-list'.
5672         (elmo-pipe-folder-copied-list-load): New function.
5673         (elmo-pipe-folder-copied-list-save): Ditto.
5674         (elmo-folder-open-internal): Follow the change above.
5675         (elmo-folder-status): Fixed for copy.
5676
5677 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5678
5679         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5680
5681 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5682
5683         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5684         elmo-copy-file instead of elmo-add-name-to-file.
5685
5686         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5687
5688         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5689         "file://..." index.
5690
5691         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5692         of accept-process-output as 1.
5693         (elmo-pop3-read-contents): Ditto.
5694         (elmo-pop3-read-body): Ditto.
5695
5696 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5697
5698         * elmo-version.el (product-version-as-string): Remove define.
5699
5700 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5701
5702         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5703         (elmo-imap4-copy-messages): Chop number set using
5704         `elmo-imap4-number-set-chop-length'.
5705         (elmo-imap4-set-flag): Ditto.
5706         (elmo-imap4-search-internal-primitive): Ditto.
5707
5708 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5709
5710         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5711         `elmo-folder-make-temp-dir'
5712
5713         * elmo-vars.el (elmo-cache-directory): New variable.
5714         (elmo-cache-dir): Abolished.
5715         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5716
5717         * elmo-version.el (elmo-version): Up to 2.7.7.
5718
5719 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5720
5721         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5722         defcustom; Set default value as t.
5723
5724 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5725
5726         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5727         (ldap-search-program-arguments): Changed default value.
5728         (ldap-search-basic): Accept exit status 4.
5729         (ldap/field-body): Parse options.
5730         (ldap/collect-field): Ditto.
5731         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5732
5733         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5734         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5735         (elmo-imap4-accept-ok): Ditto.
5736         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5737         'notify-bye, only BYE error is reported.
5738         (elmo-folder-exists-p-plugged): Set no-error argument of
5739         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5740
5741         * elmo.el (elmo-imap4-bye-error): Changed message.
5742
5743         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5744         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5745         queues (It causes infinite loop).
5746
5747 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5748
5749         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5750         (RECENT UNSEEN MESSAGES) extension.
5751
5752 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5753
5754         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5755         Check number of overview fields.
5756
5757 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5758
5759         * elmo.el (elmo-folder-confirm-appends): Changed message.
5760         (elmo-folder-confirm-appends): Ditto.
5761
5762         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5763         `with-temp-buffer'.
5764         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5765
5766 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5767
5768         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5769         of elmo-folder-update-threshold is nil, which can be set by
5770         wl-summary-update-confirm-threshold.
5771
5772 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5773
5774         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5775         (elmo-nmz-index-alias-alist): Ditto.
5776         (elmo-map-folder-list-message-locations): Follow the change above.
5777
5778 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5779
5780         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5781
5782         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5783
5784         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5785
5786         * elmo-util.el (elmo-read): Ditto.
5787         (elmo-display-error): Ditto.
5788
5789         * elmo-vars.el (elmo-date-match): Ditto.
5790
5791         * pldap.el (ldap-coding-system): Ditto.
5792
5793         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5794         `elmo-inhibit-number-mapping' as nil.
5795
5796 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5797
5798         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5799         space delimiter for list response.
5800
5801 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5802
5803         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5804
5805 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5806
5807         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5808         (elmo-map-message-fetch): Fix.
5809         * elmo-map.el (elmo-folder-status): Fix for killed.
5810
5811 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5812
5813         * elmo-sendlog.el: New file.
5814         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5815
5816 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5817
5818         * acap.el (acap-logging-out): New buffer local variable.
5819         (acap-close): Set it.
5820         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5821         an error.
5822
5823 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5824
5825         * acap.el (acap-response-bye-p): New function.
5826         (acap-response-bye-message): Ditto.
5827         (acap-wait-for-response): If bye response is received, cause an error.
5828         (acap-parse-response): Make bye response when 'Bye' is received.
5829
5830 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5831
5832         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5833
5834 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5835
5836         * elmo-util.el (elmo-copy-file): Added argument
5837         `ok-if-already-exists'.
5838         (elmo-copy-file): Fixed typo.
5839
5840 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5841
5842         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5843
5844 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5845
5846         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5847
5848 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5849
5850         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5851         to killed-list.
5852
5853 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5854
5855         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5856         (elmo-folder-initialize): Fix for `copy'.
5857         (elmo-pipe-drain): Ditto.
5858         (elmo-folder-open-internal): Ditto.
5859         (elmo-folder-newsgroups): Fix.
5860
5861 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5862
5863         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5864         for each message.
5865
5866         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5867         recent value is returned from imap folder.
5868
5869         * elmo.el (elmo-folder-newsgroups): New generic function.
5870
5871         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5872         (elmo-folder-initialize): Set it.
5873         (elmo-folder-expand-msgdb-path): Use it.
5874         (elmo-folder-newsgroups): Define.
5875
5876         * elmo-filter.el (elmo-folder-newsgroups): Define.
5877
5878         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5879
5880         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5881
5882         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5883
5884 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5885
5886         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
5887         user option.
5888         (elmo-shimbun-header-extra-field): New inline function.
5889         (elmo-shimbun-header-set-extra-field): Ditto.
5890         (elmo-shimbun-folder-header-hash-setup): Ditto.
5891         (elmo-shimbun-update-overview): Ditto.
5892         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
5893         (elmo-shimbun-folder-setup): Use
5894         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
5895         (elmo-shimbun-get-headers): Ditto.
5896         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
5897         Insert `X-Shimbun-Id:' header if extra field is set.
5898         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
5899         field's value instead of `shimbun-header-id'.
5900
5901         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
5902         inline function.
5903         (elmo-msgdb-overview-entity-set-date): Ditto.
5904         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
5905
5906 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
5907
5908         * mmimap.el (mmimap-entity-section): Changed body node number from
5909         "0" to "1".
5910
5911 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5912
5913         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5914         `elmo-folder-delete-messages'.
5915
5916         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5917         (elmo-folder-initialize): Changed to expand alias into index path.
5918
5919         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5920         `elmo-mime-insert-header-from-buffer' with 6th arg
5921         `sorted-fields'.
5922
5923 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5924
5925         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5926
5927         * elmo.el (elmo-diff-new): New inline function.
5928         (elmo-diff-unread): Ditto.
5929         (elmo-diff-all): Ditto.
5930
5931         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5932         value from responseb.
5933         (elmo-imap4-folder-diff-plugged): Ditto.
5934         (elmo-imap4-server-diff-async): Added recent argument.
5935         (elmo-server-diff-async): Ditto.
5936         (elmo-imap4-folder-diff-plugged): Ditto.
5937
5938         * elmo-version.el (elmo-version): Up to 2.7.6.
5939
5940 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5941
5942         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5943         in quoted-stirng.
5944
5945 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
5946
5947         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5948
5949         * elmo-imap4.el (elmo-folder-initialize): Ditto.
5950
5951         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5952
5953         * elmo-multi.el (elmo-folder-initialize): Ditto.
5954
5955         * elmo-util.el (elmo-parse-token): New function.
5956         (elmo-parse-prefixed-element): Ditto.
5957
5958 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
5959
5960         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5961         delete process.
5962         (elmo-imap4-accept-ok): Ditto.
5963
5964 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5965
5966         * mmimap.el (mime-imap-entity-header-string): Don't check first
5967         element of node-id is `0' (Follow last change).
5968
5969 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5970
5971         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5972         assigned irregular node-id to nested multipart section.
5973         (initialize-instance): Followed above change.
5974
5975 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5976
5977         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5978         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5979         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5980         `elmo-shimbun-get-headers');
5981         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5982         visible article on summary exists in headers).
5983         (elmo-map-message-fetch): Cause an error when folder is unplugged.
5984
5985 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5986
5987         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5988         definition.
5989
5990 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
5991
5992         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5993
5994 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5995
5996         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
5997         header separator into loop condition.
5998
5999 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6000
6001         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
6002         Return duplicate folder if it has subfolder.
6003
6004 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6005
6006         * elmo.el (elmo-make-folder): Add folder name error check.
6007
6008         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
6009         (elmo-nntp-encode-group-string): New inline function.
6010         (elmo-nntp-decode-group-string): Ditto.
6011         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
6012         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
6013         Use `not' instead of `null';
6014         Use elmo-nntp-decode-group-string.
6015
6016         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
6017
6018         * elmo-version.el (elmo-version): Up to 2.7.5.
6019
6020 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6021
6022         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
6023         Hide progress gauge if `elmo-folder-move-messages' exits
6024         nonlocally.
6025
6026 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6027
6028         * elmo-imap4.el (elmo-folder-initialize): Use
6029         `elmo-imap4-encode-folder-string' for folder name.
6030
6031 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6032
6033         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
6034         `done'.
6035
6036 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6037
6038         * elmo-util.el (elmo-progress-counter-alist): New internal
6039         variable.
6040         (elmo-progress-counter-value): New macro.
6041         (elmo-progress-counter-all-value): Ditto.
6042         (elmo-progress-counter-format): Ditto.
6043         (elmo-progress-counter-set-value): Ditto.
6044         (elmo-progress-set): New function.
6045         (elmo-progress-clear): Ditto.
6046         (elmo-progress-notify): Ditto.
6047
6048         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
6049         counter.
6050
6051         * elmo.el (elmo-generic-folder-append-messages): Call
6052         `elmo-progress-notify'.
6053         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
6054
6055         * elmo-archive.el (elmo-folder-append-messages): Call
6056         `elmo-progress-notify'.
6057
6058         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
6059
6060         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
6061
6062         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
6063
6064 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6065
6066         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
6067         'Create'.
6068         (elmo-message-encache-dop): Added argument `read'.
6069
6070         * elmo-shimbun.el (elmo-message-encache): Ditto.
6071
6072         * elmo-net.el (elmo-message-encache): Ditto.
6073
6074         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
6075         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
6076         elmo-imap4-seen-messages.
6077         (elmo-folder-msgdb-create-plugged): Initialize
6078         elmo-imap4-seen-messages;
6079         Set seen mark on elmo-imap4-seen-messages.
6080
6081         * elmo-pipe.el (elmo-folder-message-file-p): Define.
6082
6083         * elmo.el (elmo-generic-folder-append-messages): Check return value of
6084         elmo-folder-append-buffer.
6085         (elmo-folder-encache): Added optional argument `read'.
6086         (elmo-message-encache): Ditto.
6087
6088         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
6089
6090         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
6091
6092         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
6093         if append buffer content succeds.
6094
6095 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6096
6097         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
6098         elmo-display-progress.
6099
6100         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
6101         Set 4th argument of mime-display-message.
6102         (elmo-mime-display-as-is): Ditto.
6103
6104 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
6105
6106         * elmo-nmz.el (toplevel): Require 'mime-edit.
6107         (elmo-nmz-content-type-alist): Abolished.
6108         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
6109         content is not a message.
6110         (elmo-map-message-fetch): Changed behavior exept for message content;
6111         Detect mime-charset automatically, Use `mime-find-file-type' to detect
6112         content-type, Add From: and Subject: field.
6113
6114 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6115
6116         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
6117         (elmo-map-message-fetch): Add `Content-Type' field if contents is
6118         not a message.
6119
6120 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6121
6122         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
6123         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
6124
6125         * elmo-archive.el (elmo-folder-writable-p): Defined.
6126
6127         * elmo-cache.el (elmo-folder-writable-p): Ditto.
6128
6129         * elmo-filter.el (elmo-folder-writable-p): Ditto.
6130
6131         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
6132
6133         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
6134
6135         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
6136
6137         * elmo-mark.el (elmo-folder-writable-p): Ditto.
6138
6139         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
6140
6141         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
6142
6143 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
6144
6145         * elmo-util.el (elmo-address-quote-specials): New function;
6146         Renamed from `wl-address-quote-specials'.
6147
6148 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6149
6150         * elmo-version.el (elmo-version): Up to 2.7.4.
6151
6152 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
6153
6154         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
6155
6156 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6157
6158         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
6159         both compile-time and run-time to avoid byte-compile warning.
6160
6161 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
6162
6163         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
6164
6165 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6166
6167         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
6168         option.
6169         (elmo-mime-display-as-is-internal): Use it.
6170
6171         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
6172         if `read-passwd' is not defined.
6173
6174 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6175
6176         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
6177         by original number.
6178         (elmo-folder-status): Call `elmo-folder-open-internal';
6179         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
6180         (elmo-folder-close-internal): Set location-alist as nil.
6181         (elmo-folder-clear): Define.
6182         (elmo-folder-check): Don't set location-alist as nil.
6183
6184         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
6185
6186 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
6187
6188         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
6189         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
6190
6191         * mmimap.el (mime-imap-entity::requested): New slot.
6192         (mime-imap-location-fetch-entity-p): New generic function.
6193         (mime-decode-parameters): Define using `defun-maybe'.
6194         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6195         content-type structure.
6196         (mime-entity-body): Return empty body if
6197         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6198
6199         * elmo.el (elmo-message-displaying): New variable.
6200
6201         * elmo-mime.el (elmo-mime-message-display): Bind
6202         elmo-message-displaying as t.
6203
6204         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6205
6206 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6207
6208         * acap.el (acap-open): erase buffer before starting network process.
6209         (acap-store): Rewrite.
6210
6211 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6212
6213         * elmo-imap4.el (elmo-imap4-default-mailbox,
6214         elmo-imap4-default-server
6215         elmo-imap4-default-authenticate-type,
6216         elmo-imap4-default-user,
6217         elmo-imap4-default-port,
6218         elmo-imap4-default-stream-type,
6219         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6220
6221         * elmo-pop3.el (elmo-pop3-default-user,
6222         elmo-pop3-default-server,
6223         elmo-pop3-default-authenticate-type,
6224         elmo-pop3-default-port,
6225         elmo-pop3-default-stream-type,
6226         elmo-pop3-stream-type-alist): Ditto.
6227
6228         * elmo-nntp.el (elmo-nntp-default-server,
6229         elmo-nntp-default-user,
6230         elmo-nntp-default-port,
6231         elmo-nntp-default-stream-type,
6232         elmo-nntp-stream-type-alist): Ditto.
6233
6234         * elmo-vars.el: Follow changes above.
6235         (elmo-setting): New custom group; added 'elmo-setting group to
6236         above variables.
6237
6238         * elmo-version.el (elmo-version): Up to 2.7.3.
6239
6240         * acap.el (acap-parse-response): Don't delete process when BYE
6241         response (It causes hang-up on slow network environment).
6242         (toplevel): Added comment.
6243
6244 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6245
6246         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6247
6248         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6249         parsing NIL.
6250         (acap-parse-return-metadata): Ditto.
6251
6252         * slp.el: New file.
6253         (toplevel): Fixed typo.
6254
6255         * acap.el: New file.
6256         (acap-network-stream-open): Show "Connecting..." message.
6257         (acap-parse-response): Fixed problem for BYE untagged response.
6258         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6259         (toplevel): Added tiny comments.
6260
6261 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6262
6263         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6264         space delimiter for uidl response.
6265
6266 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6267
6268         * elmo-vars.el (elmo-use-semi): Eliminated.
6269
6270         * elmo-util.el (elmo-string-assoc-all): New function.
6271
6272 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6273
6274         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6275         property 'mime-preview-situation for `mime-preview-quit'.
6276
6277 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6278
6279         * elmo.el (elmo-message-fetch-with-cache-process): Call
6280         elmo-message-fetch-internal instead of causing an error when fetch
6281         strategy is 'entire but only 'section cache is available.
6282
6283 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6284
6285         * elmo-version.el (elmo-version): Up to 2.7.2.
6286
6287         * elmo.el (elmo-generic-folder-append-messages): Make
6288         fetch-strategy with `use-cache'.
6289
6290         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6291         (elmo-dop-queue-method-name): New macro.
6292
6293 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6294
6295         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6296         unbalanced parenthesis.
6297
6298 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6299
6300         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6301
6302 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6303
6304         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6305         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6306
6307 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6308
6309         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6310         local variables.
6311
6312 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6313
6314         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6315         (elmo-message-use-cache-p): Define.
6316         (elmo-folder-msgdb-create): Treat cache.
6317
6318 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6319
6320         * elmo-nntp.el (elmo-network-initialize-session): Call
6321         `elmo-nntp-send-mode-reader'.
6322         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6323
6324 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6325
6326         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6327         alist.
6328         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6329         assoc.
6330
6331         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6332         for `elmo-plugged-p'.
6333         (elmo-open-network-stream): Fixed stream-type argument.
6334
6335 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6336
6337         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6338         unknown archive type is specified.
6339
6340 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6341
6342         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6343
6344         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6345         while loading msgdb.
6346
6347         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6348         (elmo-folder-open-internal): Rewrite.
6349
6350 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6351
6352         * elmo-mime.el (elmo-mime-display-as-is-internal):
6353         Adjust buffer-multibyte status.
6354
6355 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6356
6357         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6358         of elmo-condition-find-key.
6359
6360         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6361         (elmo-condition-in-msgdb-p): Ditto.
6362         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6363         argument.
6364
6365 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6366
6367         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6368
6369 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6370
6371         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6372         label for elmo-display-progress.
6373
6374 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6375
6376         * elmo.el (elmo-folder-clear): New method.
6377         (elmo-folder-clear): Define.
6378         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6379
6380         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6381         (elmo-folder-clear): Define.
6382
6383         * elmo-map.el (elmo-folder-clear): Define.
6384
6385         * elmo-version.el (elmo-version): Up to 2.7.1.
6386
6387 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6388
6389         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6390         updates.
6391
6392 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6393
6394         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6395         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6396
6397 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6398
6399         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6400
6401         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6402         and re-written.
6403
6404         * elmo-imap4.el (elmo-folder-initialize): Use
6405         elmo-get-network-stream-type.
6406
6407         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6408
6409         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6410
6411 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6412
6413         * elmo.el (elmo-message-encache): Set unread argument for
6414         elmo-message-fetch.
6415
6416         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6417
6418         * elmo.el (elmo-net-port-info): New method.
6419
6420         * elmo-shimbun.el (elmo-net-port-info): Define.
6421         (elmo-message-encache): Ditto.
6422
6423         * elmo-net.el (elmo-net-port-info): Define as method.
6424
6425         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6426         unplugged status when elmo-enable-disconnected-operation is t.
6427
6428         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6429         of spool folder before checking new number.
6430
6431 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6432
6433         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6434         (elmo-network-setup-session): Ditto.
6435         (elmo-message-fetch-plugged): Ditto.
6436         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6437         (elmo-network-initialize-session): Ditto.
6438         (elmo-pop3-read-response): Abolish 3rd argument.
6439         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6440         (elmo-pop3-read-contents): Ditto.
6441         (elmo-pop3-read-body): Ditto.
6442         (elmo-folder-status): Call elmo-folder-close.
6443         (elmo-pop3-lock): Abolish.
6444         (elmo-pop3-unlock): Ditto.
6445         (elmo-pop3-locked-p): Ditto.
6446         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6447
6448 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6449
6450         * elmo-version.el (elmo-version): Up to 2.7.0.
6451
6452         * elmo-pop3.el (elmo-pop3-debug): New variable.
6453         (elmo-pop3-debug-inhibit-logging): Ditto.
6454         (elmo-pop3-debug): New function.
6455         (elmo-pop3-send-command): Call elmo-pop3-debug.
6456         (elmo-pop3-read-response): Added keep-lock optional argument;
6457         Don't unlock if keep-lock is non-nil.
6458         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6459         (elmo-network-authenticate-session): Bind
6460         elmo-pop3-debug-inhibit-logging as t.
6461         (elmo-network-setup-session): Call elmo-pop3-read-response with
6462         keep-lock argument.
6463         (elmo-pop3-read-msg): Ditto.
6464         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6465         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6466         (elmo-network-initialize-session): Call elmo-pop3-lock.
6467         (elmo-folder-close-internal): Don't clear location-alist slot.
6468         (elmo-folder-check): Clear location-alist slot.
6469
6470 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6471
6472         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6473         (elmo-pop3-send-command): Call elmo-pop3-lock.
6474         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6475         (elmo-pop3-read-contents): Ditto.
6476         (elmo-pop3-lock): New function.
6477         (elmo-pop3-unlock): Ditto.
6478         (elmo-pop3-locked-p): Ditto.
6479         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6480         returns t.
6481
6482 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6483
6484         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6485
6486         * elmo-util.el (elmo-file-field-primitive-condition-match):
6487         New inline function (Don't fetch file content if "first" or "last").
6488         (elmo-file-field-condition-match): Use
6489         elmo-file-field-primitive-condition-match.
6490
6491         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6492         "first".
6493
6494         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6495         (elmo-message-fetch-plugged): Fixed.
6496
6497         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6498
6499 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6500
6501         * elmo.el (elmo-folder-move-messages): Bind
6502         elmo-inhibit-display-retrieval-progress as t while moving messages.
6503
6504         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6505         New variable.
6506         (elmo-inhibit-display-retrieval-progress): Ditto.
6507
6508         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6509         for retrieval progress;
6510         Don't display progress when total buffer size is smaller than
6511         elmo-display-retrieval-progress-threshold.
6512         (elmo-message-fetch-plugged): Don't display progress when
6513         elmo-inhibit-display-retrieval-progress is non-nil.
6514
6515         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6516         for retrieval progress;
6517         Don't display progress when literal size is smaller than
6518         elmo-display-retrieval-progress-threshold.
6519         (elmo-imap4-message-fetch): Don't display progress when
6520         elmo-inhibit-display-retrieval-progress is non-nil.
6521
6522 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6523
6524         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6525         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6526         (elmo-imap4-message-fetch): Likewise.
6527
6528         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6529         (elmo-shimbun-index-range-alist): Ditto.
6530         (elmo-shimbun-use-entire-index): Abolish.
6531         (shimbun-mua-use-entire-index): Ditto.
6532         (elmo-shimbun-folder): Added new slot `range'.
6533         (elmo-folder-initialize): Setup slot `range'.
6534
6535 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6536
6537         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6538         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6539         (elmo-shimbun-get-headers): Use return value of
6540         `shimbun-article-expiration-days'.
6541         (elmo-folder-close-internal): Clean up last-check slot.
6542
6543         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6544         (elmo-pop3-total-size): New variable.
6545         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6546
6547         * elmo.el (elmo-folder-reserve-status-p): New method.
6548
6549         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6550         (elmo-shimbun-use-entire-index): New user option.
6551         (shimbun-elmo-mua): New class.
6552         (shimbun-mua-search-id): Define.
6553         (shimbun-mua-use-entire-index): Ditto.
6554         (elmo-shimbun-folder:last-check): New slot.
6555         (elmo-shimbun-headers-cache-header-list): Abolish.
6556         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6557         (elmo-shimbun-headers-cache-header-hash): Ditto.
6558         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6559         (elmo-shimbun-headers-cache-last-check): Ditto.
6560         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6561         (elmo-shimbun-headers-check-p): Rewrite.
6562         (elmo-shimbun-msgdb-to-headers): New function.
6563         (elmo-shimbun-get-headers): Rewrite.
6564         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6565         (elmo-folder-open-internal): Get headers only if
6566         `elmo-shimbun-headers-check-p' is non-nil.
6567         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6568         is non-nil.
6569         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6570         (elmo-quit): Removed.
6571
6572         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6573         function.
6574         (elmo-msgdb-overview-entity-set-extra): Ditto.
6575         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6576
6577         * elmo-map.el (elmo-folder-status): Don't call
6578         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6579         is non-nil.
6580
6581 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6582
6583         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6584         of `elmo-msgdb-search-internal-primitive' when condition's car is
6585         `and' or `or'.
6586
6587 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6588
6589         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6590
6591 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6592
6593         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6594         call `elmo-pipe-drain'.
6595
6596 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6597
6598         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6599         typo. (elmo-cache-folder -> elmo-mark-folder)
6600
6601 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6602
6603         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6604         `elmo-message-fetch'.
6605
6606 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6607
6608         * elmo-net.el (elmo-message-encache): Fixed typo.
6609         (elmo-message-fetch-unplugged): Changed call
6610         `elmo-message-fetch-internal' without argument `outbuf'.
6611
6612 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6613
6614         * elmo.el (elmo-message-encache): Define as generic function.
6615         (elmo-message-fetch-field): New generic function.
6616         (elmo-message-fetch-with-cache-process): Cause an error when
6617         fetch strategy is 'entire but only 'section cache is available.
6618         (toplevel): Fixed nmz folder definition.
6619
6620         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6621         (elmo-msgdb-resume-list-filename): Ditto.
6622         (elmo-queue-filename): Ditto.
6623         (elmo-enable-disconnected-operation): Changed default value to t.
6624
6625         * elmo-util.el (elmo-cache-path-section-p): New function.
6626         (elmo-file-cache-get): Use it.
6627         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6628         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6629         (elmo-dop-queue-save): Ditto.
6630
6631         * elmo-net.el (elmo-folder-status-unplugged): Call
6632         elmo-folder-status-dop.
6633         (elmo-folder-list-messages-unplugged): Implemented.
6634         (elmo-folder-delete-messages-unplugged): Define.
6635         (elmo-folder-msgdb-create): Define.
6636         (elmo-folder-msgdb-create-unplugged): Define.
6637         (elmo-folder-mark-as-read-unplugged): Ditto.
6638         (elmo-folder-unmark-read-unplugged): Ditto.
6639         (elmo-folder-mark-as-important-unplugged): Ditto.
6640         (elmo-folder-unmark-important-unplugged): Ditto.
6641         (elmo-message-encache): Ditto.
6642
6643         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6644         (elmo-dop-queue-save): Ditto.
6645
6646         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6647         `elmo-folder-msgdb-create'.
6648         (elmo-folder-append-buffer): Implemented unplugged operation.
6649         (elmo-folder-append-messages): Call parent method in unplugged status.
6650         (elmo-message-fetch-unplugged): Removed definition.
6651         (elmo-message-fetch-field): Implemented.
6652
6653         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6654         (elmo-dop-folder): Removed variable definition.
6655         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6656         (elmo-dop-queue-flush): Implemented.
6657         (elmo-dop-queue-merge): Removed definition (TODO).
6658         (elmo-dop-spool-folder): New function.
6659         (elmo-dop-spool-folder-append-buffer): Ditto.
6660         (elmo-dop-spool-folder-list-messages): Ditto.
6661         (elmo-dop-list-deleting-messages): Ditto.
6662         (elmo-folder-append-buffer-dop): Ditto.
6663         (elmo-folder-delete-messages-dop): Ditto.
6664         (elmo-message-encache-dop): New inline function.
6665         (elmo-create-folder-dop): Ditto.
6666         (elmo-folder-mark-as-read-dop): Ditto.
6667         (elmo-folder-unmark-read-dop): Ditto.
6668         (elmo-folder-mark-as-important-dop): Ditto.
6669         (elmo-folder-unmark-important-dop): Ditto.
6670         (elmo-folder-status-dop): Fixed.
6671         (elmo-folder-append-buffer-dop-delayed): New function.
6672         (elmo-folder-delete-messages-dop-delayed): Ditto.
6673         (elmo-dop-msgdb): Ditto.
6674
6675 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6676
6677         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6678
6679 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6680
6681         * elmo.el (elmo-folder-move-messages): Fixed problem when
6682         `dst-folder' is 'null.
6683
6684 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6685
6686         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6687         instead of current mark.
6688
6689         * elmo-multi.el (elmo-folder-list-importants-internal): No
6690         operation if importants is not list.
6691
6692         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6693         Return t if importants is not list.
6694
6695         * elmo-map.el (elmo-map-folder-list-importants): Define.
6696         (elmo-folder-list-importants-internal): Check return value of
6697         `elmo-map-folder-list-importants-internal'.
6698
6699         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6700
6701         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6702
6703         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6704
6705         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6706
6707 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6708
6709         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6710         (Patch is provided by <kita@coe.nttdata.co.jp>).
6711
6712 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6713
6714         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6715         mark folder.
6716
6717 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6718
6719         * elmo.el (elmo-message-fetch): Define.
6720         (elmo-message-fetch-with-cache-process): New generic method.
6721         (elmo-message-fetch-internal): New generic method.
6722         (elmo-folder-synchronize):
6723
6724         * elmo-archive.el (elmo-message-fetch-internal): Define.
6725         (elmo-message-fetch): Eliminated.
6726
6727         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6728         (elmo-message-fetch): Eliminated.
6729
6730         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6731         argument OUTBUF.
6732         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6733
6734         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6735         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6736
6737         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6738         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6739
6740         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6741
6742         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6743
6744         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6745
6746         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6747         (elmo-message-fetch-unplugged): New generic method.
6748         (elmo-message-fetch-internal): Remove cache process (Renamed from
6749         `elmo-message-fetch').
6750
6751         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6752         (elmo-message-fetch): Eliminated.
6753         (elmo-message-fetch-unplugged): Ditto.
6754
6755         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6756
6757 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6758
6759         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6760         of `to-be-deleted' from number-alist to number-list.
6761
6762 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6763
6764         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6765         (elmo-folder-mark-as-important): Ditto.
6766
6767 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6768
6769         * elmo.el (elmo-folder): Added process-duplicates slot.
6770
6771         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6772         (elmo-folder-unmark-read): Ditto.
6773         (elmo-folder-unmark-important): Ditto.
6774         (elmo-folder-mark-as-important): Ditto.
6775
6776         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6777         duplicated message processing.
6778
6779         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6780
6781 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6782
6783         * elmo-util.el (elmo-list-subdirectories-1): New function.
6784         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6785         (elmo-mapcar-list-of-list): New function.
6786
6787         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6788         `elmo-mapcar-list-of-list' instead of `mapcar'.
6789
6790         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6791
6792         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6793         `elmo-have-link-count'. Return the fully qualified folder name.
6794
6795 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6796
6797         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6798         (elmo-shimbun-headers-cache): New internal variable.
6799         (elmo-shimbun-headers-cache-header-list): New inline function.
6800         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6801         (elmo-shimbun-headers-cache-header-hash): Ditto.
6802         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6803         (elmo-shimbun-headers-cache-last-check): Ditto.
6804         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6805         (elmo-shimbun-lapse-seconds): Ditto.
6806         (elmo-shimbun-headers-cache-check-p): Ditto.
6807         (elmo-shimbun-get-headers): New function.
6808         (elmo-folder-open-internal): Call it.
6809         (elmo-quit): Define (Clear headers-cache).
6810
6811 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6812
6813         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6814
6815         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6816         (elmo-msgdb-flist-save): Ditto.
6817
6818         * elmo-shimbun.el (elmo-folder-list-subfolders):
6819         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6820         (elmo-folder-exists-p): Ditto.
6821
6822         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6823         argument for `shimbun-header-insert'.
6824
6825 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6826
6827         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6828         at first time.
6829
6830         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6831         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6832
6833 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6834
6835         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6836         (elmo-folder-plugged-p): Define.
6837         (elmo-folder-set-plugged): Ditto.
6838         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6839         (elmo-folder-list-messages-internal): Return t if unplugged.
6840         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6841
6842         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6843         when elmo-folder-list-messages-internal method of children returns t.
6844
6845         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6846         pair is nil.
6847         (elmo-folder-open-internal): Don't update if unplugged status.
6848
6849 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6850
6851         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6852         new message.
6853
6854 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6855
6856         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6857
6858         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6859         saving.
6860
6861 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6862
6863         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6864
6865         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6866         (elmo-folder-open-internal): Set up headers slot.
6867         (elmo-folder-check): Call elmo-folder-close-internal and
6868         elmo-folder-open-internal.
6869         (elmo-folder-close-internal): Clean up headers slot.
6870
6871 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6872
6873         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6874         exactly folder list.
6875         (elmo-folder-append-messages): Fixed append archive with prefix.
6876
6877         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6878         make temp files with start-number.
6879
6880         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6881
6882 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6883
6884         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
6885         argument `visible-only'.
6886         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
6887         instead of `if'.
6888
6889         * elmo-pop3.el (elmo-folder-open-internal): Check
6890         `elmo-inhibit-number-mapping' is non-nil.
6891
6892         * elmo-pipe.el (elmo-folder-status): Fixed.
6893
6894 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
6895
6896         * elmo.el (elmo-dop-queue-flush): Added autload setting.
6897
6898         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
6899         (elmo-folder-open-internal): Setup `header-hash' slot.
6900         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
6901         information.
6902         (elmo-map-message-fetch): Ditto.
6903
6904 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
6905
6906         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6907         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6908         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6909         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6910
6911         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6912
6913 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
6914
6915         * sb-airs.el: Added footer.
6916
6917         * shimbun.el (shimbun-article): Define as luna-method.
6918
6919         * sb-tcup.el: New file.
6920
6921         * sb-airs.el (toplevel): Require 'sb-mhonarc.
6922         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6923
6924 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
6925
6926         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6927         (shimbun-get-headers): Ditto.
6928
6929         * elmo.el: Moved obsolete variable definitions from
6930         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6931
6932         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6933         groups.
6934
6935         * shimbun.el: New file.
6936
6937         * elmo-shimbun.el: New file.
6938
6939         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6940         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6941         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6942         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6943
6944 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
6945
6946         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6947         hierarchy is t.
6948
6949 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
6950
6951         * elmo.el (elmo-folder-msgdb): Define as macro.
6952         (elmo-folder-open): Added argument `load-msgdb'.
6953         (elmo-generic-folder-open): Ditto.
6954         (elmo-folder-encache): New function.
6955
6956         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6957
6958         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6959
6960         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6961         Eliminated argument FOLDER and added argument MSGDB.
6962         (elmo-dop-queue-load): Moved from elmo-dop.el.
6963         (elmo-dop-queue-save): Ditto.
6964
6965         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6966
6967         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6968
6969         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6970         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6971         (elmo-filter-folder-list-importants-internal): Ditto.
6972
6973         * elmo-map.el (elmo-folder-pack-number): Ditto.
6974
6975         * elmo-mime.el (elmo-mime-message-display): Ditto.
6976
6977         * elmo.el (elmo-generic-folder-commit): Ditto.
6978         (elmo-folder-list-unreads): Ditto.
6979         (elmo-folder-list-importants): Ditto.
6980         (elmo-generic-folder-commit): Ditto.
6981         (elmo-message-set-mark): Ditto.
6982         (elmo-generic-folder-append-msgdb): Ditto.
6983         (elmo-folder-synchronize): Ditto.
6984         (elmo-folder-messages): Ditto.
6985         (elmo-init): Call elmo-dop-queue-load.
6986         (elmo-folder-list-messages): Ditto.
6987
6988         * elmo-nntp.el (elmo-folder-update-number): Ditto.
6989         (elmo-nntp-folder-process-crosspost): Ditto.
6990         (elmo-folder-list-unreads-internal): Ditto.
6991
6992         * elmo-dop.el: Removed old functions.
6993
6994 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
6995
6996         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
6997         `folder' to `msgdb'.
6998
6999 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
7000
7001         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
7002         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
7003
7004         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
7005         case-fold-search.
7006
7007 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
7008
7009         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
7010         defined.
7011
7012         * mmimap.el (toplevel): Require 'mime-parse and 'static.
7013         (mmimap-parse-parameters-from-list): Define as alias for
7014         `mime-decode-parameter-plist' if it is defined as function.
7015         (mmimap-make-mime-entity): Added argument `number'.
7016         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
7017         as 0.
7018         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
7019
7020         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
7021
7022         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
7023
7024         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
7025
7026 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
7027
7028         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
7029
7030         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
7031         when elmo-imap4-default-authenticate-type is nil.
7032         (elmo-folder-list-subfolders): Ditto
7033         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
7034         (elmo-imap4-fetch-callback-1-subr): Renamed from
7035         `elmo-imap4-fetch-callback-1' and define as inline function.
7036         (elmo-imap4-fetch-callback-1):
7037         Renamed from `elmo-imap4-fetch-callback'.
7038         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
7039
7040         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
7041         msgdb path (To keep compatibility with main trunk).
7042
7043         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
7044
7045         * elmo-util.el (elmo-make-file-cache): Moved position of
7046         some macros.
7047
7048         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
7049         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
7050         instead of `elmo-pop3-inhibit-uidl'.
7051         (elmo-folder-exists-p): Ditto.
7052         (elmo-pop3-folder-list-messages): Ditto.
7053
7054         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
7055         instead of `elmo-pop3-inhibit-uidl'.
7056         (elmo-folder-status): Ditto.
7057
7058         * elmo-dop.el (elmo-dop-folder): New variable.
7059         (elmo-dop-lock-message): Eliminated.
7060         (elmo-dop-unlock-message): Ditto.
7061         (elmo-dop-lock-list-load): Ditto.
7062         (elmo-dop-lock-list-save): Ditto.
7063         (elmo-dop-delete-folder): Ditto.
7064         (elmo-dop-rename-folder): Ditto.
7065
7066         * elmo.el: Removed incomplete commentary.
7067
7068 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7069
7070         * elmo.el (toplevel): Require 'elmo-version first;
7071         for little `recursive-load-depth' settings.
7072         Fix "ends here" comment.
7073
7074 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
7075
7076         * elmo-util.el (toplevel): Require 'poem;
7077         Some functions are moved from elmo-cache.el.
7078
7079         * elmo-net.el (toplevel): Require 'elmo-cache.
7080
7081         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
7082
7083         * elmo.el (toplevel): Ditto.
7084
7085         * elmo-cache.el: Rewrite with luna;
7086         Some functions are moved to elmo-util.el.
7087
7088         * elmo-internal.el (elmo-internal-folder-list): New variable.
7089         (elmo-internal-folder-initialize): Rewrite.
7090         (elmo-folder-list-subfolders): Ditto.
7091
7092         * elmo-cache.el (elmo-cache-search-all): Eliminated.
7093         (elmo-cache-collect-sub-directories): Ditto.
7094
7095 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
7096
7097         * elmo-version.el (elmo-version): Up to 2.5.8.
7098
7099         * elmo.el (elmo-folder-list-messages-mark-match): New function.
7100
7101         * elmo-util.el (elmo-list-insert): New function.
7102
7103 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
7104
7105         * elmo.el (elmo-init): New function.
7106         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
7107
7108         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
7109         (Renamed from `elmo-localdir-header-chop-length').
7110
7111         * elmo-pop3.el (elmo-pop3-use-cache,
7112         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
7113
7114         * elmo-nntp.el (elmo-message-fetch): Define.
7115         (elmo-message-fetch-unplugged): Ditto.
7116         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
7117         (elmo-nntp-use-cache): Ditto.
7118         (elmo-nntp-max-number-precedes-list-active): Ditto.
7119
7120         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
7121
7122         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
7123         `elmo-msgdb-insert-file-header'.
7124         Use `elmo-msgdb-file-header-chop-length'.
7125
7126         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
7127         `elmo-vars.el'.
7128
7129         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
7130         (elmo-cache-msgdb-create-overview-entity-from-file): Use
7131         `elmo-msgdb-insert-file-header'.
7132
7133         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
7134         Use new variable;
7135         Define obsolete variables with `elmo-define-obsolete-variable',
7136
7137         * elmo-util.el (elmo-warning-buffer-name): New constant.
7138         (elmo-warning): New function.
7139         (elmo-obsolete-variable-alist): New variable.
7140         (elmo-obsolete-variable-show-warnings): New variable.
7141         (elmo-define-obsolete-variable): New function.
7142         (elmo-resque-obsolete-variable): Ditto.
7143         (elmo-resque-obsolete-variables): Ditto.
7144
7145 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7146
7147         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
7148         Eliminated.
7149
7150         * elmo-pop3.el, elmo-nntp.el: Use custom.
7151
7152 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7153
7154         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
7155         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
7156
7157 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7158
7159         * Luna-fy Kenichi OKADA's following changes.
7160         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
7161         `nohide'.
7162         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
7163
7164 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
7165
7166         * elmo-util.el (elmo-display-progress): Prefer
7167         `progress-feedback-with-label' to `lprogress-display'.
7168
7169 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7170
7171         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
7172
7173 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
7174
7175         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
7176         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
7177         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7178         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7179         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
7180         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
7181         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7182         * elmo-filter.el (elmo-filter-list-folder): Ditto.
7183         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7184         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7185         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7186         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7187         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7188
7189 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7190
7191         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
7192         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7193
7194 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7195
7196         * elmo.el (elmo-folder-process-crosspost): New generic method.
7197         (elmo-folder-writable-p): Ditto.
7198         (elmo-folder-message-appendable-p): Eliminated.
7199         (elmo-generic-folder-append-msgdb): Rewrite.
7200         (elmo-newsgroups-hashtb): New internal variable.
7201         (elmo-crosspost-message-set): Eliminated.
7202         (elmo-crosspost-message-delete): Ditto.
7203         (elmo-setup-subscribed-newsgroups): New function.
7204         (elmo-crosspost-message-alist-modified): New internal variable.
7205         (elmo-crosspost-message-alist-load): New function (Renamed from
7206         `wl-crosspost-alist-load').
7207         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7208         `wl-crosspost-alist-save').
7209
7210         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7211
7212         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7213         `unreads'.
7214         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7215         elmo-newsgroups-hashtb).
7216         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7217         `elmo-nntp-folder-update-crosspost-message-alist'.
7218         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7219         `elmo-nntp-groups-hashtb'.
7220         (elmo-nntp-make-groups-hashtb): Eliminated.
7221         (elmo-nntp-parse-newsgroups): New function (Renamed from
7222         `wl-parse-newsgroups').
7223         (elmo-folder-creatable-p, elmo-folder-writable-p,
7224         elmo-folder-close-internal, elmo-folder-mark-as-read,
7225         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7226         Define.
7227         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7228
7229         * elmo-net.el (elmo-message-fetch): Check buffer size.
7230
7231         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7232
7233         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7234
7235         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7236         before `close' command.
7237
7238         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7239         `mark-alist' (All other related portions are changed).
7240
7241 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7242
7243         * elmo-util.el (elmo-create-hash-size): Eliminated.
7244         (elmo-make-hash) Make a hash with `one less than a power of two'
7245         length.
7246
7247         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7248         (elmo-hash-maximum-size): Changed value.
7249
7250 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7251
7252         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7253         (elmo-mime-message-display-as-is): Ditto.
7254
7255 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7256
7257         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7258         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7259
7260 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7261
7262         * elmo-mark.el: New file.
7263
7264         * elmo-internal.el: Rewrite (Almost empty).
7265
7266 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7267
7268         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7269         (mime-imap-entity-header-string): Ditto.
7270         (mmimap-entity-section): Rewrite.
7271
7272 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7273
7274         * elmo-nmz.el: New file.
7275
7276         * elmo-pipe.el: Rewrite with luna.
7277
7278 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7279
7280         * elmo-archive.el: Rewrite with luna.
7281
7282         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7283         (elmo-folder-list-importants-internal): Ditto.
7284
7285 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7286
7287         * elmo-archive.el (elmo-archive-version): Abolish.
7288         (toplevel) Removed `boso' comment.
7289
7290 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7291
7292         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7293         elmo-msgdb-add-msgs-to-seen-list-subr;
7294         Changed argument seen-marks to unread-marks.
7295
7296         * elmo-nntp.el: Rewrite with luna.
7297
7298 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7299
7300         * elmo-filter.el: Rewrite with luna.
7301
7302 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7303
7304         * elmo-pop3.el: Rewrite with luna.
7305
7306 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7307
7308         * elmo-multi.el: Rewrite with luna.
7309
7310         * elmo-vars.el (elmo-use-killed-list): Abolish.
7311         All other related portions are changed.
7312         (elmo-filename-replace-string-alist): Renamed from
7313         elmo-msgid-replace-string-alist.
7314
7315 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7316
7317         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7318
7319         * elmo-map.el: New file.
7320         * elmo-maildir.el: Rewrite with luna.
7321
7322 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7323
7324         * elmo.el: Changed meaning of `elmo-folder-commit'.
7325         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7326
7327 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7328
7329         * elmo.el (elmo-folder-append-buffer): New function.
7330         (Renamed from `elmo-append-msg')
7331
7332 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7333
7334         * elmo-mime.el: New file.
7335
7336 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7337
7338         * elmo-cache.el: Rewrite.
7339
7340 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7341
7342         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7343
7344 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7345
7346         * elmo-vars.el (elmo): New group.
7347         (elmo-strict-diff-folder-regexp): New variable.
7348
7349         * elmo-util.el (elmo-call-func): Abolish.
7350         (elmo-folder-get-type): Ditto.
7351         (elmo-*-get-spec): Ditto.
7352         (elmo-*-spec-*): Ditto.
7353         (elmo-imap4-identical-name-space-p): Ditto.
7354         (elmo-folder-identical-system-p): Ditto.
7355         (elmo-folder-direct-copy-alist): Ditto.
7356         (elmo-folder-direct-copy-p): Ditto.
7357
7358         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7359         (elmo-folder-initialize): Define.
7360         (elmo-folder-get-primitive-list): Ditto.
7361
7362         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7363         (elmo-folder-initialize): Define.
7364         Renamed `elmo-network-session-host-internal' to
7365         `elmo-network-session-server-internal'.
7366
7367         * elmo-multi.el (elmo-multi-folder): New luna class.
7368         (elmo-folder-initialize): Define.
7369         (elmo-folder-get-primitive-list): Ditto.
7370         (elmo-folder-contains-type): Ditto.
7371         (elmo-message-use-cache-p): Ditto.
7372
7373         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7374         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7375
7376         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7377         (elmo-folder-initialize): Define.
7378
7379         * elmo-filter.el (elmo-filter-folder): New luna class.
7380         (elmo-folder-initialize): Define.
7381         (elmo-folder-get-primitive-list): Ditto.
7382         (elmo-folder-contains-type): Ditto.
7383
7384 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7385
7386         * elmo-imap4.el: Rewrite with luna.
7387
7388         * mmimap.el: New file.
7389
7390         * mmelmo.el, mmelmo-imap4.el: Removed.
7391
7392         * elmo-net.el: Ditto.
7393
7394         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7395         (elmo-folder-initialize): Define.
7396
7397         * elmo-archive.el (elmo-archive-folder): New luna class.
7398         (elmo-folder-initialize): Define.
7399
7400         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7401         `elmo-folder-msgdb-path'.
7402         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7403         `elmo-make-folder'.
7404
7405 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7406
7407         * elmo.el: New file.
7408
7409         * elmo2.el: Renamed to elmo.el.
7410
7411 \f
7412 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7413
7414         * elmo-cache.el (elmo-cache-expire-by-size): Count
7415         a disk usage for a cache file entry in KB even when
7416         its kind is a directory.
7417
7418 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7419
7420         * elmo-version.el (elmo-version): Up to 2.5.7.
7421
7422 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7423
7424         * elmo-version.el (elmo-version): Up to 2.5.6.
7425
7426 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7427
7428         * elmo-version.el (elmo-version): Up to 2.5.5.
7429
7430 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7431
7432         * elmo-imap4.el (elmo-network-authenticate-session):
7433         Fixed a logic for response checking.
7434
7435 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7436
7437         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7438         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7439         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7440         `sasl-mechanisms'.
7441
7442         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7443         for `starttls-open-stream' and `starttls-negotiate'.
7444
7445         * elmo-nntp.el: Remove autoload settings for
7446         `starttls-open-stream' and `starttls-negotiate'.
7447
7448         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7449         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7450         `luna-define-class' with `eval-and-compile'.
7451
7452 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7453
7454         * elmo-util.el (elmo-read-search-condition-internal):
7455         Require an element of table for searching field.
7456
7457 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7458
7459         * elmo-version.el (elmo-version): Up to 2.5.4.
7460
7461 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7462
7463         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7464
7465 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7466
7467         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7468
7469 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7470
7471         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7472         before greeting.
7473
7474 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7475
7476         * elmo-imap4.el (elmo-imap4-delete-folder):
7477         Send "close" before "delete" (Use commented out line).
7478         (elmo-imap4-rename-folder): Ditto.
7479
7480         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7481         folder string itself.
7482         (elmo-dop-list-deleted): New function.
7483         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7484         killed.
7485
7486         * elmo-util.el (elmo-string-rassoc-all): New function.
7487
7488 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7489
7490         * elmo-version.el (elmo-version): Up to 2.5.3.
7491
7492         * elmo-net.el (elmo-network-get-session): Changed logic for
7493         checking process status.
7494
7495         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7496         process is nil;
7497         Changed logic for checking process status.
7498
7499 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7500
7501         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7502         before greeting.
7503         (elmo-network-setup-session): Set UIDL hash size according to
7504         the length of list response.
7505         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7506         according to the length of list response;
7507         Return the length of list response.
7508         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7509
7510 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7511
7512         * elmo-imap4.el (toplevel): Require 'ssl.
7513         Add autoload 'starttls.
7514         * elmo-pop3.el (toplevel): Ditto.
7515         * elmo-nntp.el (toplevel): Ditto.
7516
7517 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7518
7519         * elmo-imap4.el (toplevel): defun at compile time.
7520         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7521         sasl-next-step, sasl-step-data, sasl-step-set-data.
7522         * elmo-pop3.el (toplevel): Ditto.
7523
7524 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7525
7526         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7527
7528 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7529
7530         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7531         if error.
7532         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7533         and `elmo-pop-auth-apop'.
7534
7535 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7536
7537         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7538
7539 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7540
7541         * elmo-pop3.el (elmo-network-authenticate-session): Split
7542         encoded response value.
7543
7544 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7545
7546         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7547         `elmo-pop3-force-login'.
7548         Redefine `sasl-mechanisms'.
7549         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7550
7551 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7552
7553         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7554         Delete `elmo-imap4-authenticator-alist'.
7555         (elmo-imap4-auth-cram-md5): Delete.
7556         (elmo-imap4-auth-digest-md5): Delete.
7557
7558 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7559
7560         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7561         (elmo-pop3-auth-scram-md5): Ditto.
7562         (elmo-pop3-auth-cram-md5): Ditto.
7563
7564 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7565
7566         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7567         Delete `elmo-pop3-authenticator-alist'.
7568
7569 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7570
7571         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7572         new SASL API.
7573         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7574
7575 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7576
7577         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7578
7579 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7580
7581         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7582         Fixed problem when `elmo-pop3-use-uidl' is nil.
7583         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7584
7585 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7586
7587         * elmo-version.el (elmo-version): Up to 2.5.2.
7588
7589 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7590
7591         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7592         New function.
7593         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7594         (elmo-pop3-msgdb-create-as-numlist): Use it.
7595
7596         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7597         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7598
7599         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7600         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7601
7602 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7603
7604         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7605         when elmo-mark-as-read is called with second argument nil.
7606
7607 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7608
7609         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7610         Moved to elmo-util.el.
7611
7612         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7613         Moved from elmo-pipe.el
7614
7615         * elmo-archive.el (elmo-archive-call-process): Enclose with
7616         static-if.
7617
7618         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7619         "RFC822" (because RFC822.PEEK is obsolete).
7620         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7621
7622 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7623
7624         * elmo-archive.el (elmo-archive-call-process): Don't check for
7625         the exit status when Nemacs is running.
7626
7627 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7628
7629         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7630         'plain.
7631
7632         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7633         (elmo-pop3-get-spec): Set default of auth to 'user.
7634
7635         * elmo-imap4.el (elmo-imap4-session-check):
7636         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7637         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7638         (elmo-imap4-auth-login): New function; Revival.
7639         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7640         `elmo-imap4-auth-login'.
7641
7642 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7643
7644         * elmo2.el (toplevel): Move `product-provide' declare.
7645         * mmelmo.el (toplevel): Ditto.
7646
7647 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7648
7649         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7650
7651 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7652
7653         * elmo-util.el (elmo-folder-get-store-type): New function.
7654         (elmo-folder-direct-copy-p): Use it.
7655
7656 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7657
7658         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7659         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7660         and result of `elmo-imap4-use-flag-p'.
7661         (elmo-imap4-fetch-callback-1): Set mark according to
7662         the result of `elmo-imap4-use-flag-p'.
7663
7664 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7665
7666         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7667         (elmo-generic-list-folder-unread): Ditto.
7668         (elmo-folder-get-info): Ditto.
7669         (elmo-folder-set-info-max-by-numdb): Ditto.
7670         (elmo-folder-get-info-max): Ditto.
7671         (elmo-folder-get-info-length): Ditto.
7672         (elmo-folder-get-info-unread): Ditto.
7673         (elmo-folder-info-make-hashtb): Ditto.
7674
7675         * elmo2.el: Removed above functions.
7676
7677 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7678
7679         * elmo-imap4.el (toplevel): Require 'ssl.
7680         Add autoload 'starttls.
7681         * elmo-pop3.el (toplevel): Ditto.
7682         * elmo-nntp.el (toplevel): Ditto.
7683
7684 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7685
7686         * elmo-imap4.el (toplevel): defun at compile time.
7687         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7688         sasl-next-step, sasl-step-data, sasl-step-set-data.
7689         * elmo-pop3.el (toplevel): Ditto.
7690
7691 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7692
7693         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7694
7695 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7696
7697         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7698         if error.
7699         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7700         and `elmo-pop-auth-apop'.
7701
7702 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7703
7704         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7705
7706 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7707
7708         * elmo-pop3.el (elmo-network-authenticate-session): Split
7709         encoded response value.
7710
7711 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7712
7713         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7714         `elmo-pop3-force-login'.
7715         Redefine `sasl-mechanisms'.
7716         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7717
7718 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7719
7720         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7721         Delete `elmo-imap4-authenticator-alist'.
7722         (elmo-imap4-auth-cram-md5): Delete.
7723         (elmo-imap4-auth-digest-md5): Delete.
7724
7725 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7726
7727         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7728         (elmo-pop3-auth-scram-md5): Ditto.
7729         (elmo-pop3-auth-cram-md5): Ditto.
7730
7731 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7732
7733         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7734         Delete `elmo-pop3-authenticator-alist'.
7735
7736 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7737
7738         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7739         new SASL API.
7740         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7741
7742 \f
7743 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7744
7745         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7746
7747 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7748
7749         * elmo-nntp.el (elmo-nntp-get-folders-info):
7750         Fixed problem when '\' character is contained in user-id.
7751         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7752
7753 \f
7754 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7755
7756         * elmo-imap4.el (elmo-imap4-delete-folder):
7757         Send "close" before "delete" (Use commented out line).
7758         (elmo-imap4-rename-folder): Ditto.
7759
7760         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7761         folder string itself.
7762         (elmo-dop-list-deleted): New function.
7763         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7764         killed.
7765
7766         * elmo-util.el (elmo-string-rassoc-all): New function.
7767
7768         * elmo-version.el (elmo-version): Up to 2.5.1.
7769
7770 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7771
7772         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7773
7774         * elmo-internal.el (elmo-internal-search): Fix last change.
7775
7776 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7777
7778         * elmo-internal.el (elmo-internal-search): Rewrite.
7779         (Fixed problem which is pointed out by Akihiro MOTOKI
7780         <motoki@da.jp.nec.com>)
7781
7782         * elmo-version.el (elmo-version): Up to 2.5.0.
7783
7784 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7785
7786         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7787
7788 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7789
7790         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7791         non-nil, make hierarchy.
7792
7793 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7794
7795         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7796         `elmo-pop3-use-uidl' must be bound to nil.
7797         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7798
7799 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7800
7801         * elmo-util.el (elmo-copy-file): Don't cause an error after
7802         `add-name-to-file' failed.
7803
7804         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7805         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7806
7807 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7808
7809         * elmo-version.el (elmo-version): Up to 2.3.93.
7810
7811 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7812
7813         * elmo-util.el (elmo-flatten): New function.
7814
7815 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7816
7817         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7818         sync Author header.
7819         * elmo-cache.el (toplevel): Ditto.
7820         * elmo-database.el (toplevel): Ditto.
7821         * elmo-date.el (toplevel): Ditto.
7822         * elmo-dop.el (toplevel): Ditto.
7823         * elmo-filter.el (toplevel): Ditto.
7824         * elmo-imap4.el (toplevel): Ditto.
7825         * elmo-internal.el (toplevel): Ditto.
7826         * elmo-localdir.el (toplevel): Ditto.
7827         * elmo-localnews.el (toplevel): Ditto.
7828         * elmo-maildir.el (toplevel): Ditto.
7829         * elmo-msgdb.el (toplevel): Ditto.
7830         * elmo-multi.el (toplevel): Ditto.
7831         * elmo-net.el (toplevel): Ditto.
7832         * elmo-nntp.el (toplevel): Ditto.
7833         * elmo-pipe.el (toplevel): Ditto.
7834         * elmo-pop3.el (toplevel): Ditto.
7835         * elmo-util.el (toplevel): Ditto.
7836         * elmo-vars.el (toplevel): Ditto.
7837         * elmo2.el (toplevel): Ditto.
7838         * mmelmo-imap4.el (toplevel): Ditto.
7839         * mmelmo.el (toplevel): Ditto.
7840
7841         * elmo-version.el (elmo-version): Move to top.
7842
7843         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7844         * elmo-imap4.el (toplevel): Ditto.
7845         * elmo-localdir.el (toplevel): Ditto.
7846         * elmo-msgdb.el (toplevel): Ditto.
7847         * elmo-nntp.el (toplevel): Ditto.
7848         * elmo-pop3.el (toplevel): Ditto.
7849         * elmo-version.el (toplevel): Ditto.
7850
7851         * elmo-localnews.el (toplevel): Added Keyword header.
7852
7853 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7854
7855         * elmo-version.el (product-version-as-string): Defined using
7856         `defun-maybe'.
7857         (toplevel): Use it.
7858
7859         * elmo-localdir.el (toplevel): Updated copyright notice.
7860         * elmo-version.el (toplevel): Ditto.
7861         * elmo-msgdb.el (toplevel): Ditto.
7862         * elmo-imap4.el (toplevel): Ditto.
7863         * elmo-nntp.el (toplevel): Ditto.
7864         * elmo-pop3.el (toplevel): Ditto.
7865
7866 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7867
7868         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7869         messages.
7870
7871         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7872         parameter value (It sometimes contains raw kanji).
7873
7874 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7875
7876         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7877         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7878
7879 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7880
7881         * elmo-imap4.el (elmo-network-initialize-session): Fix.
7882
7883 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7884
7885         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
7886         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
7887
7888 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
7889
7890         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
7891         value if selecting folder succceeded.
7892         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
7893
7894 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7895
7896         * elmo-util.el (elmo-make-directory): Fixed permission lateral
7897         representation.
7898
7899         * elmo-util.el (elmo-string-matched-member): New function.
7900
7901 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
7902
7903         * elmo-util.el (elmo-unintern): New macro.
7904         (elmo-number-set-member): Fixed docstring.
7905
7906         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7907         tag token.
7908
7909 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
7910
7911         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7912         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7913
7914 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
7915
7916         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7917         `no-error'.
7918         Added docstring.
7919         Return non-nil if selecting folder succeeded.
7920         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7921
7922 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
7923
7924         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7925         `file-name-completion' returns t.
7926         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7927         (elmo-maildir-set-mark): Put `info' part to the files in the cur
7928         directory if it does not exist.
7929         (elmo-maildir-update-current): Use `while' instead of `mapcar'
7930         for iteration.
7931
7932 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
7933
7934         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7935         enclosure (It's harmful in unplugged status).
7936
7937         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7938
7939         * mmelmo-1.el: Removed.
7940
7941         * mmelmo-2.el: Ditto.
7942
7943         * mmelmo-imap4-1.el: Ditto.
7944
7945         * mmelmo-imap4-2.el: Ditto.
7946
7947         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7948
7949         * mmelmo.el: Merged mmelmo-2.el.
7950
7951         * elmo-version.el (elmo-version): Up to 2.3.92.
7952
7953 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7954
7955         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7956         elmo-update-number): Remove last period in "...done." message.
7957         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7958         Ditto.
7959         * elmo-cache.el (elmo-cache-expire-by-size,
7960         elmo-cache-get-sorted-cache-file-list,
7961         elmo-cache-msgdb-create-as-numlist): Ditto.
7962         * elmo-dop.el (elmo-dop-save-pending-messages,
7963         (elmo-dop-flush-pending-append-operations): Ditto.
7964         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7965         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7966         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7967         (elmo-localdir-pack-number): Ditto.
7968         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7969         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7970         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7971         mime-write-entity-content): Ditto.
7972         * pldap.el (ldap-search-basic): Ditto.
7973
7974 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
7975
7976         * elmo-version.el (elmo-version): Up to 2.3.91.
7977
7978         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7979         Only when filter is 'last'.
7980
7981         * elmo-util.el (elmo-condition-atom-regexp): New constant.
7982         (elmo-condition-parse-search-value): Use it.
7983         (elmo-read-search-condition-internal): Quote value only when
7984         it is not an atom.
7985
7986 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
7987
7988         * elmo2.el (elmo-generic-folder-diff): Fix.
7989
7990 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
7991
7992         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7993         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7994         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7995         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7996         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
7997         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
7998
7999 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
8000
8001         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
8002         extra-fields.
8003
8004 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
8005
8006         * elmo-version.el (elmo-version): Up to 2.3.90.
8007
8008         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
8009         (elmo-imap4-list-folder-important): Ditto.
8010
8011 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8012
8013         * elmo-nntp.el (elmo-network-initialize-session): Fix.
8014
8015 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8016
8017         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
8018
8019 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
8020
8021         * elmo-nntp.el (elmo-network-initialize-session):
8022         Add starttls negotiation.
8023
8024 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8025
8026         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
8027         response.
8028         (elmo-network-setup-session): Define.
8029         Call `elmo-nntp-send-mode-reader' when session opened.
8030
8031 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8032
8033         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
8034
8035 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
8036
8037         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
8038         an invalid SPACE character ahead of `SEARCH' command.  Move
8039         a valid SPACE character following `SEARCH' from conditional
8040         `format' arguments to control-strings.
8041
8042 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8043
8044         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
8045         was succeeded.
8046
8047         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
8048
8049 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
8050
8051         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
8052         `w32-get-true-file-link-count' as t.
8053
8054         * elmo-imap4.el (elmo-imap4-read): Abolished.
8055         (Renamed to `elmo-read' and moved to elmo-util.el)
8056         All other related portions are changed.
8057
8058         * elmo-util.el (elmo-read): New function.
8059         (elmo-condition-parse-search-value): Use it.
8060
8061 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
8062
8063         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
8064
8065         * elmo-nntp.el (elmo-nntp-session): Define.
8066         (elmo-nntp-setting): Abolished.
8067         All other related portions are changed.
8068         (elmo-nntp-get-server-command): Changed argument.
8069         (elmo-nntp-set-server-command): Ditto.
8070         (elmo-nntp-xover-p): Ditto.
8071         (elmo-nntp-set-xover): Ditto.
8072         (elmo-nntp-listgroup-p): Ditto.
8073         (elmo-nntp-set-listgroup): Ditto.
8074         (elmo-nntp-list-active-p): Ditto.
8075         (elmo-nntp-set-list-active): Ditto.
8076         (elmo-nntp-xhdr-p): Ditto.
8077         (elmo-nntp-set-xhdr): Ditto.
8078         (elmo-nntp-flush-connection): Abolished.
8079         (elmo-nntp-get-connection): Abolished.
8080         (elmo-nntp-get-session): New function.
8081         (elmo-network-initialize-session): Defined.
8082         (elmo-network-authenticate-session): Ditto.
8083         (elmo-nntp-send-mode-reader): Changed argument.
8084         (elmo-nntp-send-command): Changed argument.
8085         All other related portions are changed.
8086         (elmo-nntp-read-response): Ditto.
8087         (elmo-nntp-read-raw-response): Ditto.
8088         (elmo-nntp-read-contents): Ditto.
8089         (elmo-nntp-read-body): Ditto.
8090         (elmo-nntp-goto-folder): Abolished.
8091         (elmo-nntp-select-group): New function.
8092         All other related portions are changed.
8093         (This function substitutes `elmo-nntp-goto-folder')
8094         (elmo-nntp-msgdb-create-by-header): Rewrite.
8095         (elmo-nntp-get-overview): Eliminated.
8096         (elmo-nntp-get-message): Ditto.
8097         (elmo-nntp-open-connection) Abolished.
8098         (elmo-nntp-read-msg): Rewrite.
8099         (elmo-nntp-post): Ditto.
8100         (elmo-nntp-send-data): Abolished.
8101         (elmo-nntp-send-buffer): New function.
8102         (elmo-nntp-send-data-line): Define as inline function.
8103         (elmo-nntp-get-folders-info-prepare): Use session as key.
8104         (elmo-nntp-groups-read-response): Changed argument.
8105         (elmo-nntp-retrieve-headers): Ditto.
8106         (elmo-nntp-msgdb-create-message): Ditto.
8107
8108         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
8109         when searching by 'since' or 'before'.
8110
8111 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8112
8113         * elmo-version.el (toplevel): Use product-version-as-string for set
8114         verstion-string, if defined.
8115
8116 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
8117
8118         * elmo-util.el: Doc fixes.
8119
8120 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8121
8122         * elmo-archive.el (toplevel): Use product-provide.
8123         * elmo-cache.el (toplevel): Ditto.
8124         * elmo-database.el (toplevel): Ditto.
8125         * elmo-date.el (toplevel): Ditto.
8126         * elmo-dop.el (toplevel): Ditto.
8127         * elmo-filter.el (toplevel): Ditto.
8128         * elmo-imap4.el (toplevel): Ditto.
8129         * elmo-internal.el (toplevel): Ditto.
8130         * elmo-localdir.el (toplevel): Ditto.
8131         * elmo-localnews.el (toplevel): Ditto.
8132         * elmo-maildir.el (toplevel): Ditto.
8133         * elmo-msgdb.el (toplevel): Ditto.
8134         * elmo-multi.el (toplevel): Ditto.
8135         * elmo-net.el (toplevel): Ditto.
8136         * elmo-nntp.el (toplevel): Ditto.
8137         * elmo-pipe.el (toplevel): Ditto.
8138         * elmo-pop3.el (toplevel): Ditto.
8139         * elmo-util.el (toplevel): Ditto.
8140         * elmo-vars.el (toplevel): Ditto.
8141         * elmo2.el (toplevel): Ditto.
8142         * mmelmo-1.el (toplevel): Ditto.
8143         * mmelmo-2.el (toplevel): Ditto.
8144         * mmelmo-imap4-1.el (toplevel): Ditto.
8145         * mmelmo-imap4-2.el (toplevel): Ditto.
8146         * mmelmo-imap4.el (toplevel): Ditto.
8147         * mmelmo.el (toplevel): Ditto.
8148
8149 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
8150
8151         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
8152         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
8153
8154 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
8155
8156         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
8157         before splitting.
8158         (elmo-multi-split-number-alist): Ditto.
8159
8160 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8161
8162         * elmo-version.el: New file.  Use product.el.
8163         * elmo2.el: Add (require 'elmo-version).
8164         * elmo-vars.el (elmo-appname, elmo-version): Move to
8165         elmo-version.el
8166
8167 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
8168
8169         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
8170         `elmo-msgdb-expand-path'.
8171         (elmo-msgdb-load): Ditto.
8172         Abolished 2nd argument. If 1st argument is not string, treat as spec.
8173         (elmo-generic-list-folder-unread): Rewrite.
8174         (elmo-generic-list-folder-important): Changed argument.
8175         (elmo-list-folder-unread): Ditto.
8176         (elmo-list-folder-important): Ditto.
8177         (elmo-folder-diff): Rewrite.
8178         (elmo-generic-folder-diff): New function.
8179         (elmo-multi-get-number-alist-list): Abolished
8180         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
8181         (elmo-multi-folder-diff): Moved to elmo-multi.el
8182         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
8183
8184         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
8185         `elmo-msgdb-expand-path'.
8186         (elmo-pop3-msgdb-create-as-numlist): Ditto.
8187         (elmo-pop3-read-msg): Ditto.
8188         (elmo-pop3-delete-msgs): Ditto.
8189         (elmo-pop3-folder-diff): New alias.
8190
8191         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
8192         `elmo-msgdb-expand-path'.
8193         (elmo-pipe-list-folder-unread): Changed arguments.
8194         (elmo-pipe-list-folder-important): Ditto.
8195         (elmo-pipe-folder-diff): New alias.
8196
8197         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8198         `elmo-msgdb-expand-path'.
8199         (elmo-nntp-max-of-folder): Ditto.
8200         (elmo-nntp-msgdb-create): Ditto.
8201         (elmo-nntp-delete-msgs): Ditto.
8202         (elmo-nntp-folder-diff): New alias.
8203
8204         * elmo-multi.el (elmo-multi-folder-diff): New function.
8205         (elmo-multi-split-mark-alist): Ditto.
8206         (elmo-multi-split-number-alist): Ditto.
8207         (elmo-multi-mark-alist-list): Abolished (Renamed to
8208         elmo-multi-split-mark-alist).
8209         (elmo-multi-list-folder-unread): Rewrite.
8210         (elmo-multi-list-folder-important): Ditto.
8211         (elmo-multi-list-folder): Set `spec' as 1st argument for
8212         `elmo-msgdb-expand-path'.
8213         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8214         instead of `elmo-multi-get-number-alist-list'.
8215
8216         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8217         If 1st argument is not string, treat as spec.
8218         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8219         `elmo-msgdb-expand-path'.
8220         (elmo-msgdb-flist-load): Ditto.
8221         (elmo-msgdb-flist-save): Ditto.
8222         (elmo-msgdb-delete-path): Ditto.
8223         (elmo-msgdb-rename-path): Ditto.
8224
8225         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8226         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8227         (elmo-maildir-delete-mark-msgs): Ditto.
8228         (elmo-maildir-msgdb-create): Ditto.
8229         (elmo-maildir-read-msg): Ditto.
8230         (elmo-maildir-delete-msgs): Ditto.
8231         (elmo-maildir-list-folder-subr): Ditto.
8232         (elmo-maildir-search): Ditto.
8233         (elmo-maildir-get-msg-filename): Ditto.
8234         (elmo-maildir-pack-number): Ditto.
8235         (elmo-maildir-folder-diff): New alias.
8236
8237         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8238
8239         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8240         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8241         (elmo-localdir-folder-diff): New alias.
8242
8243         * elmo-internal.el (elmo-internal-list-folder-subr):
8244         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8245         (elmo-internal-list-folder-by-location): Ditto.
8246         (elmo-internal-msgdb-create): Ditto.
8247         (elmo-internal-delete-msgs): Ditto.
8248         (elmo-internal-read-msg): Ditto.
8249         (elmo-internal-folder-diff): New alias.
8250
8251         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8252         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8253         `elmo-msgdb-expand-path'.
8254         (elmo-imap4-list-folder-unread): Changed arguments.
8255         (elmo-imap4-list-folder-important): Ditto.
8256
8257         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8258         (elmo-filter-list-folder-important): Ditto.
8259         (elmo-filter-folder-diff): New function.
8260
8261         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8262
8263         * elmo-cache.el (elmo-cache-list-folder):
8264         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8265         (elmo-cache-copy-msgs): Ditto.
8266         (elmo-cache-folder-diff): New alias.
8267
8268         * elmo-archive.el (elmo-archive-list-folder-subr):
8269         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8270         (elmo-archive-get-archive-name): Ditto.
8271         (elmo-archive-create-file): Ditto.
8272         (elmo-archive-append-msg): Ditto.
8273         (elmo-archive-copy-msgs): Ditto.
8274         (elmo-archive-copy-msgs-froms): Ditto.
8275         (elmo-archive-get-msg-filename): Ditto.
8276         (elmo-archive-folder-diff): New alias.
8277
8278 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8279
8280         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8281         (elmo-pop3-stream-type-alist): New variable.
8282         (elmo-nntp-stream-type-alist): New variable.
8283
8284         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8285         (elmo-kill-buffer): Ditto.
8286         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8287         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8288         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8289         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8290         (elmo-imap4-get-spec): Take into account
8291         `elmo-imap4-stream-type-alist'.
8292
8293 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8294
8295         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8296         (elmo-nntp-list-folders-get-cache): Ditto.
8297
8298 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8299
8300         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8301         character before 'uid'.
8302
8303 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8304
8305         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8306
8307         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8308
8309         * elmo-util.el (elmo-number-set-member): New function.
8310         (elmo-number-set-append-list): Ditto.
8311         (elmo-number-set-append): Ditto.
8312
8313         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8314         Use `elmo-number-set-member'.
8315         (elmo-living-messages): Ditto.
8316         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8317         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8318
8319         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8320         (elmo-imap4-add-to-cont-list): Abolished.
8321         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8322         instead of elmo-imap4-add-to-cont-list.
8323
8324         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8325         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8326
8327         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8328
8329 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8330
8331         * elmo-util.el (elmo-condition-parse-search-value):
8332         Fixed date parsing.
8333
8334 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8335
8336         * elmo-util.el (elmo-condition-find-key-internal): New function.
8337         (elmo-condition-find-key): Ditto.
8338
8339         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8340         (elmo-msgdb-search-internal): Ditto.
8341         (elmo-msgdb-search): Ditto.
8342
8343 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8344
8345         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8346         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8347
8348         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8349         (elmo-nntp-search-primitive): Fixed problem when condition is
8350         'unmatch'.
8351
8352         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8353
8354         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8355         (elmo-nntp-xhdr-p): New macro.
8356         (elmo-nntp-set-xhdr): Ditto.
8357         (elmo-nntp-parse-xhdr-response): New function.
8358         (elmo-nntp-retrieve-field): Ditto.
8359         (elmo-nntp-search-primitive): Ditto.
8360         (elmo-nntp-search): Implemented.
8361
8362         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8363
8364         * elmo-archive.el (elmo-archive-search): Set all number list to
8365         `elmo-archive-field-condition-match'
8366
8367         * elmo-localdir.el (elmo-localdir-search): Likewise.
8368
8369         * elmo-maildir.el (elmo-maildir-search): Likewise.
8370
8371 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8372
8373         * elmo-msgdb.el (elmo-living-messages): New function.
8374         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8375         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8376         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8377         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8378         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8379         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8380         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8381         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8382         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8383         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8384         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8385
8386 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8387
8388         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8389
8390         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8391
8392         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8393
8394         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8395         arguments for `SEARCH' command.
8396         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8397         All other related portions are changed.
8398
8399         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8400
8401         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8402         (elmo-list-folder-unread): Rewrite.
8403         (elmo-list-folder-important): Ditto.
8404
8405         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8406         (elmo-condition-parse-error): New inline function.
8407         (elmo-read-search-condition): New function.
8408         (elmo-read-search-condition-internal): Ditto.
8409         (elmo-parse-search-condition): Rewrite.
8410         (elmo-condition-parse): New function.
8411         (elmo-condition-parse-or-expr): Ditto.
8412         (elmo-condition-parse-and-expr): Ditto.
8413         (elmo-condition-parse-primitive): Ditto.
8414         (elmo-condition-parse-search-value): Ditto.
8415         (elmo-buffer-field-primitive-condition-match): Ditto.
8416         (elmo-buffer-field-condition-match): Rewrite.
8417         (elmo-file-field-condition-match): Ditto.
8418
8419         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8420         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8421
8422         * elmo-internal.el (elmo-internal-search): Set `number' and
8423         `number-list' argument of `elmo-file-field-condition-match'.
8424
8425         * elmo-maildir.el (elmo-maildir-search): Ditto.
8426
8427         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8428         `msgdb' as argument instead of `mark-alist'.
8429         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8430         `overview'.
8431
8432         * elmo-multi.el: Likewise.
8433
8434         * elmo-pipe.el: Likewise.
8435
8436         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8437         (elmo-imap4-search-internal): Rewrite.
8438         (elmo-imap4-search): Ditto.
8439
8440         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8441         (elmo-filter-list-folder-unread): Ditto.
8442         (elmo-filter-list-folder-important): Ditto.
8443         (elmo-filter-search): Rewrite.
8444
8445         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8446         `number-list' argument of `elmo-file-field-condition-match'.
8447         (elmo-cache-search): Ditto.
8448
8449         * elmo-localdir.el: Likewise.
8450
8451         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8452         number-list and pass it to `elmo-buffer-field-condition-match'.
8453         (elmo-archive-field-condition-match): Pass `number-list' to
8454         `elmo-archive-field-condition-match'
8455
8456 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8457
8458         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8459         `listgroup'.
8460
8461         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8462         (elmo-folder-diff-async-callback-data): Ditto.
8463         (elmo-folder-diff-async): New function.
8464
8465         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8466         (elmo-network-session-cache-key): Use it as a prefix of the session
8467         name.
8468         (elmo-network-open-session): Ditto.
8469
8470         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8471         (elmo-imap4-status-callback-data): Ditto.
8472         (elmo-imap4-server-diff-async-callback): New variable.
8473         (elmo-imap4-server-diff-async-callback-data): Ditto.
8474         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8475         `elmo-imap4-status-callback-data'.
8476         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8477         `elmo-imap4-status-callback-data' as nil.
8478         (elmo-imap4-server-diff): Ditto.
8479         (elmo-imap4-server-diff-async-callback-1): New function.
8480         (elmo-imap4-server-diff-async): Ditto.
8481         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8482
8483 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8484
8485         * elmo-util.el (elmo-list-delete): Doc fix.
8486         (elmo-delete-lists): Abolish.
8487         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8488         instead of `elmo-delete-lists'.
8489
8490 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8491
8492         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8493         before `sort'.
8494
8495 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8496
8497         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8498         `elmo-imap4-literal-subr'.
8499         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8500         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8501
8502 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8503
8504         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8505         (elmo-archive-list-folder): Fix.
8506         (elmo-archive-max-of-folder): Fix.
8507
8508 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8509
8510         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8511          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8512         (elmo-localdir-append-msg): Ditto.
8513         (elmo-localdir-list-folder): Fix for `nonsort'.
8514         (elmo-localdir-list-folder-subr): Fix for `killed'.
8515         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8516         (elmo-maildir-list-folder-subr): Ditto.
8517         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8518         (elmo-archive-list-folder-subr): Ditto.
8519         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8520         (elmo-internal-list-folder-subr): Ditto.
8521
8522 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8523
8524         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8525
8526 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8527
8528         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8529
8530 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8531
8532         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8533         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8534
8535         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8536         before greeting.
8537         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8538         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8539
8540 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8541
8542         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8543
8544         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8545         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8546         before STORE command.
8547
8548 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8549
8550         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8551
8552         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8553         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8554         of `response'.
8555         (elmo-imap4-list-folders): Removed unused local variable.
8556         (elmo-network-initialize-session): Ditto.
8557         (elmo-imap4-delete-msg-by-id): Ditto.
8558         (elmo-imap4-parse-fetch): Ditto.
8559         (elmo-imap4-copy-msgs): Ditto.
8560         Use `dst-spec' instead of `dst-folder'.
8561         (elmo-network-authenticate-session): Check authenticate type `plain'.
8562
8563 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8564
8565         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8566         garbage checking.
8567         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8568         `elmo-imap4-response-value'.
8569         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8570
8571 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8572
8573         * elmo-imap4.el (elmo-imap4-send-command):
8574         Cause elmo-imap4-bye-error when current response is BYE.
8575         (elmo-imap4-arrival-filter): Changed greeting response value.
8576
8577         * elmo2.el (elmo-imap4-bye-error): Define.
8578
8579         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8580         (elmo-imap4-server-diff): Ditto.
8581         (elmo-imap4-response-bye-p): New macro.
8582         (elmo-imap4-response-error-text): Get text from BYE response.
8583         (elmo-imap4-read-response): Return if BYE response.
8584         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8585         (elmo-imap4-folder-exists-p): Ditto.
8586         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8587         (elmo-imap4-parse-bye): New function.
8588         (elmo-imap4-parse-response): Remove needless let.
8589         Call `elmo-imap4-parse-bye'.
8590
8591 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8592
8593         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8594         the mailbox does not exist.
8595         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8596
8597 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8598
8599         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8600
8601 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8602
8603         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8604
8605         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8606         (elmo-network-initialize-session-buffer): Defined.
8607
8608         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8609         Abolished.
8610         (mmelmo-imap4-get-mime-entity): Rewrite.
8611
8612         * elmo2.el (elmo-error): Capitalize error message.
8613
8614         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8615         (elmo-network-session-buffer): New macro.
8616         (elmo-network-open-session): Use it.
8617
8618         * elmo-imap4.el: Rewrite.
8619
8620 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8621
8622         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8623
8624 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8625
8626         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8627         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8628         (elmo-imap4-create-msgdb-from-overview-string): Use
8629         `elmo-msgdb-create-overview-from-buffer'.
8630
8631 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8632
8633         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8634         (elmo-imap4-default-hierarchy-delimiter): New variable.
8635         (elmo-imap4-list-folders): Use it.
8636
8637 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8638
8639         * elmo-net.el (elmo-network-open-session): Add user and
8640         stream-type for process-buffer name.
8641
8642         * elmo-pop3.el (elmo-network-initialize-session): Call
8643         buffer-disable-undo.
8644
8645         * elmo-imap4.el (elmo-network-initialize-session):
8646         Set current-buffer as an argument for `buffer-disable-undo'.
8647
8648         * elmo-pop3.el (elmo-network-close-session): Don't use
8649         `process-live-p'.
8650
8651         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8652         Set default as 'user.
8653
8654         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8655
8656         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8657         and `elmo-imap4-flush-connection'.
8658
8659         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8660         (elmo-pop3-get-spec): Assume auth as symbol.
8661         (elmo-open-network-stream): Moved to `elmo-net'.
8662
8663         * elmo-pop3.el (toplevel): Require 'elmo-net.
8664         Define `sasl-cram-md5' to silence byte compilier.
8665         (elmo-pop3-connection-cache) Abolished.
8666         (elmo-pop3-authenticator-alist) New variable.
8667         (elmo-pop3-session): Define.
8668         (elmo-pop3-connection-get-process): Abolished.
8669         (elmo-pop3-connection-get-buffer): Ditto.
8670         (elmo-pop3-close-connection): Ditto.
8671         (elmo-pop3-flush-connection): Ditto.
8672         (elmo-pop3-get-connection): Ditto.
8673         (elmo-pop3-get-session): New function.
8674         (Replacement for `elmo-pop3-get-connection').
8675         All other related modules are changed.
8676         (elmo-network-close-session): Define.
8677         (elmo-pop3-send-command): Abolished argument `buffer'.
8678         All other related modules are changed.
8679         (elmo-pop3-read-response): Likewise.
8680         (elmo-pop3-open-connection): Abolished.
8681         (elmo-pop3-auth-user): New function.
8682         (elmo-pop3-auth-apop): Ditto.
8683         (elmo-pop3-auth-cram-md5): Ditto.
8684         (elmo-pop3-auth-scram-md5): Ditto.
8685         (elmo-pop3-auth-digest-md5): Ditto.
8686         (elmo-network-initialize-session): Define.
8687         (elmo-network-authenticate-session): Ditto.
8688         (elmo-network-setup-session): Ditto.
8689
8690         * elmo-imap4.el (toplevel): Require 'elmo-net.
8691         (elmo-imap4-session): Define.
8692         (elmo-imap4-connection-cache): Abolished.
8693         (elmo-imap4-password-key): Ditto.
8694         (elmo-imap4-flush-connection): Ditto.
8695         (elmo-imap4-get-connection): Ditto.
8696         All other related modules are changed.
8697         (elmo-imap4-get-session): New function
8698         (Replacement for `elmo-imap4-get-connection').
8699         (elmo-imap4-read-response): Abolished argument `buffer'.
8700         All other related modules are changed.
8701         (elmo-imap4-send-command): Likewise.
8702         (elmo-imap4-select-folder): Abolished.
8703         All other related modules are changed.
8704         (elmo-imap4-select-mailbox): New function.
8705         (Replacement for `elmo-imap4-select-folder').
8706         (elmo-imap4-auth-login): Simplify.
8707         (Assume current buffer as process buffer)
8708         (elmo-imap4-auth-cram-md5): Ditto.
8709         (elmo-imap4-auth-digest-md5): Ditto.
8710         (elmo-imap4-login): Ditto.
8711         (elmo-imap4-open-connection): Abolished.
8712         (elmo-imap4-open-connection-1): Abolished.
8713         (elmo-network-initialize-sessoin): Define.
8714         (elmo-network-authenticate-session): Ditto.
8715         (elmo-network-setup-session): Ditto.
8716
8717         * elmo-net.el: New module.
8718
8719 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8720
8721         * elmo-util.el (elmo-define-error): New function.
8722
8723         * elmo2.el (elmo-error): Define.
8724         (elmo-open-error): Define.
8725         (elmo-authenticate-error): Define.
8726
8727         * elmo-imap4.el (elmo-imap4-error): Abolish.
8728         (elmo-imap4-error-type): Abolish.
8729         (elmo-imap4-error-process): Abolish.
8730         (elmo-imap4-error-message): Abolish
8731         (elmo-imap4-list-folders): Don't quote lambda.
8732         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8733         (elmo-imap4-parse-namespace): Ditto.
8734         (elmo-imap4-open-connection): Rewrite.
8735         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8736         (elmo-imap4-get-connection): Abolish local variable `result'.
8737
8738 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8739
8740         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8741         wrong-type-argument error when auth is nil.
8742
8743 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8744
8745         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8746         (elmo-default-nntp-stream-type): Ditto.
8747         (elmo-default-pop3-stream-type): Ditto.
8748         (elmo-network-stream-type-alist): Ditto.
8749         (elmo-default-imap4-ssl): Abolished.
8750         (elmo-default-nntp-ssl): Ditto.
8751         (elmo-default-pop3-ssl): Ditto.
8752
8753         * elmo-util.el: (toplevel): Removed needless requires.
8754         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8755         (elmo-open-network-stream): Open network stream according to
8756         the value of `elmo-network-stream-type-alist'.
8757         (elmo-get-network-stream-type): New function.
8758         (elmo-network-stream-type-spec-string): New macro.
8759         (elmo-network-stream-type-symbol): Ditto.
8760         (elmo-network-stream-type-function): Ditto.
8761
8762         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8763         network-stream-type. All other related portions are changed.
8764         (elmo-pop3-open-connection): Ditto.
8765
8766         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8767         network-stream-type. All other related portions are changed.
8768
8769         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8770         network-stream-type.All other related portions are changed.
8771         (elmo-imap4-error): New macro.
8772         (elmo-imap4-error-type): Ditto.
8773         (elmo-imap4-error-process): Ditto.
8774         (elmo-imap4-error-message): Ditto.
8775         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8776         (elmo-imap4-auth-cram-md5): Ditto.
8777         (elmo-imap4-auth-digest-md5): Ditto.
8778         (elmo-imap4-login): Ditto.
8779         (elmo-imap4-open-connection): Remove password entry if authentication
8780         was in vain.
8781         (elmo-imap4-user-at-host): Abolished.
8782         (elmo-imap4-password-key): New buffer local variable.
8783         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8784         using protocol, port, auth and stream-type.
8785
8786         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8787
8788 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8789
8790         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8791
8792         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8793
8794         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8795         (elmo-imap4-authenticator-alist): New variable.
8796         (elmo-imap4-open-connection-1): Rename from
8797         elmo-imap4-open-connection.
8798         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8799         only wraps elmo-imap4-open-connection-1.
8800         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8801         user-at-host.
8802         (elmo-imap4-auth-login): New function.
8803         (elmo-imap4-auth-cram-md5): New function.
8804         (elmo-imap4-auth-digest-md5): New function.
8805         (elmo-imap4-login): New function.
8806
8807 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8808
8809         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8810         function `error'.
8811
8812 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8813
8814         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8815
8816 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8817
8818         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8819
8820 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8821
8822         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8823         for server responses, quote `*' regardless of where it appears.
8824
8825 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8826
8827         * elmo-maildir.el (elmo-maildir-commit): New alias.
8828
8829 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8830
8831         * elmo-util.el (elmo-display-progress):
8832                 Use `progress-feedback-with-label'.
8833
8834 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8835
8836         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8837         (elmo-imap4-non-atom-char-regex): Ditto.
8838         (elmo-imap4-non-text-char-regex): Ditto.
8839         (elmo-imap4-literal-threshold): Ditto.
8840         (elmo-imap4-atom-p): New function.
8841         (elmo-imap4-quotable-p): Ditto.
8842         (elmo-imap4-nil): Ditto.
8843         (elmo-imap4-atom): Ditto.
8844         (elmo-imap4-quoted): Ditto.
8845         (elmo-imap4-literal-subr): Ditto.
8846         (elmo-imap4-literal): Ditto.
8847         (elmo-imap4-buffer-literal): Ditto.
8848         (elmo-imap4-string-subr): Ditto.
8849         (elmo-imap4-string): Ditto.
8850         (elmo-imap4-buffer-string): Ditto.
8851         (elmo-imap4-astring-subr): Ditto.
8852         (elmo-imap4-astring): Ditto.
8853         (elmo-imap4-buffer-astring): Ditto.
8854         (elmo-imap4-nstring): Ditto.
8855         (elmo-imap4-buffer-nstring): Ditto.
8856         (elmo-imap4-mailbox): New alias.
8857         (elmo-imap4-field-body): Ditto.
8858         (elmo-imap4-userid): Ditto.
8859         (elmo-imap4-password): Ditto.
8860         (elmo-imap4-format-quoted): New function.
8861         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8862         arguments and handle "atom", "quoted" and "literal" string here.
8863         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8864         `elmo-imap4-send-command'.
8865         (elmo-imap4-folder-exists-p): Likewise.
8866         (elmo-imap4-create-folder): Likewise.
8867         (elmo-imap4-delete-folder): Likewise.
8868         (elmo-imap4-rename-folder): Likewise.
8869         (elmo-imap4-max-of-folder): Likewise.
8870         (elmo-imap4-check-validity): Likewise.
8871         (elmo-imap4-sync-validity): Likewise.
8872         (elmo-imap4-server-diff): Likewise.
8873         (elmo-imap4-select-folder): Likewise.
8874         (elmo-imap4-copy-msgs): Likewise.
8875         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8876         (elmo-imap4-mark-set-on-msgs): Likewise.
8877         (elmo-imap4-read-part): Likewise.
8878         (elmo-imap4-read-msg): Likewise.
8879         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8880         `elmo-imap4-password' for `elmo-imap4-send-command'.
8881         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8882         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8883         `elmo-imap4-buffer-literal'.
8884         (elmo-imap4-append-msg): Likewise.
8885
8886         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
8887         `delete' for removing dead connection from the connection cache.
8888         Move deletion of the process buffer after that.
8889         (elmo-imap4-list): Change `defsubst' to `defun'.
8890         (elmo-imap4-commit): Make error message verbose.
8891         (elmo-imap4-search): Ditto.
8892         (elmo-imap4-list): Ditto.
8893         (elmo-imap4-select-folder): Ditto.
8894         (elmo-imap4-copy-msgs): Ditto.
8895         (elmo-imap4-delete-msg-by-id): Ditto.
8896         (elmo-imap4-append-msg-by-id): Ditto.
8897         (elmo-imap4-append-msg): Ditto.
8898
8899 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
8900
8901         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
8902         when dired is used on XEmacs.
8903
8904 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
8905
8906         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8907         instead of `append'.
8908         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8909         `elmo-plugged-p' directly.
8910         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8911         of `elmo-plugged-p' directly.
8912
8913         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8914         Eliminate unused variable.  Use `memq' for checking a process status.
8915         Use `cons' instead of `append' for updating the connection cache.
8916         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8917         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8918
8919 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
8920
8921         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8922         `elmo-imap4-read-point' exactly.
8923
8924         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8925         the local variable `folder' to `mailbox'.
8926         Rename the argument `fld' to `folder'.
8927
8928 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
8929
8930         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8931         * elmo-imap4.el (elmo-imap4-commit): Ditto.
8932
8933 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
8934
8935         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8936         (elmo-pop3-number-uidl-hash): New buffer-local variable.
8937         (elmo-pop3-uidl-number-hash): Ditto.
8938         (elmo-pop3-size-hash): Ditto.
8939         (elmo-pop3-uidl-done): Ditto.
8940         (elmo-pop3-list-done): Ditto.
8941         (elmo-pop3-connection-get-process): New defmacro.
8942         (elmo-pop3-connection-get-buffer): Ditto.
8943         (elmo-pop3-close-connection): Delete buffer and process.
8944         (elmo-pop3-flush-connection): Don't delete buffer and process.
8945         (elmo-pop3-get-connection): Added optional argument `if-exists'.
8946         Setup UIDL and size hash.
8947         (elmo-pop3-send-command-no-erase): Deleted
8948         (elmo-pop3-send-command): Added optional argument `no-erase'.
8949         (elmo-pop3-parse-uidl-response): New function.
8950         (elmo-pop3-parse-list-response): Set size hash.
8951         (elmo-pop3-list-location): New function.
8952         (elmo-pop3-list-by-uidl-subr): Ditto.
8953         (elmo-pop3-list-by-list): Ditto.
8954         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8955         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8956         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8957         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8958         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8959         Use uidl.
8960         (elmo-pop3-uidl-to-number): New function.
8961         (elmo-pop3-number-to-uidl): Ditto.
8962         (elmo-pop3-number-to-size): Ditto.
8963         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8964         Set number by use of uidl.
8965         (elmo-pop3-msgdb-create-message): Likewise.
8966         Set size, loc-alist in msgdb.
8967         (elmo-pop3-read-msg): Set number by use of uidl.
8968         Added optional argument `msgdb'.
8969         (elmo-pop3-delete-msg): Ditto.
8970         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8971         (elmo-pop3-commit): Close connection.
8972
8973         * elmo-pipe.el (elmo-pipe-max-of-folder):
8974         Bind `elmo-pop3-use-uidl' as nil.
8975         (elmo-pipe-drain): Ditto.
8976         Call `elmo-commit'.
8977
8978         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8979         (elmo-msgdb-overview-entity-set-size): New defsubst.
8980
8981 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
8982
8983         * elmo-vars.el (elmo-use-killed-list): New variable
8984         (Renamed from `elmo-nntp-use-killed-list').
8985         (elmo-nntp-use-killed-list): Eliminated.
8986
8987         * elmo-msgdb.el (elmo-msgdb-expand-path):
8988         Changed expanding msgdb path for elmo-multi.
8989
8990         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8991         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8992         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8993         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8994         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8995         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
8996         (toplevel): Deleted time-stamp line.
8997
8998         * elmo2.el (elmo-clear-killed ): Defined as function
8999         (Abolished defining as a backend function).
9000         All other related modules are changed.
9001
9002 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
9003
9004         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
9005
9006 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
9007
9008         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
9009
9010 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
9011
9012         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
9013
9014 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
9015
9016         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
9017         asynchronous folder check.
9018
9019         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
9020
9021         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
9022         `elmo-nntp-use-killed-list'.
9023         (elmo-nntp-list-folder): Use killed list.
9024         (elmo-nntp-max-of-folder): Ditto.
9025         (elmo-nntp-msgdb-create): Set killed list.
9026
9027         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
9028
9029         * elmo2.el (elmo-clear-killed): New backend function.
9030         All other related modules are changed.
9031
9032 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
9033
9034         * elmo-util.el (elmo-imap4-spec-folder): Use
9035         `elmo-imap4-spec-mailbox'; Mark as obsolete.
9036         All callers changed.
9037
9038 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
9039
9040         * mmelmo-2.el (initialize-instance):
9041         Use `mime-buffer-entity-buffer-internal' instead of
9042         `mime-entity-buffer'.
9043
9044         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
9045         (mime-entity-body): Implemented.
9046         (mime-goto-header-start-point): Deleted.
9047         (mime-goto-body-end-point): Ditto.
9048         (mime-entity-point-min): Ditto.
9049         (mime-entity-point-max): Ditto.
9050         (mime-entity-children): Ditto.
9051         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
9052         instead of `mime-entity-buffer'.
9053         (mime-entity-header-buffer): Ditto.
9054         (mime-entity-body-buffer): Ditto.
9055         (mime-write-entity-content): Ditto.
9056
9057         * pldap.el (ldap-static-if): New macro.
9058         (toplevel): Use it instead of `static-if'.
9059
9060 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
9061
9062         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
9063         included in `attrs' argument.
9064
9065 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
9066
9067         * elmo-util.el (elmo-get-passwd): Use old backquote style.
9068
9069         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
9070         (ldap-ldif-safe-init-char-regexp): Ditto.
9071         (ldap-ldif-safe-string-regexp): Ditto.
9072         (ldap/ldif-safe-string-p): New macro.
9073         (ldap/ldif-insert-field): Ditto.
9074         (ldap-modify): Use it.
9075         (ldap-add): Ditto.
9076         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
9077         (ldap-decode-attribute): Decode only when `attr' is consp.
9078         (ldap-delete): Bind `ret'.
9079         (toplevel): Require 'cl at compile time.
9080         Removed (require 'poe) and (require 'std11).
9081         (pldap-version): Eliminated.
9082         (ldap-search-basic): Removed auth and dn binding.
9083         (ldap-ldif-field-name-regexp): New constant.
9084         (ldap-ldif-field-head-regexp): Ditto.
9085         (ldap-ldif-next-field-head-regexp): Ditto.
9086         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
9087         (ldap/field-end): New function.
9088         (ldap/field-body): Use it.
9089         (ldap/collect-field): Ditto.
9090         (ldap-search-basic): Use `ldap/field-body'.
9091
9092 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
9093
9094         * pldap.el (ldap-default-attribute-encoder): New user option.
9095         (ldap/field-body): Decode base64 string.
9096         (ldap/collect-field): Ditto.
9097         (ldap-encode-attribute): New function.
9098         (ldap-add-entries): Use it.
9099         (ldap-modify-entries): Ditto.
9100         (ldap-search-entries): Enclosed decoding function with
9101         `with-temp-buffer' and set as unibyte.
9102         (ldap-search-basic): Set process buffer as unibyte.
9103
9104         * elmo-util.el (elmo-folder-identical-system-p):
9105         Eliminated name space checking.
9106
9107         * pldap.el: New module.
9108         toplevel: Changed condition to detect built-in ldap feature.
9109         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
9110         (ldap-add): Added error handling.
9111         (ldap-modify): Ditto.
9112         (ldap-delete): Ditto.
9113
9114 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
9115
9116         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
9117         Initialize local variables with `let'.  Inline a temporary
9118         variable for the progress percentage.  Sort `setq' to reduce
9119         function call in the while-loop.
9120
9121         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
9122         into the conditional branch.
9123
9124 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
9125
9126         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
9127         Move a conditional out of the while-loop.
9128
9129 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9130
9131         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
9132         elmo-msgdb-overview-get-entity-by-number.
9133         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
9134         throw.
9135
9136 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
9137
9138         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
9139         the local variable for a packed number self descriptively.
9140
9141 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9142
9143         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
9144         * elmo-localdir.el (elmo-localdir-pack-number): Use
9145         `elmo-msgdb-overview-get-entity' instead of
9146         `elmo-msgdb-overview-get-entity-by-number'.
9147         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
9148         (elmo-msgdb-search-overview-entity): Removed.
9149         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
9150         by message-id or number.
9151         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
9152         instead of `elmo-msgdb-overview-get-entity-by-number'.
9153
9154 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9155
9156         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
9157         non-nil, use hash table for overview.
9158         (elmo-hash-maximum-size): New variable.
9159         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
9160         (elmo-msgdb-make-overview-hashtb): New function.
9161         (elmo-msgdb-clear-overview-hashtb): New function.
9162         (elmo-clear-hash-val): New macro.
9163         All other related modules are changed.
9164
9165 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
9166
9167         * elmo2.el (elmo-move-msgs): If there's other message with
9168         same message-id, don't use cache.
9169
9170 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
9171
9172         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
9173         number is already packed.
9174
9175 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
9176
9177         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
9178
9179 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9180
9181         * elmo-vars.el (elmo-display-progress-threshold): New variable.
9182         All other related modules are changed.
9183
9184 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
9185
9186         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
9187         of refiling failure on Maildir.
9188
9189 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9190
9191         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
9192         decoded mime-charset with cache.
9193         (elmo-msgdb-overview-entity-get-from): Ditto.
9194         (elmo-msgdb-overview-entity-get-subject): Ditto.
9195         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9196
9197 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9198
9199         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9200         (elmo-remove-passwd): Fill password with 0 before erase.
9201         * elmo-vars.el (elmo-passwd-life-time): New variable.
9202
9203 \f
9204 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9205
9206         * elmo-cache.el (elmo-buffer-cache-add):
9207         Set message cache buffer as unibyte.
9208
9209 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9210
9211         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9212         become nil.
9213
9214 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9215
9216         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9217         when display is finished.
9218         (elmo-nntp-msgdb-create): Ditto.
9219         (elmo-nntp-groups-read-response): Ditto.
9220         (elmo-nntp-retrieve-headers): Ditto.
9221         (elmo-nntp-msgdb-create-message): Ditto.
9222         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9223         (elmo-pop3-msgdb-create-message): Ditto.
9224
9225 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9226
9227         * elmo-maildir.el (elmo-maildir-msgdb-create):
9228         Use `elmo-msgdb-sort-by-date'.
9229
9230 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9231
9232         * elmo2.el (elmo-read-msg-no-cache):
9233         Eliminated arguments after `outbuf'.
9234         Don't use cache even if it exists.
9235         (elmo-read-msg): Don't pass arguments after `outbuf' to
9236         `elmo-read-msg-no-cache'.
9237
9238 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9239
9240         * elmo-archive.el (elmo-archive-list-folders):
9241         Use `file-name-directory' if base folder does not exist.
9242
9243 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9244
9245         * elmo-archive.el (elmo-archive-list-folders): Don't use
9246         `file-name-directory'.
9247
9248 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9249
9250         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9251         If `force' is non-nil, try flushing all operation queues.
9252
9253 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9254
9255         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9256         as-binary-process.
9257
9258 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9259
9260         * elmo-util.el (elmo-display-progress): Fixed.
9261
9262 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9263
9264         * elmo-util.el (elmo-display-progress): New function.
9265         All other related modules are changed.