Version number is increased to 2.15.6.
[elisp/wanderlust.git] / elmo / ChangeLog
1 2008-02-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2
3         * elmo-version.el (elmo-version): Up to 2.15.6.
4
5 2008-01-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
6
7         * elmo-imap4.el (elmo-folder-list-messages-plugged): Don't include
8         messages with \Deleted flag.
9         (elmo-folder-delete-messages-plugged): Ask before sending expunge
10         command if there are messages with \Deleted flag.
11
12 2007-04-24  Yoichi NAKAYAMA  <yoichi@geiin.org>
13
14         * elmo-pop3.el (elmo-pop3-auth-apop): Use more strict regexp.
15         http://seclists.org/bugtraq/2007/Apr/0018.html
16         (Suggested by Tatsuya Kinoshita)
17
18 2007-04-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
19
20         * elmo-imap4.el (elmo-folder-delete): Don't call close for mailbox
21         with \Noselect attribute.
22
23 2007-04-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
24
25         * elmo-imap4.el (elmo-folder-list-subfolders): Fix handling of
26         hierarchical folder structure with UW-imapd.
27
28 2007-02-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
29
30         * elmo-imap4.el (elmo-imap4-clear-login): Don't send LOGIN command
31         when the LOGINDISABLED capability is advertised.
32
33 2007-01-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
34
35         * elmo-msgdb.el (elmo-msgdb-extra-fields): Make it non-destructive.
36
37 2007-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
38
39         * elmo-shimbun.el (elmo-shimbun-update-overview): Add argnument
40         `entity'.
41         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview' only
42         if the message entity is exists.
43
44 2007-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
45
46         * elmo-util.el (elmo-msgdb-insert-file-header): Call
47         `elmo-delete-cr-buffer'.
48
49         * elmo-localdir.el (elmo-message-fetch-internal): Use
50         `insert-file-contents-as-raw-text' instead of
51         `insert-file-contents-as-binary'.
52
53         * elmo-maildir.el (elmo-map-message-fetch): Ditto.
54
55 2006-12-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
56
57         * elmo-imap4.el (elmo-network-initialize-session): Check to
58         retrieve a whole greeting message.
59
60 2006-11-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
61
62         * elmo-flag.el (elmo-folder-commit): Encode `.minfo' at save.
63
64 2006-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
65
66         * elmo-util.el (elmo-safe-plist-get): New alias or macro.
67         (elmo-progress-notify): Use it instead of `plist-get'.
68
69 2006-11-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
70
71         * elmo.el (elmo-generic-folder-append-messages): Remove unused
72         variable `table'.
73
74 2006-11-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
75
76         * elmo-pipe.el (elmo-folder-set-plugged): Define.
77
78 2006-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
79
80         * elsp-bsfilter.el (elmo-spam-bsfilter-use-remote): New user option.
81         (elmo-spam-list-spam-messages): Check it option.
82
83 2006-11-08  Tetsurou Okazaki  <okazaki@be.to>
84
85         * elmo-util.el (elmo-with-progress-display): Return the value
86         of the last form in `body'.
87
88 2006-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
89
90         * elmo-util.el (elmo-progress-start): Accept nil for `total'.  Set
91         `elmo-progress-counter' as t when a query callback returns nil.
92         (elmo-progress-clear): New function.
93         (elmo-progress-done): Split into `elmo-progress-clear'.
94         (elmo-progress-notify): Update a total slot when it is nil.
95         (elmo-with-progress-display): Call `elmo-progress-clear' in
96         unwind-protect and move calling `elmo-progress-done' to outside.
97
98         * elmo-imap4.el (elmo-imap4-find-next-line): Call
99         `elmo-progress-notify' with :total parameter instead of
100         `elmo-progress-counter-set-total'.
101
102 2006-11-07  Tetsurou Okazaki  <okazaki@be.to>
103
104         * elmo-util.el (elmo-cache-expire-by-age): Add docstring.
105         Make it interactive.
106         (elmo-progress-start): Avoid updating `elmo-progress-counter'
107         when a query callback returns nil.  Return a progress counter
108         instead of t whenever a start callback was called.
109
110 2006-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
111
112         * elmo-imap4.el (elmo-imap4-session-capable-p): New macro.
113         (elmo-imap4-send-command): Use it.
114         (elmo-network-initialize-session): Ditto.
115         (elmo-network-setup-session): Ditto.
116         (elmo-folder-msgdb-create-plugged): Ditto.
117
118 2006-11-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
119
120         * elmo-util.el (elmo-progress-done): Fix a miss refer to
121         `elmo-progress-counter'.
122
123 2006-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
124
125         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Abolish.
126         (elsp-bsfilter-list-spam-filter): New function.
127         (elsp-bsfilter-start-list-spam): Ditto.
128         (elsp-bsfilter-read-list-spam): Ditto.
129         (elmo-spam-list-spam-messages): Use async process to display
130         progress message by each message.
131
132 2006-11-03  Yoichi NAKAYAMA  <yoichi@geiin.org>
133
134         * elmo-spam.el (elmo-spam-process-messages-as-mbox): Fix problem
135         of flushing previously inserted message contents.
136
137         * elmo-imap4.el (elmo-folder-search): Fix return value.
138
139 2006-11-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
140
141         * elmo-imap4.el (elmo-imap4-find-next-line): Check whether a label
142         of reporter is enable or not.
143
144 2006-10-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
145
146         * elmo-util.el (elmo-list-bigger-diff): Abolish.
147         (elmo-display-progress): Ditto.
148         (elmo-progress-counter-alist): Ditto.
149         (elmo-progress-set): Ditto.
150         (elmo-progress-clear): Ditto.
151         (elmo-progress-counter-all-value): Rename to
152         `elmo-progress-counter-total'.
153         (elmo-progress-counter-format): Rename to
154         `elmo-progress-counter-action'.
155         (elmo-progress-counter): New internal variable.
156         (elmo-progress-callback-function): Ditto.
157         (elmo-progress-counter-label): New function.
158         (elmo-progress-counter-set-total): Ditto.
159         (elmo-progress-counter-set-action): Ditto.
160         (elmo-progress-call-callback): Ditto.
161         (elmo-progress-start): Ditto.
162         (elmo-progress-done): Ditto.
163         (elmo-progress-notify): Rewrite.
164         (elmo-with-progress-display): Remove first argument
165         `condition'. Add optional argument `var' in `spec'.
166
167         * elmo-vars.el (elmo-display-progress-threshold): Abolish.
168         (elmo-display-retrieval-progress-threshold): Ditto.
169         (elmo-inhibit-display-retrieval-progress): Ditto.
170
171         * Replace all pair of `elmo-progress-set' and
172         `elmo-progress-clear' into `elmo-with-progress-display'.
173
174         * Replace to call `elmo-display-progress' into pair of
175         `elmo-progress-notify' and `elmo-with-progress-display'.
176
177         * elmo-version.el (elmo-version): Up to 2.15.5.
178
179 2006-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
180
181         * elmo-imap4.el (elmo-imap4-arrival-filter): Use `case' instead of
182         `cond'.
183
184 2006-10-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
185
186         * elmo-imap4.el (elmo-imap4-arrival-filter): Call delete-region in
187         cleanup-forms [wl:14027].
188
189 2006-10-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
190
191         * elmo-flag.el (elmo-global-flag-set-internal): Use
192         `elmo-copy-file' by priority when the message is a file.
193
194 2006-10-01  Yoichi NAKAYAMA  <yoichi@geiin.org>
195
196         * elmo.el: Fix typo: disptch -> dispatch.
197
198 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
199
200         * elmo.el (elmo-file-tag): New class.
201         (elmo-append-messages-disptch-table): New constant.
202         (elmo-folder-type-p): New function.
203         (elmo-folder-append-messages): Redefine as function.
204
205         * elmo-null.el (elmo-folder-append-messages): Renamed from
206         `elmo-folder-append-messages'.
207
208         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
209         (elmo-folder-append-messages-*-maildir): Renamed from
210         `elmo-folder-append-messages'.
211
212         * elmo-localdir.el (elmo-localdir-folder): Inherit
213         `elmo-file-tag'.
214         (elmo-folder-append-messages-*-localdir): Renamed from
215         `elmo-folder-append-messages'.
216
217         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
218         from `elmo-folder-append-messages'.
219
220         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
221         `elmo-folder-append-messages'.
222
223         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
224         function.
225         (elmo-folder-append-messages-*-filter): Ditto.
226
227         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
228
229         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
230         (elmo-folder-append-messages-*-pipe): Renamed from
231         `elmo-folder-append-messages'.
232
233         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
234
235         * elmo-file.el (elmo-file-folder): Ditto.
236
237         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
238
239         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
240         from `elmo-folder-append-messages'
241
242 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
243
244         * elmo-map.el (elmo-location-map-setup): Change an argument
245         `locations' to optional.
246         (elmo-location-map-clear): Abolish.
247         (elmo-folder-clear): Follow the API change.
248
249         * elmo-pop3.el (elmo-folder-clear): Ditto.
250
251         * elmo-pop3.el (toplevel): Require elmo-map.
252         (elmo-pop3-folder): Inherit elmo-location-map and abolish
253         location-alist slot (All other related portions are changed).
254         (elmo-pop3-folder-use-uidl): New function.
255         (elmo-folder-msgdb-create): Don't sort message entities.
256         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
257         (elmo-pop3-number-to-size): Convert return value to number.
258         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
259         working buffer.
260
261         * elmo-map.el: Use `location-map' as a variable name for instance
262         instead of `mapper'.
263         (elmo-location-map-setup): Return location alist.
264         (elmo-location-map-update): Ditto.
265
266 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
267
268         * elmo-map.el (elmo-location-map): New class; split location and
269         number mapping from elmo-map-folder (All other related portions
270         are changed).
271
272         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
273         change.
274
275         * elmo-version.el (elmo-version): Up to 2.15.4.
276
277 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
278
279         * elmo-vars.el (elmo-use-hardlink): New user option.
280
281         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
282         `elmo-use-hardlink'.
283
284         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
285         killed-list.
286         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
287         instead of `*-internal'. Use `elmo-with-progress-display'.
288
289 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
290
291         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
292         `elmo-spam-process-messages-as-mbox'.
293
294         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
295
296 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
297
298         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
299         argument BUFFER of `call-process'.
300
301 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
302
303         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
304         args.
305         (elsp-bsfilter-list-spam-files): Ditto.
306
307 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
308
309         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
310         (elmo-spam-bsfilter-max-messages-per-process): New use option.
311         (elmo-spam-bsfilter-debug): Fix a group.
312         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
313         `--homedir'.
314         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
315         (elsp-bsfilter-list-spam-files): New function.
316         (elmo-spam-list-spam-messages): Define.
317         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
318         (elmo-spam-bsfilter-register-messages): New function.
319         (elmo-spam-register-spam-messages): Define.
320         (elmo-spam-register-good-messages): Ditto.
321
322         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
323
324         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
325         `nconc' and `consp'.
326
327 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
328
329         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
330         hash table to test whether a location is exists.
331
332 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
333
334         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
335         even if some error occurred.
336
337         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
338         meaningless unwind-protect.
339
340         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
341         start-number correctly.
342         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
343         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
344
345 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
346
347         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
348         (elmo-folder-initialize): Use it.
349         (elmo-global-flag-replace-referrer): New function.
350
351         * elmo.el (toplevel): Added autoload setting for
352         `elmo-global-flag-replace-referrer'.
353         (elmo-folder-rename): Rewrite the last change use
354         `elmo-global-flag-replace-referrer'.
355
356         * elmo-pipe.el (elmo-folder-rename): Call
357         `elmo-global-flag-replace-referrer'.
358
359 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
360
361         * elmo.el (elmo-folder-rename): Set meta data for global flags
362         follow the rename.
363
364 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
365
366         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
367         as 'not-loaded.
368         (elmo-folder-close): Ditto.
369         (elmo-filter-folder-number-list-loaded-p): New function.
370         (elmo-filter-folder-number-list): Check whether loaded or not.
371         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
372         of `elmo-filter-folder-number-list-internal'.
373         (elmo-folder-delete-messages): Ditto.
374         (elmo-folder-length): Check whether number-list is loaded or not.
375
376 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
377
378         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
379         field `real field' into each element of list.
380         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
381         (elmo-msgdb-message-entity-field): Ditto.
382         (modb-entity-ml-info-real-fields): New function.
383
384         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
385
386         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
387         `elmo-msgdb-extra-fields'.
388
389 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
390
391         * elmo-util.el (elmo-passwd-alist-load): Move point to min
392         position before read.
393
394 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
395
396         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
397         (elmo-global-flags-initialize): Ditto.
398
399 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
400
401         * elmo-archive.el (toplevel): Don't require emu, std11
402         and elmo-localdir.
403
404         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
405         definition.
406
407 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
408
409         * elmo.el (elmo-folder-confirm-appends): Display folder name.
410
411 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
412
413         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
414         literals.
415
416 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
417
418         * elmo-maildir.el (elmo-maildir-list-location): Reduce
419         `elmo-get-last-modification-time' call.
420
421 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
422
423         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
424         expression.
425         (elmo-maildir-set-mark): Ditto.
426         (elmo-maildir-delete-mark): Ditto.
427
428 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
429
430         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
431         optional argument `separators'.
432
433 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
434
435         * elmo.el (cache-changed): Abolish.
436         (status-changed): New signal.
437         (elmo-message-killed-p): New generic function and define for
438         elmo-folder.
439         (elmo-folder-recover-messages): Ditto.
440         (elmo-message-set-cached): Emit signal `status-changed' instead of
441         `cache-changed'.
442         (elmo-message-status): New macro.
443         (elmo-message-status-folder): Ditto.
444         (elmo-message-status-number): Ditto.
445         (elmo-message-status-set-flags): Ditto.
446         (elmo-message-status-set-killed): Ditto.
447         (elmo-message-status-flags): New function.
448         (elmo-message-status-cached-p): Ditto.
449         (elmo-message-status-killed-p): Ditto.
450
451         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
452         `status-changed' instead of `cache-changed'.
453         (elmo-folder-recover-messages): Define.
454         (elmo-message-killed-p): Ditto.
455
456         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
457         `status-changed' instead of `cache-changed'.
458
459         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
460         (elmo-message-killed-p): Define.
461         (elmo-folder-recover-messages): Ditto.
462
463         * elmo-version.el (elmo-version): Up to 2.15.3.
464
465 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
466
467         * elmo-signal.el (elmo-signal-bindings): Use cons to append
468         element into list.
469         (elmo-define-signal-handler): Add docstring.
470         (elmo-define-signal-filter): Ditto.
471
472         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
473
474 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
475
476         * elmo-util.el (elmo-flatten): Don't use recursive call.
477
478         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
479         assignment.
480         (elmo-folder-message-make-temp-files): Use `number-to-string'
481         instead of `int-to-string'.
482
483 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
484
485         * elmo-search.el (elmo-folder-delete-messages): Define.
486
487 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
488
489         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
490         customization type.
491         (elmo-mailing-list-count-spec-list): Ditto.
492
493         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
494         for `list-id'.
495
496 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
497
498         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
499         handling.
500
501 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
502
503         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
504         (elmo-mailing-list-count-spec-list): Ditto.
505
506         * elmo-util.el (elmo-map-until-success): New function.
507         (elmo-string-match-substring): Ditto.
508         (elmo-find-list-match-value): Ditto.
509
510         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
511         Removed.
512         (modb-entity-extract-ml-info-from-subject): Ditto.
513         (modb-entity-extract-ml-info-from-return-path): Ditto.
514         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
515         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
516         (modb-entity-extract-ml-info-from-mailman): Ditto.
517         (modb-entity-extract-mailing-list-info-functions): Ditto.
518         (modb-entity-extract-mailing-list-info): Rewrite with
519         `elmo-find-list-match-value'.
520
521 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
522
523         * elmo-net.el (elmo-network-session-retry-count): New user option.
524         (elmo-network-session-buffer-name): New internal function.
525         (elmo-network-session-buffer-create): Ditto.
526         (elmo-network-open-session): Retry open network session
527         `elmo-network-session-retry-count' times.
528
529 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
530
531         * elmo-util.el (elmo-list-filter): Rewritten.
532
533 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
534
535         * elmo-util.el (elmo-string-member): Allow symbol element in list.
536
537 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
538
539         * elmo-search.el (elmo-make-search-engine): Use prefix
540         `elmo-search-' for require symbol instead of `else-'.
541         (elmo-search-engine-extprog): New class.
542         (elmo-search-engine-do-search): Remove nil from argument
543         list. Added argument pattern to evaluate element as function.
544         (elmo-search-engine-local-file): Derived from
545         `elmo-search-engine-extprog'.
546         (elmo-search-engine-create-message-entity): Check existance of file.
547         (elmo-search-engine-fetch-message): Ditto.
548         (elmo-search-namazu-index): Follow the API change.
549         (elmo-search-grep-target): Ditto.
550
551 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
552
553         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
554         characters of working buffer.
555
556         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
557         Does not bind `default-mime-charset'.
558         (elmo-msgdb-create-message-entity-from-buffer): Removed
559         unnecessary local bind.
560
561         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
562         function.
563         (modb-entity-extract-mailing-list-info-functions): Added it.
564
565 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
566
567         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
568         when number and message-id are non-nil.
569
570         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
571
572         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
573         conditional steatment.
574         (elmo-pop3-auth-apop): Likewise.
575         (elmo-network-authenticate-session): Likewise.
576
577 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
578
579         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
580         symbol `fill-column'.
581         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
582         decode field value.
583
584         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
585         (elmo-decoded-field-body): Ditto.
586
587 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
588
589         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
590         `tokens' to `params'.
591
592 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
593
594         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
595         working buffer.
596
597 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
598
599         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
600         decide index.
601
602 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
603
604         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
605         Set default value as nil.
606         (toplevel): Register search engines by
607         `elmo-search-register-engine' if there are not defined.
608
609         * elmo.el (autoload): Added autoload setting for
610         `elmo-search-register-engine'.
611
612 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
613
614         * elmo.el (toplevel): `[' is redefined as the prefix of the search
615         folder instead of nmz folder.
616         (elmo-nmz-default-index-path): Added obsolete variable setting.
617         (elmo-nmz-index-alias-alist): Ditto.
618         (elmo-nmz-use-drive-letter): Ditto.
619
620         * elmo-search.el (elmo-search-register-engine): New function.
621
622         * elmo-nmz.el: Removed.
623
624         * elmo-version.el (elmo-version): Up to 2.15.2.
625
626 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
627
628         * elmo-search.el: New file.
629
630 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
631
632         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
633         condition `larger' and `smaller'.
634
635 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
636
637         * elmo-util.el (elmo-safe-filename): Rewrite to replace
638         `"' (double quote) into "_Q_".
639
640 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
641
642         * elmo-net.el (elmo-net-quote-chars): Abolish.
643         (elmo-net-format-quoted): Ditto.
644
645 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
646
647         * elmo.el (elmo-get-folder-function): New variable.
648         (elmo-get-folder): New function.
649         (elmo-folder-rename): Call `elmo-make-folder' with specified
650         mime-charset.
651
652         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
653         `elmo-make-folder'.
654         (elmo-split-subr): Ditto.
655
656         * elmo-multi.el (elmo-folder-initialize): Ditto.
657
658         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
659
660         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
661         (elmo-flag-get-folder): Ditto.
662
663         * elmo-filter.el (elmo-folder-initialize): Ditto.
664
665         * elmo-access.el (elmo-folder-initialize): Ditto.
666         (elmo-access-folder-update-children): Ditto.
667
668         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
669         (elmo-dop-queue-flush): Ditto.
670         (elmo-folder-append-buffer-dop-delayed): Ditto.
671         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
672         mime-charset.
673
674         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
675         instead of `elmo-make-folder'.
676         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
677         destination folder instead of send `elmo-folder-rename-internal'.
678
679         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
680         slot of subfolder instead of create it.
681
682 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
683
684         * elmo-util.el (elmo-collect-separators): New function.
685         (elmo-collect-separators-internal): Ditto.
686         (elmo-collect-trail-separators): Ditto.
687         (elmo-parse-separated-tokens): Ditto.
688         (elmo-parse-separated-tokens-internal): Ditto.
689         (elmo-quote-syntactical-element): Ditto.
690
691         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
692         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
693
694         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
695         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
696         (elmo-nntp-folder-list-subfolders): Quote a user name.
697
698         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
699         (elmo-net-parse-network): Abolish.
700         (elmo-net-folder-set-parameters): New function.
701         (elmo-folder-initialize): Follow the above change.
702
703         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
704         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
705         (elmo-folder-list-subfolders): Use
706         `elmo-quote-syntactical-element' instead of
707         `elmo-net-format-quoted' to quote mailbox and user name.
708
709 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
710
711         * elmo-util.el (elmo-token-valid-p): New function.
712         (elmo-parse-token): Add optional argument `requirement'.
713         (elmo-parse-prefixed-element): Likewise.
714
715         * elmo-net.el (elmo-net-quote-chars): Renamed from
716         `elmo-net-quote-chars-regexp'.
717         (elmo-net-format-quoted): Add optional argument `extra-chars'.
718
719         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
720         by info document. Check token `uidl' is started an alphabet.
721
722         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
723         by info document. Check token `user' is started an alphabet.
724
725         * elmo-imap4.el (elmo-folder-initialize): Ditto.
726         (elmo-folder-list-subfolders): Quote user.
727
728 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
729
730         * elmo-util.el (elmo-quoted-specials-list): New constant.
731         (elmo-quoted-token): New function.
732
733         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
734         (elmo-net-format-quoted): New function.
735         (elmo-net-parse-network): Ditto.
736         (elmo-folder-initialize): Use it.
737
738         * elmo-nntp.el (elmo-folder-initialize): Use
739         `elmo-net-parse-network' to parse network specification instead of
740         `elmo-folder-initialize#elmo-net'.
741
742         * elmo-pop3.el (elmo-folder-initialize): Ditto.
743
744         * elmo-imap4.el (elmo-folder-initialize): Ditto.
745         (elmo-folder-list-subfolders): Quote folder name by
746         `elmo-net-format-quoted'.
747
748 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
749
750         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
751         (elmo-folder-search): Use it.
752
753 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
754
755         * modb-standard.el (modb-standard-loaded-message-id): Use
756         `elmo-msgdb-message-entity-field'.
757
758 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
759
760         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
761         without filename.
762
763 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
764
765         * elmo-util.el (elmo-set-auto-coding): New function.
766         (elmo-object-load): Use it.
767
768 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
769
770         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
771         (elmo-time<): Define as alias of `elmo-time-less-p'.
772         (elmo-time-to-datevec): New function.
773
774         * elmo-date.el (elmo-time-to-days): New function.
775
776 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
777
778         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
779         is not cons cell.
780
781 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
782
783         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
784         parenthesis.
785
786         * elmo-util.el (elmo-map-recursive): New function.
787
788         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
789         (modb-entity-encode-string-recursive): Ditto.
790
791 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
792
793         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
794         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
795         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
796         compare sequence number when last modified time is nil.
797
798 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
799
800         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
801
802         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
803
804 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
805
806         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
807         modification time of the file.
808
809 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
810
811         * elmo-util.el (elmo-condition-optimize): Discriminated against
812         preserved fields, extra fields and the other weight.
813
814 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
815
816         * modb-entity.el (initialize-instance): Define.
817         (modb-entity-handler-mime-charset): New internal function.
818         (modb-standard-entity-set-field): Use it.
819         (elmo-msgdb-message-entity-field): Ditto.
820         (elmo-msgdb-message-entity-field): Ditto.
821
822         * modb.el (elmo-msgdb-match-condition): Rewrite with
823         `elmo-condition-match'.
824         (elmo-msgdb-match-condition-primitive): New function.
825
826         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
827         arguments `flags' and `numbers'.
828         (elmo-msgdb-match-condition-primitive): Abolished (merged to
829         `elmo-msgdb-message-match-condition').
830         (modb-buffer-entity-handler): New class.
831
832         * elmo.el (elmo-folder-search): Optimize condition to use
833         `elmo-condition-optimize'.
834         (elmo-message-buffer-match-condition): New function.
835         (elmo-message-match-condition): Use
836         `elmo-message-buffer-match-condition' instead of
837         `elmo-buffer-field-condition-match'.
838
839         * elmo-util.el (elmo-condition-match): New function.
840         (elmo-condition-optimize): Ditto.
841         (elmo-buffer-field-primitive-condition-match): Abolish.
842         (elmo-buffer-field-condition-match): Ditto.
843
844         * elmo-archive.el (elmo-archive-field-condition-match): Use
845         `elmo-message-buffer-match-condition' instead of
846         `elmo-buffer-field-condition-match'.
847
848 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
849
850         * elmo-flag.el (elmo-global-flags-initialize): Check the
851         existence of the flag directory.
852
853 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
854
855         * elmo-access.el (elmo-folder-initialize): Call
856         `elmo-multi-connect-signals'.
857
858         * elmo-pipe.el (elmo-folder-close): Define.
859
860         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
861         children folders.
862
863         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
864         with target folder.
865
866         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
867         `number'.
868
869         * elmo-multi.el (elmo-message-entity): Don't use return value of
870         `elmo-message-entity-set-number'.
871
872 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
873
874         * modb.el (modb-generic): Added slot `mime-charset'.
875
876         * modb-standard.el (modb-standard): Added slot `overview-handler'.
877         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
878         and `modb-entity-handler-dump-parameters'.
879         (modb-standard-default-entity-handler): Abolish.
880         (elmo-msgdb-message-entity-handler): Save created handler by
881         instance slot.
882
883         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
884         (modb-entity-handler-list-parameters): New method.
885         (modb-entity-handler-equal-p): New function.
886         (modb-entity-handler-dump-parameters): Ditto.
887         (modb-entity-parse-address-string): Encode return value.
888         (modb-entity-make-address-string): Decode argument value.
889         (modb-entity-decode-string-recursive): New function.
890         (modb-entity-encode-string-recursive): Ditto.
891         (modb-standard-entity-normalizer): Set to encode field value.
892         (modb-standard-entity-specializer): Follow the above change.
893         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
894         mime-charset of handler.
895         (elmo-msgdb-message-entity-field): Ditto.
896         (elmo-msgdb-copy-message-entity): Fixed reference to internal
897         structure.
898         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
899
900         * elmo.el (elmo-folder): Added slot `mime-charset'.
901         (elmo-make-folder): Added argument `mime-charset'.
902         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
903         `mime-charest'.
904
905         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
906         (elmo-make-msgdb): Likewise.
907
908         * elmo-internal.el (elmo-internal-folder-initialize): Call
909         `luna-make-entity' with :mime-charset parameter.
910
911 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
912
913         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
914         encoded words in `from' and `subject' field.
915
916 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
917
918         * modb.el (elmo-msgdb-message-field): Add argument `type'.
919         (elmo-msgdb-match-condition): Get handler from entity instead of
920         msgdb.
921
922         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
923         (modb-standard-load-entity): Treat new file format.
924         (modb-standard-save-entity-1): Save as new file format.
925         (modb-standard-save-entity): Split messages into section here.
926         (elmo-msgdb-message-field): Follow the API change.
927         (modb-standard-default-entity-handler): New internal variable.
928         (elmo-msgdb-message-entity-handler): Define.
929
930         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
931         to `elmo-vars.el'.
932         (modb-entity-field-extractor-alist): New user option.
933         (elmo-msgdb-message-entity-field): Removed argument `decode' and
934         added argument `type'.
935         (elmo-msgdb-copy-message-entity): Add optional argument
936         `make-handler'.
937         (modb-set-field-converter): New function.
938         (modb-convert-field-value): Ditto.
939         (modb-entity-string-decoder): Ditto.
940         (modb-entity-string-encoder): Ditto.
941         (modb-entity-parse-date-string): Ditto.
942         (modb-entity-make-date-string): Ditto.
943         (modb-entity-mime-decoder): Ditto.
944         (modb-entity-mime-encoder): Ditto.
945         (modb-entity-address-list-decoder): Ditto.
946         (modb-entity-address-list-encoder): Ditto.
947         (modb-entity-parse-address-string): Ditto.
948         (modb-entity-make-address-string): Ditto.
949         (modb-entity-create-field-indices): Ditto.
950         (modb-legacy-entity-field-slots): New constant.
951         (modb-legacy-entity-field-indices): Ditto.
952         (modb-legacy-entity-normalizer): New variable.
953         (modb-legacy-entity-specializer): Ditto.
954         (modb-legacy-entity-field-index): New macro.
955         (modb-legacy-entity-set-field): New function.
956         (modb-legacy-make-message-entity): Rewrite.
957         (elmo-msgdb-create-message-entity-from-buffer): Use
958         `elmo-msgdb-get-references-from-buffer'. Use
959         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
960         Use `modb-legacy-entity-set-field' instead of
961         `elmo-msgdb-message-entity-set-field'.
962         (elmo-msgdb-message-entity-field): Rewrite.
963         (elmo-msgdb-message-entity-set-field): Ditto.
964         (elmo-msgdb-copy-message-entity): Make new entity by
965         `make-handler' if it specified.
966         (elmo-msgdb-message-match-condition): Define a method of
967         `modb-entity-handler' and follow the API change.
968         (modb-standard-entity-handler): New class.
969         (modb-entity-extract-ml-info-from-x-sequence): New function.
970         (modb-entity-extract-ml-info-from-subject): Ditto.
971         (modb-entity-extract-ml-info-from-return-path): Ditto.
972         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
973         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
974         (modb-entity-extract-mailing-list-info): Ditto.
975         (modb-entity-extract-mailing-list-info-functions): New variable.
976
977         * elmo.el (elmo-message-field): Add optional argument `type'.
978
979         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
980         from `modb-entity.el'.
981
982         * elmo-util.el (elmo-object-load): Decode by coding-system from
983         `set-auto-coding-function'.
984         (elmo-object-save): Use `detect-mime-charset-region' and add
985         coding cookie if encode.
986         (elmo-msgdb-get-references-from-buffer): New function.
987         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
988
989         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
990
991         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
992         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
993         instead of `shimbun-make-header' and follow the API change.
994         (elmo-shimbun-update-overview): Follow the API change.
995         (elmo-map-folder-list-message-locations): Ditto.
996
997         * elmo-pipe.el (elmo-message-field): Ditto.
998
999         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
1000         Ditto.
1001
1002         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1003
1004         * elmo-multi.el (elmo-message-field): Ditto.
1005
1006         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
1007         (elmo-msgdb-sort-by-date): Ditto.
1008         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
1009         `elmo-message-entity-field'.
1010         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
1011         change.
1012         (elmo-msgdb-overview-entity-get-from): Ditto.
1013         (elmo-msgdb-overview-entity-get-subject): Ditto.
1014         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1015         (elmo-msgdb-overview-entity-get-date): Ditto.
1016         (elmo-msgdb-overview-entity-get-to): Ditto.
1017         (elmo-msgdb-overview-entity-get-cc): Ditto.
1018
1019         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1020         (elmo-mime-collect-message/partial-pieces): Ditto.
1021
1022         * elmo-filter.el (elmo-message-field): Ditto.
1023
1024         * elmo-date.el (elmo-datevec-to-time): New function.
1025         (elmo-time-parse-date-string): Ditto.
1026         (elmo-time-make-date-string): Ditto.
1027         (elmo-time<): Ditto.
1028
1029         * elmo-version.el (elmo-version): Up to 2.15.1.
1030
1031 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
1032
1033         * elmo-flag.el (elmo-global-flags-initialize): Don't include
1034         member of elmo-local-flags.
1035
1036 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
1037
1038         * elmo-version.el (elmo-version): Up to 2.15.0.
1039
1040 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1041
1042         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
1043         `ignore-msgdb' is non-nil.
1044
1045 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1046
1047         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
1048         (elmo-condition-in-msgdb-p): Ditto.
1049         (elmo-file-field-primitive-condition-match): Ditto.
1050         (elmo-file-field-condition-match): Ditto.
1051
1052         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
1053
1054 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1055
1056         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
1057         subdirectories here.
1058         (elmo-global-flags-initialize): New function.
1059
1060         * elmo.el (toplevel): Added autoload setting for
1061         `elmo-global-flags-initialize'.
1062
1063 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
1064
1065         * elmo.el (message-number-changed): Define new signal.
1066         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
1067         message-number-changed signal.
1068         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1069         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1070         Respect `elmo-pack-number-check-strict'.
1071
1072 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1073
1074         * elmo-signal.el (elmo-connect-signal): Document.
1075         (elmo-emit-signal): Ditto.
1076         (elmo-emit-signal): It should pass source argument to filter and
1077         handler, not slot-source.
1078
1079 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1080
1081         * modb.el (elmo-msgdb-update-entity): New API and define generic
1082         implement.
1083
1084         * modb-standard.el (elmo-msgdb-update-entity): Define.
1085
1086         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
1087         API and define generic implement.
1088
1089         * elmo.el (update-overview): New singnal.
1090
1091         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
1092         `elmo-msgdb-update-entity' and emit signal `update-overview'.
1093         (elmo-message-entity-parent): Define.
1094
1095         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
1096         `update-overview'.
1097
1098         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
1099
1100         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
1101
1102 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
1103
1104         * elmo.el (elmo-folder-synchronize): Sort the return value of
1105         `elmo-list-diff'.
1106
1107         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
1108         list.
1109
1110 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1111
1112         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
1113         `default-enable-multibyte-characters'.
1114         (elmo-object-load): Use `with-temp-buffer' instead of
1115         `elmo-set-work-buf'.
1116         (elmo-object-save): Ditto.
1117         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
1118         `elmo-set-work-buf'.
1119         (elmo-decoded-field-body): Ditto.
1120
1121         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
1122
1123         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
1124         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
1125
1126         * elmo-version.el (elmo-version): Up to 2.13.3.
1127
1128 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
1129
1130         * elmo-util.el (elmo-list-diff): Fix the last change.
1131         Reverse order of result lists.
1132
1133 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
1134
1135         * modb-standard.el (elmo-msgdb-set-flag): Use
1136         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
1137         (elmo-msgdb-unset-flag): Ditto.
1138
1139         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
1140         `elmo-list-diff'.
1141
1142         * elmo-util.el (elmo-list-diff): Rewrite.
1143         (elmo-list-diff-nonsortable): New function.
1144
1145 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
1146
1147         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
1148         `elmo-multibypte-buffer-name'.  All referers are updated.
1149
1150 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1151
1152         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
1153         (elmo-mime-entity-fragment-p): New function.
1154         (mime-elmo-buffer-entity): Added slot `reassembled'.
1155         (elmo-message-mime-entity): Added 4th argument `reassemble'.
1156         (elmo-message-mime-entity-internal): New function (renamed from
1157         `elmo-message-mime-entity').
1158         (elmo-mime-inherit-field-list-from-enclosed): New constant.
1159         (elmo-mime-make-reassembled-mime-entity): New function.
1160         (elmo-message-reassembled-mime-entity): Ditto.
1161         (elmo-mime-collect-message/partial-pieces): Ditto.
1162
1163 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1164
1165         * elmo.el (elmo-message-fetch-string): Disable multibyte.
1166
1167         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
1168         (elmo-with-enable-multibyte): New macro.
1169
1170         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
1171
1172 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1173
1174         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
1175         argument `number'.
1176         (elmo-filter-connect-signals): Follow the above change.
1177
1178 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
1179
1180         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
1181
1182         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
1183         that only the first flag is used.
1184
1185 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1186
1187         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
1188         if available.
1189
1190 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1191
1192         * elmo-signal.el: New file.
1193
1194         * elmo.el (toplevel): Require elmo-signal.
1195         (flag-changing, flag-changed, cache-changed): New signal.
1196         (elmo-folder): Remove slog `handlers'.
1197         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1198         `elmo-folder-notify-event'.
1199         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1200         (elmo-folder-unset-flag): Ditto.
1201         (elmo-event-handler): Abolish.
1202         (elmo-event-handler-flag-changed): Ditto.
1203         (elmo-event-handler-cache-changed): Ditto.
1204         (elmo-folder-add-handler): Ditto.
1205         (elmo-folder-remove-handler): Ditto.
1206         (elmo-folder-notify-event): Ditto.
1207
1208         * elmo-pipe.el (toplevel): Require elmo-signal.
1209         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1210         (elmo-pipe-connect-signals): New function.
1211         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1212         (elmo-folder-set-flag): Ditto.
1213         (elmo-folder-unset-flag): Ditto.
1214         (elmo-message-set-cached): Ditto.
1215
1216         * elmo-multi.el (toplevel): Require elmo-signal.
1217         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1218         (elmo-multi-connect-signals): New function.
1219         (elmo-multi-map-numbers): Ditto.
1220         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1221         (elmo-message-fetch): Ditto.
1222         (elmo-folder-set-flag): Ditto.
1223         (elmo-folder-unset-flag): Ditto.
1224
1225         * elmo-filter.el (toplevel): Require elmo-signal.
1226         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1227         (elmo-filter-connect-signals): New function.
1228         (elmo-filter-add-flag-count): Ditto.
1229         (elmo-message-fetch): Does not call
1230         `elmo-filter-folder-countup-message-flags' and
1231         `elmo-folder-notify-event'.
1232         (elmo-message-set-cached): Ditto.
1233         (elmo-folder-set-flag): Ditto.
1234         (elmo-folder-unset-flag): Ditto.
1235
1236         * elmo-version.el (elmo-version): Up to 2.13.2.
1237
1238 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1239
1240         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1241         `flags'.
1242
1243 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1244
1245         * elmo-filter.el (elmo-message-set-cached): Call
1246         `elmo-folder-notify-event' with event `cache-changed'.
1247
1248         * elmo-multi.el (elmo-message-set-cached): Ditto.
1249
1250         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1251
1252 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1253
1254         * elmo.el (elmo-folder-encache): Abolish.
1255
1256 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1257
1258         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1259         (elmo-folder-next-message-number-dop): Return appropriate negative
1260         integer.
1261
1262 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1263
1264         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1265         clearing pending operations.
1266         (elmo-folder-next-message-number-dop): Return appropriate negative
1267         integer.
1268
1269 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1270
1271         * elmo.el (toplevel): Added autoload setting for `md5'.
1272         (elmo-msgdb-path-encode-threshold): New user option.
1273         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1274         longer than `elmo-msgdb-path-encode-threshold'.
1275
1276         * elmo-flag.el (elmo-global-mark-migrate): Use
1277         `elmo-folder-expand-msgdb-path' instead of
1278         `elmo-folder-msgdb-path'.
1279
1280 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1281
1282         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1283         element of the difference is nil.
1284
1285 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1286
1287         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1288         to the check logic of file systems which are weak in colon character.
1289
1290 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1291
1292         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1293
1294 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1295
1296         * elmo-maildir.el (elmo-maildir-move-file): New function.
1297         (elmo-folder-append-buffer): Use it.
1298         (elmo-folder-append-messages): Ditto.
1299         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1300
1301         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1302         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1303
1304         * elmo-maildir.el (elmo-maildir-separator): New user option.
1305         (elmo-maildir-adjust-separator): New macro.
1306         (elmo-maildir-list-location): Use it.
1307         (elmo-maildir-update-current): Ditto.
1308         (elmo-maildir-set-mark): Ditto.
1309         (elmo-maildir-delete-mark): Ditto.
1310         (These changes are based on Hiroya Murata's patch [wl: 13437])
1311
1312 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1313
1314         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1315
1316 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1317
1318         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1319         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1320         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1321
1322 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1323
1324         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1325         Use `with-temp-buffer'.
1326
1327 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1328
1329         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1330
1331         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1332         `wl-read-search-condition').
1333         (elmo-read-search-condition-internal): Likewise.
1334
1335         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1336         (elmo-flag-valid-p): New function.
1337         (elmo-folder-initialize): Check flag name is valid.
1338
1339 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1340
1341         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1342         delimiter to obtain root mailbox itself.
1343
1344 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1345
1346         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1347         type mismatch.
1348
1349 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1350
1351         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1352         as t.
1353
1354 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1355
1356         * elmo-shimbun.el (toplevel): Require cl at compile.
1357
1358         * elmo-nntp.el (toplevel): Ditto.
1359
1360         * elmo-nmz.el (toplevel): Ditto.
1361
1362         * elmo-multi.el (toplevel): Ditto.
1363
1364         * elmo-file.el (toplevel): Ditto.
1365
1366         * elmo-dop.el (toplevel): Ditto.
1367
1368         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1369
1370 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1371
1372         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1373         as nil.
1374
1375         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1376         size of elmo-message-fetch-internal is 0 byte.
1377
1378 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1379
1380         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1381
1382 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1383
1384         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1385         always plugged.
1386
1387 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1388
1389         * elmo-maildir.el (elmo-map-message-fetch): Call
1390         `elmo-map-folder-set-flag'.
1391
1392         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1393         (elmo-message-fetch): Merge from
1394         `elmo-message-fetch-with-cache-process'.
1395
1396         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1397         (elmo-message-fetch): Define.
1398
1399         * elmo-nntp.el (elmo-message-fetch): Renamed from
1400         `elmo-message-fetch-with-cache-process'.
1401
1402         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1403         (elmo-message-fetch): Define.
1404
1405         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1406         search-key.
1407
1408         * elmo-shimbun.el (shimbun-mua-search-id): Use
1409         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1410         (elmo-shimbun-folder-shimbun-header): Ditto.
1411         (elmo-shimbun-get-headers): Ditto.
1412         (elmo-shimbun-update-overview): Ditto.
1413
1414         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1415
1416         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1417         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1418
1419 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1420
1421         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1422         message is cached.
1423         (elmo-message-fetch-string): Fixed argument.
1424
1425 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1426
1427         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1428         exchange order of arguments `section' and `unread'.
1429         (elmo-message-encache): Follow the API change.
1430         (elmo-message-match-condition): Ditto.
1431         (elmo-generic-folder-append-messages): Ditto.
1432         (elmo-message-fetch-string): New function.
1433
1434         * elmo-split.el (elmo-split-subr): Ditto.
1435
1436         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1437
1438         * elmo-pipe.el (elmo-message-fetch): Ditto.
1439
1440         * elmo-multi.el (elmo-message-fetch): Ditto.
1441
1442         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1443
1444         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1445
1446         * elmo-filter.el (elmo-message-fetch): Ditto.
1447
1448         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1449
1450         * elmo-imap4.el (mime-imap-location-section-body): Use
1451         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1452         follow the API change.
1453
1454 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1455
1456         * elmo-access.el: New file.
1457
1458         * elmo-null.el: Ditto.
1459
1460         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1461
1462 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1463
1464         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1465         (elmo-network-session): New attribute `last-accessed'.
1466         (elmo-network-get-session): Discard network cache if elapsed time
1467         since last-accessed is larger than elmo-network-session-idle-timeout.
1468
1469 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1470
1471         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1472         and added `number', `require-entireness'.
1473         (elmo-find-fetch-strategy): Rewrite.
1474         (elmo-message-fetch): Unset `unread' flag when argument unread is
1475         non-nil.
1476
1477         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1478
1479         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1480         (elmo-message-fetch): Notify event `flag-changed'.
1481
1482         * elmo-pipe.el: Likewise.
1483
1484         * elmo-mime.el (elmo-mime-entity): New class.
1485         (elmo-mime-entity-display-p): New generic function.
1486         (elmo-mime-entity-display): Ditto.
1487         (elmo-mime-entity-display-as-is): Ditto.
1488         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1489         elmo-mime-entity.
1490         (elmo-make-mime-message-location): Removed.
1491         (elmo-mime-message-display): Ditto.
1492         (elmo-mime-display-as-is): Ditto.
1493         (elmo-message-mime-entity): New function.
1494
1495         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1496
1497         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1498         change.
1499         (elmo-message-fetch): Re-count flagged message number and notify
1500         event `flag-changed'.
1501
1502         * elmo-version.el (elmo-version): Up to 2.13.1.
1503
1504 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1505
1506         * elmo-filter.el (elmo-message-field): Define.
1507         (elmo-message-set-field): Ditto.
1508
1509 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1510
1511         * elmo.el (elmo-message-set-cached): Call
1512         `elmo-folder-notify-event' with cache-changed.
1513         (elmo-event-handler-cache-changed): New generic function.
1514
1515 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1516
1517         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1518         instead of elmo-add-name-to-file.
1519         (elmo-folder-append-messages): Ditto.
1520
1521 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1522
1523         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1524
1525 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1526
1527         * elmo-version.el (elmo-version): Up to 2.13.0.
1528
1529         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1530         `auto'.
1531
1532         * modb-standard.el (modb-standard-economize-entity-size): Changed
1533         default value to `t'.
1534
1535         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1536         `standard'.
1537
1538         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1539         after parsing greeting string.
1540
1541 2004-11-23  Daishi Kato <daishi@axlight.com>
1542
1543         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1544         New user option.
1545         (elmo-spam-spamoracle-call): Use it.
1546
1547 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1548
1549         * elmo.el (elmo-message-accessible-p): Message in dop spool
1550         is accessible.
1551
1552 2004-11-23  Daishi Kato <daishi@axlight.com>
1553
1554         * elsp-spamoracle.el: New file.
1555
1556 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1557
1558         * elmo.el (elmo-message-flags-for-append): New function.
1559         (elmo-generic-folder-append-messages): Use it.
1560
1561         * elmo-split.el (elmo-split-subr): Ditto.
1562
1563         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1564         `flags' and use elmo-folder-append-buffer instead of
1565         write-region-as-binary.
1566         (elmo-dop-filter-pending-messages): New function.
1567         (elmo-folder-append-buffer-dop): Call
1568         elmo-dop-spool-folder-append-buffer with `flag'.
1569         (elmo-folder-set-flag-dop): Filter messages by
1570         elmo-dop-filter-pending-messages.
1571         (elmo-folder-unset-flag-dop): Ditto.
1572         (elmo-folder-append-buffer-dop-delayed): Use
1573         elmo-message-flags-for-append to get flags of the message and
1574         simplify.
1575
1576 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1577
1578         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1579
1580 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1581
1582         * elmo.el (elmo-folder): Added handlers slot.
1583         (elmo-event-handler): New class.
1584         (elmo-event-handler-flag-changed): New API.
1585         (elmo-folder-add-handler): New function.
1586         (elmo-folder-remove-handler): Ditto.
1587         (elmo-folder-notify-event): Ditto.
1588         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1589         `flag-changed'.
1590         (elmo-folder-unset-flag): Ditto.
1591
1592         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1593         (elmo-folder-unset-flag): Ditto.
1594
1595         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1596         (elmo-folder-unset-flag): Ditto.
1597
1598         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1599         (elmo-folder-unset-flag): Ditto.
1600
1601         * elmo-version.el (elmo-version): Up to 2.11.33.
1602
1603 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1604
1605         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1606
1607 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1608
1609         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1610
1611         * elmo-flag.el (elmo-folder-unset-flag): Define.
1612         (elmo-global-flag-detach): Do process when the flag is not target
1613         flag.
1614
1615 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1616
1617         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1618         variable.
1619         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1620
1621 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1622
1623         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1624         function.
1625         (elmo-folder-delete-messages): Detach messages before delete
1626         messages from target folder.
1627         (elmo-folder-detach-messages): Set updated number-list to slot.
1628
1629 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1630
1631         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1632
1633 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1634
1635         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1636
1637 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1638
1639         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1640         internal use only).
1641         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1642         not modified.
1643         (elmo-folder-delete-messages): Define.
1644         (elmo-folder-move-messages): Don't call
1645         `elmo-folder-detach-messages'.
1646         (elmo-folder-synchronize): Rewrite.
1647         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1648
1649         * elmo-util.el (elmo-last): New function.
1650         (elmo-set-list): Ditto.
1651         (elmo-number-set-delete-list): Ditto.
1652         (elmo-number-set-delete): Ditto.
1653
1654         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1655
1656         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1657         `elmo-folder-delete-messages' and don't delete location map.
1658         (elmo-folder-detach-messages): Define.
1659
1660         * elmo-imap4.el (elmo-folder-delete): Use
1661         `elmo-folder-delete-messages-internal' instead of
1662         `elmo-folder-delete-messages'.
1663
1664         * elmo-filter.el (elmo-folder-delete-messages): Call
1665         `elmo-folder-detach-messages'.
1666         (elmo-folder-detach-messages): Don't call
1667         `elmo-folder-detach-messages' for target folder.
1668
1669         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1670         message deletion is succeeded.
1671
1672         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1673
1674         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1675         from `elmo-folder-delete-messages'.
1676
1677         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1678
1679         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1680
1681         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1682
1683         * elmo-version.el (elmo-version): Up to 2.11.32.
1684
1685 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1686
1687         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1688         (elmo-global-flag-list): Added obsolete variable setting.
1689
1690         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1691
1692         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1693         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1694         `elmo-mime-display-header-analysis' is nil.
1695
1696         * elmo-flag.el (elmo-global-flags): Renamed from
1697         `elmo-global-flag-list' (All other related portions are changed).
1698         (elmo-local-flags): New variable.
1699         (elmo-local-flag-p): New function.
1700         (elmo-global-flag-set-internal): Cause an error when flag is not
1701         global.
1702
1703 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1704
1705         * elmo-util.el (elmo-concat-path): Treat empty path.
1706
1707 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1708
1709         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1710         field-or-fields).
1711         (elmo-split-address-match): Ditto.
1712         (elmo-split-equal): Ditto.
1713         (elmo-split-match): Ditto.
1714
1715 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1716
1717         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1718         (elmo-generic-folder-append-messages): If src message exists but
1719         has no flag, pass (read) for the FLAG argument of
1720         `elmo-folder-append-buffer'. Otherwise, pass nil.
1721
1722         * elmo-split.el (elmo-split-subr): Likewise.
1723
1724         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1725
1726         * elmo-multi.el (elmo-message-flags): Ditto.
1727
1728         * elmo-filter.el (elmo-message-flags): Ditto.
1729
1730         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1731         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1732         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1733         
1734 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1735
1736         * elmo-split.el (elmo-split-rule): Update comment.
1737         (elmo-split-address-equal): Allow 2nd argument to be a list.
1738         (elmo-split-address-match): Ditto.
1739         (elmo-split-equal): Ditto.
1740         (elmo-split-match): Ditto.
1741
1742 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1743
1744         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1745         (elmo-folder-append-msgdb): Don't treat `read'.
1746         (elmo-message-flags): Don't return `read'.
1747
1748         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1749         (elmo-folder-unset-read-delayed): Ditto.
1750
1751         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1752
1753 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1754
1755         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1756         deletion.
1757
1758 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1759
1760         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1761         header.
1762
1763 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1764
1765         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1766         here.
1767         (elmo-msgdb-save): Bind inhibit-quit.
1768         (modb-standard-message-entity): Ditto.
1769
1770 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1771
1772         * elmo-database.el: No need to require elmo-msgdb.
1773
1774 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1775
1776         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1777         instead of `elmo-list-subdirectories'.
1778
1779 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1780
1781         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1782         group entry.
1783         (elmo-folder-exists-p): "[" is empty.
1784         (elmo-folder-list-subfolders): Define.
1785         (elmo-folder-have-subfolder-p): Ditto.
1786
1787 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1788
1789         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1790
1791 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1792
1793         * elmo-filter.el (elmo-folder-local-p): Define.
1794
1795 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1796
1797         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1798         when entity is garbaged.
1799         (modb-standard-save-entity-1): Don't modify the original entity.
1800
1801 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1802
1803         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1804
1805 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1806
1807         * elmo.el (elmo-strict-folder-diff): Use
1808         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1809
1810 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1811
1812         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1813         (elmo-msgdb-message-number): Ditto.
1814         (elmo-msgdb-message-field): Ditto.
1815
1816         * modb-standard.el (modb-standard-economize-entity-size): New user
1817         option.
1818         (modb-standard-loaded-message-id): New inline function.
1819         (modb-standard-load-entity): Use it.
1820         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1821         throw message-id string away.
1822         (elmo-msgdb-flag-available-p): Define.
1823         (elmo-msgdb-message-number): Ditto.
1824         (elmo-msgdb-message-field): Ditto.
1825
1826         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1827         (suppoted -> supported).
1828         (modb-legacy-supported-flag-p): Ditto.
1829         (elmo-msgdb-set-flag): Ditto.
1830         (elmo-msgdb-unset-flag): Ditto.
1831         (elmo-msgdb-flag-available-p): Define.
1832
1833         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1834         is `t', treat it as legacy entity.
1835         
1836         * elmo.el (elmo-message-flag-available-p): New generic function.
1837         (elmo-message-number): Ditto.
1838         (elmo-message-field): Use `elmo-msgdb-message-field'.
1839
1840         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1841
1842         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1843         (elmo-message-number): Ditto.
1844
1845         * elmo-multi.el (elmo-message-number): Define.
1846         (elmo-message-flag-available-p): Ditto.
1847
1848         * elmo-filter.el (elmo-message-flag-available-p): Define.
1849         (elmo-message-number): Ditto.
1850
1851         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1852         (elmo-folder-initialize): Load `max-number'.
1853         (elmo-folder-commit): Save it.
1854         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1855         (elmo-global-flag-set-internal): Set up max-number slot.
1856
1857 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1858
1859         * elmo-version.el (elmo-version): Up to 2.11.31.
1860
1861 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1862
1863         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1864         unibyte string of the current buffer for the argument of `md5'
1865         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1866
1867 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1868
1869         * modb-legacy.el (modb-legacy-flag-list): New constant.
1870         (modb-legacy-suppoted-flag-p): New internal function.
1871         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1872         (elmo-msgdb-unset-flag): Ditto.
1873
1874 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1875
1876         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1877
1878         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1879         from msgdb.
1880
1881 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1882
1883         * elmo-multi.el (elmo-folder-count-flags): Changed return value
1884         (follow the API change).
1885
1886         * elmo-filter.el (elmo-folder-count-flags): Ditto.
1887
1888 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
1889
1890         * modb-standard.el (modb-standard-digest-flags): Abolish.
1891         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
1892
1893         * elmo-vars.el (elmo-digest-flags): New variable.
1894         (elmo-preserved-flags): Moved from elmo-flag.el.
1895
1896         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
1897         (elmo-imap4-flag-to-imap-criteria): Ditto.
1898         (elmo-imap4-folder-list-flagged): Use it.
1899
1900         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
1901
1902         * elmo.el (elmo-folder-count-flags): Changed return value.
1903
1904         * elmo-flag.el (elmo-preserved-flags): New variable.
1905         (elmo-get-global-flags): Use it.
1906
1907         * modb-standard.el (modb-standard-digest-flags): New variable.
1908         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
1909         Changed behavior of `any'.
1910
1911         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1912         which are defined the Internet draft
1913         (draft-melnikov-imap-keywords-03.txt).
1914         (elmo-imap4-flags-to-imap): New function.
1915         (elmo-folder-append-buffer): Use it.
1916
1917         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1918         in the docstring.
1919
1920         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1921         avoid the bug of Emacs 21.3.
1922
1923 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
1924
1925         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1926         function find-coding-system does not exist.
1927
1928 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1929
1930         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1931         parsing.
1932
1933 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1934
1935         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1936         response codes.
1937
1938 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1939
1940         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1941         (elmo-network-close-session): Follow the changes in
1942         `elmo-pop3-read-response'.
1943         (elmo-pop3-auth-user): Ditto.
1944         (elmo-pop3-auth-apop): Ditto.
1945         (elmo-network-initialize-session): Ditto.
1946         (elmo-network-authenticate-session): Ditto.
1947         (elmo-network-setup-session): Ditto.
1948         (elmo-folder-status): Ditto.
1949         (elmo-message-fetch-plugged): Ditto.
1950         (elmo-pop3-delete-msg): Ditto.
1951
1952 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1953
1954         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1955         on failure.
1956
1957 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1958
1959         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1960         style.
1961         (elmo-bind-directory): Ditto.
1962
1963 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1964
1965         * elmo.el (elmo-folder-append-messages): Note on return value.
1966         * elmo-archive.el (elmo-folder-append-messages): Don't return
1967         message numbers which could not be appended.
1968
1969 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1970
1971         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1972
1973 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1974
1975         * elmo-version.el (elmo-version): Up to 2.11.30.
1976
1977 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1978
1979         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1980         `mask'.
1981
1982         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1983
1984         * elmo-multi.el (elmo-folder-synchronize): Likewise.
1985         (elmo-multi-split-numbers): Add elmo-folder object into each
1986         element of return value at first.
1987         (elmo-folder-delete-messages): Follow the above change.
1988         (elmo-folder-detach-messages): Ditto.
1989
1990         * elmo-filter.el (elmo-folder-synchronize): Minimize message
1991         number which is synchronized in target folder.
1992
1993 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1994
1995         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1996         Change default value to symbol `all'.
1997         (elmo-map-message-fetch): Change condition to update overview
1998         follow the above.
1999
2000 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2001
2002         * elmo-shimbun.el (elmo-map-message-fetch): Change default
2003         behavior to update overview.
2004         (elmo-shimbun-update-overview-folder-list): Note it.
2005
2006 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2007
2008         * modb-standard.el (modb-standard-message-entity): Avoid infinite
2009         recursive call.
2010
2011 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2012
2013         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
2014         buffer-disable-undo, it is unnecessary.
2015         (elmo-spam-register-good-messages): Ditto.
2016
2017         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2018         Ditto.
2019
2020         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
2021
2022 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2023
2024         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
2025         (elmo-set-work-buf): Use set-buffer-multibyte instead of
2026         elmo-set-buffer-multibyte.
2027         (elmo-object-load): Ditto.
2028         (elmo-save-buffer): Ditto.
2029         (elmo-delete-char): Ditto.
2030         (elmo-file-field-primitive-condition-match): Ditto.
2031         (elmo-mime-string): Ditto.
2032
2033         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
2034         (elmo-archive-field-condition-match): Ditto.
2035
2036         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
2037
2038         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
2039
2040         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
2041         (elmo-nntp-msgdb-create-message): Ditto.
2042
2043         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2044
2045         * elmo.el (elmo-message-match-condition): Ditto.
2046         (elmo-message-match-condition): Ditto.
2047
2048         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2049         Ditto.
2050
2051         * elmo-version.el (elmo-version): Up to 2.11.29.
2052
2053         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
2054         (elsp-header): New backend.
2055
2056         * elmo-util.el (elmo-decoded-field-body): New function.
2057
2058 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2059
2060         * elmo-version.el (elmo-version): Up to 2.11.28.
2061
2062 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2063
2064         * elmo-filter.el: Rewrite.
2065
2066         * elmo-version.el (elmo-version): Up to 2.11.27.
2067
2068 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
2069
2070         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
2071         msgdb path for the localdir folder with absolute path.
2072
2073         * utf7.el: Synch up with latest gnus/utf7.el;
2074         Modified for latest Emacs.
2075
2076 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2077
2078         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
2079         shimbun backend couldn't open.
2080
2081 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
2082
2083         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
2084         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
2085         when a destination folder is a filter folder.
2086
2087 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2088
2089         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
2090         (elmo-generic-folder-append-messages): Call elmo-message-flags
2091         with argument `msgid'.
2092
2093         * elmo-split.el (elmo-split-subr): Ditto.
2094
2095         * elmo-pipe.el (elmo-message-flags): Follow the API change.
2096
2097         * elmo-multi.el (elmo-message-flags): Ditto.
2098
2099 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2100
2101         * elmo.el (elmo-folder): Add new slot `flag-table'.
2102         (elmo-folder-flag-table): New API.
2103         (elmo-folder-close-flag-table): Ditto.
2104         (elmo-folder-preserve-flags): New function.
2105         (elmo-generic-folder-append-messages): Use
2106         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
2107         Flag of a non-registered message, it sets to nil.
2108         Does not set flag to flag-table.
2109
2110         * elmo-maildir.el (elmo-folder-append-buffer): Use
2111         `elmo-folder-preserve-flags'.
2112         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2113         `elmo-folder-close-flag-table'.
2114
2115         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
2116         (elmo-archive-folder-append-buffer): Use
2117         `elmo-folder-preserve-flags'.
2118
2119         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
2120
2121         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
2122
2123         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2124         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2125         `elmo-folder-close-flag-table'.
2126
2127         * elmo-version.el (elmo-version): Up to 2.11.26.
2128
2129 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2130
2131         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
2132
2133         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
2134         md5's 4th and 5th argument (non-existent in flim one).
2135
2136 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2137
2138         * elmo-split.el (elmo-split-subr): Flag of a non-registered
2139         message, It sets to nil.
2140
2141 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2142
2143         * elmo.el (elmo-folder-list-messages): Merge lists only if both
2144         list is non-nil.
2145
2146 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
2147
2148         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
2149
2150         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
2151
2152         * elmo-util.el (elmo-uniq-sorted-list): New function.
2153         (elmo-make-number-list): Ditto.
2154         (elmo-number-set-to-number-list): Use elmo-make-number-list
2155         and don't use nreverse.
2156
2157 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2158
2159         * elmo-version.el (elmo-version): Up to 2.11.25.
2160
2161 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2162
2163         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
2164         field not exists in message, Use md5 message digest of header.
2165
2166 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2167
2168         * elmo.el (elmo-folder-append-buffer): Add note on return value.
2169         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
2170         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2171         * elmo-split.el (elmo-split-subr): Check return value of
2172         elmo-folder-append-buffer.
2173
2174         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
2175         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2176
2177         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
2178         message-id.
2179
2180 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
2181
2182         * elmo-split.el (elmo-split-subr): Append message with flag.
2183
2184         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
2185         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
2186         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2187
2188 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
2189
2190         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
2191         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
2192         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2193
2194 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
2195
2196         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2197         with a function call of `process-buffer'.  All callers are updated.
2198         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2199         Remove redundant `set-buffer' in a while loop.
2200
2201 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2202
2203         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2204         calls.
2205
2206 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2207
2208         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2209         elsp-spamfilter-register-buffer-internal with current buffer.
2210         (elmo-spam-register-spam-buffer): Ditto.
2211         (elmo-spam-register-good-buffer): Ditto.
2212
2213 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2214
2215         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2216         if it is not contained in the response(A workaround for courier-imap).
2217
2218 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2219
2220         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2221         parenthesis.
2222
2223 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2224
2225         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2226         range.
2227
2228 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2229
2230         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2231         of nconc.
2232
2233         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2234         argument handler.
2235         (elmo-msgdb-message-match-condition): Follow the change above.
2236
2237 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2238
2239         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2240         folder name.
2241
2242 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2243
2244         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2245
2246 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2247
2248         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2249
2250 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2251
2252         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2253         not found.
2254
2255 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2256
2257         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2258         value.
2259         (elmo-file-command-argument): Undo last change for cygwin.
2260         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2261         Don't return nil.
2262         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2263
2264 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2265
2266         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2267         value returned from elmo-file-find is nil.
2268
2269 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2270
2271         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2272         to elmo-vars.el.
2273
2274         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2275         instead of insert-file-contents-as-binary.
2276         (elmo-message-set-field): New generic function.
2277
2278         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2279         behavior change on `split-string'.
2280
2281         * elmo-file.el (elmo-file-find): New function.
2282         (elmo-file-command): New user option.
2283         (elmo-file-command-argument): Ditto.
2284         (elmo-file-fetch-max-size): Ditto.
2285         (elmo-file-detect-format): New function.
2286         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2287         Use elmo-file-detect-format.
2288         (elmo-map-folder-list-message-locations): Don't treat directories.
2289
2290 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2291
2292         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2293         (elmo-passwd-alist-clear): Shred password before clear.
2294         (elmo-remove-passwd): Remove all mached pair.
2295
2296 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2297
2298         * elmo.el (elmo-folder-synchronize): Fix description of the return
2299         value.
2300
2301 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2302
2303         * elmo.el (elmo-message-fetch-bodystructure): New method.
2304         (elmo-message-fetch-bodystructure): Define default.
2305
2306         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2307         elmo-message-fetch-bodystructure.
2308         (elmo-message-fetch-bodystructure): Define.
2309
2310         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2311
2312 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2313
2314         * elmo-filter.el (elmo-message-folder): Define.
2315
2316 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2317
2318         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2319         elmo-delete-cr-buffer.
2320
2321         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2322
2323         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2324
2325         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2326
2327         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2328         type seems to be a text.
2329
2330 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2331
2332         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2333         (elmo-spam-register-good-buffer): Ditto.
2334         (elmo-spam-spamassassin-register-messages): Ditto.
2335
2336         * elmo-util.el (elmo-string-member-ignore-case): Define with
2337         static-cond.
2338
2339 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2340
2341         * elmo.el (elmo-folder-type): Undo last change.
2342
2343         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2344
2345         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2346         warnings.
2347
2348         * elmo-file.el: New file.
2349         
2350         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2351
2352         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2353         variable.
2354         (elmo-spam-spamassassin-register-messages): New inline function.
2355         (elmo-spam-register-spam-messages): Define.
2356         (elmo-spam-register-good-messages): Ditto.
2357
2358         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2359         Fixed typo.
2360
2361         * elmo.el (toplevel): Added autoload setting for
2362         `elmo-get-global-flags'.
2363         (elmo-message-has-global-flag-p): New function.
2364         (elmo-message-set-global-flags): Ditto.
2365         (elmo-folder-type): Improvement for name: format.
2366
2367         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2368         availability of keyword flags.
2369         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2370         (elmo-folder-list-flagged-plugged): Renamed from
2371         elmo-folder-list-flagged-unplugged.
2372         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2373         accept any flag as keyword flag.
2374         (elmo-folder-set-flag-plugged): Accept keyword flags.
2375         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2376
2377         * elmo-flag.el (elmo-get-global-flags): New function.
2378
2379         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2380         folders.
2381
2382         * elmo-version.el (elmo-version): Up to 2.11.24.
2383
2384 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2385
2386         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2387         elmo-multiple-field-body instead of std11-field-body to check all
2388         headers.
2389
2390 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2391
2392         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2393         or "size".
2394
2395 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2396
2397         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2398         unintern is unbound.
2399
2400 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2401
2402         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2403         Protect from infinite loop.
2404
2405 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2406
2407         * elsp-bogofilter.el
2408         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2409         (elmo-spam-bogofilter-register-messages): New internal function.
2410         (elmo-spam-register-spam-messages): Define.
2411         (elmo-spam-register-good-messages): Ditto.
2412
2413 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2414
2415         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2416         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2417         (elmo-spam-bogofilter-call): Fixed the last change.
2418         (elmo-spam-bogofilter-arguments): Ditto.
2419
2420         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2421         Follow the options change of latest bogofilter.
2422
2423         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2424         (elmo-spam-bogofilter-good-switch): Ditto.
2425         (elmo-spam-bogofilter-arguments-alist): New user option.
2426         (elmo-spam-bogofilter-debug): Ditto.
2427         (elmo-spam-bogofilter-call): Renamed from
2428         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2429         is non-nil, insert output in buffer for debug.
2430         (elmo-spam-bogofilter-arguments): New macro.
2431         (elmo-spam-buffer-spam-p): Use it.
2432         (elsp-bogofilter-register-buffer): Ditto.
2433
2434 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2435
2436         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2437         regexp.
2438
2439 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2440
2441         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2442         value as "ruby".
2443         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2444         (elmo-spam-bsfilter-program): Set default value as full path for
2445         `bsfilter'.
2446         (elmo-spam-bsfilter-debug): New user option.
2447         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2448         non-nil, insert output in buffer for debug. Fix treating of
2449         argument.
2450
2451 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2452
2453         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2454         `elmo-maildir-flag-specs' element instead of one.
2455         (elmo-map-folder-unset-flag): Ditto.
2456         (Reported by Ken Makimura <macky@astem.or.jp>)
2457
2458         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2459         (elmo-folder-unset-flag-plugged): Ditto.
2460
2461 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2462
2463         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2464         to `reads' slot only if `in-msgdb' is nil.
2465
2466 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2467
2468         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2469         and complement argument list.
2470
2471 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2472
2473         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2474         instead of elmo-folder-list-flagged.
2475
2476 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2477
2478         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2479
2480         * elsp-bsfilter.el: New file.
2481
2482         * elmo-pipe.el (elmo-folder-list-unreads,
2483         elmo-folder-list-answereds,
2484         elmo-folder-list-importants,
2485         elmo-folder-flag-as-important,
2486         elmo-folder-unflag-important,
2487         elmo-folder-flag-as-read,
2488         elmo-folder-unflag-read,
2489         elmo-folder-flag-as-answered,
2490         elmo-folder-unflag-answered): Remove.
2491         (elmo-folder-set-flag): Define.
2492         (elmo-folder-unset-flag): Ditto.
2493
2494         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2495         (elmo-folder-set-flag): Define.
2496         (elmo-folder-unset-flag): Ditto.
2497         (elmo-folder-list-unreads): Remove.
2498         (elmo-folder-list-flagged): Define.
2499
2500         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2501         (elmo-folder-list-unreads,
2502         elmo-folder-list-importants,
2503         elmo-folder-list-answereds,
2504         elmo-folder-list-unreads-plugged,
2505         elmo-folder-list-importants-plugged,
2506         elmo-folder-list-answereds-plugged): Remove.
2507         (elmo-folder-list-flagged-plugged): New method.
2508         (elmo-folder-unflag-important,
2509         elmo-folder-flag-as-important,
2510         elmo-folder-unflag-read,
2511         elmo-folder-flag-as-read,
2512         elmo-folder-unflag-answered,
2513         elmo-folder-flag-as-answered,
2514         elmo-folder-flag-as-read-unplugged,
2515         elmo-folder-unflag-read-unplugged,
2516         elmo-folder-flag-as-important-unplugged,
2517         elmo-folder-unflag-important-unplugged,
2518         elmo-folder-flag-as-answered-unplugged,
2519         elmo-folder-unflag-answered-unplugged): Remove.
2520         (elmo-folder-set-flag): Define.
2521         (elmo-folder-unset-flag): Ditto.
2522         (elmo-folder-set-flag-unplugged): Ditto.
2523         (elmo-folder-unset-flag-unplugged): Ditto.
2524
2525         * elmo-multi.el (elmo-folder-list-unreads,
2526         elmo-folder-list-answereds,
2527         elmo-folder-list-importants,
2528         elmo-folder-flag-as-important,
2529         elmo-folder-unflag-important,
2530         elmo-folder-flag-as-read,
2531         elmo-folder-unflag-read,
2532         elmo-folder-flag-as-answered,
2533         elmo-folder-unflag-answered): Remove.
2534         (elmo-folder-set-flag): Define.
2535         (elmo-folder-unset-flag): Ditto.
2536
2537         * elmo-map.el (elmo-map-folder-unflag-important,
2538         elmo-map-folder-flag-as-important,
2539         elmo-map-folder-unflag-read,
2540         elmo-map-folder-flag-as-read,
2541         elmo-map-folder-unflag-answered,
2542         elmo-map-folder-flag-as-answered): Remove.
2543         (elmo-map-folder-set-flag): New method.
2544         (elmo-map-folder-unset-flag): Ditto.
2545         (elmo-map-folder-list-unreads,
2546         elmo-map-folder-list-importants,
2547         elmo-map-folder-list-answereds): Remove.
2548         (elmo-folder-list-flagged-internal): Define.
2549         (elmo-map-folder-list-flagged): New method.
2550
2551         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2552         (elmo-map-folder-list-unreads,
2553         elmo-map-folder-list-importants,
2554         elmo-map-folder-list-flagged): Remove.
2555         (elmo-map-folder-list-flagged): Define.
2556         (elmo-map-folder-flag-as-important,
2557         elmo-map-folder-unflag-important,
2558         elmo-map-folder-flag-as-read,
2559         elmo-map-folder-unflag-read,
2560         elmo-map-folder-flag-as-answered,
2561         elmo-map-folder-unflag-answered): Remove.
2562         (elmo-maildir-set-mark-messages): New internal function.
2563         (elmo-map-folder-set-flag): Define.
2564         (elmo-map-folder-unset-flag): Ditto.
2565
2566         * elmo.el (toplevel): Added autoload setting for
2567         `elmo-folder-list-global-flag-messages'.
2568         (elmo-folder-list-unreads,
2569         elmo-folder-list-importants,
2570         elmo-folder-list-answereds): Remove.
2571         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2572         Return a list whitch merged with messages have global flag.
2573         (elmo-folder-list-flagged-internal): New method.
2574         (elmo-folder-unflag-important,
2575         elmo-folder-flag-as-important,
2576         elmo-folder-unflag-read,
2577         elmo-folder-flag-as-read,
2578         elmo-folder-unflag-answered,
2579         elmo-folder-flag-as-answered): Remove.
2580         (elmo-folder-set-flag): New method.
2581         (elmo-folder-unset-flag): Ditto.
2582         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2583         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2584
2585         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2586         (elmo-folder-list-unreads-plugged,
2587         elmo-folder-list-importants-plugged,
2588         elmo-folder-list-answereds-plugged,
2589         elmo-folder-list-flagged-unplugged,
2590         elmo-folder-unflag-important-plugged,
2591         elmo-folder-flag-as-important-plugged,
2592         elmo-folder-unflag-read-plugged,
2593         elmo-folder-flag-as-read-plugged,
2594         elmo-folder-unflag-answered-plugged,
2595         elmo-folder-flag-as-answered-plugged): Remove.
2596         (elmo-folder-set-flag-plugged,
2597         elmo-folder-unset-flag-plugged): Define.
2598
2599         * elmo-flag.el (elmo-folder-initialize): Register to
2600         `elmo-global-flag-list' if flag is not global.
2601         (elmo-folder-append-messages): Set flag to source messages.
2602
2603         * elmo-filter.el (elmo-filter-folder-list-unreads,
2604         elmo-folder-list-unreads,
2605         elmo-filter-folder-list-importants,
2606         elmo-folder-list-importants,
2607         elmo-folder-flag-as-read,
2608         elmo-folder-unflag-read,
2609         elmo-folder-flag-as-important,
2610         elmo-folder-unflag-important,
2611         elmo-folder-flag-as-answered,
2612         elmo-folder-unflag-answered): Remove.
2613         (elmo-folder-set-flag): Define.
2614         (elmo-folder-unset-flag): Ditto.
2615
2616         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2617         elmo-folder-unflag-read-dop,
2618         elmo-folder-flag-as-important-dop,
2619         elmo-folder-unflag-important-dop,
2620         elmo-folder-flag-as-answered-dop,
2621         elmo-folder-unflag-answered-dop): Remove.
2622         (elmo-folder-set-flag-dop,
2623         elmo-folder-unset-flag-dop,
2624         elmo-folder-set-important-delayed,
2625         elmo-folder-unset-important-delayed,
2626         elmo-folder-set-read-delayed,
2627         elmo-folder-unset-read-delayed,
2628         elmo-folder-set-answered-delayed,
2629         elmo-folder-unset-answered-delayed): New function.
2630         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2631         (elmo-dop-queue-method-name-alist): Ditto.
2632
2633         * elmo-version.el (elmo-version): Up to 2.11.23.
2634
2635 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2636
2637         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2638
2639         * elsp-sa.el: New file.
2640
2641 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2642
2643         * modb-standard.el (modb-standard-message-entity): New function.
2644         (elmo-msgdb-message-entity): Use it.
2645
2646 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2647
2648         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2649         behavior when one-level is nil.
2650
2651         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2652
2653         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2654
2655 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2656
2657         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2658         get max number.
2659         (elmo-generic-folder-diff): Ditto.
2660
2661         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2662         (elmo-folder-update-number): Ditto.
2663
2664         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2665         (elmo-folder-next-message-number-dop): Ditto.
2666
2667 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2668
2669         * elmo-filter.el (elmo-folder-msgdb-create): Use
2670         `elmo-message-entity' and `elmo-message-flags' instead of
2671         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2672
2673 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2674
2675         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2676         `if-exists'.
2677
2678 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2679
2680         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2681
2682         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2683
2684         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2685
2686 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2687
2688         * elmo-version.el (elmo-version): Up to 2.11.22.
2689
2690 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2691
2692         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2693
2694 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2695
2696         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2697         if the message dose not exist.
2698
2699 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2700
2701         * elmo-version.el (elmo-version): Up to 2.11.21.
2702
2703 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2704
2705         * modb-standard.el (toplevel): Don't require mime.
2706
2707 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2708
2709         * elsp-bogofilter.el (toplevel): Don't require path-util.
2710         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2711         (elmo-spam-bogofilter-header): Abolish.
2712         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2713         (elmo-spam-bogofilter-args): New user option.
2714         (elsp-bogofilter-call-bogofilter): New internal function.
2715         (elmo-spam-buffer-spam-p): Use it.
2716         (elsp-bogofilter-register-buffer): Renamed from
2717         `elmo-spam-bogofilter-register-buffer';
2718         Use `elsp-bogofilter-call-bogofilter'.
2719         (elmo-spam-register-spam-buffer): Follow the change above.
2720         (elmo-spam-register-good-buffer): Ditto.
2721
2722 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2723
2724         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2725         message-id is nil do nothing.
2726
2727 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2728
2729         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2730         Revival.
2731         (elmo-imap4-session): Removed use-flag slot.
2732         (elmo-imap4-session-select-mailbox): Undo last change.
2733         (elmo-folder-use-flag-p): Use
2734         elmo-imap4-disuse-server-flag-mailbox-regexp.
2735
2736 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2737
2738         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2739         (elmo-imap4-session-select-mailbox): Set it up.
2740         (elmo-folder-use-flag-p): Return value of use-flag slot.
2741
2742 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2743
2744         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2745         message-id is nil.
2746         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2747
2748         * modb-entity.el (elmo-message-entity-handler): Likewise.
2749
2750 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2751
2752         * elmo.el (toplevel): Remove setting of autoloding for
2753         elmo-global-flag-initialize.
2754         (elmo-init): Don't call elmo-global-flag-initialize.
2755         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2756
2757         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2758         (elmo-global-mark-migrate): Don't call it.
2759         (elmo-global-mark-upgrade): Ditto.
2760
2761 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2762
2763         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2764         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2765
2766         * elmo-vars.el (elmo-init-hook): New user option.
2767
2768         * elmo.el (elmo-init): Run the elmo-init-hook.
2769
2770         * elmo-flag.el (elmo-global-mark-migrate): New function.
2771
2772 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2773
2774         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2775         Undo last change (move to elmo-msgdb-unset-flag).
2776         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2777         flag is unset.
2778
2779 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2780
2781         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2782         read flag is set.
2783         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2784         (elmo-msgdb-unset-flag): Ditto.
2785
2786 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2787
2788         * elmo-split.el (elmo-split): Return split message count.
2789
2790 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2791
2792         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2793         is nil.
2794
2795 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2796
2797         * elmo.el (elmo-folder-unflag-important): Call
2798         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2799         a symbol `always'.
2800
2801         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2802         before unset flag.
2803         (elmo-global-flag-detach): Delete the message from flag folder, if
2804         `delete-if-none' is a symbol `always'.
2805
2806 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2807
2808         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2809         `elmo-spam-spamfilter-decode-buffer'.
2810         (elsp-spamfilter-register-buffer-internal): New internal function.
2811         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2812         (elmo-spam-register-spam-buffer): Ditto.
2813         (elmo-spam-register-good-buffer): Ditto.
2814
2815         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2816         change.
2817         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2818         (elmo-spam-register-spam-buffer): Follow the API change.
2819         (elmo-spam-register-good-buffer): Ditto.
2820
2821         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2822         (elmo-split-spam-p): Added argument plist; Call
2823         `elmo-spam-buffer-spam-p' with new argument register.
2824
2825         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2826         `register'.
2827         (elmo-spam-message-spam-p): Ditto.
2828         (elmo-spam-register-spam-buffer): Added optional argument
2829         `restore'.
2830         (elmo-spam-register-good-buffer): Ditto.
2831         (elmo-spam-register-spam-messages): Ditto.
2832         (elmo-spam-register-good-messages): Ditto.
2833
2834 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2835
2836         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2837         register into good corpus.
2838         (elmo-spam-register-good-buffer): Fixed to register into bad
2839         corpus.
2840
2841 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2842
2843         * elmo-version.el (elmo-version): Up to 2.11.20.
2844
2845         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2846         change.
2847
2848         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2849         flag without depending on \Recent flag.
2850
2851 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2852
2853         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2854         (elmo-spam-modified-p): Defined.
2855         (elmo-spam-save-status): Set `modified' slot to nil.
2856         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2857         (elmo-spam-register-good-buffer): Ditto.
2858
2859         * elmo-spam.el (elmo-spam-modified-p): New API.
2860
2861 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2862
2863         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2864         duplicate definition.
2865
2866         * elmo-util.el (elmo-unfold-field-body): New function.
2867         (elmo-msgdb-get-message-id-from-buffer): Use it.
2868
2869         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2870         Fixed the last change; Use elmo-unfold-field-body.
2871
2872 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2873
2874         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2875         Unfold date value.
2876
2877 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2878
2879         * elmo-spam.el (elmo-spam-save-status): New API.
2880
2881         * elsp-spamfilter.el: New file.
2882
2883 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2884
2885         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2886
2887 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2888
2889         * elmo-split.el (elmo-split-spam-p): New function.
2890
2891         * elmo-spam.el: New file.
2892
2893         * elsp-bogofilter.el: Ditto.
2894
2895 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
2896
2897         * elmo.el (elmo-folder-next-message-number): New API.
2898         (elmo-folder-next-message-number): Define.
2899         (elmo-message-field): Don't check folder length.
2900
2901         * elmo-net.el (elmo-folder-next-message-number): Define.
2902         (elmo-folder-next-message-number-unplugged): Define.
2903
2904         * elmo-map.el (elmo-folder-next-message-number): Define.
2905         (elmo-folder-delete-messages): Clear hash value.
2906
2907         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
2908
2909         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2910         (elmo-folder-delete-messages-dop-delayed): Always return t.
2911
2912         * elmo-version.el (elmo-version): Up to 2.11.19.
2913
2914 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2915
2916         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2917         change.
2918
2919         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2920         identical cons cell into the mark-alist and the hash table.
2921
2922 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
2923
2924         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2925         elmo-folder-list-messages with argument `visible-only' as t.
2926
2927         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2928         (elmo-folder-msgdb-create): Check the target folder.
2929
2930 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
2931
2932         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2933         `permanentflag' instead of `flags'.
2934         (elmo-folder-open): Ditto.
2935         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2936         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2937         (elmo-folder-use-flag-p): Always return t.
2938         (elmo-imap4-session-select-mailbox): Use value of `flags' if
2939         `permanentflags' does not exist.
2940         (elmo-folder-open): Ditto.
2941
2942 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
2943
2944         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2945         is nil.
2946         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2947
2948         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2949         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2950         response.
2951         (elmo-folder-open): Ditto.
2952         (elmo-imap4-set-flag): Send store flag command only when the `flags'
2953         slot of the session includes the flag.
2954         (elmo-imap4-session-flag-available-p): New function.
2955         (elmo-imap4-folder-list-flagged): Ditto.
2956         (elmo-folder-list-unreads-plugged): Use it.
2957         (elmo-folder-list-importants-plugged): Ditto.
2958         (elmo-folder-list-answereds-plugged): Ditto.
2959         (elmo-imap4-search-internal-primitive): Ditto.
2960         (elmo-imap4-folder-list-any-plugged,
2961         elmo-imap4-folder-list-digest-plugged): Abolish.
2962
2963         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2964         if numbers is nil.
2965
2966 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2967
2968         * elmo-util.el (toplevel): Require emu for char-list-to-string.
2969
2970 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2971
2972         * elmo-util.el (elmo-get-hash-val): Simplify.
2973         (elmo-set-hash-val): Rewrite.
2974
2975 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2976
2977         * elmo.el (elmo-folder-list-messages): Append killed messages into
2978         result if `visible-only' is nil and `in-msgdb' is non-nil.
2979
2980         * elmo-util.el (elmo-uniq-list): Added optional argument
2981         `delete-function'.
2982
2983         * modb.el (elmo-msgdb-flag-count): New API.
2984
2985         * modb-standard.el (modb-standard): Added slot flag-count.
2986         (modb-standard-countup-flags): New function.
2987         (modb-standard-load-flag): Call it.
2988         (elmo-msgdb-append): Ditto.
2989         (elmo-msgdb-clear): Clear slot flag-count.
2990         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2991         (elmo-msgdb-unset-flag): Treat `all' flag and call
2992         modb-standard-countup-flags.
2993         (elmo-msgdb-flag-count): Define.
2994         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2995         (elmo-msgdb-delete-messages): Ditto.
2996
2997         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2998         (elmo-msgdb-flag-count): Define.
2999
3000         * elmo.el (elmo-folder-list-messages): Undo last change.
3001         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
3002         (elmo-folder-kill-messages): Unset all flags to numbers.
3003
3004         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
3005         elmo-folder-kill-messages.
3006
3007         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
3008         (elmo-nntp-folder-delete-messages): Abolish.
3009
3010         * elmo-version.el (elmo-version): Up to 2.11.18.
3011
3012 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3013
3014         * elmo.el (elmo-folder-kill-messages-before): Abolish.
3015         (elmo-folder-kill-messages-range): New function.
3016         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
3017         instead of elmo-folder-kill-messages-before.
3018
3019 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
3020
3021         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
3022         elmo-imap4-current-msgdb to decide entity handler.
3023
3024 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3025
3026         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
3027
3028         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
3029         inline function.
3030         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
3031         (elmo-msgdb-overview-entity-set-number,
3032         elmo-msgdb-overview-entity-get-references,
3033         elmo-msgdb-overview-entity-set-references,
3034         elmo-msgdb-overview-entity-get-from-no-decode,
3035         elmo-msgdb-overview-entity-get-from,
3036         elmo-msgdb-overview-entity-set-from,
3037         elmo-msgdb-overview-entity-get-subject,
3038         elmo-msgdb-overview-entity-get-subject-no-decode,
3039         elmo-msgdb-overview-entity-set-subject,
3040         elmo-msgdb-overview-entity-get-date,
3041         elmo-msgdb-overview-entity-set-date,
3042         elmo-msgdb-overview-entity-get-to,
3043         elmo-msgdb-overview-entity-get-cc,
3044         elmo-msgdb-overview-entity-get-size,
3045         elmo-msgdb-overview-entity-set-size,
3046         elmo-msgdb-overview-entity-get-extra,
3047         elmo-msgdb-overview-entity-set-extra,
3048         elmo-msgdb-overview-entity-get-extra-field,
3049         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
3050         (elmo-msgdb-make-index): Use
3051         `elmo-msgdb-overview-entity-get-number-internal'.
3052         (elmo-msgdb-clear-index): Ditto.
3053         (elmo-msgdb-append-entity): Ditto;
3054         Use `elmo-msgdb-overview-entity-get-id-internal'.
3055
3056         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
3057         elmo-msgdb-overview-entity-set-number,
3058         elmo-msgdb-overview-entity-get-references,
3059         elmo-msgdb-overview-entity-set-references,
3060         elmo-msgdb-overview-entity-get-from-no-decode,
3061         elmo-msgdb-overview-entity-get-from,
3062         elmo-msgdb-overview-entity-set-from,
3063         elmo-msgdb-overview-entity-get-subject,
3064         elmo-msgdb-overview-entity-get-subject-no-decode,
3065         elmo-msgdb-overview-entity-set-subject,
3066         elmo-msgdb-overview-entity-get-date,
3067         elmo-msgdb-overview-entity-set-date,
3068         elmo-msgdb-overview-entity-get-to,
3069         elmo-msgdb-overview-entity-get-cc,
3070         elmo-msgdb-overview-entity-get-size,
3071         elmo-msgdb-overview-entity-set-size,
3072         elmo-msgdb-overview-entity-get-extra,
3073         elmo-msgdb-overview-entity-set-extra,
3074         elmo-msgdb-overview-entity-get-extra-field,
3075         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
3076         and rewrote for backward compatibility.
3077
3078 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3079
3080         * elmo.el (elmo-message-entity-number,
3081         elmo-message-entity-set-number,
3082         elmo-message-entity-field,
3083         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
3084
3085         * elmo-msgdb.el (elmo-message-entity-number,
3086         elmo-message-entity-set-number,
3087         elmo-message-entity-field,
3088         elmo-message-entity-set-field): Moved from elmo.el.
3089
3090 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3091
3092         * elmo.el (toplevel): Changed definition orders.
3093
3094 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3095
3096         * modb.el (elmo-msgdb-search): New API .
3097         (elmo-msgdb-match-condition): Ditto.
3098
3099         * modb-standard.el (elmo-msgdb-search): Define.
3100
3101         * modb-legacy.el (elmo-msgdb-search): Ditto.
3102
3103         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
3104         from elmo-msgdb-match-condition-internal.
3105
3106         * elmo.el (elmo-folder-search-fast): Abolish.
3107         (elmo-folder-search): Use elmo-msgdb-search and
3108         elmo-with-progress-display.
3109
3110         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
3111         as msgdb API.
3112
3113         * elmo.el (elmo-folder): Remove slot message-modified and
3114         flag-modified.
3115         (elmo-folder-set-message-modified): Abolish.
3116         (elmo-generic-folder-commit): Follow the change above.
3117         (elmo-folder-synchronize): Ditto.
3118
3119         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
3120
3121         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3122
3123         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
3124
3125 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3126
3127         * modb-standard.el (modb-standard-make-message-entity,
3128         elmo-msgdb-make-message-entity,
3129         elmo-msgdb-create-message-entity-from-buffer,
3130         elmo-msgdb-message-entity-number,
3131         elmo-msgdb-message-entity-set-number,
3132         elmo-msgdb-message-entity-field,
3133         elmo-msgdb-message-entity-set-field,
3134         elmo-msgdb-copy-message-entity,
3135         elmo-msgdb-match-condition-internal): Remove.
3136
3137         * modb-entity.el: New file (again).
3138
3139         * modb.el (toplevel): Require modb-entity.
3140         (elmo-msgdb-message-entity-handler): New method.
3141
3142         * modb-standard.el (modb-standard-entity-id): Use
3143         elmo-message-entity-handler.
3144         (modb-standard-load-entity): Ditto.
3145         (elmo-msgdb-append-entity): Ditto.
3146         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3147
3148         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
3149         elmo-msgdb-decoded-cache-hashtb,
3150         (modb-legacy-make-message-entity,
3151         elmo-msgdb-make-message-entity,
3152         elmo-msgdb-create-message-entity-from-buffer,
3153         elmo-msgdb-message-entity-number,
3154         elmo-msgdb-message-entity-set-number,
3155         elmo-msgdb-message-entity-field,
3156         elmo-msgdb-message-entity-set-field,
3157         elmo-msgdb-copy-message-entity,
3158         elmo-msgdb-match-condition-internal,
3159         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
3160
3161         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
3162         (elmo-message-entity-set-number): Ditto.
3163         (elmo-message-entity-field): Ditto.
3164         (elmo-message-entity-set-field): Ditto.
3165
3166         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
3167
3168         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3169
3170         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3171
3172         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3173         (elmo-nntp-msgdb-create-message): Ditto.
3174
3175         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
3176         (elmo-folder-msgdb-create): Add unread flag.
3177
3178         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3179
3180         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
3181
3182         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
3183
3184         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3185
3186         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
3187         elmo-msgdb-messge-entity-handler.
3188         * elmo-version.el (elmo-version): Up to 2.11.17.
3189
3190 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3191
3192         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
3193         change.
3194
3195 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3196
3197         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3198
3199         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3200         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3201         (elmo-msgdb-flag-table): Ditto.
3202         (elmo-msgdb-sort-by-date): Ditto.
3203
3204         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3205
3206         * modb-standard.el (toplevel): Require mime.
3207         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3208         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3209         elmo-msgdb-message-entity-number.
3210         (elmo-msgdb-append-entity): Ditto.
3211         (elmo-msgdb-create-message-entity-from-file): Remove.
3212         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3213         corresponds to the entity.
3214         (elmo-msgdb-message-entity-number): Do nothing currently.
3215         (elmo-msgdb-message-entity-field): Ditto.
3216         (elmo-msgdb-message-entity-set-field): Ditto.
3217         (elmo-msgdb-copy-message-entity): Ditto.
3218         (elmo-msgdb-match-condition-internal): Ditto.
3219
3220         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3221         elmo-util.el.
3222         (elmo-msgdb-create-message-entity-from-file): Remove.
3223
3224         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3225         modb-legacy.el.
3226         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3227
3228         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3229
3230 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3231
3232         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3233         (elmo-msgdb-message-entity-field): Ditto.
3234         (elmo-msgdb-message-entity-number): Ditto.
3235
3236 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3237
3238         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3239         Fixed how to set extra field into entity.
3240         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3241         symbol.
3242
3243         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3244         Fixed how to set extra field into entity.
3245         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3246         symbol.
3247
3248 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3249
3250         * modb.el (elmo-message-entity-db): New function.
3251         (elmo-msgdb-make-message-entity): New API.
3252         (elmo-msgdb-message-entity-number): Ditto.
3253         (elmo-msgdb-message-entity-set-number): Ditto.
3254         (elmo-msgdb-message-entity-field): Ditto.
3255         (elmo-msgdb-message-entity-set-field): Ditto.
3256         (elmo-msgdb-copy-message-entity): Ditto.
3257         (elmo-msgdb-create-message-entity-from-file): Ditto.
3258         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3259         (elmo-msgdb-match-condition-internal): Ditto.
3260
3261         * modb-standard.el (modb-legacy): Require modb-legacy.
3262         (modb-standard-make-message-entity): New inline function.
3263         (elmo-msgdb-make-message-entity): Define.
3264         (elmo-msgdb-create-message-entity-from-file): Ditto.
3265         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3266         (elmo-msgdb-message-entity-field): Ditto.
3267         (elmo-msgdb-message-entity-set-field): Ditto.
3268         (elmo-msgdb-copy-message-entity): Ditto.
3269         (elmo-msgdb-match-condition-internal): Ditto.
3270
3271         * modb-legacy.el: Don't require modb-entity.
3272         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3273         (elmo-msgdb-match-condition-primitive): Ditto.
3274         (elmo-msgdb-get-decoded-cache): Ditto.
3275         (elmo-msgdb-overview-entity-get-id): Ditto.
3276         (elmo-msgdb-overview-entity-get-number): Ditto.
3277         (elmo-msgdb-overview-entity-set-number): Ditto.
3278         (elmo-msgdb-overview-entity-get-references): Ditto.
3279         (elmo-msgdb-overview-entity-set-references): Ditto.
3280         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3281         (elmo-msgdb-overview-entity-get-from): Ditto.
3282         (elmo-msgdb-overview-entity-set-from): Ditto.
3283         (elmo-msgdb-overview-entity-get-subject): Ditto.
3284         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3285         (elmo-msgdb-overview-entity-set-subject): Ditto.
3286         (elmo-msgdb-overview-entity-get-date): Ditto.
3287         (elmo-msgdb-overview-entity-set-date): Ditto.
3288         (elmo-msgdb-overview-entity-get-to): Ditto.
3289         (elmo-msgdb-overview-entity-get-cc): Ditto.
3290         (elmo-msgdb-overview-entity-get-size): Ditto.
3291         (elmo-msgdb-overview-entity-set-size): Ditto.
3292         (elmo-msgdb-overview-entity-get-extra): Ditto.
3293         (elmo-msgdb-overview-entity-set-extra): Ditto.
3294         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3295         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3296         (elmo-msgdb-number-load): Ditto.
3297         (elmo-msgdb-overview-load): Ditto.
3298         (elmo-msgdb-mark-load): Ditto.
3299         (elmo-msgdb-number-save): Ditto.
3300         (elmo-msgdb-mark-save): Ditto.
3301         (elmo-msgdb-overview-save): Ditto.
3302         (modb-legacy-make-message-entity): New inline function.
3303         (elmo-msgdb-insert-file-header): Ditto.
3304         (elmo-msgdb-make-message-entity): Define.
3305         (elmo-msgdb-create-message-entity-from-file): Ditto.
3306         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3307         (elmo-msgdb-message-entity-number): Ditto.
3308         (elmo-msgdb-message-entity-set-number): Ditto.
3309         (elmo-msgdb-message-entity-field): Ditto.
3310         (elmo-msgdb-message-entity-set-field): Ditto.
3311         (elmo-msgdb-copy-message-entity): Ditto.
3312         (elmo-msgdb-match-condition-internal): Ditto.
3313
3314         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3315         (elmo-message-copy-entity): Rewrite.
3316         (elmo-message-entity-number): Ditto.
3317         (elmo-message-entity-set-number): Ditto.
3318         (elmo-message-entity-field): Use elmo-message-entity-db.
3319         (elmo-message-entity-set-field): Ditto.
3320         (elmo-message-field): Rewrite.
3321
3322         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3323         elmo-msgdb.el
3324         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3325
3326         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3327         elmo-message-entity-field.
3328         (elmo-shimbun-folder-shimbun-header): Ditto.
3329         (elmo-shimbun-entity-to-header): Ditto.
3330         (elmo-folder-msgdb-create): Ditto.
3331         (elmo-shimbun-msgdb-create-entity): Ditto;
3332         Use elmo-msgdb-create-message-entity-from-buffer.
3333         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3334         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3335
3336         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3337         elmo-msgdb-create-message-entity-from-file and 
3338         elmo-message-entity-field.
3339
3340         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3341         elmo-message-entity-number.
3342         (elmo-pop3-msgdb-create-message): Use
3343         elmo-msgdb-create-message-entity-from-buffer,
3344         elmo-message-entity-set-field, elmo-message-entity-number and
3345         elmo-message-entity-set-number.
3346
3347         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3348         the API change in elmo-msgdb-make-message-entity.
3349         (elmo-nntp-msgdb-create-message): Use
3350         elmo-msgdb-create-message-entity-from-buffer.
3351
3352         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3353         elmo-message-entity-field and
3354         elmo-msgdb-create-message-entity-from-file.
3355
3356         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3357         (elmo-msgdb-get-field): Abolish.
3358         (elmo-msgdb-get-number): Rewrite.
3359         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3360         (elmo-msgdb-flag-table): Ditto.
3361         (elmo-msgdb-get-last-message-id,
3362         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3363         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3364         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3365         (elmo-msgdb-create-overview-from-buffer,
3366         elmo-msgdb-overview-get-parent-entity): Abolish.
3367
3368         * elmo-mime.el (elmo-mime-display-as-is): Use
3369         elmo-message-entity-field.
3370
3371         * elmo-map.el (elmo-folder-pack-numbers): Use
3372         elmo-message-entity-set-number.
3373
3374         * elmo-maildir.el (elmo-folder-msgdb-create): 
3375         elmo-msgdb-create-message-entity-from-file instead of
3376         elmo-msgdb-create-overview-entity-from-file.
3377
3378         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3379         msgdb.
3380         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3381         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3382
3383         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3384         elmo-messge-entity-field and elmo-message-entity-number.
3385         (elmo-imap4-fetch-callback-1): Call
3386         elmo-msgdb-create-message-entity-from-buffer instead of
3387         elmo-msgdb-create-overview-from-buffer. 
3388         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3389         (elmo-find-fetch-strategy): Likewise.
3390
3391         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3392         elmo-localdir-msgdb-create-entity with argument msgdb.
3393
3394         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3395         and elmo-message-entity-set-number.
3396
3397         * elmo-cache.el (elmo-folder-msgdb-create): Use
3398         elmo-message-entity-field.
3399         (elmo-folder-msgdb-create): Call
3400         elmo-msgdb-create-message-entity-from-file instead of
3401         elmo-msgdb-create-overview-entity-from-file.
3402
3403         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3404         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3405         instead of elmo-msgdb-create-overview-from-buffer.
3406         (elmo-archive-msgdb-create-entity): Ditto.
3407         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3408         elmo-message-entity-field.
3409         (elmo-archive-parse-mmdf): Ditto.
3410
3411         * modb-entity.el: Removed.
3412
3413         * elmo-version.el (elmo-version): Up to 2.11.16.
3414
3415 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3416
3417         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3418         `is-local'.
3419         (elmo-folder-flag-as-answered): Ditto.
3420
3421 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3422
3423         * modb-standard.el: New file.
3424
3425         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3426         elmo-msgdb-convert-type is `sync'.
3427
3428         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3429         (elmo-msgdb-convert-type): New user option.
3430
3431         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3432         (elmo-load-msgdb): Auto detect saved type.
3433
3434         * elmo-version.el (elmo-version): Up to 2.11.15.
3435
3436 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3437
3438         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3439
3440         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3441         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3442         with argument `delete-if-none' when dst-folder is 'null.
3443
3444         * elmo-flag.el (elmo-folder-append-messages): Defined.
3445         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3446
3447 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3448
3449         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3450
3451 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3452
3453         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3454         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3455         (elmo-folder-commit): Ditto.
3456
3457 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3458
3459         * elmo-flag.el: New file.
3460
3461         * elmo-mark.el: Removed.
3462
3463         * modb-legacy.el (modb-legacy-new-mark,
3464         modb-legacy-unread-uncached-mark,
3465         modb-legacy-unread-cached-mark,
3466         modb-legacy-read-uncached-mark,
3467         modb-legacy-answered-cached-mark,
3468         modb-legacy-answered-uncached-mark,
3469         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3470         All other related portions are changed.
3471
3472         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3473         (elmo-folder-list-messages-with-global-mark): Abolish.
3474         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3475         (elmo-folder-flag-as-important): Ditto.
3476         (elmo-folder-unflag-read): Ditto.
3477         (elmo-folder-flag-as-read): Ditto.
3478         (elmo-folder-unflag-answered): Ditto.
3479         (elmo-folder-flag-as-answered): Ditto.
3480         (elmo-message-encache): Return the cache path.
3481         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3482         (elmo-message-set-flag): Transitional implementation.
3483         (elmo-message-unset-flag): Ditto.
3484         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3485         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3486         (elmo-init): Call elmo-global-flag-initialize.
3487         (toplevel): Added autoload settings for elmo-flag.
3488
3489         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3490
3491         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3492         (elmo-file-cache-delete): Don't treat global-mark.
3493
3494         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3495
3496         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3497
3498         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3499         `elmo-global-flags-set'.
3500
3501         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3502         `flag'.
3503         (elmo-folder-unflag-read): Ditto.
3504         (elmo-folder-unflag-important): Ditto.
3505         (elmo-folder-flag-as-important): Ditto.
3506         (elmo-folder-unflag-answered): Ditto.
3507         (elmo-folder-flag-as-answered): Ditto.
3508
3509         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3510         `elmo-global-flags-set'.
3511         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3512
3513         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3514
3515         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3516         `flag'.
3517         (elmo-folder-flag-as-important): Ditto.
3518         (elmo-folder-unflag-important): Ditto.
3519         (elmo-folder-flag-as-important): Ditto.
3520         (elmo-folder-unflag-read): Ditto.
3521         (elmo-folder-flag-as-read): Ditto.
3522         (elmo-folder-unflag-answered): Ditto.
3523         (elmo-folder-flag-as-answered): Ditto.
3524
3525         * elmo-multi.el (elmo-folder-list-importants): Don't call
3526         elmo-folder-list-messages-with-global-mark.
3527         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3528         (elmo-folder-unflag-important): Ditto.
3529         (elmo-folder-flag-as-read): Ditto.
3530         (elmo-folder-unflag-read): Ditto.
3531         (elmo-folder-flag-as-answered): Ditto.
3532         (elmo-folder-unflag-answered): Ditto.
3533
3534         * elmo-msgdb.el (elmo-msgdb-new-mark,
3535         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3536         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3537         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3538         (Moved to modb-legacy.el).
3539         (elmo-flag-table-get): Treat important flag too.
3540
3541         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3542         `mark' to `flag'.
3543         (elmo-map-folder-flag-as-important): Ditto.
3544         (elmo-map-folder-unflag-read): Ditto.
3545         (elmo-map-folder-flag-as-read): Ditto.
3546         (elmo-map-folder-unflag-answered): Ditto.
3547         (elmo-map-folder-flag-as-answered): Ditto.
3548         (elmo-folder-unflag-important): Ditto.
3549         (elmo-folder-flag-as-important): Ditto.
3550         (elmo-folder-unflag-read): Ditto.
3551         (elmo-folder-flag-as-read): Ditto.
3552         (elmo-folder-unflag-answered): Ditto.
3553         (elmo-folder-flag-as-answered): Ditto.
3554
3555         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3556         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3557         `flag'.
3558         (elmo-map-folder-unflag-important): Ditto.
3559         (elmo-map-folder-flag-as-read): Ditto.
3560         (elmo-map-folder-unflag-read): Ditto.
3561         (elmo-map-folder-flag-as-answered): Ditto.
3562         (elmo-map-folder-unflag-answered): Ditto.
3563
3564         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3565         `elmo-global-flags-set'.
3566         (elmo-global-flags-set): Added autoload setting.
3567
3568         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3569         `flag'.
3570
3571         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3572         `elmo-msgdb-global-mark-set'.
3573         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3574         Call `elmo-global-flags-set'.
3575         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3576         `flag'.
3577         (elmo-folder-flag-as-important-plugged): Ditto.
3578         (elmo-folder-unflag-read-plugged): Ditto.
3579         (elmo-folder-flag-as-read-plugged): Ditto.
3580         (elmo-folder-unflag-answered-plugged): Ditto.
3581         (elmo-folder-flag-as-answered-plugged): Ditto.
3582         (elmo-global-flags-set): Added autoload setting.
3583
3584         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3585         `flag'.
3586         (elmo-folder-unflag-read): Ditto.
3587         (elmo-folder-flag-as-important): Ditto.
3588         (elmo-folder-unflag-important): Ditto.
3589         (elmo-folder-flag-as-answered): Ditto.
3590         (elmo-folder-unflag-answered): Ditto.
3591
3592         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3593         change of `mark'->`flag'.
3594         (elmo-dop-queue-method-name-alist): Ditto.
3595         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3596         (elmo-folder-unflag-read-dop): Ditto.
3597         (elmo-folder-flag-as-important-dop): Ditto.
3598         (elmo-folder-unflag-important-dop): Ditto.
3599         (elmo-folder-flag-as-answered-dop): Ditto.
3600         (elmo-folder-unflag-answered-dop): Ditto.
3601
3602         * elmo-cache.el (elmo-folder-msgdb-create): Call
3603         `elmo-global-flags-set'.
3604
3605         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3606         Call `elmo-global-flags-set'.
3607         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3608         elmo-archive-parse-mmdf with argument `folder'.
3609         (elmo-archive-parse-mmdf): Added argument `folder';
3610         Call `elmo-global-flags-set'.
3611
3612         * elmo-version.el (elmo-version): Up to 2.11.14.
3613
3614 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3615
3616         * modb.el (elmo-msgdb-length): Define.
3617
3618         * elmo.el (elmo-make-folder): Fixed.
3619         (elmo-generic-folder-append-messages): Follow the API change.
3620
3621         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3622         API change.
3623
3624 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3625
3626         * modb.el: New file.
3627
3628         * modb-entity.el: Ditto.
3629
3630         * modb-legacy.el: Ditto.
3631
3632         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3633         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3634         of `elmo-msgdb-overview-get-entity'.
3635         (elmo-msgdb-get-field): Ditto.
3636         (elmo-msgdb-merge): Moved to `elmo.el'.
3637         (elmo-msgdb-length): Removed; redefine as modb method.
3638         (elmo-msgdb-change-mark): Abolish.
3639         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3640         (elmo-msgdb-match-condition): Don't use mark.
3641         (elmo-msgdb-overview-get-entity): Abolish.
3642         Split modb part into `modb*.el'.
3643
3644         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3645
3646         * elmo-shimbun.el (shimbun-mua-search-id): Use
3647         `elmo-msgdb-message-entity' instead of
3648         `elmo-msgdb-overview-get-entity'.
3649         (elmo-shimbun-folder-shimbun-header): Ditto.
3650         (elmo-shimbun-get-headers): Ditto.
3651         (elmo-shimbun-update-overview): Ditto.
3652
3653         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3654
3655         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3656
3657         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3658         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3659
3660         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3661         `elmo-msgdb-mark-to-flags'.
3662
3663         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3664         `elmo-msgdb-set-path'.
3665
3666         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3667  
3668         * elmo-version.el (elmo-version): Up to 2.11.13.
3669
3670         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3671
3672         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3673         of mark.
3674
3675 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3676
3677         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3678         mismatch.
3679
3680 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3681
3682         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3683         instead of `elmo-msgdb-get-cached'.
3684         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3685
3686         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3687         (elmo-msgdb-set-cached): Ditto.
3688         (elmo-msgdb-set-flag): Rewrite.
3689         (elmo-msgdb-unset-flag): Ditto.
3690
3691         * elmo-msgdb.el: Rewrite with luna.
3692
3693         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3694         (elmo-folder-msgdb): Follow the change above.
3695         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3696         (elmo-folder-unmark-important): Follow the API change.
3697         (elmo-folder-mark-as-important): Ditto.
3698         (elmo-folder-unmark-read): Ditto.
3699         (elmo-folder-mark-as-read): Ditto.
3700         (elmo-folder-unmark-answered): Ditto.
3701         (elmo-folder-mark-as-answered): Ditto.
3702         (elmo-folder-clear): Likewise.
3703
3704         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3705         instead of `elmo-msgdb-load' (renamed).
3706
3707         * elmo-version.el (elmo-version): Up to 2.11.12.
3708
3709 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3710
3711         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3712         change.
3713         (elmo-message-mark): Abolish.
3714         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3715         instead of `elmo-msgdb-change-mark'.
3716
3717         * elmo-pipe.el (elmo-message-mark): Abolish.
3718
3719         * elmo-multi.el (elmo-message-mark): Ditto.
3720
3721         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3722         (elmo-msgdb-unread-uncached-mark): Ditto.
3723         (elmo-msgdb-unread-cached-mark): Ditto.
3724         (elmo-msgdb-read-uncached-mark): Ditto.
3725         (elmo-msgdb-answered-cached-mark): Ditto.
3726         (elmo-msgdb-answered-uncached-mark): Ditto.
3727         (elmo-msgdb-important-mark): Ditto.
3728         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3729         `use-cache'.
3730         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3731         `flags'.
3732         (elmo-flag-table-load): Changed flag to list of flag.
3733         (elmo-flag-table-set): If flags is nil, set read flag.
3734         (elmo-flag-table-get): Return derived flags from global mark,
3735         cache status and saved flags.
3736         (elmo-msgdb-flag-table): Follow the change above.
3737         (elmo-msgdb-out-of-date-messages): New function.
3738
3739         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3740
3741         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3742
3743         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3744
3745         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3746         (elmo-nntp-msgdb-create-message): Ditto.
3747
3748         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3749
3750         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3751         independent.
3752         (elmo-folder-msgdb-create): Follow the API change.
3753
3754         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3755         (elmo-folder-append-messages): Ditto.
3756
3757         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3758         (elmo-folder-append-buffer): Ditto.
3759
3760         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3761
3762         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3763
3764         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3765         (elmo-archive-parse-mmdf): Ditto.
3766
3767         * elmo-version.el (elmo-version): Up to 2.11.11.
3768
3769 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3770
3771         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3772         `elmo-msgdb-mark'.
3773
3774         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3775
3776         * elmo-pipe.el (elmo-message-flags): Defined.
3777
3778         * elmo-multi.el (elmo-message-flags): Ditto.
3779
3780 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3781
3782         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3783         `elmo-msgdb-delete-msgs'.
3784
3785         * elmo.el (elmo-folder-count-flags): Don't use
3786         `elmo-msgdb-get-mark-alist'.
3787         (elmo-folder-detach-messages): Follow the API change.
3788
3789         * elmo.el (elmo-folder-list-messages): Append killed messages into
3790         result if `visible-only' is nil.
3791
3792         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3793         canceled messages.
3794         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3795         (elmo-folder-update-number): Likewise.
3796
3797         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3798         (elmo-pop3-sort-msgdb-by-original-number): Use
3799         `elmo-msgdb-sort-entities'.
3800
3801         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3802         (elmo-msgdb-sort-by-date): Use it.
3803         (elmo-msgdb-overview-sort-by-date): Abolish.
3804
3805         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3806
3807         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3808         (elmo-msgdb-flags): New function.
3809         (elmo-msgdb-merge): Use elmo-msgdb-append.
3810
3811         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3812         change.
3813
3814         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3815
3816         * elmo-dop.el (elmo-folder-status-dop): Use
3817         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3818
3819 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3820
3821         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3822
3823         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3824
3825         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3826
3827         * elmo-util.el (elmo-with-progress-display): New macro.
3828
3829         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3830
3831 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3832
3833         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3834         `elmo-folder-list-message-entities' instead of
3835         `elmo-msgdb-get-overview'.
3836         (elmo-map-folder-list-message-locations): Ditto.
3837
3838         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3839         methods instead of treat directly).
3840         (elmo-msgdb-clear): Ditto.
3841         (elmo-msgdb-delete-msgs): Ditto.
3842         (elmo-msgdb-sort-by-date): Ditto.
3843
3844         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3845         local variables.
3846         (elmo-nntp-folder-msgdb-create): Follow the API change.
3847
3848         * elmo-version.el (elmo-version): Up to 2.11.10.
3849
3850 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3851
3852         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3853         (elmo-msgdb-flags-to-mark): Ditto.
3854         (elmo-msgdb-append-entity): Ditto.
3855
3856         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3857         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3858         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3859         (elmo-archive-parse-mmdf): Ditto.
3860
3861         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3862
3863         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3864
3865         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3866
3867         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3868
3869         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3870
3871         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3872
3873         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3874
3875         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3876
3877         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3878         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3879         to empty msgdb.
3880
3881         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3882         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3883         instead of directly construction.
3884         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3885         instead of construct msgdb.
3886
3887         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3888         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
3889         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
3890         instead of construct msgdb.
3891
3892 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3893
3894         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
3895         when field is from or subject.
3896
3897 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
3898
3899         * elmo-multi.el (elmo-message-entity-parent): Define.
3900         (elmo-folder-search): Rewrite.
3901
3902 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3903
3904         * elmo-multi.el (elmo-message-cached-p): Define.
3905
3906         * elmo.el (elmo-message-cached-p): New method.
3907         (elmo-message-accessible-p): Use it instead of msgdb API directly.
3908         (elmo-message-flags): New method.
3909         (elmo-message-flagged-p): New function.
3910
3911         * elmo-version.el (elmo-version): Up to 2.11.9.
3912
3913 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3914
3915         * elmo-version.el (elmo-version): Up to 2.11.8.
3916
3917         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3918
3919         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3920
3921 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
3922
3923         * elmo.el (elmo-folder-detach-messages): Undo last change.
3924
3925 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
3926
3927         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3928
3929         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3930         only when src folder type is pop3.
3931
3932 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
3933
3934         * elmo-msgdb.el (elmo-msgdb-make-index): Use
3935         elmo-msgdb-overview-entity-get-number instead of
3936         elmo-message-entity-number.
3937
3938 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3939
3940         * elmo-version.el (elmo-version): Up to 2.11.7.
3941
3942 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
3943
3944         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3945         function.
3946
3947         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3948         (elmo-msgdb-merge): New function.
3949         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3950         (elmo-msgdb-make-index): Rewrite.
3951
3952         * elmo-version.el (elmo-version): Up to 2.11.6.
3953
3954         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3955         use it as a the path for loading message entities.
3956
3957         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3958
3959 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
3960
3961         * elmo-filter.el (elmo-folder-set-message-modified): Set 
3962         message-modified slot of itself if it does not require target msgdb.
3963
3964         * elmo-mime.el (elmo-mime-message-display): Display message entirely
3965         if folder length is zero.
3966         (elmo-mime-display-as-is): Ditto.
3967
3968         * elmo-filter.el (elmo-folder-set-message-modified): Define.
3969
3970         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3971
3972 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3973
3974         * elmo.el (elmo-folder-set-message-modified): New method.
3975         (elmo-generic-folder-commit): Use it.
3976         (elmo-folder-synchronize): Ditto.
3977
3978         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3979         (elmo-folder-commit): Remove duplicate definition.
3980
3981 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3982
3983         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3984
3985 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3986
3987         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3988         (elmo-strict-folder-diff): Ditto.
3989         (elmo-folder-set-info-max-by-numdb): Simplify.
3990
3991         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3992         elmo-msgdb-list-messages.
3993
3994         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3995         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3996
3997 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3998
3999         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
4000         visible-only is non-nil.
4001         (elmo-folder-confirm-appends): Changed message.
4002         (elmo-folder-synchronize): Added argument disable-killed.
4003
4004         * elmo-multi.el (elmo-folder-synchronize): Added argument
4005         disable-killed.
4006
4007         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
4008
4009         * elmo-version.el (elmo-version): Up to 2.11.5.
4010
4011         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
4012         elmo-list-filter.
4013
4014         * elmo-util.el (elmo-list-filter): Simplify.
4015
4016         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
4017         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
4018         (elmo-generic-folder-diff): Abolish argument.
4019         (elmo-msgdb-load): Don't use number-alist.
4020
4021         * elmo-filter.el (elmo-folder-diff): Abolish argument.
4022
4023         * elmo-pipe.el (elmo-folder-diff): Ditto.
4024
4025         * elmo-nmz.el (elmo-folder-diff): Ditto.
4026
4027         * elmo-net.el (elmo-folder-diff): Ditto.
4028
4029         * elmo-maildir.el (elmo-folder-diff): Ditto.
4030
4031         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
4032
4033         * elmo-multi.el (elmo-folder-diff): Ditto
4034         (elmo-multi-folder-diff): Rewrite.
4035
4036 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4037
4038         * elmo-pipe.el (elmo-folder-msgdb): Define.
4039
4040 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
4041
4042         * elmo.el (elmo-message-set-cached): Define as a method.
4043
4044         * elmo-pipe.el (elmo-message-set-cached): Define.
4045         (elmo-find-fetch-strategy): Ditto.
4046
4047         * elmo-multi.el (elmo-message-set-cached): Define.
4048         (elmo-find-fetch-strategy): Rewrite.
4049
4050         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
4051
4052         * elmo-pipe.el (elmo-message-folder): Fixed definition.
4053
4054 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4055
4056         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
4057         instead of number-alist.
4058
4059         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
4060         mark nor message-id when msgdb of source folder is not loaded.
4061
4062         * elmo.el (elmo-generic-folder-append-messages): Ditto.
4063
4064         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4065
4066 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
4067
4068         * elmo.el (elmo-folder-length): Don't require msgdb.
4069
4070 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
4071
4072         * elmo.el (elmo-message-mark): Cause an error when empty folder.
4073         (elmo-message-field): Ditto.
4074
4075         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
4076         (elmo-map-folder-list-message-locations): Setup `answered-locations'
4077         slot.
4078         (elmo-map-folder-list-answereds): Define.
4079         (elmo-maildir-list-location): Treat 'R' info.
4080         (elmo-folder-msgdb-create): Treat flag-table.
4081         (elmo-folder-append-messages): Save flag-table.
4082
4083 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
4084
4085         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
4086         Use SELECT when elmo-imap4-use-select-to-update-status is t.
4087
4088 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4089
4090         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
4091
4092         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
4093         'read when mark is null.
4094
4095 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
4096
4097         * elmo-version.el (elmo-version): Up to 2.11.4.
4098
4099 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4100
4101         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
4102         (elmo-folder-mark-as-answered): Ditto.
4103
4104 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
4105
4106         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
4107         (elmo-pop3-get-session): Make msgdb directory after session.
4108         (elmo-folder-exists-p): Check exactly at the first time even when the
4109         elmo-pop3-exists-exactly is nil.
4110
4111         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
4112         (elmo-folder-list-messages): Define instead of
4113         elmo-folder-list-messages-internal.
4114         (elmo-folder-check): Check destination folder.
4115         (elmo-folder-synchronize): Drain the pipe.
4116
4117         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
4118         when msgdb is not loaded.
4119
4120         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
4121
4122         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
4123         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
4124         messages.
4125
4126         * elmo.el (elmo-folder-kill-messages-before): New function.
4127         (elmo-folder-kill-messages): Ditto.
4128         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
4129
4130         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
4131         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
4132         killed not by synchronize (e.g. scoring).
4133
4134 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4135
4136         * elmo.el (elmo-folder-search-fast): Return t if condition is not
4137         treated.
4138         (elmo-folder-search): Follow the change above.
4139
4140         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
4141         into the candidates of search field.
4142
4143 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
4144
4145         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
4146         (elmo-msgdb-unset-flag): Ditto.
4147
4148         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
4149
4150 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
4151
4152         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
4153         (elmo-folder-commit): Define.
4154         (elmo-folder-synchronize): Ditto.
4155         (elmo-folder-list-flagged): Ditto.
4156         (elmo-folder-commit): Ditto.
4157         (elmo-folder-length): Ditto.
4158         (elmo-folder-count-flags): Ditto.
4159         (elmo-message-mark): Ditto.
4160         (elmo-message-field): Ditto.
4161         (elmo-message-entity): Ditto.
4162         (elmo-message-folder): Ditto.
4163
4164 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
4165
4166         * elmo.el (elmo-message-field): Define as a method.
4167
4168         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
4169         (elmo-message-field): Define.
4170
4171         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
4172         (elmo-folder-list-importants): Ditto.
4173         (elmo-folder-list-answereds): Ditto.
4174
4175         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
4176         qualifier.
4177         (elmo-folder-mark-as-read): Ditto.
4178         (elmo-folder-unmark-read): Ditto.
4179         (elmo-folder-mark-as-answered): Ditto.
4180         (elmo-folder-unmark-answered): Ditto.
4181         (elmo-folder-list-flagged): Define.
4182         (elmo-folder-commit): Ditto.
4183         (elmo-folder-length): Ditto.
4184         (elmo-folder-count-flags): Ditto.
4185
4186 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4187
4188         * elmo.el (elmo-folder-detach-messages): New method.
4189         (elmo-folder-move-messages): Use it.
4190         (elmo-folder-synchronize): Ditto.
4191
4192         * elmo-multi.el (elmo-folder-detach-messages): Define.
4193
4194         * elmo.el (elmo-message-copy-entity): New function.
4195         (elmo-message-entity-set-number): Ditto.
4196         (elmo-message-mark): Define as method.
4197
4198         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4199         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4200         (elmo-message-entity): Fixed last change.
4201         (elmo-message-mark): Define.
4202         (elmo-folder-msgdb-create): Abolish.
4203         (elmo-multi-folder-append-msgdb): Ditto.
4204         (elmo-multi-folder-diff): Fixed.
4205         (elmo-multi-split-number-alist): Removed.
4206         (elmo-multi-split-mark-alist): Removed.
4207         (elmo-folder-list-messages): Define.
4208         (elmo-folder-list-messages-internal): Removed.
4209
4210         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4211         local file messages.
4212         (elmo-folder-msgdb-create): Fixed read mark.
4213
4214 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4215
4216         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4217         if mark is nil.
4218
4219 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4220
4221         * elmo.el (elmo-folder-list-message-entities): Define as inline
4222         function.
4223         (elmo-folder-messages): Abolish.
4224
4225         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4226         folder.
4227         (elmo-folder-synchronize): Define.
4228         (elmo-message-entity): Define.
4229
4230 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4231
4232         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4233         elmo-imap4-session-select-mailbox.
4234
4235         * elmo.el (elmo-folder-move-messages): Don't display any message.
4236
4237         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4238         parsing.
4239         (elmo-imap4-session-check): Don't wait CHECK response.
4240         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4241
4242 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4243
4244         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4245
4246 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4247
4248         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4249         API.
4250         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4251
4252
4253         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4254         (elmo-folder-list-message-entities): Added argument in-msgdb and
4255         numbers.
4256         (elmo-folder-synchronize): Define as a method.
4257
4258         * elmo-nntp.el (elmo-folder-initialize): Don't use
4259         elmo-nntp-default-user if zero-length username is specified
4260         explicitly.
4261
4262 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4263
4264         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4265         server name in case with username.
4266         (XXX: this is ad-hoc fix against username includes "@", it
4267         should be solved fundamentally)
4268
4269 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4270
4271         * elmo-nntp.el (elmo-nntp-debug): New function.
4272         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4273         (elmo-network-authenticate-session): Hide auth-info from the log.
4274
4275         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4276         user name if it is equal to elmo-nntp-default-user.
4277
4278 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4279
4280         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4281         instead of shimbun-server-internal;
4282         Use shimbun-current-group instead of shimbun-current-group-internal.
4283         (elmo-folder-plugged-p): Use shimbun-server instead of
4284         shimbun-server-internal.
4285         (elmo-folder-set-plugged): Ditto.
4286         (elmo-net-port-info): Ditto.
4287         (elmo-folder-check): Ditto.
4288         (elmo-folder-expand-msgdb-path): Ditto.
4289         (elmo-folder-list-subfolders): Ditto.
4290
4291 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4292
4293         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4294         Convert field-name to lower case.
4295         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4296
4297 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4298
4299         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4300         `message' and `error' take format string.
4301
4302 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4303
4304         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4305
4306 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4307
4308         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4309         recursive call (can't byte compile on emacs 20.7).
4310
4311 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4312
4313         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4314         (elmo-folder-list-message-entities): New API.
4315         (elmo-message-entity): Ditto.
4316         (elmo-message-entity-parent): Ditto.
4317         (elmo-folder-do-each-message-entity): Ditto.
4318         (elmo-message-entity-number): Ditto.
4319         (elmo-message-entity-field): Ditto.
4320         (elmo-message-entity-set-field): Ditto.
4321         (elmo-folder-count-flags): Ditto.
4322         (elmo-folder-length): Ditto.
4323
4324         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4325         not.
4326
4327         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4328         (elmo-msgdb-count-marks): Abolish.
4329         (elmo-msgdb-make-entity): Ditto.
4330         (elmo-msgdb-do-each-entity): Ditto.
4331         (elmo-msgdb-message-entity): New inline function.
4332         (elmo-msgdb-message-entity-field): Ditto.
4333         (elmo-msgdb-message-entity-set-field): Ditto.
4334         (elmo-msgdb-make-message-entity): New function.
4335
4336 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4337
4338         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4339         to flag. (All other related portions are changed.)
4340         (elmo-folder-msgdb-create): Likewise.
4341         (elmo-generic-folder-append-messages): Use flag-table instead of
4342         seen-list.
4343         (elmo-folder-move-messages): Removed redundant process.
4344         (elmo-folder-synchronize): Likewise.
4345
4346         * elmo-msgdb.el (elmo-flag-table-get): New function.
4347         (elmo-flag-table-save): Fixed.
4348         (elmo-msgdb-length): New inline function.
4349         (elmo-msgdb-flag-table): New function.
4350         (elmo-msgdb-mark): Add optional argument new.
4351         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4352         (elmo-msgdb-seen-list): Ditto.
4353         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4354
4355
4356 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4357
4358         * elmo.el (elmo-message-set-mark): Abolish.
4359         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4360         (All related portions are changed.)
4361
4362         * elmo-msgdb.el (toplevel): Added comment.
4363         (elmo-load-msgdb): Added 4th element `path'.
4364         (elmo-msgdb-append): Follow the change above.
4365         (elmo-msgdb-clear): Ditto.
4366         (elmo-msgdb-delete-msgs): Ditto.
4367         (elmo-msgdb-get-path): New inline function.
4368         (elmo-msgdb-set-path): Ditto.
4369         (elmo-flag-table-filename): New variable.
4370         (elmo-flag-table-load): New function.
4371         (elmo-flag-table-set): Ditto.
4372         (elmo-flag-table-save): Ditto.
4373         (elmo-msgdb-get-field-value): Abolish.
4374         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4375
4376 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4377
4378         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4379         the folder has been deleted successfully.
4380         * elmo-imap4.el (elmo-folder-delete): Ditto.
4381         * elmo-archive.el (elmo-folder-delete): Ditto.
4382         * elmo-localdir.el (elmo-folder-delete): Ditto.
4383         * elmo-maildir.el (elmo-folder-delete): Ditto.
4384
4385 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4386
4387         * elmo-util.el (elmo-string-member-ignore-case): New function.
4388         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4389         (elmo-imap4-fetch-callback-1-subr): Likewise.
4390
4391 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4392
4393         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4394         the case of the name attribute "\Noselect".
4395
4396 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4397
4398         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4399
4400         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4401         flist, is not always a member of onum-alist.
4402
4403 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4404
4405         * elmo-version.el (elmo-version): Up to 2.11.3.
4406
4407 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4408
4409         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4410         copied from localdir's one.
4411
4412         * elmo-pipe.el (elmo-folder-rename): New method, rename
4413         destination folder with leaving source folder as it is.
4414
4415 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4416
4417         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4418         replace-regexp.
4419
4420 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4421
4422         * elmo-version.el (elmo-version): Up to 2.11.2.
4423
4424 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4425
4426         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4427         shimbun-open in case of "@".
4428         (elmo-folder-open-internal): Cope with shimbun = nil case.
4429         (elmo-folder-plugged-p): Ditto.
4430         (elmo-folder-list-subfolders): Make list for "@/" group.
4431
4432 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4433
4434         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4435         mailbox (e.g. for %~/something).
4436
4437 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4438
4439         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4440         Replace nested conditional with guard clauses.
4441
4442 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4443
4444         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4445         error [wl:11327].
4446
4447         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4448         print-depth.
4449
4450 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4451
4452         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4453         Replace nested conditional with guard clauses.
4454
4455 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4456
4457         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4458         (elmo-passwd-alist-save): Ditto.
4459         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4460
4461 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4462
4463         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4464         dir-name only if it is absolute path.
4465         (TODO: distinguish +/something and +something)
4466
4467 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4468
4469         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4470         path for "+~/something".
4471
4472 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4473
4474         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4475         as non-directory, cause error before rename-file.
4476         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4477         apropriately, mimic localdir's one.
4478         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4479
4480 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4481
4482         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4483
4484 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4485
4486         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4487
4488         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4489         
4490         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4491         is included in the global-mark or not.
4492
4493 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4494
4495         * utf7.el (toplevel): Avoid error when the function
4496         find-coding-system does not exist.
4497
4498 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4499
4500         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4501         cache even if the folder is plugged.
4502         (elmo-nntp-search-primitive): Do nothing when body search is
4503         invoked (although it is not used by the change above).
4504         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4505
4506 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4507
4508         * elmo-version.el (elmo-version): Up to 2.11.1.
4509
4510 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4511
4512         * elmo-archive.el: Specify charset.
4513
4514 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4515
4516         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4517         process buffer lives or not.
4518
4519         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4520         while flushing queues (It causes infinite loop).
4521
4522 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4523
4524         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4525
4526 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4527
4528         * utf7.el (toplevel): Check the ucs features dynamically.
4529         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4530
4531         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4532         folder is creatabe or not if it already exists.
4533
4534 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4535
4536         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4537
4538         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4539
4540         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4541         (elmo-imap4-read-response): Take care of garbage response.
4542
4543 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4544
4545         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4546         just return nil instead of error.
4547
4548 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4549
4550         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4551         search-key is "body".
4552
4553 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4554
4555         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4556         of elmo-string-matched-assoc to use match-data.
4557         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4558
4559 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4560
4561         * elmo-split.el (elmo-split->): New function.
4562         (elmo-split-<): Ditto.
4563
4564 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4565
4566         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4567         workaround for invalid message-id.
4568
4569 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4570
4571         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4572         return normal pop3 session or pop3 biff session.
4573
4574 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4575
4576         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4577         info part to the cur files when the new files already have it.
4578         (Adviced by Jared Rhine <jared@wordzoo.com>)
4579
4580 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4581
4582         * elmo-split.el (elmo-split-default-action): New variable.
4583         (elmo-split-subr): Use it if all other conditions are passed.
4584         Extend `fname' and rename it as `action'. (implemented
4585         Teranishi-san's idea in [wl:10800])
4586
4587 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4588
4589         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4590         * elmo-util.el: Ditto.
4591
4592 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4593
4594         * elmo.el (elmo-message-accessible-p): Renamed from
4595         elmo-message-cached-p and rewritten.
4596
4597 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4598
4599         * elmo.el (elmo-folder-list-flagged): New generic function.
4600         (elmo-folder-list-importants): New implementation.
4601         (elmo-folder-list-answereds): Ditto.
4602         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4603         Added 'digest'.
4604         (elmo-message-cached-p): New function.
4605         (elmo-message-set-flag): Ditto (no content).
4606         (elmo-message-unset-flag): Ditto.
4607         (elmo-folder-list-messages-mark-match): Abolish.
4608
4609         * elmo-util.el (elmo-regexp-opt): New function.
4610
4611         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4612         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4613         Added 'digest'.
4614         (elmo-msgdb-list-flagged): New function.
4615
4616         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4617         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4618         Added 'digest'.
4619
4620         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4621
4622 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4623
4624         * elmo-version.el (elmo-version): Up to 2.11.0.
4625
4626 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4627
4628         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4629         `elmo-file-cache-exists-p'; use proper mark that depends on
4630         `use-cache'.
4631         (elmo-msgdb-unset-flag): Ditto.
4632         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4633
4634         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4635         with 4th argument `use-cache'.
4636
4637 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4638
4639         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4640         (elmo-folder-mark-as-important): Ditto.
4641         (elmo-folder-unmark-read): Ditto.
4642         (elmo-folder-mark-as-read): Ditto.
4643         (elmo-folder-unmark-answered): Ditto.
4644         (elmo-folder-mark-as-answered): Ditto.
4645
4646         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4647         message status.
4648         (elmo-msgdb-mark): Likewise.
4649         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4650         (elmo-msgdb-unset-flag): Likewise.
4651
4652         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4653
4654 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4655
4656         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4657         `last:' filter.
4658
4659 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4660
4661         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4662         set spool-length to 0.
4663
4664 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4665
4666         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4667         (elmo-dop-queue-flush): Fixed last change.
4668
4669 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4670
4671         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4672         if require-msgdb slot is nil.
4673         (elmo-folder-list-importants): Likewise.
4674
4675 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4676
4677         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4678         mark is changed.
4679
4680         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4681         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4682         is changed.
4683
4684 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4685
4686         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4687
4688 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4689
4690         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4691
4692         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4693
4694 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4695
4696         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4697         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4698
4699 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4700
4701         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4702         the problem reported by Sean Rima [wl-en:180].
4703
4704 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4705
4706         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4707
4708         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4709
4710         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4711
4712         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4713
4714         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4715
4716         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4717
4718         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4719
4720 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4721
4722         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4723         status number.
4724
4725 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4726
4727         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4728         (elmo-folder-mark-as-read): Follow the API change.
4729         (elmo-message-set-cached): New function.
4730
4731         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4732
4733         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4734
4735         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4736         (elmo-folder-mark-as-important): Ditto.
4737         (elmo-folder-unmark-read): Ditto.
4738         (elmo-folder-mark-as-read): Ditto.
4739         (elmo-folder-unmark-answered): Ditto.
4740         (elmo-folder-mark-as-answered): Ditto.
4741
4742         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4743         (elmo-folder-unmark-important): Ditto.
4744         (elmo-folder-mark-as-read): Ditto.
4745         (elmo-folder-unmark-read): Ditto.
4746         (elmo-folder-mark-as-answered): Ditto.
4747         (elmo-folder-unmark-answered): Ditto.
4748
4749         * elmo-mark.el (toplevel): Removed some mark method definitions.
4750
4751         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4752         (elmo-map-folder-mark-as-answered): Ditto.
4753         (elmo-folder-unmark-important): Add :before qualifier.
4754         (elmo-folder-mark-as-important): Ditto.
4755         (elmo-folder-unmark-read): Ditto.
4756         (elmo-folder-mark-as-read): Ditto.
4757         (elmo-folder-unmark-answered): Define.
4758         (elmo-folder-mark-as-answered): Ditto.
4759
4760         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4761         (elmo-map-folder-unmark-answered): Ditto.
4762
4763         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4764
4765         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4766         (elmo-folder-mark-as-important): Ditto.
4767         (elmo-folder-unmark-read): Ditto.
4768         (elmo-folder-mark-as-read): Ditto.
4769         (elmo-folder-unmark-answered): Ditto.
4770         (elmo-folder-mark-as-answered): Ditto.
4771
4772         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4773         `mark'; evaluate mark condition.
4774         (elmo-msgdb-match-condition-internal): New function.
4775         (elmo-msgdb-match-condition): Call it; changed argument.
4776
4777         * elmo.el (elmo-folder-search): Follow the API change on
4778         `elmo-msgdb-match-condition'.
4779
4780 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4781
4782         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4783         original mark is non-nil.
4784
4785 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4786
4787         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4788         (elmo-map-folder-list-answereds): New method.
4789         (elmo-folder-list-unreads): Add :around qualifier.
4790         (elmo-folder-list-importants): Ditto.
4791         (elmo-folder-list-answereds): Ditto.
4792
4793 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4794
4795         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4796
4797         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4798         method if msgdb is not required.
4799         (elmo-filter-folder-list-importants): Don't treat global-mark.
4800
4801         * elmo.el (elmo-folder-list-importants): Ditto.
4802
4803         * elmo-net.el (elmo-folder-list-importants): Ditto.
4804
4805         * elmo-map.el (elmo-folder-list-importants): Ditto.
4806
4807         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4808
4809         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4810         (elmo-imap4-folder-list-any-plugged): New function.
4811         (elmo-imap4-search-internal-primitive): Use it.
4812
4813         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4814         only when require-msgdb slot is non-nil.
4815         (elmo-folder-close): Clear target folder's msgdb.
4816
4817 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4818
4819         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4820         (elmo-pop3-msgdb-create-by-header): Ditto.
4821         (elmo-pop3-msgdb-create-message): Ditto.
4822
4823         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4824
4825         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4826
4827         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4828
4829         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4830         (elmo-folder-msgdb-create): Ditto.
4831         (elmo-nntp-folder-msgdb-create): Ditto.
4832         (elmo-nntp-msgdb-create-by-header): Ditto.
4833         (elmo-nntp-msgdb-create-message): Ditto.
4834         (elmo-folder-list-unreads): Define.
4835
4836         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4837         (elmo-folder-append-messages): Ditto.
4838         (elmo-folder-list-unreads): Define.
4839         (elmo-folder-list-importants): Ditto.
4840         (elmo-folder-list-answereds): Ditto.
4841
4842         * elmo-net.el (elmo-folder-list-unreads): Define.
4843         (elmo-folder-list-importants): Ditto.
4844         (elmo-folder-list-answereds): Ditto.
4845         (elmo-folder-list-answereds-plugged): Ditto.
4846         (elmo-folder-msgdb-create): Follow the API change.
4847         (elmo-folder-msgdb-create-unplugged): Ditto.
4848         (elmo-folder-unmark-answered): Define.
4849         (elmo-folder-mark-as-answered-unplugged): Ditto.
4850         (elmo-folder-unmark-answered-unplugged): Ditto.
4851
4852         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4853         (elmo-msgdb-unread-uncached-mark): Ditto.
4854         (elmo-msgdb-unread-cached-mark): Ditto.
4855         (elmo-msgdb-read-uncached-mark): Ditto.
4856         (elmo-msgdb-answered-cached-mark): Ditto.
4857         (elmo-msgdb-answered-uncached-mark): Ditto.
4858         (elmo-msgdb-important-mark): Ditto.
4859         (elmo-msgdb-set-mark): Rewrite.
4860         (elmo-msgdb-count-marks): Rewrite.
4861         (elmo-msgdb-mark-alist-set): Abolish.
4862         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4863         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4864
4865         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4866         (elmo-folder-close): Define.
4867         (elmo-folder-msgdb-create): Follow the API change.
4868         (elmo-folder-list-unreads): Rewrite.
4869         (elmo-folder-mark-as-important): Ditto.
4870         (elmo-folder-unmark-important): Ditto.
4871         (elmo-folder-mark-as-read): Ditto.
4872         (elmo-folder-unmark-read): Ditto.
4873         (elmo-folder-mark-as-answered): Define.
4874         (elmo-folder-unmark-answered): Ditto.
4875
4876         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4877         (elmo-folder-append-messages): Ditto.
4878
4879         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4880
4881         * elmo-map.el (elmo-folder-list-unreads): Ditto.
4882         (elmo-folder-list-importants): Ditto.
4883
4884         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4885         (elmo-folder-append-messages): Ditto.
4886
4887         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4888         change.
4889         (elmo-folder-msgdb-create-plugged): Ditto.
4890         (elmo-folder-append-messages): Ditto.
4891         (elmo-folder-list-answereds-plugged): Define.
4892         (elmo-imap4-search-internal-primitive): Add `mark' processing.
4893         (elmo-folder-unmark-answered-plugged): Define.
4894         (elmo-folder-mark-as-answered-plugged): Ditto.
4895         (elmo-folder-search-requires-msgdb-p): Ditto.
4896
4897         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
4898         (elmo-folder-initialize): Set it.
4899         (elmo-folder-msgdb): Define.
4900         (elmo-folder-check): Call elmo-folder-synchronize.
4901         (elmo-folder-close): Define.
4902         (elmo-folder-commit): Ditto.
4903         (elmo-folder-msgdb-create): Rewrite.
4904         (elmo-folder-list-unreads): Ditto.
4905         (elmo-folder-list-importants): Ditto.
4906         (elmo-folder-mark-as-read): Ditto.
4907         (elmo-folder-unmark-read): Ditto.
4908         (elmo-folder-mark-as-important): Ditto.
4909         (elmo-folder-unmark-important): Ditto.
4910         (elmo-folder-mark-as-answered): Define.
4911         (elmo-folder-unmark-answered): Ditto.
4912
4913         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4914         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4915         (elmo-dop-queue-method-name-alist): Likewise.
4916         (elmo-folder-mark-as-answered-dop): New inline function.
4917         (elmo-folder-unmark-answered-dop): Ditto.
4918         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4919
4920         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4921         (elmo-folder-msgdb-create): Ditto.
4922         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4923         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4924         (elmo-archive-parse-mmdf): Ditto.
4925
4926         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4927         (elmo-folder-list-unreads-internal): Ditto.
4928
4929         * elmo.el (elmo-folder-msgdb): Define as generic function.
4930         (elmo-folder-list-messages): Added argument `in-msgdb'.
4931         (elmo-folder-list-unreads): Define as generic function.
4932         (elmo-folder-list-importants): Ditto.
4933         (elmo-folder-list-answereds): Ditto.
4934         (elmo-folder-list-messages-with-global-mark): New function.
4935         (elmo-folder-msgdb-create): Removed mark arguments.
4936         (elmo-folder-unmark-answered): New generic function.
4937         (elmo-folder-mark-as-answered): Ditto.
4938         (elmo-folder-append-messages): Removed argunment `unread-marks'
4939         (elmo-folder-list-unreads-internal): Abolish.
4940         (elmo-folder-list-importants-internal): Ditto.
4941         (elmo-folder-search-requires-msgdb-p): New generic function.
4942         (elmo-folder-search-requires-msgdb-p-internal): New function.
4943         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4944         elmo-msgdb-load.
4945         (elmo-folder-search-fast): Added key 'mark'.
4946         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4947         instead of unread-marks argument.
4948         (elmo-folder-move-messages): Removed argunment `unread-marks'
4949         (elmo-folder-unmark-important): Define.
4950         (elmo-folder-mark-as-important): Ditto.
4951         (elmo-folder-unmark-read): Ditto.
4952         (elmo-folder-mark-as-read): Ditto.
4953         (elmo-folder-unmark-answered): Ditto.
4954         (elmo-folder-mark-as-answered): Ditto.
4955         (elmo-folder-replace-marks): Abolish.
4956         (elmo-generic-folder-append-msgdb): Append msgdb before checking
4957         duplicates.
4958         (elmo-folder-synchronize): Removed mark arguments;
4959         return crosspost only number.
4960
4961 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4962
4963         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4964         Remove redundunt connectivity check.
4965
4966 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4967
4968         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4969         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4970
4971 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
4972
4973         * pldap.el (ldap-decode-string): Return string as-is if
4974         `ldap-coding-system' is nil.
4975         (ldap-encode-string): Ditto.
4976         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4977         (ldap-default-host): Fixed docstring.
4978
4979 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
4980
4981         * elmo-util.el (elmo-warning): Define as a macro which uses
4982         `display-warning' if it is defined as a function.
4983
4984         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4985         (elmo-split-equal): Use it.
4986         (elmo-split-match): Ditto.
4987         (elmo-split-message-entity): New buffer-local variable.
4988         (elmo-split-subr): Set it.
4989
4990         * elmo-version.el (elmo-version): Up to 2.9.15.
4991
4992 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
4993
4994         * elmo-imap4.el (elmo-network-initialize-session):
4995         Check capability after starttls.
4996
4997 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
4998
4999         * elmo-util.el (elmo-list-delete): Added optional argument
5000         DELETE-FUNCTION.
5001
5002         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
5003
5004         * elmo-util.el (elmo-warning): Ignore errors while recenter.
5005
5006         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
5007
5008         * elmo-imap4.el (elmo-folder-initialize): Don't use
5009         elmo-imap4-default-mailbox.
5010
5011 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5012
5013         * elmo-split.el (toplevel): Use `product-provide'.
5014         (elmo-split): Checkdoc.
5015
5016 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
5017
5018         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
5019         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
5020         the function `elmo-imap4-debug-1'.
5021
5022 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5023
5024         * elmo-split.el (elmo-split): Moved to run hooks and to show
5025         message from elmo-split-subr.
5026         (elmo-split-subr): Follow the change above.
5027
5028         * elmo-split.el (elmo-split-subr): New function (renamed from
5029         elmo-split-subr).
5030         (elmo-split): Changed to call elmo-split-subr by element of
5031         elmo-split-folder.
5032         (elmo-split-folder): Changed customization type to choice.
5033
5034 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5035
5036         * elmo-split.el (elmo-split-and): Fixed condition.
5037
5038 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5039
5040         * elmo-split.el: New file.
5041         (elmo-split): Fixed logic.
5042         Display "Test:" instead of "Folder:" when reharsal.
5043
5044         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
5045         explicitly.
5046
5047         * elmo-version.el (elmo-version): Up to 2.9.14.
5048
5049         * elmo-util.el (elmo-expand-newtext): New function (renamed from
5050         wl-expand-newtext).
5051
5052 2002-06-10  Kenichi Sato <ksato@sonycom.com>
5053
5054         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
5055         message with no message-id field.
5056
5057 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
5058
5059         * elmo-version.el (elmo-version): Up to 2.9.13.
5060
5061         * elmo-dop.el (elmo-folder-status-dop): Fix.
5062
5063 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
5064
5065         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
5066
5067         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
5068         changing default value of default-mime-charset.
5069         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
5070
5071         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
5072
5073         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
5074         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
5075         instead of elmo-dop-queue-method-name-alist to check merging queue.
5076         (elmo-folder-delete-messages-dop): Delete from queue if negative
5077         message number.
5078         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
5079         file is already removed.
5080
5081 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
5082
5083         * elmo-vars.el: Bind colon keywords for old Emacsen.
5084
5085 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5086
5087         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
5088         against non-exsisting charset.
5089
5090 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
5091
5092         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
5093         Use eword-decode-and-unfold-unstructured-field-body.
5094
5095         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
5096         (elmo-msgdb-create-overview-from-buffer): Use document charset if
5097         exists to decode raw subject string.
5098         (toplevel): Require 'mime.
5099
5100         * elmo-version.el (elmo-version): Up to 2.9.12.
5101
5102 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
5103
5104         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
5105         (elmo-msgdb-set-mark): Ditto.
5106
5107         * elmo-version.el (elmo-version): Up to 2.9.11.
5108
5109 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
5110
5111         * elmo-util.el (elmo-delete-match-files): New function.
5112
5113         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
5114         instead of elmo-delete-directory.
5115
5116         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
5117         elmo-hash-minimun-size as 63.
5118
5119         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
5120         elmo-diff-unread is nil.
5121
5122         * elmo-imap4.el (elmo-folder-open): Fix.
5123
5124         * elmo.el (elmo-message-mark): Rewrite.
5125         (elmo-message-field): Ditto.
5126         (elmo-message-set-mark): Ditto.
5127         (elmo-folder-replace-marks): New function.
5128         (elmo-generic-folder-append-msgdb): Removed third argument for
5129         elmo-msgdb-append.
5130         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
5131         (elmo-msgdb-load): New implementation.
5132
5133         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
5134
5135         * elmo-util.el (elmo-list-insert): New implementation.
5136
5137         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
5138         argument for elmo-msgdb-append.
5139         
5140
5141         * elmo-msgdb.el (elmo-load-msgdb): New function.
5142         (elmo-make-msgdb): Ditto.
5143         (elmo-msgdb-get-index): New inline function.
5144         (elmo-msgdb-set-index): Ditto.
5145         (elmo-msgdb-get-entity-hashtb): Ditto.
5146         (elmo-msgdb-get-mark-hashtb): Ditto.
5147         (elmo-msgdb-get-mark): Ditto.
5148         (elmo-msgdb-set-mark): Ditto.
5149         (elmo-msgdb-count-marks): Ditto.
5150         (elmo-msgdb-get-number): Ditto.
5151         (elmo-msgdb-get-field): Ditto.
5152         (elmo-msgdb-seen-list): Ditto.
5153         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
5154         (elmo-msgdb-delete-msgs): Follow the changes above.
5155         (elmo-msgdb-overview-get-entity): Ditto.
5156         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
5157         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
5158         and rewritten.
5159         (elmo-msgdb-make-index): Likewise.
5160         (elmo-msgdb-append): Removed third argument.
5161         (elmo-msgdb-clear): Clear index as nil.
5162         (elmo-folder-set-info-hashtb): Removed.
5163         (elmo-folder-set-info-max-by-numdb): Ditto.
5164         (elmo-folder-info-make-hashtb): Ditto.
5165
5166         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
5167
5168         * elmo-map.el (elmo-folder-pack-number): Ditto.
5169
5170 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
5171
5172         * elmo-version.el (elmo-version): Up to 2.9.10.
5173
5174         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
5175
5176         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
5177
5178 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
5179
5180         * elmo-utils.el (elmo-make-directory): Add option.
5181         Default file mode is 700.
5182
5183 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5184
5185         * elmo-shimbun.el (elmo-folder-local-p): Defined.
5186
5187 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
5188
5189         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
5190         mime-charset.
5191
5192         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
5193         and "smaller".
5194
5195 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5196
5197         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5198         (elmo-shimbun-folder-entity-hash): New function.
5199         (elmo-shimbun-folder-shimbun-header): Ditto.
5200         (elmo-shimbun-entity-to-header): Ditto.
5201         (elmo-shimbun-msgdb-to-headers): Removed.
5202         (elmo-shimbun-folder-setup): Ditto.
5203         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5204         for hash key.
5205         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5206         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5207         Removed useless local bind.
5208         (elmo-folder-open-internal): Don't call
5209         `elmo-shimbun-folder-setup'.
5210         (elmo-folder-close-internal): Clear entity-hash slot.
5211         (elmo-folder-clear): Ditto.
5212         (elmo-shimbun-msgdb-create-entity): Use
5213         `elmo-shimbun-folder-shimbun-header'.
5214         (elmo-map-message-fetch): Ditto.
5215         (elmo-shimbun-update-overview): Use overview entity instead of
5216         shimbun header to lookup id by references.
5217         (elmo-map-folder-list-message-locations): Use not only headers but
5218         also overviews to list locations.
5219
5220 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5221
5222         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5223         msgdb path.
5224
5225         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5226
5227 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5228
5229         * elmo-util.el (elmo-read-search-condition-internal): Give default
5230         value for date.
5231
5232 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5233
5234         * elmo-util.el (elmo-condition-parse-search-value): Accept
5235         YYYY-MM-DD format to search.
5236         * elmo-date.el (elmo-date-get-datevec): Likewise.
5237
5238 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5239
5240         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5241         debugging code.
5242
5243 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5244
5245         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5246         from t.
5247
5248         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5249
5250         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5251         case from `elmo-folder-exists-p'.
5252         (elmo-folder-exists-p): Removed.
5253         (elmo-folder-creatable-p) Ditto.
5254
5255         * elmo-net.el (elmo-folder-create): Defined.
5256         (elmo-folder-create-unplugged): New function.
5257         (elmo-folder-exists-p): Changed default value to nil from t.
5258
5259         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5260         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5261
5262         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5263         `elmo-create-folder-dop' and append queue
5264         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5265         (elmo-folder-create-dop-delayed): New function.
5266
5267         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5268
5269         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5270
5271         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5272         (elmo-folder-writable-p) : Ditto.
5273
5274         * elmo-version.el (elmo-version): Up to 2.9.9.
5275
5276 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5277
5278         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5279         `elmo-message-use-cache-p' returns nil.
5280         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5281         (ignore cache file and refer the substance in local folders)
5282
5283 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5284
5285         * elmo-version.el (elmo-version): Up to 2.9.8.
5286
5287 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5288
5289         * elmo-version.el (elmo-version): Up to 2.9.7.
5290
5291         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5292
5293 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5294
5295         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5296
5297 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5298
5299         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5300         from --early.
5301         (elmo-map-folder-list-message-locations): Reverse location list.
5302
5303 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5304
5305         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5306
5307 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5308
5309         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5310         as a key.
5311         (elmo-nntp-folder-list-subfolders): Follow the change above.
5312
5313 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5314
5315         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5316         name if authentication type is specified.
5317
5318 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5319
5320         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5321         variable.
5322         (elmo-default-nntp-stream-type): Ditto.
5323         (elmo-default-pop3-stream-type): Ditto.
5324
5325 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5326
5327         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5328
5329 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5330
5331         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5332         elmo-vars.el.
5333         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5334
5335         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5336         (elmo-maildir-folder-path): Ditto.
5337         (elmo-maildir-list): Ditto (abolished).
5338
5339 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5340
5341         * elmo-version.el (elmo-version): Up to 2.9.6.
5342
5343 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5344
5345         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5346         (elmo-maildir-folder-path): Ditto.
5347         (elmo-msgdb-directory): Ditto.
5348         (elmo-passwd-life-time): Ditto.
5349         (elmo-msgdb-extra-fields): Ditto.
5350         (elmo-enable-disconnected-operation): Ditto.
5351
5352 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5353
5354         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5355         other choices.
5356         (elmo-pop3-default-authenticate-type): Ditto.
5357
5358 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5359
5360         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5361         choices for custom.
5362         (elmo-pop3-default-authenticate-type): Ditto.
5363
5364 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5365
5366         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5367         mailbox to new-folder.
5368
5369 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5370
5371         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5372         less than new, set new as unread.
5373
5374         * elmo-util.el (elmo-string): Don't put text-property if nil.
5375
5376 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5377
5378         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5379         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5380
5381 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5382
5383         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5384         is nil on `completing-read'.
5385
5386 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5387
5388         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5389         for namespace part.
5390         (elmo-imap4-parse-namespace-subr): Ditto.
5391         (elmo-folder-list-subfolders): Append a delimiter when the specified
5392         folder path is a root with namespace and does not end with delimiter.
5393
5394 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5395
5396         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5397         was used.
5398
5399 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5400
5401         * elmo-util.el (elmo-save-buffer): The first argument of message
5402         is a format control string.
5403
5404 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5405
5406         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5407         `elmo-folder-diff').
5408         (elmo-diff-unread): Likewise.
5409
5410 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5411
5412         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5413         is t on `completing-read'.
5414
5415 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5416
5417         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5418         method of target folder with self mark-alist if MARK-ALIST is nil.
5419
5420 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5421
5422         * elmo-version.el (elmo-version): Up to 2.9.5.
5423
5424 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5425
5426         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5427         (elmo-dop-merge-funcs): Remove.
5428
5429 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5430
5431         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5432         Return t if PATH is directory, too.
5433         Use `dolist' instead of while loop.
5434
5435 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5436
5437         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5438         is deleted.
5439
5440 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5441
5442         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5443         return value to t.
5444         (elmo-folder-list-messages-unplugged): Return t if
5445         elmo-enable-disconnected-operation is nil.
5446
5447         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5448         `elmo-folder-list-messages-internal'.
5449
5450 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5451
5452         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5453         Change to looking-at `[23][0-9]+'.
5454         (elmo-network-initialize-session): Use 'error-msg'
5455         * elmo-net.el (elmo-network-open-session): Set unplugged
5456         if elmo-network-initialize-session returns 'elmo-open-err.
5457
5458 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5459
5460         * elmo-version.el (elmo-version): Up to 2.9.4.
5461
5462 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5463
5464         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5465         `elmo-folder-list-messages-internal'.
5466
5467 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5468
5469         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5470         (elmo-message-match-condition): New method.
5471         (elmo-folder-search-fast): New inline function.
5472         (elmo-msgdb-search): Removed.
5473
5474         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5475         target folder if it is unplugged.
5476         (elmo-folder-list-messages-internal): Return t if target folder is
5477         unplugged and itself is persistent; In this case, use list be
5478         searched already.
5479
5480         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5481         (elmo-msgdb-search-internal-primitive): Ditto.
5482         (elmo-msgdb-match-condition): New function.
5483         (elmo-msgdb-match-condition-primitive): Ditto.
5484
5485         * elmo-util.el (elmo-filter-condition-p): New macro.
5486
5487         * elmo-cache.el (elmo-folder-search): Removed.
5488
5489         * elmo-localdir.el (elmo-folder-search): Ditto.
5490
5491         * elmo-maildir.el (elmo-folder-search): Ditto.
5492
5493         * elmo-mark.el (elmo-folder-search): Ditto.
5494
5495         * elmo-nmz.el (elmo-folder-search): Ditto.
5496
5497         * elmo-sendlog.el (elmo-folder-search): Ditto.
5498
5499         * elmo-shimbun.el (elmo-folder-search): Ditto.
5500
5501         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5502         if folder is unplugged.
5503
5504         * elmo-nntp.el (elmo-folder-search): Likewise.
5505         (elmo-nntp-search-internal): New function.
5506
5507         * elmo-version.el (elmo-version): Up to 2.9.3.
5508
5509 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5510
5511         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5512
5513 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5514
5515         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5516
5517 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5518
5519         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5520
5521 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5522
5523         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5524         (elmo-map-folder-list-message-locations): Do drive letter conversion
5525         on Windows environment.
5526         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5527         (elmo-map-message-fetch): Ditto.
5528
5529 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5530
5531         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5532         (elmo-network-initialize-session): Ditto.
5533
5534 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5535
5536         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5537
5538         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5539
5540         * elmo-util.el (elmo-progress-clear): Ditto.
5541
5542         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5543         `DD-Mon-YYYY' type date.
5544
5545 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5546
5547         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5548         `elmo-date-make-sortable-string' instead of
5549         `timezone-make-date-sortable'.
5550
5551         * elmo-date.el (elmo-date-make-sortable-string): Use
5552         `timezone-make-time-string'.
5553
5554 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5555
5556         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5557
5558         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5559         `since'; Fix timezone.
5560
5561         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5562
5563         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5564
5565 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5566
5567         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5568
5569 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5570
5571         * elmo.el (elmo-generic-folder-append-messages): Make
5572         fetch-strategy with `use-cache' as 'maybe. Check return value of
5573         `elmo-message-fetch'.
5574         (elmo-message-fetch): Return return value of
5575         `elmo-message-fetch-with-cache-process'.
5576         (elmo-message-fetch-with-cache-process): Return non-nil if
5577         fetching was succeed. Load cache when fetching was failed and
5578         fetch-strategy-use-cache is 'maybe.
5579
5580         * elmo-util.el (elmo-file-cache-load): New function.
5581
5582         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5583         defun.
5584
5585         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5586         non-nil if fetching was succeed.
5587
5588         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5589
5590         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5591
5592         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5593         (elmo-message-fetch-with-cache-process): Likwise.
5594
5595         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5596
5597         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5598
5599         * elmo-version.el (elmo-version): Up to 2.9.2.
5600
5601 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5602
5603         * elmo.el (elmo-folder-delete): Delete msgdb path.
5604
5605         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5606
5607         * elmo-maildir.el (elmo-folder-delete): Ditto.
5608
5609         * elmo-localdir.el (elmo-folder-delete): Ditto.
5610
5611         * elmo-imap4.el (elmo-folder-delete): Ditto.
5612
5613 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5614
5615         * elmo.el (luna-define-class): Added `biff' slot.
5616
5617         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5618         (elmo-pop3-debug-inhibit-logging): Abolished.
5619         (elmo-network-close-session): Eliminated needless let.
5620         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5621         (elmo-pop3-send-command): Added `no-log' argument.
5622         (elmo-pop3-process-filter): Use `with-current-buffer'.
5623         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5624         if login failure.
5625         (elmo-pop3-auth-apop): Likewise.
5626         (elmo-network-authenticate-session): Likewise.
5627
5628         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5629         if biff folder.
5630
5631         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5632         string to determine protocol.
5633         (elmo-network-session-name-prefix): Abolished.
5634         (elmo-network-session-cache-key): Follow the change above.
5635         (elmo-network-open-session): Ditto.
5636
5637         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5638         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5639
5640         * elmo-version.el (elmo-version): Up to 2.9.1.
5641
5642         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5643         unmatch condition checking.
5644
5645         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5646         condition.
5647
5648 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5649
5650         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5651
5652 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5653
5654         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5655         test for while loop to execute at least one SEARCH command.
5656
5657 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5658
5659         * elmo-version.el (elmo-version): Up to 2.9.0.
5660
5661 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5662
5663         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5664         (elmo-archive-folder-path): Define.
5665         (elmo-folder-initialize): Setup `dir-name' slot.
5666         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5667         Use `dir-name' as prefix of each subfolders.
5668         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5669
5670 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5671
5672         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5673         (elmo-pipe-folder-list-target-messages): New internal function.
5674         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5675         `killed-list'.
5676         (elmo-pipe-folder-copied-list-load): New function.
5677         (elmo-pipe-folder-copied-list-save): Ditto.
5678         (elmo-folder-open-internal): Follow the change above.
5679         (elmo-folder-status): Fixed for copy.
5680
5681 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5682
5683         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5684
5685 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5686
5687         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5688         elmo-copy-file instead of elmo-add-name-to-file.
5689
5690         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5691
5692         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5693         "file://..." index.
5694
5695         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5696         of accept-process-output as 1.
5697         (elmo-pop3-read-contents): Ditto.
5698         (elmo-pop3-read-body): Ditto.
5699
5700 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5701
5702         * elmo-version.el (product-version-as-string): Remove define.
5703
5704 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5705
5706         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5707         (elmo-imap4-copy-messages): Chop number set using
5708         `elmo-imap4-number-set-chop-length'.
5709         (elmo-imap4-set-flag): Ditto.
5710         (elmo-imap4-search-internal-primitive): Ditto.
5711
5712 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5713
5714         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5715         `elmo-folder-make-temp-dir'
5716
5717         * elmo-vars.el (elmo-cache-directory): New variable.
5718         (elmo-cache-dir): Abolished.
5719         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5720
5721         * elmo-version.el (elmo-version): Up to 2.7.7.
5722
5723 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5724
5725         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5726         defcustom; Set default value as t.
5727
5728 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5729
5730         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5731         (ldap-search-program-arguments): Changed default value.
5732         (ldap-search-basic): Accept exit status 4.
5733         (ldap/field-body): Parse options.
5734         (ldap/collect-field): Ditto.
5735         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5736
5737         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5738         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5739         (elmo-imap4-accept-ok): Ditto.
5740         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5741         'notify-bye, only BYE error is reported.
5742         (elmo-folder-exists-p-plugged): Set no-error argument of
5743         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5744
5745         * elmo.el (elmo-imap4-bye-error): Changed message.
5746
5747         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5748         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5749         queues (It causes infinite loop).
5750
5751 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5752
5753         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5754         (RECENT UNSEEN MESSAGES) extension.
5755
5756 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5757
5758         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5759         Check number of overview fields.
5760
5761 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5762
5763         * elmo.el (elmo-folder-confirm-appends): Changed message.
5764         (elmo-folder-confirm-appends): Ditto.
5765
5766         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5767         `with-temp-buffer'.
5768         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5769
5770 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5771
5772         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5773         of elmo-folder-update-threshold is nil, which can be set by
5774         wl-summary-update-confirm-threshold.
5775
5776 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5777
5778         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5779         (elmo-nmz-index-alias-alist): Ditto.
5780         (elmo-map-folder-list-message-locations): Follow the change above.
5781
5782 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5783
5784         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5785
5786         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5787
5788         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5789
5790         * elmo-util.el (elmo-read): Ditto.
5791         (elmo-display-error): Ditto.
5792
5793         * elmo-vars.el (elmo-date-match): Ditto.
5794
5795         * pldap.el (ldap-coding-system): Ditto.
5796
5797         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5798         `elmo-inhibit-number-mapping' as nil.
5799
5800 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5801
5802         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5803         space delimiter for list response.
5804
5805 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5806
5807         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5808
5809 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5810
5811         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5812         (elmo-map-message-fetch): Fix.
5813         * elmo-map.el (elmo-folder-status): Fix for killed.
5814
5815 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5816
5817         * elmo-sendlog.el: New file.
5818         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5819
5820 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5821
5822         * acap.el (acap-logging-out): New buffer local variable.
5823         (acap-close): Set it.
5824         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5825         an error.
5826
5827 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5828
5829         * acap.el (acap-response-bye-p): New function.
5830         (acap-response-bye-message): Ditto.
5831         (acap-wait-for-response): If bye response is received, cause an error.
5832         (acap-parse-response): Make bye response when 'Bye' is received.
5833
5834 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5835
5836         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5837
5838 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5839
5840         * elmo-util.el (elmo-copy-file): Added argument
5841         `ok-if-already-exists'.
5842         (elmo-copy-file): Fixed typo.
5843
5844 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5845
5846         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5847
5848 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5849
5850         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5851
5852 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5853
5854         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5855         to killed-list.
5856
5857 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5858
5859         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5860         (elmo-folder-initialize): Fix for `copy'.
5861         (elmo-pipe-drain): Ditto.
5862         (elmo-folder-open-internal): Ditto.
5863         (elmo-folder-newsgroups): Fix.
5864
5865 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5866
5867         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5868         for each message.
5869
5870         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5871         recent value is returned from imap folder.
5872
5873         * elmo.el (elmo-folder-newsgroups): New generic function.
5874
5875         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5876         (elmo-folder-initialize): Set it.
5877         (elmo-folder-expand-msgdb-path): Use it.
5878         (elmo-folder-newsgroups): Define.
5879
5880         * elmo-filter.el (elmo-folder-newsgroups): Define.
5881
5882         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5883
5884         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5885
5886         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5887
5888 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5889
5890         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
5891         user option.
5892         (elmo-shimbun-header-extra-field): New inline function.
5893         (elmo-shimbun-header-set-extra-field): Ditto.
5894         (elmo-shimbun-folder-header-hash-setup): Ditto.
5895         (elmo-shimbun-update-overview): Ditto.
5896         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
5897         (elmo-shimbun-folder-setup): Use
5898         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
5899         (elmo-shimbun-get-headers): Ditto.
5900         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
5901         Insert `X-Shimbun-Id:' header if extra field is set.
5902         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
5903         field's value instead of `shimbun-header-id'.
5904
5905         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
5906         inline function.
5907         (elmo-msgdb-overview-entity-set-date): Ditto.
5908         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
5909
5910 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
5911
5912         * mmimap.el (mmimap-entity-section): Changed body node number from
5913         "0" to "1".
5914
5915 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5916
5917         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5918         `elmo-folder-delete-messages'.
5919
5920         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5921         (elmo-folder-initialize): Changed to expand alias into index path.
5922
5923         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5924         `elmo-mime-insert-header-from-buffer' with 6th arg
5925         `sorted-fields'.
5926
5927 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5928
5929         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5930
5931         * elmo.el (elmo-diff-new): New inline function.
5932         (elmo-diff-unread): Ditto.
5933         (elmo-diff-all): Ditto.
5934
5935         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5936         value from responseb.
5937         (elmo-imap4-folder-diff-plugged): Ditto.
5938         (elmo-imap4-server-diff-async): Added recent argument.
5939         (elmo-server-diff-async): Ditto.
5940         (elmo-imap4-folder-diff-plugged): Ditto.
5941
5942         * elmo-version.el (elmo-version): Up to 2.7.6.
5943
5944 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5945
5946         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5947         in quoted-stirng.
5948
5949 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
5950
5951         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5952
5953         * elmo-imap4.el (elmo-folder-initialize): Ditto.
5954
5955         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5956
5957         * elmo-multi.el (elmo-folder-initialize): Ditto.
5958
5959         * elmo-util.el (elmo-parse-token): New function.
5960         (elmo-parse-prefixed-element): Ditto.
5961
5962 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
5963
5964         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5965         delete process.
5966         (elmo-imap4-accept-ok): Ditto.
5967
5968 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5969
5970         * mmimap.el (mime-imap-entity-header-string): Don't check first
5971         element of node-id is `0' (Follow last change).
5972
5973 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5974
5975         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5976         assigned irregular node-id to nested multipart section.
5977         (initialize-instance): Followed above change.
5978
5979 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5980
5981         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5982         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5983         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5984         `elmo-shimbun-get-headers');
5985         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5986         visible article on summary exists in headers).
5987         (elmo-map-message-fetch): Cause an error when folder is unplugged.
5988
5989 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5990
5991         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5992         definition.
5993
5994 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
5995
5996         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5997
5998 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5999
6000         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
6001         header separator into loop condition.
6002
6003 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6004
6005         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
6006         Return duplicate folder if it has subfolder.
6007
6008 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6009
6010         * elmo.el (elmo-make-folder): Add folder name error check.
6011
6012         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
6013         (elmo-nntp-encode-group-string): New inline function.
6014         (elmo-nntp-decode-group-string): Ditto.
6015         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
6016         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
6017         Use `not' instead of `null';
6018         Use elmo-nntp-decode-group-string.
6019
6020         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
6021
6022         * elmo-version.el (elmo-version): Up to 2.7.5.
6023
6024 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6025
6026         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
6027         Hide progress gauge if `elmo-folder-move-messages' exits
6028         nonlocally.
6029
6030 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6031
6032         * elmo-imap4.el (elmo-folder-initialize): Use
6033         `elmo-imap4-encode-folder-string' for folder name.
6034
6035 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6036
6037         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
6038         `done'.
6039
6040 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6041
6042         * elmo-util.el (elmo-progress-counter-alist): New internal
6043         variable.
6044         (elmo-progress-counter-value): New macro.
6045         (elmo-progress-counter-all-value): Ditto.
6046         (elmo-progress-counter-format): Ditto.
6047         (elmo-progress-counter-set-value): Ditto.
6048         (elmo-progress-set): New function.
6049         (elmo-progress-clear): Ditto.
6050         (elmo-progress-notify): Ditto.
6051
6052         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
6053         counter.
6054
6055         * elmo.el (elmo-generic-folder-append-messages): Call
6056         `elmo-progress-notify'.
6057         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
6058
6059         * elmo-archive.el (elmo-folder-append-messages): Call
6060         `elmo-progress-notify'.
6061
6062         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
6063
6064         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
6065
6066         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
6067
6068 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6069
6070         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
6071         'Create'.
6072         (elmo-message-encache-dop): Added argument `read'.
6073
6074         * elmo-shimbun.el (elmo-message-encache): Ditto.
6075
6076         * elmo-net.el (elmo-message-encache): Ditto.
6077
6078         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
6079         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
6080         elmo-imap4-seen-messages.
6081         (elmo-folder-msgdb-create-plugged): Initialize
6082         elmo-imap4-seen-messages;
6083         Set seen mark on elmo-imap4-seen-messages.
6084
6085         * elmo-pipe.el (elmo-folder-message-file-p): Define.
6086
6087         * elmo.el (elmo-generic-folder-append-messages): Check return value of
6088         elmo-folder-append-buffer.
6089         (elmo-folder-encache): Added optional argument `read'.
6090         (elmo-message-encache): Ditto.
6091
6092         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
6093
6094         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
6095
6096         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
6097         if append buffer content succeds.
6098
6099 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6100
6101         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
6102         elmo-display-progress.
6103
6104         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
6105         Set 4th argument of mime-display-message.
6106         (elmo-mime-display-as-is): Ditto.
6107
6108 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
6109
6110         * elmo-nmz.el (toplevel): Require 'mime-edit.
6111         (elmo-nmz-content-type-alist): Abolished.
6112         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
6113         content is not a message.
6114         (elmo-map-message-fetch): Changed behavior exept for message content;
6115         Detect mime-charset automatically, Use `mime-find-file-type' to detect
6116         content-type, Add From: and Subject: field.
6117
6118 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6119
6120         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
6121         (elmo-map-message-fetch): Add `Content-Type' field if contents is
6122         not a message.
6123
6124 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6125
6126         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
6127         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
6128
6129         * elmo-archive.el (elmo-folder-writable-p): Defined.
6130
6131         * elmo-cache.el (elmo-folder-writable-p): Ditto.
6132
6133         * elmo-filter.el (elmo-folder-writable-p): Ditto.
6134
6135         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
6136
6137         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
6138
6139         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
6140
6141         * elmo-mark.el (elmo-folder-writable-p): Ditto.
6142
6143         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
6144
6145         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
6146
6147 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
6148
6149         * elmo-util.el (elmo-address-quote-specials): New function;
6150         Renamed from `wl-address-quote-specials'.
6151
6152 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6153
6154         * elmo-version.el (elmo-version): Up to 2.7.4.
6155
6156 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
6157
6158         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
6159
6160 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6161
6162         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
6163         both compile-time and run-time to avoid byte-compile warning.
6164
6165 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
6166
6167         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
6168
6169 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6170
6171         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
6172         option.
6173         (elmo-mime-display-as-is-internal): Use it.
6174
6175         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
6176         if `read-passwd' is not defined.
6177
6178 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6179
6180         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
6181         by original number.
6182         (elmo-folder-status): Call `elmo-folder-open-internal';
6183         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
6184         (elmo-folder-close-internal): Set location-alist as nil.
6185         (elmo-folder-clear): Define.
6186         (elmo-folder-check): Don't set location-alist as nil.
6187
6188         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
6189
6190 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
6191
6192         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
6193         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
6194
6195         * mmimap.el (mime-imap-entity::requested): New slot.
6196         (mime-imap-location-fetch-entity-p): New generic function.
6197         (mime-decode-parameters): Define using `defun-maybe'.
6198         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6199         content-type structure.
6200         (mime-entity-body): Return empty body if
6201         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6202
6203         * elmo.el (elmo-message-displaying): New variable.
6204
6205         * elmo-mime.el (elmo-mime-message-display): Bind
6206         elmo-message-displaying as t.
6207
6208         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6209
6210 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6211
6212         * acap.el (acap-open): erase buffer before starting network process.
6213         (acap-store): Rewrite.
6214
6215 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6216
6217         * elmo-imap4.el (elmo-imap4-default-mailbox,
6218         elmo-imap4-default-server
6219         elmo-imap4-default-authenticate-type,
6220         elmo-imap4-default-user,
6221         elmo-imap4-default-port,
6222         elmo-imap4-default-stream-type,
6223         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6224
6225         * elmo-pop3.el (elmo-pop3-default-user,
6226         elmo-pop3-default-server,
6227         elmo-pop3-default-authenticate-type,
6228         elmo-pop3-default-port,
6229         elmo-pop3-default-stream-type,
6230         elmo-pop3-stream-type-alist): Ditto.
6231
6232         * elmo-nntp.el (elmo-nntp-default-server,
6233         elmo-nntp-default-user,
6234         elmo-nntp-default-port,
6235         elmo-nntp-default-stream-type,
6236         elmo-nntp-stream-type-alist): Ditto.
6237
6238         * elmo-vars.el: Follow changes above.
6239         (elmo-setting): New custom group; added 'elmo-setting group to
6240         above variables.
6241
6242         * elmo-version.el (elmo-version): Up to 2.7.3.
6243
6244         * acap.el (acap-parse-response): Don't delete process when BYE
6245         response (It causes hang-up on slow network environment).
6246         (toplevel): Added comment.
6247
6248 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6249
6250         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6251
6252         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6253         parsing NIL.
6254         (acap-parse-return-metadata): Ditto.
6255
6256         * slp.el: New file.
6257         (toplevel): Fixed typo.
6258
6259         * acap.el: New file.
6260         (acap-network-stream-open): Show "Connecting..." message.
6261         (acap-parse-response): Fixed problem for BYE untagged response.
6262         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6263         (toplevel): Added tiny comments.
6264
6265 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6266
6267         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6268         space delimiter for uidl response.
6269
6270 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6271
6272         * elmo-vars.el (elmo-use-semi): Eliminated.
6273
6274         * elmo-util.el (elmo-string-assoc-all): New function.
6275
6276 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6277
6278         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6279         property 'mime-preview-situation for `mime-preview-quit'.
6280
6281 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6282
6283         * elmo.el (elmo-message-fetch-with-cache-process): Call
6284         elmo-message-fetch-internal instead of causing an error when fetch
6285         strategy is 'entire but only 'section cache is available.
6286
6287 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6288
6289         * elmo-version.el (elmo-version): Up to 2.7.2.
6290
6291         * elmo.el (elmo-generic-folder-append-messages): Make
6292         fetch-strategy with `use-cache'.
6293
6294         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6295         (elmo-dop-queue-method-name): New macro.
6296
6297 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6298
6299         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6300         unbalanced parenthesis.
6301
6302 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6303
6304         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6305
6306 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6307
6308         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6309         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6310
6311 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6312
6313         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6314         local variables.
6315
6316 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6317
6318         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6319         (elmo-message-use-cache-p): Define.
6320         (elmo-folder-msgdb-create): Treat cache.
6321
6322 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6323
6324         * elmo-nntp.el (elmo-network-initialize-session): Call
6325         `elmo-nntp-send-mode-reader'.
6326         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6327
6328 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6329
6330         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6331         alist.
6332         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6333         assoc.
6334
6335         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6336         for `elmo-plugged-p'.
6337         (elmo-open-network-stream): Fixed stream-type argument.
6338
6339 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6340
6341         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6342         unknown archive type is specified.
6343
6344 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6345
6346         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6347
6348         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6349         while loading msgdb.
6350
6351         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6352         (elmo-folder-open-internal): Rewrite.
6353
6354 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6355
6356         * elmo-mime.el (elmo-mime-display-as-is-internal):
6357         Adjust buffer-multibyte status.
6358
6359 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6360
6361         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6362         of elmo-condition-find-key.
6363
6364         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6365         (elmo-condition-in-msgdb-p): Ditto.
6366         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6367         argument.
6368
6369 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6370
6371         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6372
6373 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6374
6375         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6376         label for elmo-display-progress.
6377
6378 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6379
6380         * elmo.el (elmo-folder-clear): New method.
6381         (elmo-folder-clear): Define.
6382         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6383
6384         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6385         (elmo-folder-clear): Define.
6386
6387         * elmo-map.el (elmo-folder-clear): Define.
6388
6389         * elmo-version.el (elmo-version): Up to 2.7.1.
6390
6391 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6392
6393         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6394         updates.
6395
6396 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6397
6398         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6399         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6400
6401 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6402
6403         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6404
6405         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6406         and re-written.
6407
6408         * elmo-imap4.el (elmo-folder-initialize): Use
6409         elmo-get-network-stream-type.
6410
6411         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6412
6413         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6414
6415 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6416
6417         * elmo.el (elmo-message-encache): Set unread argument for
6418         elmo-message-fetch.
6419
6420         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6421
6422         * elmo.el (elmo-net-port-info): New method.
6423
6424         * elmo-shimbun.el (elmo-net-port-info): Define.
6425         (elmo-message-encache): Ditto.
6426
6427         * elmo-net.el (elmo-net-port-info): Define as method.
6428
6429         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6430         unplugged status when elmo-enable-disconnected-operation is t.
6431
6432         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6433         of spool folder before checking new number.
6434
6435 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6436
6437         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6438         (elmo-network-setup-session): Ditto.
6439         (elmo-message-fetch-plugged): Ditto.
6440         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6441         (elmo-network-initialize-session): Ditto.
6442         (elmo-pop3-read-response): Abolish 3rd argument.
6443         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6444         (elmo-pop3-read-contents): Ditto.
6445         (elmo-pop3-read-body): Ditto.
6446         (elmo-folder-status): Call elmo-folder-close.
6447         (elmo-pop3-lock): Abolish.
6448         (elmo-pop3-unlock): Ditto.
6449         (elmo-pop3-locked-p): Ditto.
6450         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6451
6452 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6453
6454         * elmo-version.el (elmo-version): Up to 2.7.0.
6455
6456         * elmo-pop3.el (elmo-pop3-debug): New variable.
6457         (elmo-pop3-debug-inhibit-logging): Ditto.
6458         (elmo-pop3-debug): New function.
6459         (elmo-pop3-send-command): Call elmo-pop3-debug.
6460         (elmo-pop3-read-response): Added keep-lock optional argument;
6461         Don't unlock if keep-lock is non-nil.
6462         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6463         (elmo-network-authenticate-session): Bind
6464         elmo-pop3-debug-inhibit-logging as t.
6465         (elmo-network-setup-session): Call elmo-pop3-read-response with
6466         keep-lock argument.
6467         (elmo-pop3-read-msg): Ditto.
6468         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6469         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6470         (elmo-network-initialize-session): Call elmo-pop3-lock.
6471         (elmo-folder-close-internal): Don't clear location-alist slot.
6472         (elmo-folder-check): Clear location-alist slot.
6473
6474 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6475
6476         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6477         (elmo-pop3-send-command): Call elmo-pop3-lock.
6478         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6479         (elmo-pop3-read-contents): Ditto.
6480         (elmo-pop3-lock): New function.
6481         (elmo-pop3-unlock): Ditto.
6482         (elmo-pop3-locked-p): Ditto.
6483         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6484         returns t.
6485
6486 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6487
6488         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6489
6490         * elmo-util.el (elmo-file-field-primitive-condition-match):
6491         New inline function (Don't fetch file content if "first" or "last").
6492         (elmo-file-field-condition-match): Use
6493         elmo-file-field-primitive-condition-match.
6494
6495         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6496         "first".
6497
6498         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6499         (elmo-message-fetch-plugged): Fixed.
6500
6501         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6502
6503 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6504
6505         * elmo.el (elmo-folder-move-messages): Bind
6506         elmo-inhibit-display-retrieval-progress as t while moving messages.
6507
6508         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6509         New variable.
6510         (elmo-inhibit-display-retrieval-progress): Ditto.
6511
6512         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6513         for retrieval progress;
6514         Don't display progress when total buffer size is smaller than
6515         elmo-display-retrieval-progress-threshold.
6516         (elmo-message-fetch-plugged): Don't display progress when
6517         elmo-inhibit-display-retrieval-progress is non-nil.
6518
6519         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6520         for retrieval progress;
6521         Don't display progress when literal size is smaller than
6522         elmo-display-retrieval-progress-threshold.
6523         (elmo-imap4-message-fetch): Don't display progress when
6524         elmo-inhibit-display-retrieval-progress is non-nil.
6525
6526 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6527
6528         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6529         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6530         (elmo-imap4-message-fetch): Likewise.
6531
6532         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6533         (elmo-shimbun-index-range-alist): Ditto.
6534         (elmo-shimbun-use-entire-index): Abolish.
6535         (shimbun-mua-use-entire-index): Ditto.
6536         (elmo-shimbun-folder): Added new slot `range'.
6537         (elmo-folder-initialize): Setup slot `range'.
6538
6539 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6540
6541         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6542         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6543         (elmo-shimbun-get-headers): Use return value of
6544         `shimbun-article-expiration-days'.
6545         (elmo-folder-close-internal): Clean up last-check slot.
6546
6547         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6548         (elmo-pop3-total-size): New variable.
6549         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6550
6551         * elmo.el (elmo-folder-reserve-status-p): New method.
6552
6553         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6554         (elmo-shimbun-use-entire-index): New user option.
6555         (shimbun-elmo-mua): New class.
6556         (shimbun-mua-search-id): Define.
6557         (shimbun-mua-use-entire-index): Ditto.
6558         (elmo-shimbun-folder:last-check): New slot.
6559         (elmo-shimbun-headers-cache-header-list): Abolish.
6560         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6561         (elmo-shimbun-headers-cache-header-hash): Ditto.
6562         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6563         (elmo-shimbun-headers-cache-last-check): Ditto.
6564         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6565         (elmo-shimbun-headers-check-p): Rewrite.
6566         (elmo-shimbun-msgdb-to-headers): New function.
6567         (elmo-shimbun-get-headers): Rewrite.
6568         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6569         (elmo-folder-open-internal): Get headers only if
6570         `elmo-shimbun-headers-check-p' is non-nil.
6571         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6572         is non-nil.
6573         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6574         (elmo-quit): Removed.
6575
6576         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6577         function.
6578         (elmo-msgdb-overview-entity-set-extra): Ditto.
6579         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6580
6581         * elmo-map.el (elmo-folder-status): Don't call
6582         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6583         is non-nil.
6584
6585 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6586
6587         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6588         of `elmo-msgdb-search-internal-primitive' when condition's car is
6589         `and' or `or'.
6590
6591 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6592
6593         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6594
6595 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6596
6597         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6598         call `elmo-pipe-drain'.
6599
6600 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6601
6602         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6603         typo. (elmo-cache-folder -> elmo-mark-folder)
6604
6605 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6606
6607         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6608         `elmo-message-fetch'.
6609
6610 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6611
6612         * elmo-net.el (elmo-message-encache): Fixed typo.
6613         (elmo-message-fetch-unplugged): Changed call
6614         `elmo-message-fetch-internal' without argument `outbuf'.
6615
6616 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6617
6618         * elmo.el (elmo-message-encache): Define as generic function.
6619         (elmo-message-fetch-field): New generic function.
6620         (elmo-message-fetch-with-cache-process): Cause an error when
6621         fetch strategy is 'entire but only 'section cache is available.
6622         (toplevel): Fixed nmz folder definition.
6623
6624         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6625         (elmo-msgdb-resume-list-filename): Ditto.
6626         (elmo-queue-filename): Ditto.
6627         (elmo-enable-disconnected-operation): Changed default value to t.
6628
6629         * elmo-util.el (elmo-cache-path-section-p): New function.
6630         (elmo-file-cache-get): Use it.
6631         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6632         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6633         (elmo-dop-queue-save): Ditto.
6634
6635         * elmo-net.el (elmo-folder-status-unplugged): Call
6636         elmo-folder-status-dop.
6637         (elmo-folder-list-messages-unplugged): Implemented.
6638         (elmo-folder-delete-messages-unplugged): Define.
6639         (elmo-folder-msgdb-create): Define.
6640         (elmo-folder-msgdb-create-unplugged): Define.
6641         (elmo-folder-mark-as-read-unplugged): Ditto.
6642         (elmo-folder-unmark-read-unplugged): Ditto.
6643         (elmo-folder-mark-as-important-unplugged): Ditto.
6644         (elmo-folder-unmark-important-unplugged): Ditto.
6645         (elmo-message-encache): Ditto.
6646
6647         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6648         (elmo-dop-queue-save): Ditto.
6649
6650         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6651         `elmo-folder-msgdb-create'.
6652         (elmo-folder-append-buffer): Implemented unplugged operation.
6653         (elmo-folder-append-messages): Call parent method in unplugged status.
6654         (elmo-message-fetch-unplugged): Removed definition.
6655         (elmo-message-fetch-field): Implemented.
6656
6657         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6658         (elmo-dop-folder): Removed variable definition.
6659         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6660         (elmo-dop-queue-flush): Implemented.
6661         (elmo-dop-queue-merge): Removed definition (TODO).
6662         (elmo-dop-spool-folder): New function.
6663         (elmo-dop-spool-folder-append-buffer): Ditto.
6664         (elmo-dop-spool-folder-list-messages): Ditto.
6665         (elmo-dop-list-deleting-messages): Ditto.
6666         (elmo-folder-append-buffer-dop): Ditto.
6667         (elmo-folder-delete-messages-dop): Ditto.
6668         (elmo-message-encache-dop): New inline function.
6669         (elmo-create-folder-dop): Ditto.
6670         (elmo-folder-mark-as-read-dop): Ditto.
6671         (elmo-folder-unmark-read-dop): Ditto.
6672         (elmo-folder-mark-as-important-dop): Ditto.
6673         (elmo-folder-unmark-important-dop): Ditto.
6674         (elmo-folder-status-dop): Fixed.
6675         (elmo-folder-append-buffer-dop-delayed): New function.
6676         (elmo-folder-delete-messages-dop-delayed): Ditto.
6677         (elmo-dop-msgdb): Ditto.
6678
6679 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6680
6681         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6682
6683 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6684
6685         * elmo.el (elmo-folder-move-messages): Fixed problem when
6686         `dst-folder' is 'null.
6687
6688 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6689
6690         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6691         instead of current mark.
6692
6693         * elmo-multi.el (elmo-folder-list-importants-internal): No
6694         operation if importants is not list.
6695
6696         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6697         Return t if importants is not list.
6698
6699         * elmo-map.el (elmo-map-folder-list-importants): Define.
6700         (elmo-folder-list-importants-internal): Check return value of
6701         `elmo-map-folder-list-importants-internal'.
6702
6703         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6704
6705         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6706
6707         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6708
6709         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6710
6711 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6712
6713         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6714         (Patch is provided by <kita@coe.nttdata.co.jp>).
6715
6716 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6717
6718         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6719         mark folder.
6720
6721 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6722
6723         * elmo.el (elmo-message-fetch): Define.
6724         (elmo-message-fetch-with-cache-process): New generic method.
6725         (elmo-message-fetch-internal): New generic method.
6726         (elmo-folder-synchronize):
6727
6728         * elmo-archive.el (elmo-message-fetch-internal): Define.
6729         (elmo-message-fetch): Eliminated.
6730
6731         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6732         (elmo-message-fetch): Eliminated.
6733
6734         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6735         argument OUTBUF.
6736         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6737
6738         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6739         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6740
6741         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6742         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6743
6744         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6745
6746         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6747
6748         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6749
6750         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6751         (elmo-message-fetch-unplugged): New generic method.
6752         (elmo-message-fetch-internal): Remove cache process (Renamed from
6753         `elmo-message-fetch').
6754
6755         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6756         (elmo-message-fetch): Eliminated.
6757         (elmo-message-fetch-unplugged): Ditto.
6758
6759         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6760
6761 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6762
6763         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6764         of `to-be-deleted' from number-alist to number-list.
6765
6766 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6767
6768         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6769         (elmo-folder-mark-as-important): Ditto.
6770
6771 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6772
6773         * elmo.el (elmo-folder): Added process-duplicates slot.
6774
6775         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6776         (elmo-folder-unmark-read): Ditto.
6777         (elmo-folder-unmark-important): Ditto.
6778         (elmo-folder-mark-as-important): Ditto.
6779
6780         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6781         duplicated message processing.
6782
6783         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6784
6785 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6786
6787         * elmo-util.el (elmo-list-subdirectories-1): New function.
6788         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6789         (elmo-mapcar-list-of-list): New function.
6790
6791         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6792         `elmo-mapcar-list-of-list' instead of `mapcar'.
6793
6794         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6795
6796         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6797         `elmo-have-link-count'. Return the fully qualified folder name.
6798
6799 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6800
6801         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6802         (elmo-shimbun-headers-cache): New internal variable.
6803         (elmo-shimbun-headers-cache-header-list): New inline function.
6804         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6805         (elmo-shimbun-headers-cache-header-hash): Ditto.
6806         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6807         (elmo-shimbun-headers-cache-last-check): Ditto.
6808         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6809         (elmo-shimbun-lapse-seconds): Ditto.
6810         (elmo-shimbun-headers-cache-check-p): Ditto.
6811         (elmo-shimbun-get-headers): New function.
6812         (elmo-folder-open-internal): Call it.
6813         (elmo-quit): Define (Clear headers-cache).
6814
6815 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6816
6817         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6818
6819         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6820         (elmo-msgdb-flist-save): Ditto.
6821
6822         * elmo-shimbun.el (elmo-folder-list-subfolders):
6823         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6824         (elmo-folder-exists-p): Ditto.
6825
6826         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6827         argument for `shimbun-header-insert'.
6828
6829 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6830
6831         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6832         at first time.
6833
6834         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6835         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6836
6837 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6838
6839         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6840         (elmo-folder-plugged-p): Define.
6841         (elmo-folder-set-plugged): Ditto.
6842         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6843         (elmo-folder-list-messages-internal): Return t if unplugged.
6844         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6845
6846         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6847         when elmo-folder-list-messages-internal method of children returns t.
6848
6849         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6850         pair is nil.
6851         (elmo-folder-open-internal): Don't update if unplugged status.
6852
6853 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6854
6855         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6856         new message.
6857
6858 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6859
6860         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6861
6862         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6863         saving.
6864
6865 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6866
6867         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6868
6869         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6870         (elmo-folder-open-internal): Set up headers slot.
6871         (elmo-folder-check): Call elmo-folder-close-internal and
6872         elmo-folder-open-internal.
6873         (elmo-folder-close-internal): Clean up headers slot.
6874
6875 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6876
6877         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6878         exactly folder list.
6879         (elmo-folder-append-messages): Fixed append archive with prefix.
6880
6881         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6882         make temp files with start-number.
6883
6884         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6885
6886 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6887
6888         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
6889         argument `visible-only'.
6890         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
6891         instead of `if'.
6892
6893         * elmo-pop3.el (elmo-folder-open-internal): Check
6894         `elmo-inhibit-number-mapping' is non-nil.
6895
6896         * elmo-pipe.el (elmo-folder-status): Fixed.
6897
6898 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
6899
6900         * elmo.el (elmo-dop-queue-flush): Added autload setting.
6901
6902         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
6903         (elmo-folder-open-internal): Setup `header-hash' slot.
6904         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
6905         information.
6906         (elmo-map-message-fetch): Ditto.
6907
6908 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
6909
6910         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6911         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6912         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6913         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6914
6915         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6916
6917 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
6918
6919         * sb-airs.el: Added footer.
6920
6921         * shimbun.el (shimbun-article): Define as luna-method.
6922
6923         * sb-tcup.el: New file.
6924
6925         * sb-airs.el (toplevel): Require 'sb-mhonarc.
6926         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6927
6928 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
6929
6930         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6931         (shimbun-get-headers): Ditto.
6932
6933         * elmo.el: Moved obsolete variable definitions from
6934         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6935
6936         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6937         groups.
6938
6939         * shimbun.el: New file.
6940
6941         * elmo-shimbun.el: New file.
6942
6943         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6944         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6945         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6946         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6947
6948 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
6949
6950         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6951         hierarchy is t.
6952
6953 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
6954
6955         * elmo.el (elmo-folder-msgdb): Define as macro.
6956         (elmo-folder-open): Added argument `load-msgdb'.
6957         (elmo-generic-folder-open): Ditto.
6958         (elmo-folder-encache): New function.
6959
6960         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6961
6962         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6963
6964         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6965         Eliminated argument FOLDER and added argument MSGDB.
6966         (elmo-dop-queue-load): Moved from elmo-dop.el.
6967         (elmo-dop-queue-save): Ditto.
6968
6969         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6970
6971         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6972
6973         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6974         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6975         (elmo-filter-folder-list-importants-internal): Ditto.
6976
6977         * elmo-map.el (elmo-folder-pack-number): Ditto.
6978
6979         * elmo-mime.el (elmo-mime-message-display): Ditto.
6980
6981         * elmo.el (elmo-generic-folder-commit): Ditto.
6982         (elmo-folder-list-unreads): Ditto.
6983         (elmo-folder-list-importants): Ditto.
6984         (elmo-generic-folder-commit): Ditto.
6985         (elmo-message-set-mark): Ditto.
6986         (elmo-generic-folder-append-msgdb): Ditto.
6987         (elmo-folder-synchronize): Ditto.
6988         (elmo-folder-messages): Ditto.
6989         (elmo-init): Call elmo-dop-queue-load.
6990         (elmo-folder-list-messages): Ditto.
6991
6992         * elmo-nntp.el (elmo-folder-update-number): Ditto.
6993         (elmo-nntp-folder-process-crosspost): Ditto.
6994         (elmo-folder-list-unreads-internal): Ditto.
6995
6996         * elmo-dop.el: Removed old functions.
6997
6998 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
6999
7000         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
7001         `folder' to `msgdb'.
7002
7003 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
7004
7005         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
7006         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
7007
7008         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
7009         case-fold-search.
7010
7011 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
7012
7013         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
7014         defined.
7015
7016         * mmimap.el (toplevel): Require 'mime-parse and 'static.
7017         (mmimap-parse-parameters-from-list): Define as alias for
7018         `mime-decode-parameter-plist' if it is defined as function.
7019         (mmimap-make-mime-entity): Added argument `number'.
7020         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
7021         as 0.
7022         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
7023
7024         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
7025
7026         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
7027
7028         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
7029
7030 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
7031
7032         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
7033
7034         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
7035         when elmo-imap4-default-authenticate-type is nil.
7036         (elmo-folder-list-subfolders): Ditto
7037         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
7038         (elmo-imap4-fetch-callback-1-subr): Renamed from
7039         `elmo-imap4-fetch-callback-1' and define as inline function.
7040         (elmo-imap4-fetch-callback-1):
7041         Renamed from `elmo-imap4-fetch-callback'.
7042         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
7043
7044         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
7045         msgdb path (To keep compatibility with main trunk).
7046
7047         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
7048
7049         * elmo-util.el (elmo-make-file-cache): Moved position of
7050         some macros.
7051
7052         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
7053         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
7054         instead of `elmo-pop3-inhibit-uidl'.
7055         (elmo-folder-exists-p): Ditto.
7056         (elmo-pop3-folder-list-messages): Ditto.
7057
7058         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
7059         instead of `elmo-pop3-inhibit-uidl'.
7060         (elmo-folder-status): Ditto.
7061
7062         * elmo-dop.el (elmo-dop-folder): New variable.
7063         (elmo-dop-lock-message): Eliminated.
7064         (elmo-dop-unlock-message): Ditto.
7065         (elmo-dop-lock-list-load): Ditto.
7066         (elmo-dop-lock-list-save): Ditto.
7067         (elmo-dop-delete-folder): Ditto.
7068         (elmo-dop-rename-folder): Ditto.
7069
7070         * elmo.el: Removed incomplete commentary.
7071
7072 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7073
7074         * elmo.el (toplevel): Require 'elmo-version first;
7075         for little `recursive-load-depth' settings.
7076         Fix "ends here" comment.
7077
7078 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
7079
7080         * elmo-util.el (toplevel): Require 'poem;
7081         Some functions are moved from elmo-cache.el.
7082
7083         * elmo-net.el (toplevel): Require 'elmo-cache.
7084
7085         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
7086
7087         * elmo.el (toplevel): Ditto.
7088
7089         * elmo-cache.el: Rewrite with luna;
7090         Some functions are moved to elmo-util.el.
7091
7092         * elmo-internal.el (elmo-internal-folder-list): New variable.
7093         (elmo-internal-folder-initialize): Rewrite.
7094         (elmo-folder-list-subfolders): Ditto.
7095
7096         * elmo-cache.el (elmo-cache-search-all): Eliminated.
7097         (elmo-cache-collect-sub-directories): Ditto.
7098
7099 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
7100
7101         * elmo-version.el (elmo-version): Up to 2.5.8.
7102
7103         * elmo.el (elmo-folder-list-messages-mark-match): New function.
7104
7105         * elmo-util.el (elmo-list-insert): New function.
7106
7107 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
7108
7109         * elmo.el (elmo-init): New function.
7110         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
7111
7112         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
7113         (Renamed from `elmo-localdir-header-chop-length').
7114
7115         * elmo-pop3.el (elmo-pop3-use-cache,
7116         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
7117
7118         * elmo-nntp.el (elmo-message-fetch): Define.
7119         (elmo-message-fetch-unplugged): Ditto.
7120         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
7121         (elmo-nntp-use-cache): Ditto.
7122         (elmo-nntp-max-number-precedes-list-active): Ditto.
7123
7124         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
7125
7126         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
7127         `elmo-msgdb-insert-file-header'.
7128         Use `elmo-msgdb-file-header-chop-length'.
7129
7130         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
7131         `elmo-vars.el'.
7132
7133         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
7134         (elmo-cache-msgdb-create-overview-entity-from-file): Use
7135         `elmo-msgdb-insert-file-header'.
7136
7137         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
7138         Use new variable;
7139         Define obsolete variables with `elmo-define-obsolete-variable',
7140
7141         * elmo-util.el (elmo-warning-buffer-name): New constant.
7142         (elmo-warning): New function.
7143         (elmo-obsolete-variable-alist): New variable.
7144         (elmo-obsolete-variable-show-warnings): New variable.
7145         (elmo-define-obsolete-variable): New function.
7146         (elmo-resque-obsolete-variable): Ditto.
7147         (elmo-resque-obsolete-variables): Ditto.
7148
7149 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7150
7151         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
7152         Eliminated.
7153
7154         * elmo-pop3.el, elmo-nntp.el: Use custom.
7155
7156 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7157
7158         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
7159         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
7160
7161 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7162
7163         * Luna-fy Kenichi OKADA's following changes.
7164         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
7165         `nohide'.
7166         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
7167
7168 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
7169
7170         * elmo-util.el (elmo-display-progress): Prefer
7171         `progress-feedback-with-label' to `lprogress-display'.
7172
7173 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7174
7175         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
7176
7177 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
7178
7179         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
7180         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
7181         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7182         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7183         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
7184         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
7185         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7186         * elmo-filter.el (elmo-filter-list-folder): Ditto.
7187         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7188         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7189         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7190         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7191         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7192
7193 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7194
7195         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
7196         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7197
7198 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7199
7200         * elmo.el (elmo-folder-process-crosspost): New generic method.
7201         (elmo-folder-writable-p): Ditto.
7202         (elmo-folder-message-appendable-p): Eliminated.
7203         (elmo-generic-folder-append-msgdb): Rewrite.
7204         (elmo-newsgroups-hashtb): New internal variable.
7205         (elmo-crosspost-message-set): Eliminated.
7206         (elmo-crosspost-message-delete): Ditto.
7207         (elmo-setup-subscribed-newsgroups): New function.
7208         (elmo-crosspost-message-alist-modified): New internal variable.
7209         (elmo-crosspost-message-alist-load): New function (Renamed from
7210         `wl-crosspost-alist-load').
7211         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7212         `wl-crosspost-alist-save').
7213
7214         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7215
7216         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7217         `unreads'.
7218         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7219         elmo-newsgroups-hashtb).
7220         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7221         `elmo-nntp-folder-update-crosspost-message-alist'.
7222         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7223         `elmo-nntp-groups-hashtb'.
7224         (elmo-nntp-make-groups-hashtb): Eliminated.
7225         (elmo-nntp-parse-newsgroups): New function (Renamed from
7226         `wl-parse-newsgroups').
7227         (elmo-folder-creatable-p, elmo-folder-writable-p,
7228         elmo-folder-close-internal, elmo-folder-mark-as-read,
7229         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7230         Define.
7231         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7232
7233         * elmo-net.el (elmo-message-fetch): Check buffer size.
7234
7235         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7236
7237         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7238
7239         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7240         before `close' command.
7241
7242         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7243         `mark-alist' (All other related portions are changed).
7244
7245 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7246
7247         * elmo-util.el (elmo-create-hash-size): Eliminated.
7248         (elmo-make-hash) Make a hash with `one less than a power of two'
7249         length.
7250
7251         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7252         (elmo-hash-maximum-size): Changed value.
7253
7254 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7255
7256         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7257         (elmo-mime-message-display-as-is): Ditto.
7258
7259 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7260
7261         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7262         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7263
7264 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7265
7266         * elmo-mark.el: New file.
7267
7268         * elmo-internal.el: Rewrite (Almost empty).
7269
7270 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7271
7272         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7273         (mime-imap-entity-header-string): Ditto.
7274         (mmimap-entity-section): Rewrite.
7275
7276 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7277
7278         * elmo-nmz.el: New file.
7279
7280         * elmo-pipe.el: Rewrite with luna.
7281
7282 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7283
7284         * elmo-archive.el: Rewrite with luna.
7285
7286         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7287         (elmo-folder-list-importants-internal): Ditto.
7288
7289 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7290
7291         * elmo-archive.el (elmo-archive-version): Abolish.
7292         (toplevel) Removed `boso' comment.
7293
7294 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7295
7296         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7297         elmo-msgdb-add-msgs-to-seen-list-subr;
7298         Changed argument seen-marks to unread-marks.
7299
7300         * elmo-nntp.el: Rewrite with luna.
7301
7302 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7303
7304         * elmo-filter.el: Rewrite with luna.
7305
7306 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7307
7308         * elmo-pop3.el: Rewrite with luna.
7309
7310 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7311
7312         * elmo-multi.el: Rewrite with luna.
7313
7314         * elmo-vars.el (elmo-use-killed-list): Abolish.
7315         All other related portions are changed.
7316         (elmo-filename-replace-string-alist): Renamed from
7317         elmo-msgid-replace-string-alist.
7318
7319 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7320
7321         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7322
7323         * elmo-map.el: New file.
7324         * elmo-maildir.el: Rewrite with luna.
7325
7326 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7327
7328         * elmo.el: Changed meaning of `elmo-folder-commit'.
7329         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7330
7331 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7332
7333         * elmo.el (elmo-folder-append-buffer): New function.
7334         (Renamed from `elmo-append-msg')
7335
7336 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7337
7338         * elmo-mime.el: New file.
7339
7340 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7341
7342         * elmo-cache.el: Rewrite.
7343
7344 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7345
7346         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7347
7348 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7349
7350         * elmo-vars.el (elmo): New group.
7351         (elmo-strict-diff-folder-regexp): New variable.
7352
7353         * elmo-util.el (elmo-call-func): Abolish.
7354         (elmo-folder-get-type): Ditto.
7355         (elmo-*-get-spec): Ditto.
7356         (elmo-*-spec-*): Ditto.
7357         (elmo-imap4-identical-name-space-p): Ditto.
7358         (elmo-folder-identical-system-p): Ditto.
7359         (elmo-folder-direct-copy-alist): Ditto.
7360         (elmo-folder-direct-copy-p): Ditto.
7361
7362         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7363         (elmo-folder-initialize): Define.
7364         (elmo-folder-get-primitive-list): Ditto.
7365
7366         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7367         (elmo-folder-initialize): Define.
7368         Renamed `elmo-network-session-host-internal' to
7369         `elmo-network-session-server-internal'.
7370
7371         * elmo-multi.el (elmo-multi-folder): New luna class.
7372         (elmo-folder-initialize): Define.
7373         (elmo-folder-get-primitive-list): Ditto.
7374         (elmo-folder-contains-type): Ditto.
7375         (elmo-message-use-cache-p): Ditto.
7376
7377         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7378         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7379
7380         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7381         (elmo-folder-initialize): Define.
7382
7383         * elmo-filter.el (elmo-filter-folder): New luna class.
7384         (elmo-folder-initialize): Define.
7385         (elmo-folder-get-primitive-list): Ditto.
7386         (elmo-folder-contains-type): Ditto.
7387
7388 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7389
7390         * elmo-imap4.el: Rewrite with luna.
7391
7392         * mmimap.el: New file.
7393
7394         * mmelmo.el, mmelmo-imap4.el: Removed.
7395
7396         * elmo-net.el: Ditto.
7397
7398         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7399         (elmo-folder-initialize): Define.
7400
7401         * elmo-archive.el (elmo-archive-folder): New luna class.
7402         (elmo-folder-initialize): Define.
7403
7404         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7405         `elmo-folder-msgdb-path'.
7406         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7407         `elmo-make-folder'.
7408
7409 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7410
7411         * elmo.el: New file.
7412
7413         * elmo2.el: Renamed to elmo.el.
7414
7415 \f
7416 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7417
7418         * elmo-cache.el (elmo-cache-expire-by-size): Count
7419         a disk usage for a cache file entry in KB even when
7420         its kind is a directory.
7421
7422 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7423
7424         * elmo-version.el (elmo-version): Up to 2.5.7.
7425
7426 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7427
7428         * elmo-version.el (elmo-version): Up to 2.5.6.
7429
7430 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7431
7432         * elmo-version.el (elmo-version): Up to 2.5.5.
7433
7434 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7435
7436         * elmo-imap4.el (elmo-network-authenticate-session):
7437         Fixed a logic for response checking.
7438
7439 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7440
7441         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7442         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7443         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7444         `sasl-mechanisms'.
7445
7446         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7447         for `starttls-open-stream' and `starttls-negotiate'.
7448
7449         * elmo-nntp.el: Remove autoload settings for
7450         `starttls-open-stream' and `starttls-negotiate'.
7451
7452         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7453         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7454         `luna-define-class' with `eval-and-compile'.
7455
7456 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7457
7458         * elmo-util.el (elmo-read-search-condition-internal):
7459         Require an element of table for searching field.
7460
7461 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7462
7463         * elmo-version.el (elmo-version): Up to 2.5.4.
7464
7465 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7466
7467         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7468
7469 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7470
7471         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7472
7473 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7474
7475         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7476         before greeting.
7477
7478 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7479
7480         * elmo-imap4.el (elmo-imap4-delete-folder):
7481         Send "close" before "delete" (Use commented out line).
7482         (elmo-imap4-rename-folder): Ditto.
7483
7484         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7485         folder string itself.
7486         (elmo-dop-list-deleted): New function.
7487         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7488         killed.
7489
7490         * elmo-util.el (elmo-string-rassoc-all): New function.
7491
7492 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7493
7494         * elmo-version.el (elmo-version): Up to 2.5.3.
7495
7496         * elmo-net.el (elmo-network-get-session): Changed logic for
7497         checking process status.
7498
7499         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7500         process is nil;
7501         Changed logic for checking process status.
7502
7503 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7504
7505         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7506         before greeting.
7507         (elmo-network-setup-session): Set UIDL hash size according to
7508         the length of list response.
7509         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7510         according to the length of list response;
7511         Return the length of list response.
7512         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7513
7514 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7515
7516         * elmo-imap4.el (toplevel): Require 'ssl.
7517         Add autoload 'starttls.
7518         * elmo-pop3.el (toplevel): Ditto.
7519         * elmo-nntp.el (toplevel): Ditto.
7520
7521 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7522
7523         * elmo-imap4.el (toplevel): defun at compile time.
7524         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7525         sasl-next-step, sasl-step-data, sasl-step-set-data.
7526         * elmo-pop3.el (toplevel): Ditto.
7527
7528 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7529
7530         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7531
7532 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7533
7534         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7535         if error.
7536         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7537         and `elmo-pop-auth-apop'.
7538
7539 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7540
7541         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7542
7543 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7544
7545         * elmo-pop3.el (elmo-network-authenticate-session): Split
7546         encoded response value.
7547
7548 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7549
7550         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7551         `elmo-pop3-force-login'.
7552         Redefine `sasl-mechanisms'.
7553         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7554
7555 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7556
7557         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7558         Delete `elmo-imap4-authenticator-alist'.
7559         (elmo-imap4-auth-cram-md5): Delete.
7560         (elmo-imap4-auth-digest-md5): Delete.
7561
7562 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7563
7564         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7565         (elmo-pop3-auth-scram-md5): Ditto.
7566         (elmo-pop3-auth-cram-md5): Ditto.
7567
7568 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7569
7570         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7571         Delete `elmo-pop3-authenticator-alist'.
7572
7573 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7574
7575         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7576         new SASL API.
7577         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7578
7579 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7580
7581         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7582
7583 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7584
7585         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7586         Fixed problem when `elmo-pop3-use-uidl' is nil.
7587         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7588
7589 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7590
7591         * elmo-version.el (elmo-version): Up to 2.5.2.
7592
7593 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7594
7595         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7596         New function.
7597         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7598         (elmo-pop3-msgdb-create-as-numlist): Use it.
7599
7600         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7601         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7602
7603         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7604         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7605
7606 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7607
7608         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7609         when elmo-mark-as-read is called with second argument nil.
7610
7611 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7612
7613         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7614         Moved to elmo-util.el.
7615
7616         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7617         Moved from elmo-pipe.el
7618
7619         * elmo-archive.el (elmo-archive-call-process): Enclose with
7620         static-if.
7621
7622         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7623         "RFC822" (because RFC822.PEEK is obsolete).
7624         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7625
7626 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7627
7628         * elmo-archive.el (elmo-archive-call-process): Don't check for
7629         the exit status when Nemacs is running.
7630
7631 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7632
7633         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7634         'plain.
7635
7636         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7637         (elmo-pop3-get-spec): Set default of auth to 'user.
7638
7639         * elmo-imap4.el (elmo-imap4-session-check):
7640         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7641         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7642         (elmo-imap4-auth-login): New function; Revival.
7643         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7644         `elmo-imap4-auth-login'.
7645
7646 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7647
7648         * elmo2.el (toplevel): Move `product-provide' declare.
7649         * mmelmo.el (toplevel): Ditto.
7650
7651 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7652
7653         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7654
7655 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7656
7657         * elmo-util.el (elmo-folder-get-store-type): New function.
7658         (elmo-folder-direct-copy-p): Use it.
7659
7660 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7661
7662         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7663         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7664         and result of `elmo-imap4-use-flag-p'.
7665         (elmo-imap4-fetch-callback-1): Set mark according to
7666         the result of `elmo-imap4-use-flag-p'.
7667
7668 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7669
7670         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7671         (elmo-generic-list-folder-unread): Ditto.
7672         (elmo-folder-get-info): Ditto.
7673         (elmo-folder-set-info-max-by-numdb): Ditto.
7674         (elmo-folder-get-info-max): Ditto.
7675         (elmo-folder-get-info-length): Ditto.
7676         (elmo-folder-get-info-unread): Ditto.
7677         (elmo-folder-info-make-hashtb): Ditto.
7678
7679         * elmo2.el: Removed above functions.
7680
7681 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7682
7683         * elmo-imap4.el (toplevel): Require 'ssl.
7684         Add autoload 'starttls.
7685         * elmo-pop3.el (toplevel): Ditto.
7686         * elmo-nntp.el (toplevel): Ditto.
7687
7688 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7689
7690         * elmo-imap4.el (toplevel): defun at compile time.
7691         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7692         sasl-next-step, sasl-step-data, sasl-step-set-data.
7693         * elmo-pop3.el (toplevel): Ditto.
7694
7695 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7696
7697         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7698
7699 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7700
7701         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7702         if error.
7703         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7704         and `elmo-pop-auth-apop'.
7705
7706 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7707
7708         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7709
7710 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7711
7712         * elmo-pop3.el (elmo-network-authenticate-session): Split
7713         encoded response value.
7714
7715 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7716
7717         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7718         `elmo-pop3-force-login'.
7719         Redefine `sasl-mechanisms'.
7720         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7721
7722 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7723
7724         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7725         Delete `elmo-imap4-authenticator-alist'.
7726         (elmo-imap4-auth-cram-md5): Delete.
7727         (elmo-imap4-auth-digest-md5): Delete.
7728
7729 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7730
7731         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7732         (elmo-pop3-auth-scram-md5): Ditto.
7733         (elmo-pop3-auth-cram-md5): Ditto.
7734
7735 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7736
7737         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7738         Delete `elmo-pop3-authenticator-alist'.
7739
7740 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7741
7742         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7743         new SASL API.
7744         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7745
7746 \f
7747 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7748
7749         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7750
7751 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7752
7753         * elmo-nntp.el (elmo-nntp-get-folders-info):
7754         Fixed problem when '\' character is contained in user-id.
7755         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7756
7757 \f
7758 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7759
7760         * elmo-imap4.el (elmo-imap4-delete-folder):
7761         Send "close" before "delete" (Use commented out line).
7762         (elmo-imap4-rename-folder): Ditto.
7763
7764         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7765         folder string itself.
7766         (elmo-dop-list-deleted): New function.
7767         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7768         killed.
7769
7770         * elmo-util.el (elmo-string-rassoc-all): New function.
7771
7772         * elmo-version.el (elmo-version): Up to 2.5.1.
7773
7774 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7775
7776         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7777
7778         * elmo-internal.el (elmo-internal-search): Fix last change.
7779
7780 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7781
7782         * elmo-internal.el (elmo-internal-search): Rewrite.
7783         (Fixed problem which is pointed out by Akihiro MOTOKI
7784         <motoki@da.jp.nec.com>)
7785
7786         * elmo-version.el (elmo-version): Up to 2.5.0.
7787
7788 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7789
7790         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7791
7792 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7793
7794         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7795         non-nil, make hierarchy.
7796
7797 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7798
7799         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7800         `elmo-pop3-use-uidl' must be bound to nil.
7801         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7802
7803 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7804
7805         * elmo-util.el (elmo-copy-file): Don't cause an error after
7806         `add-name-to-file' failed.
7807
7808         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7809         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7810
7811 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7812
7813         * elmo-version.el (elmo-version): Up to 2.3.93.
7814
7815 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7816
7817         * elmo-util.el (elmo-flatten): New function.
7818
7819 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7820
7821         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7822         sync Author header.
7823         * elmo-cache.el (toplevel): Ditto.
7824         * elmo-database.el (toplevel): Ditto.
7825         * elmo-date.el (toplevel): Ditto.
7826         * elmo-dop.el (toplevel): Ditto.
7827         * elmo-filter.el (toplevel): Ditto.
7828         * elmo-imap4.el (toplevel): Ditto.
7829         * elmo-internal.el (toplevel): Ditto.
7830         * elmo-localdir.el (toplevel): Ditto.
7831         * elmo-localnews.el (toplevel): Ditto.
7832         * elmo-maildir.el (toplevel): Ditto.
7833         * elmo-msgdb.el (toplevel): Ditto.
7834         * elmo-multi.el (toplevel): Ditto.
7835         * elmo-net.el (toplevel): Ditto.
7836         * elmo-nntp.el (toplevel): Ditto.
7837         * elmo-pipe.el (toplevel): Ditto.
7838         * elmo-pop3.el (toplevel): Ditto.
7839         * elmo-util.el (toplevel): Ditto.
7840         * elmo-vars.el (toplevel): Ditto.
7841         * elmo2.el (toplevel): Ditto.
7842         * mmelmo-imap4.el (toplevel): Ditto.
7843         * mmelmo.el (toplevel): Ditto.
7844
7845         * elmo-version.el (elmo-version): Move to top.
7846
7847         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7848         * elmo-imap4.el (toplevel): Ditto.
7849         * elmo-localdir.el (toplevel): Ditto.
7850         * elmo-msgdb.el (toplevel): Ditto.
7851         * elmo-nntp.el (toplevel): Ditto.
7852         * elmo-pop3.el (toplevel): Ditto.
7853         * elmo-version.el (toplevel): Ditto.
7854
7855         * elmo-localnews.el (toplevel): Added Keyword header.
7856
7857 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7858
7859         * elmo-version.el (product-version-as-string): Defined using
7860         `defun-maybe'.
7861         (toplevel): Use it.
7862
7863         * elmo-localdir.el (toplevel): Updated copyright notice.
7864         * elmo-version.el (toplevel): Ditto.
7865         * elmo-msgdb.el (toplevel): Ditto.
7866         * elmo-imap4.el (toplevel): Ditto.
7867         * elmo-nntp.el (toplevel): Ditto.
7868         * elmo-pop3.el (toplevel): Ditto.
7869
7870 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7871
7872         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7873         messages.
7874
7875         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7876         parameter value (It sometimes contains raw kanji).
7877
7878 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7879
7880         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7881         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7882
7883 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7884
7885         * elmo-imap4.el (elmo-network-initialize-session): Fix.
7886
7887 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7888
7889         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
7890         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
7891
7892 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
7893
7894         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
7895         value if selecting folder succceeded.
7896         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
7897
7898 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7899
7900         * elmo-util.el (elmo-make-directory): Fixed permission lateral
7901         representation.
7902
7903         * elmo-util.el (elmo-string-matched-member): New function.
7904
7905 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
7906
7907         * elmo-util.el (elmo-unintern): New macro.
7908         (elmo-number-set-member): Fixed docstring.
7909
7910         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7911         tag token.
7912
7913 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
7914
7915         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7916         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7917
7918 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
7919
7920         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7921         `no-error'.
7922         Added docstring.
7923         Return non-nil if selecting folder succeeded.
7924         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7925
7926 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
7927
7928         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7929         `file-name-completion' returns t.
7930         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7931         (elmo-maildir-set-mark): Put `info' part to the files in the cur
7932         directory if it does not exist.
7933         (elmo-maildir-update-current): Use `while' instead of `mapcar'
7934         for iteration.
7935
7936 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
7937
7938         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7939         enclosure (It's harmful in unplugged status).
7940
7941         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7942
7943         * mmelmo-1.el: Removed.
7944
7945         * mmelmo-2.el: Ditto.
7946
7947         * mmelmo-imap4-1.el: Ditto.
7948
7949         * mmelmo-imap4-2.el: Ditto.
7950
7951         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7952
7953         * mmelmo.el: Merged mmelmo-2.el.
7954
7955         * elmo-version.el (elmo-version): Up to 2.3.92.
7956
7957 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7958
7959         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7960         elmo-update-number): Remove last period in "...done." message.
7961         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7962         Ditto.
7963         * elmo-cache.el (elmo-cache-expire-by-size,
7964         elmo-cache-get-sorted-cache-file-list,
7965         elmo-cache-msgdb-create-as-numlist): Ditto.
7966         * elmo-dop.el (elmo-dop-save-pending-messages,
7967         (elmo-dop-flush-pending-append-operations): Ditto.
7968         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7969         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7970         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7971         (elmo-localdir-pack-number): Ditto.
7972         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7973         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7974         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7975         mime-write-entity-content): Ditto.
7976         * pldap.el (ldap-search-basic): Ditto.
7977
7978 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
7979
7980         * elmo-version.el (elmo-version): Up to 2.3.91.
7981
7982         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7983         Only when filter is 'last'.
7984
7985         * elmo-util.el (elmo-condition-atom-regexp): New constant.
7986         (elmo-condition-parse-search-value): Use it.
7987         (elmo-read-search-condition-internal): Quote value only when
7988         it is not an atom.
7989
7990 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
7991
7992         * elmo2.el (elmo-generic-folder-diff): Fix.
7993
7994 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
7995
7996         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7997         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7998         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7999         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8000         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
8001         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
8002
8003 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
8004
8005         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
8006         extra-fields.
8007
8008 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
8009
8010         * elmo-version.el (elmo-version): Up to 2.3.90.
8011
8012         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
8013         (elmo-imap4-list-folder-important): Ditto.
8014
8015 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8016
8017         * elmo-nntp.el (elmo-network-initialize-session): Fix.
8018
8019 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8020
8021         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
8022
8023 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
8024
8025         * elmo-nntp.el (elmo-network-initialize-session):
8026         Add starttls negotiation.
8027
8028 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8029
8030         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
8031         response.
8032         (elmo-network-setup-session): Define.
8033         Call `elmo-nntp-send-mode-reader' when session opened.
8034
8035 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8036
8037         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
8038
8039 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
8040
8041         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
8042         an invalid SPACE character ahead of `SEARCH' command.  Move
8043         a valid SPACE character following `SEARCH' from conditional
8044         `format' arguments to control-strings.
8045
8046 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8047
8048         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
8049         was succeeded.
8050
8051         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
8052
8053 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
8054
8055         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
8056         `w32-get-true-file-link-count' as t.
8057
8058         * elmo-imap4.el (elmo-imap4-read): Abolished.
8059         (Renamed to `elmo-read' and moved to elmo-util.el)
8060         All other related portions are changed.
8061
8062         * elmo-util.el (elmo-read): New function.
8063         (elmo-condition-parse-search-value): Use it.
8064
8065 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
8066
8067         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
8068
8069         * elmo-nntp.el (elmo-nntp-session): Define.
8070         (elmo-nntp-setting): Abolished.
8071         All other related portions are changed.
8072         (elmo-nntp-get-server-command): Changed argument.
8073         (elmo-nntp-set-server-command): Ditto.
8074         (elmo-nntp-xover-p): Ditto.
8075         (elmo-nntp-set-xover): Ditto.
8076         (elmo-nntp-listgroup-p): Ditto.
8077         (elmo-nntp-set-listgroup): Ditto.
8078         (elmo-nntp-list-active-p): Ditto.
8079         (elmo-nntp-set-list-active): Ditto.
8080         (elmo-nntp-xhdr-p): Ditto.
8081         (elmo-nntp-set-xhdr): Ditto.
8082         (elmo-nntp-flush-connection): Abolished.
8083         (elmo-nntp-get-connection): Abolished.
8084         (elmo-nntp-get-session): New function.
8085         (elmo-network-initialize-session): Defined.
8086         (elmo-network-authenticate-session): Ditto.
8087         (elmo-nntp-send-mode-reader): Changed argument.
8088         (elmo-nntp-send-command): Changed argument.
8089         All other related portions are changed.
8090         (elmo-nntp-read-response): Ditto.
8091         (elmo-nntp-read-raw-response): Ditto.
8092         (elmo-nntp-read-contents): Ditto.
8093         (elmo-nntp-read-body): Ditto.
8094         (elmo-nntp-goto-folder): Abolished.
8095         (elmo-nntp-select-group): New function.
8096         All other related portions are changed.
8097         (This function substitutes `elmo-nntp-goto-folder')
8098         (elmo-nntp-msgdb-create-by-header): Rewrite.
8099         (elmo-nntp-get-overview): Eliminated.
8100         (elmo-nntp-get-message): Ditto.
8101         (elmo-nntp-open-connection) Abolished.
8102         (elmo-nntp-read-msg): Rewrite.
8103         (elmo-nntp-post): Ditto.
8104         (elmo-nntp-send-data): Abolished.
8105         (elmo-nntp-send-buffer): New function.
8106         (elmo-nntp-send-data-line): Define as inline function.
8107         (elmo-nntp-get-folders-info-prepare): Use session as key.
8108         (elmo-nntp-groups-read-response): Changed argument.
8109         (elmo-nntp-retrieve-headers): Ditto.
8110         (elmo-nntp-msgdb-create-message): Ditto.
8111
8112         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
8113         when searching by 'since' or 'before'.
8114
8115 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8116
8117         * elmo-version.el (toplevel): Use product-version-as-string for set
8118         verstion-string, if defined.
8119
8120 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
8121
8122         * elmo-util.el: Doc fixes.
8123
8124 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8125
8126         * elmo-archive.el (toplevel): Use product-provide.
8127         * elmo-cache.el (toplevel): Ditto.
8128         * elmo-database.el (toplevel): Ditto.
8129         * elmo-date.el (toplevel): Ditto.
8130         * elmo-dop.el (toplevel): Ditto.
8131         * elmo-filter.el (toplevel): Ditto.
8132         * elmo-imap4.el (toplevel): Ditto.
8133         * elmo-internal.el (toplevel): Ditto.
8134         * elmo-localdir.el (toplevel): Ditto.
8135         * elmo-localnews.el (toplevel): Ditto.
8136         * elmo-maildir.el (toplevel): Ditto.
8137         * elmo-msgdb.el (toplevel): Ditto.
8138         * elmo-multi.el (toplevel): Ditto.
8139         * elmo-net.el (toplevel): Ditto.
8140         * elmo-nntp.el (toplevel): Ditto.
8141         * elmo-pipe.el (toplevel): Ditto.
8142         * elmo-pop3.el (toplevel): Ditto.
8143         * elmo-util.el (toplevel): Ditto.
8144         * elmo-vars.el (toplevel): Ditto.
8145         * elmo2.el (toplevel): Ditto.
8146         * mmelmo-1.el (toplevel): Ditto.
8147         * mmelmo-2.el (toplevel): Ditto.
8148         * mmelmo-imap4-1.el (toplevel): Ditto.
8149         * mmelmo-imap4-2.el (toplevel): Ditto.
8150         * mmelmo-imap4.el (toplevel): Ditto.
8151         * mmelmo.el (toplevel): Ditto.
8152
8153 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
8154
8155         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
8156         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
8157
8158 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
8159
8160         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
8161         before splitting.
8162         (elmo-multi-split-number-alist): Ditto.
8163
8164 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8165
8166         * elmo-version.el: New file.  Use product.el.
8167         * elmo2.el: Add (require 'elmo-version).
8168         * elmo-vars.el (elmo-appname, elmo-version): Move to
8169         elmo-version.el
8170
8171 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
8172
8173         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
8174         `elmo-msgdb-expand-path'.
8175         (elmo-msgdb-load): Ditto.
8176         Abolished 2nd argument. If 1st argument is not string, treat as spec.
8177         (elmo-generic-list-folder-unread): Rewrite.
8178         (elmo-generic-list-folder-important): Changed argument.
8179         (elmo-list-folder-unread): Ditto.
8180         (elmo-list-folder-important): Ditto.
8181         (elmo-folder-diff): Rewrite.
8182         (elmo-generic-folder-diff): New function.
8183         (elmo-multi-get-number-alist-list): Abolished
8184         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
8185         (elmo-multi-folder-diff): Moved to elmo-multi.el
8186         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
8187
8188         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
8189         `elmo-msgdb-expand-path'.
8190         (elmo-pop3-msgdb-create-as-numlist): Ditto.
8191         (elmo-pop3-read-msg): Ditto.
8192         (elmo-pop3-delete-msgs): Ditto.
8193         (elmo-pop3-folder-diff): New alias.
8194
8195         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
8196         `elmo-msgdb-expand-path'.
8197         (elmo-pipe-list-folder-unread): Changed arguments.
8198         (elmo-pipe-list-folder-important): Ditto.
8199         (elmo-pipe-folder-diff): New alias.
8200
8201         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8202         `elmo-msgdb-expand-path'.
8203         (elmo-nntp-max-of-folder): Ditto.
8204         (elmo-nntp-msgdb-create): Ditto.
8205         (elmo-nntp-delete-msgs): Ditto.
8206         (elmo-nntp-folder-diff): New alias.
8207
8208         * elmo-multi.el (elmo-multi-folder-diff): New function.
8209         (elmo-multi-split-mark-alist): Ditto.
8210         (elmo-multi-split-number-alist): Ditto.
8211         (elmo-multi-mark-alist-list): Abolished (Renamed to
8212         elmo-multi-split-mark-alist).
8213         (elmo-multi-list-folder-unread): Rewrite.
8214         (elmo-multi-list-folder-important): Ditto.
8215         (elmo-multi-list-folder): Set `spec' as 1st argument for
8216         `elmo-msgdb-expand-path'.
8217         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8218         instead of `elmo-multi-get-number-alist-list'.
8219
8220         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8221         If 1st argument is not string, treat as spec.
8222         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8223         `elmo-msgdb-expand-path'.
8224         (elmo-msgdb-flist-load): Ditto.
8225         (elmo-msgdb-flist-save): Ditto.
8226         (elmo-msgdb-delete-path): Ditto.
8227         (elmo-msgdb-rename-path): Ditto.
8228
8229         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8230         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8231         (elmo-maildir-delete-mark-msgs): Ditto.
8232         (elmo-maildir-msgdb-create): Ditto.
8233         (elmo-maildir-read-msg): Ditto.
8234         (elmo-maildir-delete-msgs): Ditto.
8235         (elmo-maildir-list-folder-subr): Ditto.
8236         (elmo-maildir-search): Ditto.
8237         (elmo-maildir-get-msg-filename): Ditto.
8238         (elmo-maildir-pack-number): Ditto.
8239         (elmo-maildir-folder-diff): New alias.
8240
8241         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8242
8243         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8244         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8245         (elmo-localdir-folder-diff): New alias.
8246
8247         * elmo-internal.el (elmo-internal-list-folder-subr):
8248         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8249         (elmo-internal-list-folder-by-location): Ditto.
8250         (elmo-internal-msgdb-create): Ditto.
8251         (elmo-internal-delete-msgs): Ditto.
8252         (elmo-internal-read-msg): Ditto.
8253         (elmo-internal-folder-diff): New alias.
8254
8255         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8256         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8257         `elmo-msgdb-expand-path'.
8258         (elmo-imap4-list-folder-unread): Changed arguments.
8259         (elmo-imap4-list-folder-important): Ditto.
8260
8261         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8262         (elmo-filter-list-folder-important): Ditto.
8263         (elmo-filter-folder-diff): New function.
8264
8265         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8266
8267         * elmo-cache.el (elmo-cache-list-folder):
8268         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8269         (elmo-cache-copy-msgs): Ditto.
8270         (elmo-cache-folder-diff): New alias.
8271
8272         * elmo-archive.el (elmo-archive-list-folder-subr):
8273         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8274         (elmo-archive-get-archive-name): Ditto.
8275         (elmo-archive-create-file): Ditto.
8276         (elmo-archive-append-msg): Ditto.
8277         (elmo-archive-copy-msgs): Ditto.
8278         (elmo-archive-copy-msgs-froms): Ditto.
8279         (elmo-archive-get-msg-filename): Ditto.
8280         (elmo-archive-folder-diff): New alias.
8281
8282 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8283
8284         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8285         (elmo-pop3-stream-type-alist): New variable.
8286         (elmo-nntp-stream-type-alist): New variable.
8287
8288         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8289         (elmo-kill-buffer): Ditto.
8290         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8291         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8292         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8293         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8294         (elmo-imap4-get-spec): Take into account
8295         `elmo-imap4-stream-type-alist'.
8296
8297 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8298
8299         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8300         (elmo-nntp-list-folders-get-cache): Ditto.
8301
8302 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8303
8304         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8305         character before 'uid'.
8306
8307 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8308
8309         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8310
8311         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8312
8313         * elmo-util.el (elmo-number-set-member): New function.
8314         (elmo-number-set-append-list): Ditto.
8315         (elmo-number-set-append): Ditto.
8316
8317         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8318         Use `elmo-number-set-member'.
8319         (elmo-living-messages): Ditto.
8320         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8321         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8322
8323         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8324         (elmo-imap4-add-to-cont-list): Abolished.
8325         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8326         instead of elmo-imap4-add-to-cont-list.
8327
8328         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8329         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8330
8331         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8332
8333 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8334
8335         * elmo-util.el (elmo-condition-parse-search-value):
8336         Fixed date parsing.
8337
8338 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8339
8340         * elmo-util.el (elmo-condition-find-key-internal): New function.
8341         (elmo-condition-find-key): Ditto.
8342
8343         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8344         (elmo-msgdb-search-internal): Ditto.
8345         (elmo-msgdb-search): Ditto.
8346
8347 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8348
8349         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8350         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8351
8352         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8353         (elmo-nntp-search-primitive): Fixed problem when condition is
8354         'unmatch'.
8355
8356         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8357
8358         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8359         (elmo-nntp-xhdr-p): New macro.
8360         (elmo-nntp-set-xhdr): Ditto.
8361         (elmo-nntp-parse-xhdr-response): New function.
8362         (elmo-nntp-retrieve-field): Ditto.
8363         (elmo-nntp-search-primitive): Ditto.
8364         (elmo-nntp-search): Implemented.
8365
8366         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8367
8368         * elmo-archive.el (elmo-archive-search): Set all number list to
8369         `elmo-archive-field-condition-match'
8370
8371         * elmo-localdir.el (elmo-localdir-search): Likewise.
8372
8373         * elmo-maildir.el (elmo-maildir-search): Likewise.
8374
8375 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8376
8377         * elmo-msgdb.el (elmo-living-messages): New function.
8378         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8379         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8380         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8381         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8382         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8383         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8384         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8385         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8386         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8387         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8388         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8389
8390 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8391
8392         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8393
8394         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8395
8396         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8397
8398         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8399         arguments for `SEARCH' command.
8400         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8401         All other related portions are changed.
8402
8403         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8404
8405         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8406         (elmo-list-folder-unread): Rewrite.
8407         (elmo-list-folder-important): Ditto.
8408
8409         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8410         (elmo-condition-parse-error): New inline function.
8411         (elmo-read-search-condition): New function.
8412         (elmo-read-search-condition-internal): Ditto.
8413         (elmo-parse-search-condition): Rewrite.
8414         (elmo-condition-parse): New function.
8415         (elmo-condition-parse-or-expr): Ditto.
8416         (elmo-condition-parse-and-expr): Ditto.
8417         (elmo-condition-parse-primitive): Ditto.
8418         (elmo-condition-parse-search-value): Ditto.
8419         (elmo-buffer-field-primitive-condition-match): Ditto.
8420         (elmo-buffer-field-condition-match): Rewrite.
8421         (elmo-file-field-condition-match): Ditto.
8422
8423         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8424         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8425
8426         * elmo-internal.el (elmo-internal-search): Set `number' and
8427         `number-list' argument of `elmo-file-field-condition-match'.
8428
8429         * elmo-maildir.el (elmo-maildir-search): Ditto.
8430
8431         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8432         `msgdb' as argument instead of `mark-alist'.
8433         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8434         `overview'.
8435
8436         * elmo-multi.el: Likewise.
8437
8438         * elmo-pipe.el: Likewise.
8439
8440         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8441         (elmo-imap4-search-internal): Rewrite.
8442         (elmo-imap4-search): Ditto.
8443
8444         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8445         (elmo-filter-list-folder-unread): Ditto.
8446         (elmo-filter-list-folder-important): Ditto.
8447         (elmo-filter-search): Rewrite.
8448
8449         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8450         `number-list' argument of `elmo-file-field-condition-match'.
8451         (elmo-cache-search): Ditto.
8452
8453         * elmo-localdir.el: Likewise.
8454
8455         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8456         number-list and pass it to `elmo-buffer-field-condition-match'.
8457         (elmo-archive-field-condition-match): Pass `number-list' to
8458         `elmo-archive-field-condition-match'
8459
8460 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8461
8462         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8463         `listgroup'.
8464
8465         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8466         (elmo-folder-diff-async-callback-data): Ditto.
8467         (elmo-folder-diff-async): New function.
8468
8469         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8470         (elmo-network-session-cache-key): Use it as a prefix of the session
8471         name.
8472         (elmo-network-open-session): Ditto.
8473
8474         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8475         (elmo-imap4-status-callback-data): Ditto.
8476         (elmo-imap4-server-diff-async-callback): New variable.
8477         (elmo-imap4-server-diff-async-callback-data): Ditto.
8478         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8479         `elmo-imap4-status-callback-data'.
8480         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8481         `elmo-imap4-status-callback-data' as nil.
8482         (elmo-imap4-server-diff): Ditto.
8483         (elmo-imap4-server-diff-async-callback-1): New function.
8484         (elmo-imap4-server-diff-async): Ditto.
8485         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8486
8487 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8488
8489         * elmo-util.el (elmo-list-delete): Doc fix.
8490         (elmo-delete-lists): Abolish.
8491         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8492         instead of `elmo-delete-lists'.
8493
8494 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8495
8496         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8497         before `sort'.
8498
8499 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8500
8501         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8502         `elmo-imap4-literal-subr'.
8503         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8504         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8505
8506 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8507
8508         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8509         (elmo-archive-list-folder): Fix.
8510         (elmo-archive-max-of-folder): Fix.
8511
8512 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8513
8514         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8515          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8516         (elmo-localdir-append-msg): Ditto.
8517         (elmo-localdir-list-folder): Fix for `nonsort'.
8518         (elmo-localdir-list-folder-subr): Fix for `killed'.
8519         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8520         (elmo-maildir-list-folder-subr): Ditto.
8521         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8522         (elmo-archive-list-folder-subr): Ditto.
8523         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8524         (elmo-internal-list-folder-subr): Ditto.
8525
8526 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8527
8528         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8529
8530 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8531
8532         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8533
8534 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8535
8536         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8537         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8538
8539         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8540         before greeting.
8541         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8542         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8543
8544 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8545
8546         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8547
8548         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8549         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8550         before STORE command.
8551
8552 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8553
8554         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8555
8556         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8557         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8558         of `response'.
8559         (elmo-imap4-list-folders): Removed unused local variable.
8560         (elmo-network-initialize-session): Ditto.
8561         (elmo-imap4-delete-msg-by-id): Ditto.
8562         (elmo-imap4-parse-fetch): Ditto.
8563         (elmo-imap4-copy-msgs): Ditto.
8564         Use `dst-spec' instead of `dst-folder'.
8565         (elmo-network-authenticate-session): Check authenticate type `plain'.
8566
8567 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8568
8569         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8570         garbage checking.
8571         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8572         `elmo-imap4-response-value'.
8573         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8574
8575 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8576
8577         * elmo-imap4.el (elmo-imap4-send-command):
8578         Cause elmo-imap4-bye-error when current response is BYE.
8579         (elmo-imap4-arrival-filter): Changed greeting response value.
8580
8581         * elmo2.el (elmo-imap4-bye-error): Define.
8582
8583         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8584         (elmo-imap4-server-diff): Ditto.
8585         (elmo-imap4-response-bye-p): New macro.
8586         (elmo-imap4-response-error-text): Get text from BYE response.
8587         (elmo-imap4-read-response): Return if BYE response.
8588         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8589         (elmo-imap4-folder-exists-p): Ditto.
8590         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8591         (elmo-imap4-parse-bye): New function.
8592         (elmo-imap4-parse-response): Remove needless let.
8593         Call `elmo-imap4-parse-bye'.
8594
8595 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8596
8597         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8598         the mailbox does not exist.
8599         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8600
8601 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8602
8603         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8604
8605 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8606
8607         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8608
8609         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8610         (elmo-network-initialize-session-buffer): Defined.
8611
8612         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8613         Abolished.
8614         (mmelmo-imap4-get-mime-entity): Rewrite.
8615
8616         * elmo2.el (elmo-error): Capitalize error message.
8617
8618         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8619         (elmo-network-session-buffer): New macro.
8620         (elmo-network-open-session): Use it.
8621
8622         * elmo-imap4.el: Rewrite.
8623
8624 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8625
8626         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8627
8628 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8629
8630         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8631         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8632         (elmo-imap4-create-msgdb-from-overview-string): Use
8633         `elmo-msgdb-create-overview-from-buffer'.
8634
8635 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8636
8637         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8638         (elmo-imap4-default-hierarchy-delimiter): New variable.
8639         (elmo-imap4-list-folders): Use it.
8640
8641 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8642
8643         * elmo-net.el (elmo-network-open-session): Add user and
8644         stream-type for process-buffer name.
8645
8646         * elmo-pop3.el (elmo-network-initialize-session): Call
8647         buffer-disable-undo.
8648
8649         * elmo-imap4.el (elmo-network-initialize-session):
8650         Set current-buffer as an argument for `buffer-disable-undo'.
8651
8652         * elmo-pop3.el (elmo-network-close-session): Don't use
8653         `process-live-p'.
8654
8655         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8656         Set default as 'user.
8657
8658         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8659
8660         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8661         and `elmo-imap4-flush-connection'.
8662
8663         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8664         (elmo-pop3-get-spec): Assume auth as symbol.
8665         (elmo-open-network-stream): Moved to `elmo-net'.
8666
8667         * elmo-pop3.el (toplevel): Require 'elmo-net.
8668         Define `sasl-cram-md5' to silence byte compilier.
8669         (elmo-pop3-connection-cache) Abolished.
8670         (elmo-pop3-authenticator-alist) New variable.
8671         (elmo-pop3-session): Define.
8672         (elmo-pop3-connection-get-process): Abolished.
8673         (elmo-pop3-connection-get-buffer): Ditto.
8674         (elmo-pop3-close-connection): Ditto.
8675         (elmo-pop3-flush-connection): Ditto.
8676         (elmo-pop3-get-connection): Ditto.
8677         (elmo-pop3-get-session): New function.
8678         (Replacement for `elmo-pop3-get-connection').
8679         All other related modules are changed.
8680         (elmo-network-close-session): Define.
8681         (elmo-pop3-send-command): Abolished argument `buffer'.
8682         All other related modules are changed.
8683         (elmo-pop3-read-response): Likewise.
8684         (elmo-pop3-open-connection): Abolished.
8685         (elmo-pop3-auth-user): New function.
8686         (elmo-pop3-auth-apop): Ditto.
8687         (elmo-pop3-auth-cram-md5): Ditto.
8688         (elmo-pop3-auth-scram-md5): Ditto.
8689         (elmo-pop3-auth-digest-md5): Ditto.
8690         (elmo-network-initialize-session): Define.
8691         (elmo-network-authenticate-session): Ditto.
8692         (elmo-network-setup-session): Ditto.
8693
8694         * elmo-imap4.el (toplevel): Require 'elmo-net.
8695         (elmo-imap4-session): Define.
8696         (elmo-imap4-connection-cache): Abolished.
8697         (elmo-imap4-password-key): Ditto.
8698         (elmo-imap4-flush-connection): Ditto.
8699         (elmo-imap4-get-connection): Ditto.
8700         All other related modules are changed.
8701         (elmo-imap4-get-session): New function
8702         (Replacement for `elmo-imap4-get-connection').
8703         (elmo-imap4-read-response): Abolished argument `buffer'.
8704         All other related modules are changed.
8705         (elmo-imap4-send-command): Likewise.
8706         (elmo-imap4-select-folder): Abolished.
8707         All other related modules are changed.
8708         (elmo-imap4-select-mailbox): New function.
8709         (Replacement for `elmo-imap4-select-folder').
8710         (elmo-imap4-auth-login): Simplify.
8711         (Assume current buffer as process buffer)
8712         (elmo-imap4-auth-cram-md5): Ditto.
8713         (elmo-imap4-auth-digest-md5): Ditto.
8714         (elmo-imap4-login): Ditto.
8715         (elmo-imap4-open-connection): Abolished.
8716         (elmo-imap4-open-connection-1): Abolished.
8717         (elmo-network-initialize-sessoin): Define.
8718         (elmo-network-authenticate-session): Ditto.
8719         (elmo-network-setup-session): Ditto.
8720
8721         * elmo-net.el: New module.
8722
8723 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8724
8725         * elmo-util.el (elmo-define-error): New function.
8726
8727         * elmo2.el (elmo-error): Define.
8728         (elmo-open-error): Define.
8729         (elmo-authenticate-error): Define.
8730
8731         * elmo-imap4.el (elmo-imap4-error): Abolish.
8732         (elmo-imap4-error-type): Abolish.
8733         (elmo-imap4-error-process): Abolish.
8734         (elmo-imap4-error-message): Abolish
8735         (elmo-imap4-list-folders): Don't quote lambda.
8736         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8737         (elmo-imap4-parse-namespace): Ditto.
8738         (elmo-imap4-open-connection): Rewrite.
8739         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8740         (elmo-imap4-get-connection): Abolish local variable `result'.
8741
8742 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8743
8744         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8745         wrong-type-argument error when auth is nil.
8746
8747 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8748
8749         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8750         (elmo-default-nntp-stream-type): Ditto.
8751         (elmo-default-pop3-stream-type): Ditto.
8752         (elmo-network-stream-type-alist): Ditto.
8753         (elmo-default-imap4-ssl): Abolished.
8754         (elmo-default-nntp-ssl): Ditto.
8755         (elmo-default-pop3-ssl): Ditto.
8756
8757         * elmo-util.el: (toplevel): Removed needless requires.
8758         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8759         (elmo-open-network-stream): Open network stream according to
8760         the value of `elmo-network-stream-type-alist'.
8761         (elmo-get-network-stream-type): New function.
8762         (elmo-network-stream-type-spec-string): New macro.
8763         (elmo-network-stream-type-symbol): Ditto.
8764         (elmo-network-stream-type-function): Ditto.
8765
8766         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8767         network-stream-type. All other related portions are changed.
8768         (elmo-pop3-open-connection): Ditto.
8769
8770         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8771         network-stream-type. All other related portions are changed.
8772
8773         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8774         network-stream-type.All other related portions are changed.
8775         (elmo-imap4-error): New macro.
8776         (elmo-imap4-error-type): Ditto.
8777         (elmo-imap4-error-process): Ditto.
8778         (elmo-imap4-error-message): Ditto.
8779         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8780         (elmo-imap4-auth-cram-md5): Ditto.
8781         (elmo-imap4-auth-digest-md5): Ditto.
8782         (elmo-imap4-login): Ditto.
8783         (elmo-imap4-open-connection): Remove password entry if authentication
8784         was in vain.
8785         (elmo-imap4-user-at-host): Abolished.
8786         (elmo-imap4-password-key): New buffer local variable.
8787         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8788         using protocol, port, auth and stream-type.
8789
8790         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8791
8792 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8793
8794         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8795
8796         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8797
8798         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8799         (elmo-imap4-authenticator-alist): New variable.
8800         (elmo-imap4-open-connection-1): Rename from
8801         elmo-imap4-open-connection.
8802         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8803         only wraps elmo-imap4-open-connection-1.
8804         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8805         user-at-host.
8806         (elmo-imap4-auth-login): New function.
8807         (elmo-imap4-auth-cram-md5): New function.
8808         (elmo-imap4-auth-digest-md5): New function.
8809         (elmo-imap4-login): New function.
8810
8811 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8812
8813         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8814         function `error'.
8815
8816 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8817
8818         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8819
8820 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8821
8822         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8823
8824 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8825
8826         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8827         for server responses, quote `*' regardless of where it appears.
8828
8829 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8830
8831         * elmo-maildir.el (elmo-maildir-commit): New alias.
8832
8833 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8834
8835         * elmo-util.el (elmo-display-progress):
8836                 Use `progress-feedback-with-label'.
8837
8838 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8839
8840         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8841         (elmo-imap4-non-atom-char-regex): Ditto.
8842         (elmo-imap4-non-text-char-regex): Ditto.
8843         (elmo-imap4-literal-threshold): Ditto.
8844         (elmo-imap4-atom-p): New function.
8845         (elmo-imap4-quotable-p): Ditto.
8846         (elmo-imap4-nil): Ditto.
8847         (elmo-imap4-atom): Ditto.
8848         (elmo-imap4-quoted): Ditto.
8849         (elmo-imap4-literal-subr): Ditto.
8850         (elmo-imap4-literal): Ditto.
8851         (elmo-imap4-buffer-literal): Ditto.
8852         (elmo-imap4-string-subr): Ditto.
8853         (elmo-imap4-string): Ditto.
8854         (elmo-imap4-buffer-string): Ditto.
8855         (elmo-imap4-astring-subr): Ditto.
8856         (elmo-imap4-astring): Ditto.
8857         (elmo-imap4-buffer-astring): Ditto.
8858         (elmo-imap4-nstring): Ditto.
8859         (elmo-imap4-buffer-nstring): Ditto.
8860         (elmo-imap4-mailbox): New alias.
8861         (elmo-imap4-field-body): Ditto.
8862         (elmo-imap4-userid): Ditto.
8863         (elmo-imap4-password): Ditto.
8864         (elmo-imap4-format-quoted): New function.
8865         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8866         arguments and handle "atom", "quoted" and "literal" string here.
8867         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8868         `elmo-imap4-send-command'.
8869         (elmo-imap4-folder-exists-p): Likewise.
8870         (elmo-imap4-create-folder): Likewise.
8871         (elmo-imap4-delete-folder): Likewise.
8872         (elmo-imap4-rename-folder): Likewise.
8873         (elmo-imap4-max-of-folder): Likewise.
8874         (elmo-imap4-check-validity): Likewise.
8875         (elmo-imap4-sync-validity): Likewise.
8876         (elmo-imap4-server-diff): Likewise.
8877         (elmo-imap4-select-folder): Likewise.
8878         (elmo-imap4-copy-msgs): Likewise.
8879         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8880         (elmo-imap4-mark-set-on-msgs): Likewise.
8881         (elmo-imap4-read-part): Likewise.
8882         (elmo-imap4-read-msg): Likewise.
8883         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8884         `elmo-imap4-password' for `elmo-imap4-send-command'.
8885         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8886         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8887         `elmo-imap4-buffer-literal'.
8888         (elmo-imap4-append-msg): Likewise.
8889
8890         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
8891         `delete' for removing dead connection from the connection cache.
8892         Move deletion of the process buffer after that.
8893         (elmo-imap4-list): Change `defsubst' to `defun'.
8894         (elmo-imap4-commit): Make error message verbose.
8895         (elmo-imap4-search): Ditto.
8896         (elmo-imap4-list): Ditto.
8897         (elmo-imap4-select-folder): Ditto.
8898         (elmo-imap4-copy-msgs): Ditto.
8899         (elmo-imap4-delete-msg-by-id): Ditto.
8900         (elmo-imap4-append-msg-by-id): Ditto.
8901         (elmo-imap4-append-msg): Ditto.
8902
8903 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
8904
8905         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
8906         when dired is used on XEmacs.
8907
8908 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
8909
8910         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8911         instead of `append'.
8912         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8913         `elmo-plugged-p' directly.
8914         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8915         of `elmo-plugged-p' directly.
8916
8917         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8918         Eliminate unused variable.  Use `memq' for checking a process status.
8919         Use `cons' instead of `append' for updating the connection cache.
8920         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8921         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8922
8923 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
8924
8925         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8926         `elmo-imap4-read-point' exactly.
8927
8928         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8929         the local variable `folder' to `mailbox'.
8930         Rename the argument `fld' to `folder'.
8931
8932 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
8933
8934         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8935         * elmo-imap4.el (elmo-imap4-commit): Ditto.
8936
8937 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
8938
8939         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8940         (elmo-pop3-number-uidl-hash): New buffer-local variable.
8941         (elmo-pop3-uidl-number-hash): Ditto.
8942         (elmo-pop3-size-hash): Ditto.
8943         (elmo-pop3-uidl-done): Ditto.
8944         (elmo-pop3-list-done): Ditto.
8945         (elmo-pop3-connection-get-process): New defmacro.
8946         (elmo-pop3-connection-get-buffer): Ditto.
8947         (elmo-pop3-close-connection): Delete buffer and process.
8948         (elmo-pop3-flush-connection): Don't delete buffer and process.
8949         (elmo-pop3-get-connection): Added optional argument `if-exists'.
8950         Setup UIDL and size hash.
8951         (elmo-pop3-send-command-no-erase): Deleted
8952         (elmo-pop3-send-command): Added optional argument `no-erase'.
8953         (elmo-pop3-parse-uidl-response): New function.
8954         (elmo-pop3-parse-list-response): Set size hash.
8955         (elmo-pop3-list-location): New function.
8956         (elmo-pop3-list-by-uidl-subr): Ditto.
8957         (elmo-pop3-list-by-list): Ditto.
8958         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8959         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8960         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8961         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8962         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8963         Use uidl.
8964         (elmo-pop3-uidl-to-number): New function.
8965         (elmo-pop3-number-to-uidl): Ditto.
8966         (elmo-pop3-number-to-size): Ditto.
8967         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8968         Set number by use of uidl.
8969         (elmo-pop3-msgdb-create-message): Likewise.
8970         Set size, loc-alist in msgdb.
8971         (elmo-pop3-read-msg): Set number by use of uidl.
8972         Added optional argument `msgdb'.
8973         (elmo-pop3-delete-msg): Ditto.
8974         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8975         (elmo-pop3-commit): Close connection.
8976
8977         * elmo-pipe.el (elmo-pipe-max-of-folder):
8978         Bind `elmo-pop3-use-uidl' as nil.
8979         (elmo-pipe-drain): Ditto.
8980         Call `elmo-commit'.
8981
8982         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8983         (elmo-msgdb-overview-entity-set-size): New defsubst.
8984
8985 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
8986
8987         * elmo-vars.el (elmo-use-killed-list): New variable
8988         (Renamed from `elmo-nntp-use-killed-list').
8989         (elmo-nntp-use-killed-list): Eliminated.
8990
8991         * elmo-msgdb.el (elmo-msgdb-expand-path):
8992         Changed expanding msgdb path for elmo-multi.
8993
8994         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8995         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8996         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8997         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8998         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8999         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
9000         (toplevel): Deleted time-stamp line.
9001
9002         * elmo2.el (elmo-clear-killed ): Defined as function
9003         (Abolished defining as a backend function).
9004         All other related modules are changed.
9005
9006 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
9007
9008         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
9009
9010 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
9011
9012         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
9013
9014 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
9015
9016         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
9017
9018 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
9019
9020         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
9021         asynchronous folder check.
9022
9023         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
9024
9025         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
9026         `elmo-nntp-use-killed-list'.
9027         (elmo-nntp-list-folder): Use killed list.
9028         (elmo-nntp-max-of-folder): Ditto.
9029         (elmo-nntp-msgdb-create): Set killed list.
9030
9031         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
9032
9033         * elmo2.el (elmo-clear-killed): New backend function.
9034         All other related modules are changed.
9035
9036 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
9037
9038         * elmo-util.el (elmo-imap4-spec-folder): Use
9039         `elmo-imap4-spec-mailbox'; Mark as obsolete.
9040         All callers changed.
9041
9042 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
9043
9044         * mmelmo-2.el (initialize-instance):
9045         Use `mime-buffer-entity-buffer-internal' instead of
9046         `mime-entity-buffer'.
9047
9048         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
9049         (mime-entity-body): Implemented.
9050         (mime-goto-header-start-point): Deleted.
9051         (mime-goto-body-end-point): Ditto.
9052         (mime-entity-point-min): Ditto.
9053         (mime-entity-point-max): Ditto.
9054         (mime-entity-children): Ditto.
9055         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
9056         instead of `mime-entity-buffer'.
9057         (mime-entity-header-buffer): Ditto.
9058         (mime-entity-body-buffer): Ditto.
9059         (mime-write-entity-content): Ditto.
9060
9061         * pldap.el (ldap-static-if): New macro.
9062         (toplevel): Use it instead of `static-if'.
9063
9064 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
9065
9066         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
9067         included in `attrs' argument.
9068
9069 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
9070
9071         * elmo-util.el (elmo-get-passwd): Use old backquote style.
9072
9073         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
9074         (ldap-ldif-safe-init-char-regexp): Ditto.
9075         (ldap-ldif-safe-string-regexp): Ditto.
9076         (ldap/ldif-safe-string-p): New macro.
9077         (ldap/ldif-insert-field): Ditto.
9078         (ldap-modify): Use it.
9079         (ldap-add): Ditto.
9080         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
9081         (ldap-decode-attribute): Decode only when `attr' is consp.
9082         (ldap-delete): Bind `ret'.
9083         (toplevel): Require 'cl at compile time.
9084         Removed (require 'poe) and (require 'std11).
9085         (pldap-version): Eliminated.
9086         (ldap-search-basic): Removed auth and dn binding.
9087         (ldap-ldif-field-name-regexp): New constant.
9088         (ldap-ldif-field-head-regexp): Ditto.
9089         (ldap-ldif-next-field-head-regexp): Ditto.
9090         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
9091         (ldap/field-end): New function.
9092         (ldap/field-body): Use it.
9093         (ldap/collect-field): Ditto.
9094         (ldap-search-basic): Use `ldap/field-body'.
9095
9096 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
9097
9098         * pldap.el (ldap-default-attribute-encoder): New user option.
9099         (ldap/field-body): Decode base64 string.
9100         (ldap/collect-field): Ditto.
9101         (ldap-encode-attribute): New function.
9102         (ldap-add-entries): Use it.
9103         (ldap-modify-entries): Ditto.
9104         (ldap-search-entries): Enclosed decoding function with
9105         `with-temp-buffer' and set as unibyte.
9106         (ldap-search-basic): Set process buffer as unibyte.
9107
9108         * elmo-util.el (elmo-folder-identical-system-p):
9109         Eliminated name space checking.
9110
9111         * pldap.el: New module.
9112         toplevel: Changed condition to detect built-in ldap feature.
9113         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
9114         (ldap-add): Added error handling.
9115         (ldap-modify): Ditto.
9116         (ldap-delete): Ditto.
9117
9118 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
9119
9120         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
9121         Initialize local variables with `let'.  Inline a temporary
9122         variable for the progress percentage.  Sort `setq' to reduce
9123         function call in the while-loop.
9124
9125         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
9126         into the conditional branch.
9127
9128 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
9129
9130         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
9131         Move a conditional out of the while-loop.
9132
9133 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9134
9135         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
9136         elmo-msgdb-overview-get-entity-by-number.
9137         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
9138         throw.
9139
9140 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
9141
9142         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
9143         the local variable for a packed number self descriptively.
9144
9145 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9146
9147         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
9148         * elmo-localdir.el (elmo-localdir-pack-number): Use
9149         `elmo-msgdb-overview-get-entity' instead of
9150         `elmo-msgdb-overview-get-entity-by-number'.
9151         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
9152         (elmo-msgdb-search-overview-entity): Removed.
9153         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
9154         by message-id or number.
9155         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
9156         instead of `elmo-msgdb-overview-get-entity-by-number'.
9157
9158 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9159
9160         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
9161         non-nil, use hash table for overview.
9162         (elmo-hash-maximum-size): New variable.
9163         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
9164         (elmo-msgdb-make-overview-hashtb): New function.
9165         (elmo-msgdb-clear-overview-hashtb): New function.
9166         (elmo-clear-hash-val): New macro.
9167         All other related modules are changed.
9168
9169 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
9170
9171         * elmo2.el (elmo-move-msgs): If there's other message with
9172         same message-id, don't use cache.
9173
9174 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
9175
9176         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
9177         number is already packed.
9178
9179 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
9180
9181         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
9182
9183 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9184
9185         * elmo-vars.el (elmo-display-progress-threshold): New variable.
9186         All other related modules are changed.
9187
9188 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
9189
9190         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
9191         of refiling failure on Maildir.
9192
9193 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9194
9195         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
9196         decoded mime-charset with cache.
9197         (elmo-msgdb-overview-entity-get-from): Ditto.
9198         (elmo-msgdb-overview-entity-get-subject): Ditto.
9199         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9200
9201 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9202
9203         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9204         (elmo-remove-passwd): Fill password with 0 before erase.
9205         * elmo-vars.el (elmo-passwd-life-time): New variable.
9206
9207 \f
9208 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9209
9210         * elmo-cache.el (elmo-buffer-cache-add):
9211         Set message cache buffer as unibyte.
9212
9213 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9214
9215         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9216         become nil.
9217
9218 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9219
9220         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9221         when display is finished.
9222         (elmo-nntp-msgdb-create): Ditto.
9223         (elmo-nntp-groups-read-response): Ditto.
9224         (elmo-nntp-retrieve-headers): Ditto.
9225         (elmo-nntp-msgdb-create-message): Ditto.
9226         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9227         (elmo-pop3-msgdb-create-message): Ditto.
9228
9229 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9230
9231         * elmo-maildir.el (elmo-maildir-msgdb-create):
9232         Use `elmo-msgdb-sort-by-date'.
9233
9234 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9235
9236         * elmo2.el (elmo-read-msg-no-cache):
9237         Eliminated arguments after `outbuf'.
9238         Don't use cache even if it exists.
9239         (elmo-read-msg): Don't pass arguments after `outbuf' to
9240         `elmo-read-msg-no-cache'.
9241
9242 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9243
9244         * elmo-archive.el (elmo-archive-list-folders):
9245         Use `file-name-directory' if base folder does not exist.
9246
9247 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9248
9249         * elmo-archive.el (elmo-archive-list-folders): Don't use
9250         `file-name-directory'.
9251
9252 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9253
9254         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9255         If `force' is non-nil, try flushing all operation queues.
9256
9257 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9258
9259         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9260         as-binary-process.
9261
9262 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9263
9264         * elmo-util.el (elmo-display-progress): Fixed.
9265
9266 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9267
9268         * elmo-util.el (elmo-display-progress): New function.
9269         All other related modules are changed.