* elmo.el (elmo-crosspost-message-alist-save): Don't use
[elisp/wanderlust.git] / elmo / ChangeLog
1 2010-01-04  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2
3         * elmo.el (elmo-crosspost-message-alist-save): Don't use
4         `function' for `lambda'.
5         * elmo-archive.el (elmo-archive-folder-list-subfolders)
6         (elmo-folder-append-messages-*-archive)
7         (elmo-folder-delete-messages-internal): Ditto.
8         * elmo-date.el (elmo-replace-in-string): Ditto.
9         * elmo-multi.el (elmo-folder-list-messages, elmo-folder-search)
10         (elmo-folder-list-flagged): Ditto.
11         * elmo-maildir.el (elmo-maildir-cleanup-temporal): Ditto.
12         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
13         * modb-standard.el (modb-standard-cleanup-stale-entities): Ditto.
14
15 2010-01-02  TAKAHASHI Kaoru  <kaoru@kaisei.org>
16
17         * elmo-dop.el (elmo-dop-spool-folder): Suppress warning "defsubst
18         `elmo-dop-spool-folder' was used before it was defined"; Use
19         `defun' instead.
20
21         * pldap.el (ldap/ldif-safe-string-p): macro to function.
22         * elmo-imap4.el (elmo-imap4-detect-search-charset): Ditto.
23
24         * elmo.el (elmo-folder-info-make-hashtb): Use `mapc' instead of
25         `mapcar'; Suppress compile warning.
26         * elmo-imap4.el (elmo-network-initialize-session-buffer)
27         (elmo-imap4-search-internal-primitive): Ditto.
28         * elmo-nntp.el (elmo-nntp-search-primitive): Ditto.
29         * elmo-archive.el (elmo-archive-exec-msgs-subr2): Ditto.
30
31         * elmo-imap4.el (elmo-imap4-parse-address-list)
32         (elmo-imap4-parse-fetch-body-section, elmo-imap4-parse-body)
33         (elmo-imap4-parse-acl, elmo-imap4-parse-body-extension)
34         (elmo-imap4-parse-body-ext, elmo-imap4-parse-body): Use
35         `(string-to-char " ")' instead of `? ', `?\ '.
36
37 2010-01-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
38
39         * pldap.el (ldap-search-entries): Don't use `function' for lambda.
40         (ldap-add-entries, ldap-modify-entries): Use `mapc' instead of `mapcar'.
41         (ldap-delete-entries): Use `mapc' instead of `mapcar'. Don't use
42         `function' for lambda.
43
44         * modb-standard.el (modb-standard-cleanup-stale-entities): Use
45         `string-to-number' instead of `string-to-int'.
46
47         * elmo-util.el (elmo-set-work-buf): Use `with-current-buffer'
48         instead of `save-excursion' (for suppress compile warnings).
49         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
50         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Ditto.
51         (elmo-nntp-post): Ditto.
52
53 2009-08-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
54
55         * utf7.el (utf7-get-u16char-converter): Revert BOM workaround for
56         Mule-UCS (to-utf-16).
57         (utf7-utf-16-coding-system): Change preference when Mule-UCS on
58         Emacs 23.
59
60 2009-07-11  Taiki SUGAWARA  <buzz.taiki@gmail.com>
61
62         * utf7.el (utf7-find-coding-system-without-bom): New Function.
63         (utf7-utf-16-coding-system): use no-BOM coding system.
64         (utf7-get-u16char-converter): remove workaround for BOM.
65
66 2009-05-26  Vitaly Mayatskikh <v.mayatskih@gmail.com>
67
68         * elmo-util.el (elmo-union): New function, make a union of two lists.
69
70         * elmo-mime.el (elmo-mime-entity-display): Fix Emacs crash in
71         mime-view when displaying malformed base64 attach.
72
73         * elmo-imap4.el (elmo-imap4-folder-list-flagged): Use elmo-imap4-list
74         (removed duplicated code)
75
76         * modb-standard.el (modb-standard-cleanup-stale-entities): New
77         function, Remove stale entities from elmo's cache.
78
79 2009-05-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
80
81         * elmo-version.el (elmo-version): Up to 2.15.7.
82
83 2009-03-22  Tetsurou Okazaki  <okazaki@be.to>
84
85         * elsp-bsfilter.el (elmo-spam-bsfilter-update-switch): Change
86         default value to `--auto-update'.
87
88 2008-07-06  TAKAHASHI Kaoru  <kaoru@kaisei.org>
89
90         * elmo-pop3.el (elmo-pop3-read-contents): Fix double `goto-char'.
91         Add `elmo-pop3-read-point' barrier.
92
93 2008-07-06 YAMASHITA Junji <ysiijj@gmail.com>
94
95         * elmo-pop3.el (elmo-pop3-read-contents): improving performance:
96         goto the previous end-point insead of the head-point, and use
97         `search-forward' instead of `re-search-forward'.
98
99 2008-06-30  Tetsurou Okazaki  <okazaki@be.to>
100
101         * elmo-imap4.el (elmo-imap4-parse-status): Use `case' instead of `cond'.
102
103 2008-06-30  Don Bashford  <Don.Bashford@stjude.org>
104
105         * elmo-imap4.el (elmo-imap4-parse-status): Accept IMAP4 tokens in a
106         case-insensitive fashion.
107
108 2008-03-30  Tetsurou Okazaki  <okazaki@be.to>
109
110         * elmo-imap4.el (elmo-imap4-send-command): Combine `process-send-string' calls.
111
112 2008-02-20  TAKAHASHI Kaoru  <kaoru@kaisei.org>
113
114         * elmo-util.el (elmo-add-name-to-file, elmo-field-body): Use
115         `eval-and-compile' for suppress compile warnings.
116
117         * elmo-vars.el (dynamic-link, dynamic-call): Use `defalias-maybe'
118         instead of `defun-maybe'
119
120         * elmo-util.el: Add (eval-when-compile (require 'static)).
121
122 2008-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
123
124         * mmimap.el: Remove (require 'static).
125         * acap.el: Ditto.
126
127         * elmo-flag.el: Move ';;; Code:' comment.
128         * elmo-imap4.el: Ditto.
129         * elmo-net.el: Ditto.
130
131         * elmo-version.el (product-provide): Fix comment.
132
133 2008-02-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
134
135         * slp.el: Add (eval-when-compile (require 'cl)).
136         * elmo-date.el: Ditto.
137         * elmo-pop3.el: Ditto.
138         * elmo-mime.el: Add (eval-when-compile (require 'elmo)).
139
140 2008-02-17  TAKAHASHI Kaoru  <kaoru@kaisei.org>
141
142         * modb.el (elmo-msgdb-match-condition-primitive): Use
143         `string-to-number' instead of `string-to-int'.
144
145         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer)
146         (elmo-msgdb-message-match-condition)
147         (elmo-msgdb-create-message-entity-from-buffer): Use
148         `string-to-number' instead of `string-to-int'.
149
150         * elmo.el (elmo-folder-confirm-appends): Use `string-to-number'
151         instead of `string-to-int'.
152
153         * elmo-util.el (elmo-cache-expire-by-age): Use `string-to-number'
154         instead of `string-to-int'.
155
156         * elmo-pop3.el (elmo-pop3-list-by-list, elmo-folder-status): Use
157         `string-to-number' instead of `string-to-int'.
158
159         * elmo-nntp.el (elmo-nntp-make-msglist)
160         (elmo-folder-list-messages-plugged, elmo-nntp-folder-status)
161         (elmo-nntp-create-msgdb-from-overview-string)
162         (elmo-nntp-parse-xhdr-response, elmo-nntp-msgdb-create-message)
163         (elmo-nntp-search-primitive): Use `string-to-number' instead of
164         `string-to-int'.
165
166         * elmo-net.el (elmo-net-folder-set-parameters): Use
167         `string-to-number' instead of `string-to-int'.
168
169         * elmo-localdir.el (elmo-localdir-list-subr): Use
170         `string-to-number' instead of `string-to-int'.
171
172         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Use
173         `string-to-number' instead of `string-to-int'.
174
175         * elmo-date.el (elmo-date-get-datevec): Use `string-to-number'
176         instead of `string-to-int'.
177
178         * elmo-archive.el (elmo-archive-list-folder-subr): Use
179         `string-to-number' instead of `string-to-int'.
180
181 2008-02-16  TAKAHASHI Kaoru  <kaoru@kaisei.org>
182
183         * elmo-util.el (elmo-get-passwd): Fix typo.
184
185         * elmo-nntp.el (elmo-nntp-get-server-command)
186         (elmo-nntp-set-server-command, elmo-nntp-xover-p)
187         (elmo-nntp-listgroup-p, elmo-nntp-set-listgroup)
188         (elmo-nntp-list-active-p, elmo-nntp-set-list-active)
189         (elmo-nntp-xhdr-p, elmo-nntp-set-xhdr): New backquote style.
190
191         * elmo-imap4.el (elmo-imap4-debug)
192         (elmo-imap4-response-continue-req-p, elmo-imap4-response-ok-p)
193         (elmo-imap4-response-bye-p, elmo-imap4-response-garbage-p)
194         (elmo-imap4-response-value, elmo-imap4-response-error-text)
195         (elmo-imap4-response-bodydetail-text, elmo-imap4-value)
196         (elmo-imap4-nth, elmo-imap4-detect-search-charset)
197         (elmo-imap4-identical-system-p): New backquote style.
198
199 2008-02-15  TAKAHASHI Kaoru  <kaoru@kaisei.org>
200
201         * elmo-dop.el (elmo-make-dop-queue): New backquote style.
202         (elmo-dop-queue-fname, elmo-dop-queue-method): Ditto.
203         (elmo-dop-queue-arguments): Ditto.
204
205         * elmo-date.el (elmo-match-substring): New backquote style.
206         (elmo-match-string, elmo-match-buffer): Ditto.
207         (elmo-date-make-sortable-string): Ditto.
208
209         * elmo-archive.el (elmo-archive-get-method):New backquote style.
210         (elmo-archive-get-suffix, elmo-archive-get-regexp): Ditto.
211
212         * elmo-multi.el (elmo-multi-real-folder-number): New backquote
213         style.
214
215         * elmo-net.el (elmo-network-stream-type-spec-string): New
216         backquote style.
217         (elmo-network-stream-type-symbol): Ditto.
218         (elmo-network-stream-type-feature): Ditto.
219         (elmo-network-stream-type-function): Ditto.
220         (elmo-network-session-buffer): Ditto.
221
222         * elmo-util.el (elmo-file-cache-expand-path): New backquote style.
223         (elmo-file-cache-status, elmo-file-cache-path): Ditto.
224         (elmo-make-file-cache, elmo-string, elmo-get-passwd): Ditto.
225         (elmo-bind-directory, elmo-set-work-buf): Ditto.
226
227         * elmo.el (elmo-folder-send): New backquote style.
228
229 2008-02-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
230
231         * pldap.el (ldap-static-if): New backquote style.
232         (ldap/ldif-safe-string-p): Ditto.
233         (ldap/ldif-insert-field): Ditto.
234
235         * elmo-version.el (elmo-version): Up to 2.15.6.
236
237 2008-01-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
238
239         * elmo-imap4.el (elmo-folder-list-messages-plugged): Don't include
240         messages with \Deleted flag.
241         (elmo-folder-delete-messages-plugged): Ask before sending expunge
242         command if there are messages with \Deleted flag.
243
244 2007-04-24  Yoichi NAKAYAMA  <yoichi@geiin.org>
245
246         * elmo-pop3.el (elmo-pop3-auth-apop): Use more strict regexp.
247         http://seclists.org/bugtraq/2007/Apr/0018.html
248         (Suggested by Tatsuya Kinoshita)
249
250 2007-04-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
251
252         * elmo-imap4.el (elmo-folder-delete): Don't call close for mailbox
253         with \Noselect attribute.
254
255 2007-04-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
256
257         * elmo-imap4.el (elmo-folder-list-subfolders): Fix handling of
258         hierarchical folder structure with UW-imapd.
259
260 2007-02-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
261
262         * elmo-imap4.el (elmo-imap4-clear-login): Don't send LOGIN command
263         when the LOGINDISABLED capability is advertised.
264
265 2007-01-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
266
267         * elmo-msgdb.el (elmo-msgdb-extra-fields): Make it non-destructive.
268
269 2007-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
270
271         * elmo-shimbun.el (elmo-shimbun-update-overview): Add argnument
272         `entity'.
273         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview' only
274         if the message entity is exists.
275
276 2007-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
277
278         * elmo-util.el (elmo-msgdb-insert-file-header): Call
279         `elmo-delete-cr-buffer'.
280
281         * elmo-localdir.el (elmo-message-fetch-internal): Use
282         `insert-file-contents-as-raw-text' instead of
283         `insert-file-contents-as-binary'.
284
285         * elmo-maildir.el (elmo-map-message-fetch): Ditto.
286
287 2006-12-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
288
289         * elmo-imap4.el (elmo-network-initialize-session): Check to
290         retrieve a whole greeting message.
291
292 2006-11-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
293
294         * elmo-flag.el (elmo-folder-commit): Encode `.minfo' at save.
295
296 2006-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
297
298         * elmo-util.el (elmo-safe-plist-get): New alias or macro.
299         (elmo-progress-notify): Use it instead of `plist-get'.
300
301 2006-11-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
302
303         * elmo.el (elmo-generic-folder-append-messages): Remove unused
304         variable `table'.
305
306 2006-11-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
307
308         * elmo-pipe.el (elmo-folder-set-plugged): Define.
309
310 2006-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
311
312         * elsp-bsfilter.el (elmo-spam-bsfilter-use-remote): New user option.
313         (elmo-spam-list-spam-messages): Check it option.
314
315 2006-11-08  Tetsurou Okazaki  <okazaki@be.to>
316
317         * elmo-util.el (elmo-with-progress-display): Return the value
318         of the last form in `body'.
319
320 2006-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
321
322         * elmo-util.el (elmo-progress-start): Accept nil for `total'.  Set
323         `elmo-progress-counter' as t when a query callback returns nil.
324         (elmo-progress-clear): New function.
325         (elmo-progress-done): Split into `elmo-progress-clear'.
326         (elmo-progress-notify): Update a total slot when it is nil.
327         (elmo-with-progress-display): Call `elmo-progress-clear' in
328         unwind-protect and move calling `elmo-progress-done' to outside.
329
330         * elmo-imap4.el (elmo-imap4-find-next-line): Call
331         `elmo-progress-notify' with :total parameter instead of
332         `elmo-progress-counter-set-total'.
333
334 2006-11-07  Tetsurou Okazaki  <okazaki@be.to>
335
336         * elmo-util.el (elmo-cache-expire-by-age): Add docstring.
337         Make it interactive.
338         (elmo-progress-start): Avoid updating `elmo-progress-counter'
339         when a query callback returns nil.  Return a progress counter
340         instead of t whenever a start callback was called.
341
342 2006-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
343
344         * elmo-imap4.el (elmo-imap4-session-capable-p): New macro.
345         (elmo-imap4-send-command): Use it.
346         (elmo-network-initialize-session): Ditto.
347         (elmo-network-setup-session): Ditto.
348         (elmo-folder-msgdb-create-plugged): Ditto.
349
350 2006-11-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
351
352         * elmo-util.el (elmo-progress-done): Fix a miss refer to
353         `elmo-progress-counter'.
354
355 2006-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
356
357         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Abolish.
358         (elsp-bsfilter-list-spam-filter): New function.
359         (elsp-bsfilter-start-list-spam): Ditto.
360         (elsp-bsfilter-read-list-spam): Ditto.
361         (elmo-spam-list-spam-messages): Use async process to display
362         progress message by each message.
363
364 2006-11-03  Yoichi NAKAYAMA  <yoichi@geiin.org>
365
366         * elmo-spam.el (elmo-spam-process-messages-as-mbox): Fix problem
367         of flushing previously inserted message contents.
368
369         * elmo-imap4.el (elmo-folder-search): Fix return value.
370
371 2006-11-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
372
373         * elmo-imap4.el (elmo-imap4-find-next-line): Check whether a label
374         of reporter is enable or not.
375
376 2006-10-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
377
378         * elmo-util.el (elmo-list-bigger-diff): Abolish.
379         (elmo-display-progress): Ditto.
380         (elmo-progress-counter-alist): Ditto.
381         (elmo-progress-set): Ditto.
382         (elmo-progress-clear): Ditto.
383         (elmo-progress-counter-all-value): Rename to
384         `elmo-progress-counter-total'.
385         (elmo-progress-counter-format): Rename to
386         `elmo-progress-counter-action'.
387         (elmo-progress-counter): New internal variable.
388         (elmo-progress-callback-function): Ditto.
389         (elmo-progress-counter-label): New function.
390         (elmo-progress-counter-set-total): Ditto.
391         (elmo-progress-counter-set-action): Ditto.
392         (elmo-progress-call-callback): Ditto.
393         (elmo-progress-start): Ditto.
394         (elmo-progress-done): Ditto.
395         (elmo-progress-notify): Rewrite.
396         (elmo-with-progress-display): Remove first argument
397         `condition'. Add optional argument `var' in `spec'.
398
399         * elmo-vars.el (elmo-display-progress-threshold): Abolish.
400         (elmo-display-retrieval-progress-threshold): Ditto.
401         (elmo-inhibit-display-retrieval-progress): Ditto.
402
403         * Replace all pair of `elmo-progress-set' and
404         `elmo-progress-clear' into `elmo-with-progress-display'.
405
406         * Replace to call `elmo-display-progress' into pair of
407         `elmo-progress-notify' and `elmo-with-progress-display'.
408
409         * elmo-version.el (elmo-version): Up to 2.15.5.
410
411 2006-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
412
413         * elmo-imap4.el (elmo-imap4-arrival-filter): Use `case' instead of
414         `cond'.
415
416 2006-10-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
417
418         * elmo-imap4.el (elmo-imap4-arrival-filter): Call delete-region in
419         cleanup-forms [wl:14027].
420
421 2006-10-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
422
423         * elmo-flag.el (elmo-global-flag-set-internal): Use
424         `elmo-copy-file' by priority when the message is a file.
425
426 2006-10-01  Yoichi NAKAYAMA  <yoichi@geiin.org>
427
428         * elmo.el: Fix typo: disptch -> dispatch.
429
430 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
431
432         * elmo.el (elmo-file-tag): New class.
433         (elmo-append-messages-disptch-table): New constant.
434         (elmo-folder-type-p): New function.
435         (elmo-folder-append-messages): Redefine as function.
436
437         * elmo-null.el (elmo-folder-append-messages): Renamed from
438         `elmo-folder-append-messages'.
439
440         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
441         (elmo-folder-append-messages-*-maildir): Renamed from
442         `elmo-folder-append-messages'.
443
444         * elmo-localdir.el (elmo-localdir-folder): Inherit
445         `elmo-file-tag'.
446         (elmo-folder-append-messages-*-localdir): Renamed from
447         `elmo-folder-append-messages'.
448
449         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
450         from `elmo-folder-append-messages'.
451
452         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
453         `elmo-folder-append-messages'.
454
455         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
456         function.
457         (elmo-folder-append-messages-*-filter): Ditto.
458
459         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
460
461         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
462         (elmo-folder-append-messages-*-pipe): Renamed from
463         `elmo-folder-append-messages'.
464
465         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
466
467         * elmo-file.el (elmo-file-folder): Ditto.
468
469         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
470
471         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
472         from `elmo-folder-append-messages'
473
474 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
475
476         * elmo-map.el (elmo-location-map-setup): Change an argument
477         `locations' to optional.
478         (elmo-location-map-clear): Abolish.
479         (elmo-folder-clear): Follow the API change.
480
481         * elmo-pop3.el (elmo-folder-clear): Ditto.
482
483         * elmo-pop3.el (toplevel): Require elmo-map.
484         (elmo-pop3-folder): Inherit elmo-location-map and abolish
485         location-alist slot (All other related portions are changed).
486         (elmo-pop3-folder-use-uidl): New function.
487         (elmo-folder-msgdb-create): Don't sort message entities.
488         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
489         (elmo-pop3-number-to-size): Convert return value to number.
490         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
491         working buffer.
492
493         * elmo-map.el: Use `location-map' as a variable name for instance
494         instead of `mapper'.
495         (elmo-location-map-setup): Return location alist.
496         (elmo-location-map-update): Ditto.
497
498 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
499
500         * elmo-map.el (elmo-location-map): New class; split location and
501         number mapping from elmo-map-folder (All other related portions
502         are changed).
503
504         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
505         change.
506
507         * elmo-version.el (elmo-version): Up to 2.15.4.
508
509 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
510
511         * elmo-vars.el (elmo-use-hardlink): New user option.
512
513         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
514         `elmo-use-hardlink'.
515
516         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
517         killed-list.
518         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
519         instead of `*-internal'. Use `elmo-with-progress-display'.
520
521 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
522
523         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
524         `elmo-spam-process-messages-as-mbox'.
525
526         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
527
528 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
529
530         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
531         argument BUFFER of `call-process'.
532
533 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
534
535         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
536         args.
537         (elsp-bsfilter-list-spam-files): Ditto.
538
539 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
540
541         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
542         (elmo-spam-bsfilter-max-messages-per-process): New use option.
543         (elmo-spam-bsfilter-debug): Fix a group.
544         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
545         `--homedir'.
546         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
547         (elsp-bsfilter-list-spam-files): New function.
548         (elmo-spam-list-spam-messages): Define.
549         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
550         (elmo-spam-bsfilter-register-messages): New function.
551         (elmo-spam-register-spam-messages): Define.
552         (elmo-spam-register-good-messages): Ditto.
553
554         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
555
556         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
557         `nconc' and `consp'.
558
559 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
560
561         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
562         hash table to test whether a location is exists.
563
564 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
565
566         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
567         even if some error occurred.
568
569         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
570         meaningless unwind-protect.
571
572         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
573         start-number correctly.
574         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
575         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
576
577 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
578
579         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
580         (elmo-folder-initialize): Use it.
581         (elmo-global-flag-replace-referrer): New function.
582
583         * elmo.el (toplevel): Added autoload setting for
584         `elmo-global-flag-replace-referrer'.
585         (elmo-folder-rename): Rewrite the last change use
586         `elmo-global-flag-replace-referrer'.
587
588         * elmo-pipe.el (elmo-folder-rename): Call
589         `elmo-global-flag-replace-referrer'.
590
591 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
592
593         * elmo.el (elmo-folder-rename): Set meta data for global flags
594         follow the rename.
595
596 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
597
598         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
599         as 'not-loaded.
600         (elmo-folder-close): Ditto.
601         (elmo-filter-folder-number-list-loaded-p): New function.
602         (elmo-filter-folder-number-list): Check whether loaded or not.
603         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
604         of `elmo-filter-folder-number-list-internal'.
605         (elmo-folder-delete-messages): Ditto.
606         (elmo-folder-length): Check whether number-list is loaded or not.
607
608 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
609
610         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
611         field `real field' into each element of list.
612         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
613         (elmo-msgdb-message-entity-field): Ditto.
614         (modb-entity-ml-info-real-fields): New function.
615
616         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
617
618         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
619         `elmo-msgdb-extra-fields'.
620
621 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
622
623         * elmo-util.el (elmo-passwd-alist-load): Move point to min
624         position before read.
625
626 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
627
628         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
629         (elmo-global-flags-initialize): Ditto.
630
631 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
632
633         * elmo-archive.el (toplevel): Don't require emu, std11
634         and elmo-localdir.
635
636         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
637         definition.
638
639 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
640
641         * elmo.el (elmo-folder-confirm-appends): Display folder name.
642
643 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
644
645         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
646         literals.
647
648 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
649
650         * elmo-maildir.el (elmo-maildir-list-location): Reduce
651         `elmo-get-last-modification-time' call.
652
653 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
654
655         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
656         expression.
657         (elmo-maildir-set-mark): Ditto.
658         (elmo-maildir-delete-mark): Ditto.
659
660 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
661
662         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
663         optional argument `separators'.
664
665 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
666
667         * elmo.el (cache-changed): Abolish.
668         (status-changed): New signal.
669         (elmo-message-killed-p): New generic function and define for
670         elmo-folder.
671         (elmo-folder-recover-messages): Ditto.
672         (elmo-message-set-cached): Emit signal `status-changed' instead of
673         `cache-changed'.
674         (elmo-message-status): New macro.
675         (elmo-message-status-folder): Ditto.
676         (elmo-message-status-number): Ditto.
677         (elmo-message-status-set-flags): Ditto.
678         (elmo-message-status-set-killed): Ditto.
679         (elmo-message-status-flags): New function.
680         (elmo-message-status-cached-p): Ditto.
681         (elmo-message-status-killed-p): Ditto.
682
683         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
684         `status-changed' instead of `cache-changed'.
685         (elmo-folder-recover-messages): Define.
686         (elmo-message-killed-p): Ditto.
687
688         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
689         `status-changed' instead of `cache-changed'.
690
691         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
692         (elmo-message-killed-p): Define.
693         (elmo-folder-recover-messages): Ditto.
694
695         * elmo-version.el (elmo-version): Up to 2.15.3.
696
697 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
698
699         * elmo-signal.el (elmo-signal-bindings): Use cons to append
700         element into list.
701         (elmo-define-signal-handler): Add docstring.
702         (elmo-define-signal-filter): Ditto.
703
704         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
705
706 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
707
708         * elmo-util.el (elmo-flatten): Don't use recursive call.
709
710         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
711         assignment.
712         (elmo-folder-message-make-temp-files): Use `number-to-string'
713         instead of `int-to-string'.
714
715 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
716
717         * elmo-search.el (elmo-folder-delete-messages): Define.
718
719 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
720
721         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
722         customization type.
723         (elmo-mailing-list-count-spec-list): Ditto.
724
725         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
726         for `list-id'.
727
728 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
729
730         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
731         handling.
732
733 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
734
735         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
736         (elmo-mailing-list-count-spec-list): Ditto.
737
738         * elmo-util.el (elmo-map-until-success): New function.
739         (elmo-string-match-substring): Ditto.
740         (elmo-find-list-match-value): Ditto.
741
742         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
743         Removed.
744         (modb-entity-extract-ml-info-from-subject): Ditto.
745         (modb-entity-extract-ml-info-from-return-path): Ditto.
746         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
747         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
748         (modb-entity-extract-ml-info-from-mailman): Ditto.
749         (modb-entity-extract-mailing-list-info-functions): Ditto.
750         (modb-entity-extract-mailing-list-info): Rewrite with
751         `elmo-find-list-match-value'.
752
753 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
754
755         * elmo-net.el (elmo-network-session-retry-count): New user option.
756         (elmo-network-session-buffer-name): New internal function.
757         (elmo-network-session-buffer-create): Ditto.
758         (elmo-network-open-session): Retry open network session
759         `elmo-network-session-retry-count' times.
760
761 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
762
763         * elmo-util.el (elmo-list-filter): Rewritten.
764
765 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
766
767         * elmo-util.el (elmo-string-member): Allow symbol element in list.
768
769 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
770
771         * elmo-search.el (elmo-make-search-engine): Use prefix
772         `elmo-search-' for require symbol instead of `else-'.
773         (elmo-search-engine-extprog): New class.
774         (elmo-search-engine-do-search): Remove nil from argument
775         list. Added argument pattern to evaluate element as function.
776         (elmo-search-engine-local-file): Derived from
777         `elmo-search-engine-extprog'.
778         (elmo-search-engine-create-message-entity): Check existance of file.
779         (elmo-search-engine-fetch-message): Ditto.
780         (elmo-search-namazu-index): Follow the API change.
781         (elmo-search-grep-target): Ditto.
782
783 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
784
785         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
786         characters of working buffer.
787
788         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
789         Does not bind `default-mime-charset'.
790         (elmo-msgdb-create-message-entity-from-buffer): Removed
791         unnecessary local bind.
792
793         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
794         function.
795         (modb-entity-extract-mailing-list-info-functions): Added it.
796
797 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
798
799         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
800         when number and message-id are non-nil.
801
802         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
803
804         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
805         conditional steatment.
806         (elmo-pop3-auth-apop): Likewise.
807         (elmo-network-authenticate-session): Likewise.
808
809 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
810
811         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
812         symbol `fill-column'.
813         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
814         decode field value.
815
816         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
817         (elmo-decoded-field-body): Ditto.
818
819 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
820
821         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
822         `tokens' to `params'.
823
824 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
825
826         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
827         working buffer.
828
829 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
830
831         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
832         decide index.
833
834 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
835
836         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
837         Set default value as nil.
838         (toplevel): Register search engines by
839         `elmo-search-register-engine' if there are not defined.
840
841         * elmo.el (autoload): Added autoload setting for
842         `elmo-search-register-engine'.
843
844 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
845
846         * elmo.el (toplevel): `[' is redefined as the prefix of the search
847         folder instead of nmz folder.
848         (elmo-nmz-default-index-path): Added obsolete variable setting.
849         (elmo-nmz-index-alias-alist): Ditto.
850         (elmo-nmz-use-drive-letter): Ditto.
851
852         * elmo-search.el (elmo-search-register-engine): New function.
853
854         * elmo-nmz.el: Removed.
855
856         * elmo-version.el (elmo-version): Up to 2.15.2.
857
858 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
859
860         * elmo-search.el: New file.
861
862 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
863
864         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
865         condition `larger' and `smaller'.
866
867 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
868
869         * elmo-util.el (elmo-safe-filename): Rewrite to replace
870         `"' (double quote) into "_Q_".
871
872 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
873
874         * elmo-net.el (elmo-net-quote-chars): Abolish.
875         (elmo-net-format-quoted): Ditto.
876
877 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
878
879         * elmo.el (elmo-get-folder-function): New variable.
880         (elmo-get-folder): New function.
881         (elmo-folder-rename): Call `elmo-make-folder' with specified
882         mime-charset.
883
884         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
885         `elmo-make-folder'.
886         (elmo-split-subr): Ditto.
887
888         * elmo-multi.el (elmo-folder-initialize): Ditto.
889
890         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
891
892         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
893         (elmo-flag-get-folder): Ditto.
894
895         * elmo-filter.el (elmo-folder-initialize): Ditto.
896
897         * elmo-access.el (elmo-folder-initialize): Ditto.
898         (elmo-access-folder-update-children): Ditto.
899
900         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
901         (elmo-dop-queue-flush): Ditto.
902         (elmo-folder-append-buffer-dop-delayed): Ditto.
903         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
904         mime-charset.
905
906         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
907         instead of `elmo-make-folder'.
908         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
909         destination folder instead of send `elmo-folder-rename-internal'.
910
911         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
912         slot of subfolder instead of create it.
913
914 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
915
916         * elmo-util.el (elmo-collect-separators): New function.
917         (elmo-collect-separators-internal): Ditto.
918         (elmo-collect-trail-separators): Ditto.
919         (elmo-parse-separated-tokens): Ditto.
920         (elmo-parse-separated-tokens-internal): Ditto.
921         (elmo-quote-syntactical-element): Ditto.
922
923         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
924         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
925
926         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
927         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
928         (elmo-nntp-folder-list-subfolders): Quote a user name.
929
930         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
931         (elmo-net-parse-network): Abolish.
932         (elmo-net-folder-set-parameters): New function.
933         (elmo-folder-initialize): Follow the above change.
934
935         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
936         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
937         (elmo-folder-list-subfolders): Use
938         `elmo-quote-syntactical-element' instead of
939         `elmo-net-format-quoted' to quote mailbox and user name.
940
941 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
942
943         * elmo-util.el (elmo-token-valid-p): New function.
944         (elmo-parse-token): Add optional argument `requirement'.
945         (elmo-parse-prefixed-element): Likewise.
946
947         * elmo-net.el (elmo-net-quote-chars): Renamed from
948         `elmo-net-quote-chars-regexp'.
949         (elmo-net-format-quoted): Add optional argument `extra-chars'.
950
951         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
952         by info document. Check token `uidl' is started an alphabet.
953
954         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
955         by info document. Check token `user' is started an alphabet.
956
957         * elmo-imap4.el (elmo-folder-initialize): Ditto.
958         (elmo-folder-list-subfolders): Quote user.
959
960 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
961
962         * elmo-util.el (elmo-quoted-specials-list): New constant.
963         (elmo-quoted-token): New function.
964
965         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
966         (elmo-net-format-quoted): New function.
967         (elmo-net-parse-network): Ditto.
968         (elmo-folder-initialize): Use it.
969
970         * elmo-nntp.el (elmo-folder-initialize): Use
971         `elmo-net-parse-network' to parse network specification instead of
972         `elmo-folder-initialize#elmo-net'.
973
974         * elmo-pop3.el (elmo-folder-initialize): Ditto.
975
976         * elmo-imap4.el (elmo-folder-initialize): Ditto.
977         (elmo-folder-list-subfolders): Quote folder name by
978         `elmo-net-format-quoted'.
979
980 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
981
982         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
983         (elmo-folder-search): Use it.
984
985 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
986
987         * modb-standard.el (modb-standard-loaded-message-id): Use
988         `elmo-msgdb-message-entity-field'.
989
990 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
991
992         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
993         without filename.
994
995 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
996
997         * elmo-util.el (elmo-set-auto-coding): New function.
998         (elmo-object-load): Use it.
999
1000 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1001
1002         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
1003         (elmo-time<): Define as alias of `elmo-time-less-p'.
1004         (elmo-time-to-datevec): New function.
1005
1006         * elmo-date.el (elmo-time-to-days): New function.
1007
1008 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1009
1010         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
1011         is not cons cell.
1012
1013 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1014
1015         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
1016         parenthesis.
1017
1018         * elmo-util.el (elmo-map-recursive): New function.
1019
1020         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
1021         (modb-entity-encode-string-recursive): Ditto.
1022
1023 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
1024
1025         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
1026         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
1027         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
1028         compare sequence number when last modified time is nil.
1029
1030 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
1031
1032         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
1033
1034         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
1035
1036 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
1037
1038         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
1039         modification time of the file.
1040
1041 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1042
1043         * elmo-util.el (elmo-condition-optimize): Discriminated against
1044         preserved fields, extra fields and the other weight.
1045
1046 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1047
1048         * modb-entity.el (initialize-instance): Define.
1049         (modb-entity-handler-mime-charset): New internal function.
1050         (modb-standard-entity-set-field): Use it.
1051         (elmo-msgdb-message-entity-field): Ditto.
1052         (elmo-msgdb-message-entity-field): Ditto.
1053
1054         * modb.el (elmo-msgdb-match-condition): Rewrite with
1055         `elmo-condition-match'.
1056         (elmo-msgdb-match-condition-primitive): New function.
1057
1058         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
1059         arguments `flags' and `numbers'.
1060         (elmo-msgdb-match-condition-primitive): Abolished (merged to
1061         `elmo-msgdb-message-match-condition').
1062         (modb-buffer-entity-handler): New class.
1063
1064         * elmo.el (elmo-folder-search): Optimize condition to use
1065         `elmo-condition-optimize'.
1066         (elmo-message-buffer-match-condition): New function.
1067         (elmo-message-match-condition): Use
1068         `elmo-message-buffer-match-condition' instead of
1069         `elmo-buffer-field-condition-match'.
1070
1071         * elmo-util.el (elmo-condition-match): New function.
1072         (elmo-condition-optimize): Ditto.
1073         (elmo-buffer-field-primitive-condition-match): Abolish.
1074         (elmo-buffer-field-condition-match): Ditto.
1075
1076         * elmo-archive.el (elmo-archive-field-condition-match): Use
1077         `elmo-message-buffer-match-condition' instead of
1078         `elmo-buffer-field-condition-match'.
1079
1080 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1081
1082         * elmo-flag.el (elmo-global-flags-initialize): Check the
1083         existence of the flag directory.
1084
1085 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1086
1087         * elmo-access.el (elmo-folder-initialize): Call
1088         `elmo-multi-connect-signals'.
1089
1090         * elmo-pipe.el (elmo-folder-close): Define.
1091
1092         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
1093         children folders.
1094
1095         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
1096         with target folder.
1097
1098         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
1099         `number'.
1100
1101         * elmo-multi.el (elmo-message-entity): Don't use return value of
1102         `elmo-message-entity-set-number'.
1103
1104 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1105
1106         * modb.el (modb-generic): Added slot `mime-charset'.
1107
1108         * modb-standard.el (modb-standard): Added slot `overview-handler'.
1109         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
1110         and `modb-entity-handler-dump-parameters'.
1111         (modb-standard-default-entity-handler): Abolish.
1112         (elmo-msgdb-message-entity-handler): Save created handler by
1113         instance slot.
1114
1115         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
1116         (modb-entity-handler-list-parameters): New method.
1117         (modb-entity-handler-equal-p): New function.
1118         (modb-entity-handler-dump-parameters): Ditto.
1119         (modb-entity-parse-address-string): Encode return value.
1120         (modb-entity-make-address-string): Decode argument value.
1121         (modb-entity-decode-string-recursive): New function.
1122         (modb-entity-encode-string-recursive): Ditto.
1123         (modb-standard-entity-normalizer): Set to encode field value.
1124         (modb-standard-entity-specializer): Follow the above change.
1125         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
1126         mime-charset of handler.
1127         (elmo-msgdb-message-entity-field): Ditto.
1128         (elmo-msgdb-copy-message-entity): Fixed reference to internal
1129         structure.
1130         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
1131
1132         * elmo.el (elmo-folder): Added slot `mime-charset'.
1133         (elmo-make-folder): Added argument `mime-charset'.
1134         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
1135         `mime-charest'.
1136
1137         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
1138         (elmo-make-msgdb): Likewise.
1139
1140         * elmo-internal.el (elmo-internal-folder-initialize): Call
1141         `luna-make-entity' with :mime-charset parameter.
1142
1143 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
1144
1145         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
1146         encoded words in `from' and `subject' field.
1147
1148 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1149
1150         * modb.el (elmo-msgdb-message-field): Add argument `type'.
1151         (elmo-msgdb-match-condition): Get handler from entity instead of
1152         msgdb.
1153
1154         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
1155         (modb-standard-load-entity): Treat new file format.
1156         (modb-standard-save-entity-1): Save as new file format.
1157         (modb-standard-save-entity): Split messages into section here.
1158         (elmo-msgdb-message-field): Follow the API change.
1159         (modb-standard-default-entity-handler): New internal variable.
1160         (elmo-msgdb-message-entity-handler): Define.
1161
1162         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1163         to `elmo-vars.el'.
1164         (modb-entity-field-extractor-alist): New user option.
1165         (elmo-msgdb-message-entity-field): Removed argument `decode' and
1166         added argument `type'.
1167         (elmo-msgdb-copy-message-entity): Add optional argument
1168         `make-handler'.
1169         (modb-set-field-converter): New function.
1170         (modb-convert-field-value): Ditto.
1171         (modb-entity-string-decoder): Ditto.
1172         (modb-entity-string-encoder): Ditto.
1173         (modb-entity-parse-date-string): Ditto.
1174         (modb-entity-make-date-string): Ditto.
1175         (modb-entity-mime-decoder): Ditto.
1176         (modb-entity-mime-encoder): Ditto.
1177         (modb-entity-address-list-decoder): Ditto.
1178         (modb-entity-address-list-encoder): Ditto.
1179         (modb-entity-parse-address-string): Ditto.
1180         (modb-entity-make-address-string): Ditto.
1181         (modb-entity-create-field-indices): Ditto.
1182         (modb-legacy-entity-field-slots): New constant.
1183         (modb-legacy-entity-field-indices): Ditto.
1184         (modb-legacy-entity-normalizer): New variable.
1185         (modb-legacy-entity-specializer): Ditto.
1186         (modb-legacy-entity-field-index): New macro.
1187         (modb-legacy-entity-set-field): New function.
1188         (modb-legacy-make-message-entity): Rewrite.
1189         (elmo-msgdb-create-message-entity-from-buffer): Use
1190         `elmo-msgdb-get-references-from-buffer'. Use
1191         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
1192         Use `modb-legacy-entity-set-field' instead of
1193         `elmo-msgdb-message-entity-set-field'.
1194         (elmo-msgdb-message-entity-field): Rewrite.
1195         (elmo-msgdb-message-entity-set-field): Ditto.
1196         (elmo-msgdb-copy-message-entity): Make new entity by
1197         `make-handler' if it specified.
1198         (elmo-msgdb-message-match-condition): Define a method of
1199         `modb-entity-handler' and follow the API change.
1200         (modb-standard-entity-handler): New class.
1201         (modb-entity-extract-ml-info-from-x-sequence): New function.
1202         (modb-entity-extract-ml-info-from-subject): Ditto.
1203         (modb-entity-extract-ml-info-from-return-path): Ditto.
1204         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
1205         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
1206         (modb-entity-extract-mailing-list-info): Ditto.
1207         (modb-entity-extract-mailing-list-info-functions): New variable.
1208
1209         * elmo.el (elmo-message-field): Add optional argument `type'.
1210
1211         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1212         from `modb-entity.el'.
1213
1214         * elmo-util.el (elmo-object-load): Decode by coding-system from
1215         `set-auto-coding-function'.
1216         (elmo-object-save): Use `detect-mime-charset-region' and add
1217         coding cookie if encode.
1218         (elmo-msgdb-get-references-from-buffer): New function.
1219         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
1220
1221         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
1222
1223         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
1224         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
1225         instead of `shimbun-make-header' and follow the API change.
1226         (elmo-shimbun-update-overview): Follow the API change.
1227         (elmo-map-folder-list-message-locations): Ditto.
1228
1229         * elmo-pipe.el (elmo-message-field): Ditto.
1230
1231         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
1232         Ditto.
1233
1234         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1235
1236         * elmo-multi.el (elmo-message-field): Ditto.
1237
1238         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
1239         (elmo-msgdb-sort-by-date): Ditto.
1240         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
1241         `elmo-message-entity-field'.
1242         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
1243         change.
1244         (elmo-msgdb-overview-entity-get-from): Ditto.
1245         (elmo-msgdb-overview-entity-get-subject): Ditto.
1246         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1247         (elmo-msgdb-overview-entity-get-date): Ditto.
1248         (elmo-msgdb-overview-entity-get-to): Ditto.
1249         (elmo-msgdb-overview-entity-get-cc): Ditto.
1250
1251         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1252         (elmo-mime-collect-message/partial-pieces): Ditto.
1253
1254         * elmo-filter.el (elmo-message-field): Ditto.
1255
1256         * elmo-date.el (elmo-datevec-to-time): New function.
1257         (elmo-time-parse-date-string): Ditto.
1258         (elmo-time-make-date-string): Ditto.
1259         (elmo-time<): Ditto.
1260
1261         * elmo-version.el (elmo-version): Up to 2.15.1.
1262
1263 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
1264
1265         * elmo-flag.el (elmo-global-flags-initialize): Don't include
1266         member of elmo-local-flags.
1267
1268 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
1269
1270         * elmo-version.el (elmo-version): Up to 2.15.0.
1271
1272 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1273
1274         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
1275         `ignore-msgdb' is non-nil.
1276
1277 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1278
1279         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
1280         (elmo-condition-in-msgdb-p): Ditto.
1281         (elmo-file-field-primitive-condition-match): Ditto.
1282         (elmo-file-field-condition-match): Ditto.
1283
1284         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
1285
1286 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1287
1288         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
1289         subdirectories here.
1290         (elmo-global-flags-initialize): New function.
1291
1292         * elmo.el (toplevel): Added autoload setting for
1293         `elmo-global-flags-initialize'.
1294
1295 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
1296
1297         * elmo.el (message-number-changed): Define new signal.
1298         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
1299         message-number-changed signal.
1300         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1301         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1302         Respect `elmo-pack-number-check-strict'.
1303
1304 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1305
1306         * elmo-signal.el (elmo-connect-signal): Document.
1307         (elmo-emit-signal): Ditto.
1308         (elmo-emit-signal): It should pass source argument to filter and
1309         handler, not slot-source.
1310
1311 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1312
1313         * modb.el (elmo-msgdb-update-entity): New API and define generic
1314         implement.
1315
1316         * modb-standard.el (elmo-msgdb-update-entity): Define.
1317
1318         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
1319         API and define generic implement.
1320
1321         * elmo.el (update-overview): New singnal.
1322
1323         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
1324         `elmo-msgdb-update-entity' and emit signal `update-overview'.
1325         (elmo-message-entity-parent): Define.
1326
1327         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
1328         `update-overview'.
1329
1330         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
1331
1332         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
1333
1334 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
1335
1336         * elmo.el (elmo-folder-synchronize): Sort the return value of
1337         `elmo-list-diff'.
1338
1339         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
1340         list.
1341
1342 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1343
1344         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
1345         `default-enable-multibyte-characters'.
1346         (elmo-object-load): Use `with-temp-buffer' instead of
1347         `elmo-set-work-buf'.
1348         (elmo-object-save): Ditto.
1349         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
1350         `elmo-set-work-buf'.
1351         (elmo-decoded-field-body): Ditto.
1352
1353         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
1354
1355         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
1356         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
1357
1358         * elmo-version.el (elmo-version): Up to 2.13.3.
1359
1360 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
1361
1362         * elmo-util.el (elmo-list-diff): Fix the last change.
1363         Reverse order of result lists.
1364
1365 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
1366
1367         * modb-standard.el (elmo-msgdb-set-flag): Use
1368         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
1369         (elmo-msgdb-unset-flag): Ditto.
1370
1371         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
1372         `elmo-list-diff'.
1373
1374         * elmo-util.el (elmo-list-diff): Rewrite.
1375         (elmo-list-diff-nonsortable): New function.
1376
1377 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
1378
1379         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
1380         `elmo-multibypte-buffer-name'.  All referers are updated.
1381
1382 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1383
1384         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
1385         (elmo-mime-entity-fragment-p): New function.
1386         (mime-elmo-buffer-entity): Added slot `reassembled'.
1387         (elmo-message-mime-entity): Added 4th argument `reassemble'.
1388         (elmo-message-mime-entity-internal): New function (renamed from
1389         `elmo-message-mime-entity').
1390         (elmo-mime-inherit-field-list-from-enclosed): New constant.
1391         (elmo-mime-make-reassembled-mime-entity): New function.
1392         (elmo-message-reassembled-mime-entity): Ditto.
1393         (elmo-mime-collect-message/partial-pieces): Ditto.
1394
1395 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1396
1397         * elmo.el (elmo-message-fetch-string): Disable multibyte.
1398
1399         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
1400         (elmo-with-enable-multibyte): New macro.
1401
1402         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
1403
1404 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1405
1406         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
1407         argument `number'.
1408         (elmo-filter-connect-signals): Follow the above change.
1409
1410 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
1411
1412         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
1413
1414         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
1415         that only the first flag is used.
1416
1417 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1418
1419         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
1420         if available.
1421
1422 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1423
1424         * elmo-signal.el: New file.
1425
1426         * elmo.el (toplevel): Require elmo-signal.
1427         (flag-changing, flag-changed, cache-changed): New signal.
1428         (elmo-folder): Remove slog `handlers'.
1429         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1430         `elmo-folder-notify-event'.
1431         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1432         (elmo-folder-unset-flag): Ditto.
1433         (elmo-event-handler): Abolish.
1434         (elmo-event-handler-flag-changed): Ditto.
1435         (elmo-event-handler-cache-changed): Ditto.
1436         (elmo-folder-add-handler): Ditto.
1437         (elmo-folder-remove-handler): Ditto.
1438         (elmo-folder-notify-event): Ditto.
1439
1440         * elmo-pipe.el (toplevel): Require elmo-signal.
1441         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1442         (elmo-pipe-connect-signals): New function.
1443         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1444         (elmo-folder-set-flag): Ditto.
1445         (elmo-folder-unset-flag): Ditto.
1446         (elmo-message-set-cached): Ditto.
1447
1448         * elmo-multi.el (toplevel): Require elmo-signal.
1449         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1450         (elmo-multi-connect-signals): New function.
1451         (elmo-multi-map-numbers): Ditto.
1452         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1453         (elmo-message-fetch): Ditto.
1454         (elmo-folder-set-flag): Ditto.
1455         (elmo-folder-unset-flag): Ditto.
1456
1457         * elmo-filter.el (toplevel): Require elmo-signal.
1458         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1459         (elmo-filter-connect-signals): New function.
1460         (elmo-filter-add-flag-count): Ditto.
1461         (elmo-message-fetch): Does not call
1462         `elmo-filter-folder-countup-message-flags' and
1463         `elmo-folder-notify-event'.
1464         (elmo-message-set-cached): Ditto.
1465         (elmo-folder-set-flag): Ditto.
1466         (elmo-folder-unset-flag): Ditto.
1467
1468         * elmo-version.el (elmo-version): Up to 2.13.2.
1469
1470 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1471
1472         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1473         `flags'.
1474
1475 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1476
1477         * elmo-filter.el (elmo-message-set-cached): Call
1478         `elmo-folder-notify-event' with event `cache-changed'.
1479
1480         * elmo-multi.el (elmo-message-set-cached): Ditto.
1481
1482         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1483
1484 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1485
1486         * elmo.el (elmo-folder-encache): Abolish.
1487
1488 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1489
1490         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1491         (elmo-folder-next-message-number-dop): Return appropriate negative
1492         integer.
1493
1494 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1495
1496         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1497         clearing pending operations.
1498         (elmo-folder-next-message-number-dop): Return appropriate negative
1499         integer.
1500
1501 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1502
1503         * elmo.el (toplevel): Added autoload setting for `md5'.
1504         (elmo-msgdb-path-encode-threshold): New user option.
1505         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1506         longer than `elmo-msgdb-path-encode-threshold'.
1507
1508         * elmo-flag.el (elmo-global-mark-migrate): Use
1509         `elmo-folder-expand-msgdb-path' instead of
1510         `elmo-folder-msgdb-path'.
1511
1512 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1513
1514         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1515         element of the difference is nil.
1516
1517 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1518
1519         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1520         to the check logic of file systems which are weak in colon character.
1521
1522 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1523
1524         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1525
1526 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1527
1528         * elmo-maildir.el (elmo-maildir-move-file): New function.
1529         (elmo-folder-append-buffer): Use it.
1530         (elmo-folder-append-messages): Ditto.
1531         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1532
1533         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1534         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1535
1536         * elmo-maildir.el (elmo-maildir-separator): New user option.
1537         (elmo-maildir-adjust-separator): New macro.
1538         (elmo-maildir-list-location): Use it.
1539         (elmo-maildir-update-current): Ditto.
1540         (elmo-maildir-set-mark): Ditto.
1541         (elmo-maildir-delete-mark): Ditto.
1542         (These changes are based on Hiroya Murata's patch [wl: 13437])
1543
1544 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1545
1546         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1547
1548 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1549
1550         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1551         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1552         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1553
1554 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1555
1556         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1557         Use `with-temp-buffer'.
1558
1559 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1560
1561         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1562
1563         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1564         `wl-read-search-condition').
1565         (elmo-read-search-condition-internal): Likewise.
1566
1567         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1568         (elmo-flag-valid-p): New function.
1569         (elmo-folder-initialize): Check flag name is valid.
1570
1571 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1572
1573         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1574         delimiter to obtain root mailbox itself.
1575
1576 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1577
1578         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1579         type mismatch.
1580
1581 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1582
1583         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1584         as t.
1585
1586 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1587
1588         * elmo-shimbun.el (toplevel): Require cl at compile.
1589
1590         * elmo-nntp.el (toplevel): Ditto.
1591
1592         * elmo-nmz.el (toplevel): Ditto.
1593
1594         * elmo-multi.el (toplevel): Ditto.
1595
1596         * elmo-file.el (toplevel): Ditto.
1597
1598         * elmo-dop.el (toplevel): Ditto.
1599
1600         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1601
1602 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1603
1604         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1605         as nil.
1606
1607         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1608         size of elmo-message-fetch-internal is 0 byte.
1609
1610 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1611
1612         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1613
1614 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1615
1616         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1617         always plugged.
1618
1619 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1620
1621         * elmo-maildir.el (elmo-map-message-fetch): Call
1622         `elmo-map-folder-set-flag'.
1623
1624         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1625         (elmo-message-fetch): Merge from
1626         `elmo-message-fetch-with-cache-process'.
1627
1628         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1629         (elmo-message-fetch): Define.
1630
1631         * elmo-nntp.el (elmo-message-fetch): Renamed from
1632         `elmo-message-fetch-with-cache-process'.
1633
1634         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1635         (elmo-message-fetch): Define.
1636
1637         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1638         search-key.
1639
1640         * elmo-shimbun.el (shimbun-mua-search-id): Use
1641         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1642         (elmo-shimbun-folder-shimbun-header): Ditto.
1643         (elmo-shimbun-get-headers): Ditto.
1644         (elmo-shimbun-update-overview): Ditto.
1645
1646         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1647
1648         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1649         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1650
1651 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1652
1653         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1654         message is cached.
1655         (elmo-message-fetch-string): Fixed argument.
1656
1657 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1658
1659         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1660         exchange order of arguments `section' and `unread'.
1661         (elmo-message-encache): Follow the API change.
1662         (elmo-message-match-condition): Ditto.
1663         (elmo-generic-folder-append-messages): Ditto.
1664         (elmo-message-fetch-string): New function.
1665
1666         * elmo-split.el (elmo-split-subr): Ditto.
1667
1668         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1669
1670         * elmo-pipe.el (elmo-message-fetch): Ditto.
1671
1672         * elmo-multi.el (elmo-message-fetch): Ditto.
1673
1674         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1675
1676         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1677
1678         * elmo-filter.el (elmo-message-fetch): Ditto.
1679
1680         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1681
1682         * elmo-imap4.el (mime-imap-location-section-body): Use
1683         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1684         follow the API change.
1685
1686 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1687
1688         * elmo-access.el: New file.
1689
1690         * elmo-null.el: Ditto.
1691
1692         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1693
1694 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1695
1696         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1697         (elmo-network-session): New attribute `last-accessed'.
1698         (elmo-network-get-session): Discard network cache if elapsed time
1699         since last-accessed is larger than elmo-network-session-idle-timeout.
1700
1701 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1702
1703         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1704         and added `number', `require-entireness'.
1705         (elmo-find-fetch-strategy): Rewrite.
1706         (elmo-message-fetch): Unset `unread' flag when argument unread is
1707         non-nil.
1708
1709         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1710
1711         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1712         (elmo-message-fetch): Notify event `flag-changed'.
1713
1714         * elmo-pipe.el: Likewise.
1715
1716         * elmo-mime.el (elmo-mime-entity): New class.
1717         (elmo-mime-entity-display-p): New generic function.
1718         (elmo-mime-entity-display): Ditto.
1719         (elmo-mime-entity-display-as-is): Ditto.
1720         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1721         elmo-mime-entity.
1722         (elmo-make-mime-message-location): Removed.
1723         (elmo-mime-message-display): Ditto.
1724         (elmo-mime-display-as-is): Ditto.
1725         (elmo-message-mime-entity): New function.
1726
1727         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1728
1729         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1730         change.
1731         (elmo-message-fetch): Re-count flagged message number and notify
1732         event `flag-changed'.
1733
1734         * elmo-version.el (elmo-version): Up to 2.13.1.
1735
1736 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1737
1738         * elmo-filter.el (elmo-message-field): Define.
1739         (elmo-message-set-field): Ditto.
1740
1741 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1742
1743         * elmo.el (elmo-message-set-cached): Call
1744         `elmo-folder-notify-event' with cache-changed.
1745         (elmo-event-handler-cache-changed): New generic function.
1746
1747 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1748
1749         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1750         instead of elmo-add-name-to-file.
1751         (elmo-folder-append-messages): Ditto.
1752
1753 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1754
1755         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1756
1757 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1758
1759         * elmo-version.el (elmo-version): Up to 2.13.0.
1760
1761         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1762         `auto'.
1763
1764         * modb-standard.el (modb-standard-economize-entity-size): Changed
1765         default value to `t'.
1766
1767         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1768         `standard'.
1769
1770         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1771         after parsing greeting string.
1772
1773 2004-11-23  Daishi Kato <daishi@axlight.com>
1774
1775         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1776         New user option.
1777         (elmo-spam-spamoracle-call): Use it.
1778
1779 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1780
1781         * elmo.el (elmo-message-accessible-p): Message in dop spool
1782         is accessible.
1783
1784 2004-11-23  Daishi Kato <daishi@axlight.com>
1785
1786         * elsp-spamoracle.el: New file.
1787
1788 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1789
1790         * elmo.el (elmo-message-flags-for-append): New function.
1791         (elmo-generic-folder-append-messages): Use it.
1792
1793         * elmo-split.el (elmo-split-subr): Ditto.
1794
1795         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1796         `flags' and use elmo-folder-append-buffer instead of
1797         write-region-as-binary.
1798         (elmo-dop-filter-pending-messages): New function.
1799         (elmo-folder-append-buffer-dop): Call
1800         elmo-dop-spool-folder-append-buffer with `flag'.
1801         (elmo-folder-set-flag-dop): Filter messages by
1802         elmo-dop-filter-pending-messages.
1803         (elmo-folder-unset-flag-dop): Ditto.
1804         (elmo-folder-append-buffer-dop-delayed): Use
1805         elmo-message-flags-for-append to get flags of the message and
1806         simplify.
1807
1808 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1809
1810         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1811
1812 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1813
1814         * elmo.el (elmo-folder): Added handlers slot.
1815         (elmo-event-handler): New class.
1816         (elmo-event-handler-flag-changed): New API.
1817         (elmo-folder-add-handler): New function.
1818         (elmo-folder-remove-handler): Ditto.
1819         (elmo-folder-notify-event): Ditto.
1820         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1821         `flag-changed'.
1822         (elmo-folder-unset-flag): Ditto.
1823
1824         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1825         (elmo-folder-unset-flag): Ditto.
1826
1827         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1828         (elmo-folder-unset-flag): Ditto.
1829
1830         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1831         (elmo-folder-unset-flag): Ditto.
1832
1833         * elmo-version.el (elmo-version): Up to 2.11.33.
1834
1835 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1836
1837         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1838
1839 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1840
1841         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1842
1843         * elmo-flag.el (elmo-folder-unset-flag): Define.
1844         (elmo-global-flag-detach): Do process when the flag is not target
1845         flag.
1846
1847 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1848
1849         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1850         variable.
1851         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1852
1853 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1854
1855         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1856         function.
1857         (elmo-folder-delete-messages): Detach messages before delete
1858         messages from target folder.
1859         (elmo-folder-detach-messages): Set updated number-list to slot.
1860
1861 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1862
1863         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1864
1865 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1866
1867         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1868
1869 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1870
1871         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1872         internal use only).
1873         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1874         not modified.
1875         (elmo-folder-delete-messages): Define.
1876         (elmo-folder-move-messages): Don't call
1877         `elmo-folder-detach-messages'.
1878         (elmo-folder-synchronize): Rewrite.
1879         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1880
1881         * elmo-util.el (elmo-last): New function.
1882         (elmo-set-list): Ditto.
1883         (elmo-number-set-delete-list): Ditto.
1884         (elmo-number-set-delete): Ditto.
1885
1886         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1887
1888         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1889         `elmo-folder-delete-messages' and don't delete location map.
1890         (elmo-folder-detach-messages): Define.
1891
1892         * elmo-imap4.el (elmo-folder-delete): Use
1893         `elmo-folder-delete-messages-internal' instead of
1894         `elmo-folder-delete-messages'.
1895
1896         * elmo-filter.el (elmo-folder-delete-messages): Call
1897         `elmo-folder-detach-messages'.
1898         (elmo-folder-detach-messages): Don't call
1899         `elmo-folder-detach-messages' for target folder.
1900
1901         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1902         message deletion is succeeded.
1903
1904         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1905
1906         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1907         from `elmo-folder-delete-messages'.
1908
1909         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1910
1911         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1912
1913         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1914
1915         * elmo-version.el (elmo-version): Up to 2.11.32.
1916
1917 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1918
1919         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1920         (elmo-global-flag-list): Added obsolete variable setting.
1921
1922         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1923
1924         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1925         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1926         `elmo-mime-display-header-analysis' is nil.
1927
1928         * elmo-flag.el (elmo-global-flags): Renamed from
1929         `elmo-global-flag-list' (All other related portions are changed).
1930         (elmo-local-flags): New variable.
1931         (elmo-local-flag-p): New function.
1932         (elmo-global-flag-set-internal): Cause an error when flag is not
1933         global.
1934
1935 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1936
1937         * elmo-util.el (elmo-concat-path): Treat empty path.
1938
1939 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1940
1941         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1942         field-or-fields).
1943         (elmo-split-address-match): Ditto.
1944         (elmo-split-equal): Ditto.
1945         (elmo-split-match): Ditto.
1946
1947 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1948
1949         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1950         (elmo-generic-folder-append-messages): If src message exists but
1951         has no flag, pass (read) for the FLAG argument of
1952         `elmo-folder-append-buffer'. Otherwise, pass nil.
1953
1954         * elmo-split.el (elmo-split-subr): Likewise.
1955
1956         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1957
1958         * elmo-multi.el (elmo-message-flags): Ditto.
1959
1960         * elmo-filter.el (elmo-message-flags): Ditto.
1961
1962         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1963         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1964         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1965         
1966 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1967
1968         * elmo-split.el (elmo-split-rule): Update comment.
1969         (elmo-split-address-equal): Allow 2nd argument to be a list.
1970         (elmo-split-address-match): Ditto.
1971         (elmo-split-equal): Ditto.
1972         (elmo-split-match): Ditto.
1973
1974 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1975
1976         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1977         (elmo-folder-append-msgdb): Don't treat `read'.
1978         (elmo-message-flags): Don't return `read'.
1979
1980         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1981         (elmo-folder-unset-read-delayed): Ditto.
1982
1983         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1984
1985 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1986
1987         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1988         deletion.
1989
1990 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1991
1992         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1993         header.
1994
1995 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1996
1997         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1998         here.
1999         (elmo-msgdb-save): Bind inhibit-quit.
2000         (modb-standard-message-entity): Ditto.
2001
2002 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
2003
2004         * elmo-database.el: No need to require elmo-msgdb.
2005
2006 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2007
2008         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
2009         instead of `elmo-list-subdirectories'.
2010
2011 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
2012
2013         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
2014         group entry.
2015         (elmo-folder-exists-p): "[" is empty.
2016         (elmo-folder-list-subfolders): Define.
2017         (elmo-folder-have-subfolder-p): Ditto.
2018
2019 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
2020
2021         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
2022
2023 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
2024
2025         * elmo-filter.el (elmo-folder-local-p): Define.
2026
2027 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2028
2029         * modb-standard.el (modb-standard-loaded-message-id): Return nil
2030         when entity is garbaged.
2031         (modb-standard-save-entity-1): Don't modify the original entity.
2032
2033 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
2034
2035         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
2036
2037 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2038
2039         * elmo.el (elmo-strict-folder-diff): Use
2040         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
2041
2042 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
2043
2044         * modb.el (elmo-msgdb-flag-available-p): New generic function.
2045         (elmo-msgdb-message-number): Ditto.
2046         (elmo-msgdb-message-field): Ditto.
2047
2048         * modb-standard.el (modb-standard-economize-entity-size): New user
2049         option.
2050         (modb-standard-loaded-message-id): New inline function.
2051         (modb-standard-load-entity): Use it.
2052         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
2053         throw message-id string away.
2054         (elmo-msgdb-flag-available-p): Define.
2055         (elmo-msgdb-message-number): Ditto.
2056         (elmo-msgdb-message-field): Ditto.
2057
2058         * modb-legacy.el (modb-legacy-flag-list): Fix typo
2059         (suppoted -> supported).
2060         (modb-legacy-supported-flag-p): Ditto.
2061         (elmo-msgdb-set-flag): Ditto.
2062         (elmo-msgdb-unset-flag): Ditto.
2063         (elmo-msgdb-flag-available-p): Define.
2064
2065         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
2066         is `t', treat it as legacy entity.
2067         
2068         * elmo.el (elmo-message-flag-available-p): New generic function.
2069         (elmo-message-number): Ditto.
2070         (elmo-message-field): Use `elmo-msgdb-message-field'.
2071
2072         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
2073
2074         * elmo-pipe.el (elmo-message-flag-available-p): Define.
2075         (elmo-message-number): Ditto.
2076
2077         * elmo-multi.el (elmo-message-number): Define.
2078         (elmo-message-flag-available-p): Ditto.
2079
2080         * elmo-filter.el (elmo-message-flag-available-p): Define.
2081         (elmo-message-number): Ditto.
2082
2083         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
2084         (elmo-folder-initialize): Load `max-number'.
2085         (elmo-folder-commit): Save it.
2086         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
2087         (elmo-global-flag-set-internal): Set up max-number slot.
2088
2089 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
2090
2091         * elmo-version.el (elmo-version): Up to 2.11.31.
2092
2093 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
2094
2095         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
2096         unibyte string of the current buffer for the argument of `md5'
2097         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
2098
2099 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2100
2101         * modb-legacy.el (modb-legacy-flag-list): New constant.
2102         (modb-legacy-suppoted-flag-p): New internal function.
2103         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
2104         (elmo-msgdb-unset-flag): Ditto.
2105
2106 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
2107
2108         * elmo.el (elmo-make-folder): Remove text properties for prefix.
2109
2110         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
2111         from msgdb.
2112
2113 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2114
2115         * elmo-multi.el (elmo-folder-count-flags): Changed return value
2116         (follow the API change).
2117
2118         * elmo-filter.el (elmo-folder-count-flags): Ditto.
2119
2120 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
2121
2122         * modb-standard.el (modb-standard-digest-flags): Abolish.
2123         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
2124
2125         * elmo-vars.el (elmo-digest-flags): New variable.
2126         (elmo-preserved-flags): Moved from elmo-flag.el.
2127
2128         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
2129         (elmo-imap4-flag-to-imap-criteria): Ditto.
2130         (elmo-imap4-folder-list-flagged): Use it.
2131
2132         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
2133
2134         * elmo.el (elmo-folder-count-flags): Changed return value.
2135
2136         * elmo-flag.el (elmo-preserved-flags): New variable.
2137         (elmo-get-global-flags): Use it.
2138
2139         * modb-standard.el (modb-standard-digest-flags): New variable.
2140         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
2141         Changed behavior of `any'.
2142
2143         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
2144         which are defined the Internet draft
2145         (draft-melnikov-imap-keywords-03.txt).
2146         (elmo-imap4-flags-to-imap): New function.
2147         (elmo-folder-append-buffer): Use it.
2148
2149         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
2150         in the docstring.
2151
2152         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
2153         avoid the bug of Emacs 21.3.
2154
2155 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
2156
2157         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
2158         function find-coding-system does not exist.
2159
2160 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2161
2162         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
2163         parsing.
2164
2165 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2166
2167         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
2168         response codes.
2169
2170 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2171
2172         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
2173         (elmo-network-close-session): Follow the changes in
2174         `elmo-pop3-read-response'.
2175         (elmo-pop3-auth-user): Ditto.
2176         (elmo-pop3-auth-apop): Ditto.
2177         (elmo-network-initialize-session): Ditto.
2178         (elmo-network-authenticate-session): Ditto.
2179         (elmo-network-setup-session): Ditto.
2180         (elmo-folder-status): Ditto.
2181         (elmo-message-fetch-plugged): Ditto.
2182         (elmo-pop3-delete-msg): Ditto.
2183
2184 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
2185
2186         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
2187         on failure.
2188
2189 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2190
2191         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
2192         style.
2193         (elmo-bind-directory): Ditto.
2194
2195 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2196
2197         * elmo.el (elmo-folder-append-messages): Note on return value.
2198         * elmo-archive.el (elmo-folder-append-messages): Don't return
2199         message numbers which could not be appended.
2200
2201 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2202
2203         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
2204
2205 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2206
2207         * elmo-version.el (elmo-version): Up to 2.11.30.
2208
2209 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2210
2211         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
2212         `mask'.
2213
2214         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
2215
2216         * elmo-multi.el (elmo-folder-synchronize): Likewise.
2217         (elmo-multi-split-numbers): Add elmo-folder object into each
2218         element of return value at first.
2219         (elmo-folder-delete-messages): Follow the above change.
2220         (elmo-folder-detach-messages): Ditto.
2221
2222         * elmo-filter.el (elmo-folder-synchronize): Minimize message
2223         number which is synchronized in target folder.
2224
2225 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2226
2227         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
2228         Change default value to symbol `all'.
2229         (elmo-map-message-fetch): Change condition to update overview
2230         follow the above.
2231
2232 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2233
2234         * elmo-shimbun.el (elmo-map-message-fetch): Change default
2235         behavior to update overview.
2236         (elmo-shimbun-update-overview-folder-list): Note it.
2237
2238 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2239
2240         * modb-standard.el (modb-standard-message-entity): Avoid infinite
2241         recursive call.
2242
2243 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2244
2245         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
2246         buffer-disable-undo, it is unnecessary.
2247         (elmo-spam-register-good-messages): Ditto.
2248
2249         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2250         Ditto.
2251
2252         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
2253
2254 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2255
2256         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
2257         (elmo-set-work-buf): Use set-buffer-multibyte instead of
2258         elmo-set-buffer-multibyte.
2259         (elmo-object-load): Ditto.
2260         (elmo-save-buffer): Ditto.
2261         (elmo-delete-char): Ditto.
2262         (elmo-file-field-primitive-condition-match): Ditto.
2263         (elmo-mime-string): Ditto.
2264
2265         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
2266         (elmo-archive-field-condition-match): Ditto.
2267
2268         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
2269
2270         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
2271
2272         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
2273         (elmo-nntp-msgdb-create-message): Ditto.
2274
2275         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2276
2277         * elmo.el (elmo-message-match-condition): Ditto.
2278         (elmo-message-match-condition): Ditto.
2279
2280         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2281         Ditto.
2282
2283         * elmo-version.el (elmo-version): Up to 2.11.29.
2284
2285         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
2286         (elsp-header): New backend.
2287
2288         * elmo-util.el (elmo-decoded-field-body): New function.
2289
2290 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2291
2292         * elmo-version.el (elmo-version): Up to 2.11.28.
2293
2294 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2295
2296         * elmo-filter.el: Rewrite.
2297
2298         * elmo-version.el (elmo-version): Up to 2.11.27.
2299
2300 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
2301
2302         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
2303         msgdb path for the localdir folder with absolute path.
2304
2305         * utf7.el: Synch up with latest gnus/utf7.el;
2306         Modified for latest Emacs.
2307
2308 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2309
2310         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
2311         shimbun backend couldn't open.
2312
2313 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
2314
2315         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
2316         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
2317         when a destination folder is a filter folder.
2318
2319 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2320
2321         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
2322         (elmo-generic-folder-append-messages): Call elmo-message-flags
2323         with argument `msgid'.
2324
2325         * elmo-split.el (elmo-split-subr): Ditto.
2326
2327         * elmo-pipe.el (elmo-message-flags): Follow the API change.
2328
2329         * elmo-multi.el (elmo-message-flags): Ditto.
2330
2331 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2332
2333         * elmo.el (elmo-folder): Add new slot `flag-table'.
2334         (elmo-folder-flag-table): New API.
2335         (elmo-folder-close-flag-table): Ditto.
2336         (elmo-folder-preserve-flags): New function.
2337         (elmo-generic-folder-append-messages): Use
2338         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
2339         Flag of a non-registered message, it sets to nil.
2340         Does not set flag to flag-table.
2341
2342         * elmo-maildir.el (elmo-folder-append-buffer): Use
2343         `elmo-folder-preserve-flags'.
2344         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2345         `elmo-folder-close-flag-table'.
2346
2347         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
2348         (elmo-archive-folder-append-buffer): Use
2349         `elmo-folder-preserve-flags'.
2350
2351         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
2352
2353         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
2354
2355         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2356         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2357         `elmo-folder-close-flag-table'.
2358
2359         * elmo-version.el (elmo-version): Up to 2.11.26.
2360
2361 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2362
2363         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
2364
2365         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
2366         md5's 4th and 5th argument (non-existent in flim one).
2367
2368 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2369
2370         * elmo-split.el (elmo-split-subr): Flag of a non-registered
2371         message, It sets to nil.
2372
2373 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2374
2375         * elmo.el (elmo-folder-list-messages): Merge lists only if both
2376         list is non-nil.
2377
2378 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
2379
2380         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
2381
2382         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
2383
2384         * elmo-util.el (elmo-uniq-sorted-list): New function.
2385         (elmo-make-number-list): Ditto.
2386         (elmo-number-set-to-number-list): Use elmo-make-number-list
2387         and don't use nreverse.
2388
2389 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2390
2391         * elmo-version.el (elmo-version): Up to 2.11.25.
2392
2393 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2394
2395         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
2396         field not exists in message, Use md5 message digest of header.
2397
2398 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2399
2400         * elmo.el (elmo-folder-append-buffer): Add note on return value.
2401         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
2402         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2403         * elmo-split.el (elmo-split-subr): Check return value of
2404         elmo-folder-append-buffer.
2405
2406         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
2407         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2408
2409         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
2410         message-id.
2411
2412 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
2413
2414         * elmo-split.el (elmo-split-subr): Append message with flag.
2415
2416         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
2417         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
2418         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2419
2420 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
2421
2422         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
2423         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
2424         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2425
2426 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
2427
2428         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2429         with a function call of `process-buffer'.  All callers are updated.
2430         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2431         Remove redundant `set-buffer' in a while loop.
2432
2433 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2434
2435         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2436         calls.
2437
2438 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2439
2440         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2441         elsp-spamfilter-register-buffer-internal with current buffer.
2442         (elmo-spam-register-spam-buffer): Ditto.
2443         (elmo-spam-register-good-buffer): Ditto.
2444
2445 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2446
2447         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2448         if it is not contained in the response(A workaround for courier-imap).
2449
2450 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2451
2452         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2453         parenthesis.
2454
2455 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2456
2457         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2458         range.
2459
2460 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2461
2462         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2463         of nconc.
2464
2465         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2466         argument handler.
2467         (elmo-msgdb-message-match-condition): Follow the change above.
2468
2469 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2470
2471         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2472         folder name.
2473
2474 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2475
2476         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2477
2478 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2479
2480         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2481
2482 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2483
2484         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2485         not found.
2486
2487 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2488
2489         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2490         value.
2491         (elmo-file-command-argument): Undo last change for cygwin.
2492         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2493         Don't return nil.
2494         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2495
2496 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2497
2498         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2499         value returned from elmo-file-find is nil.
2500
2501 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2502
2503         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2504         to elmo-vars.el.
2505
2506         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2507         instead of insert-file-contents-as-binary.
2508         (elmo-message-set-field): New generic function.
2509
2510         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2511         behavior change on `split-string'.
2512
2513         * elmo-file.el (elmo-file-find): New function.
2514         (elmo-file-command): New user option.
2515         (elmo-file-command-argument): Ditto.
2516         (elmo-file-fetch-max-size): Ditto.
2517         (elmo-file-detect-format): New function.
2518         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2519         Use elmo-file-detect-format.
2520         (elmo-map-folder-list-message-locations): Don't treat directories.
2521
2522 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2523
2524         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2525         (elmo-passwd-alist-clear): Shred password before clear.
2526         (elmo-remove-passwd): Remove all mached pair.
2527
2528 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2529
2530         * elmo.el (elmo-folder-synchronize): Fix description of the return
2531         value.
2532
2533 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2534
2535         * elmo.el (elmo-message-fetch-bodystructure): New method.
2536         (elmo-message-fetch-bodystructure): Define default.
2537
2538         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2539         elmo-message-fetch-bodystructure.
2540         (elmo-message-fetch-bodystructure): Define.
2541
2542         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2543
2544 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2545
2546         * elmo-filter.el (elmo-message-folder): Define.
2547
2548 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2549
2550         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2551         elmo-delete-cr-buffer.
2552
2553         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2554
2555         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2556
2557         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2558
2559         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2560         type seems to be a text.
2561
2562 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2563
2564         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2565         (elmo-spam-register-good-buffer): Ditto.
2566         (elmo-spam-spamassassin-register-messages): Ditto.
2567
2568         * elmo-util.el (elmo-string-member-ignore-case): Define with
2569         static-cond.
2570
2571 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2572
2573         * elmo.el (elmo-folder-type): Undo last change.
2574
2575         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2576
2577         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2578         warnings.
2579
2580         * elmo-file.el: New file.
2581         
2582         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2583
2584         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2585         variable.
2586         (elmo-spam-spamassassin-register-messages): New inline function.
2587         (elmo-spam-register-spam-messages): Define.
2588         (elmo-spam-register-good-messages): Ditto.
2589
2590         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2591         Fixed typo.
2592
2593         * elmo.el (toplevel): Added autoload setting for
2594         `elmo-get-global-flags'.
2595         (elmo-message-has-global-flag-p): New function.
2596         (elmo-message-set-global-flags): Ditto.
2597         (elmo-folder-type): Improvement for name: format.
2598
2599         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2600         availability of keyword flags.
2601         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2602         (elmo-folder-list-flagged-plugged): Renamed from
2603         elmo-folder-list-flagged-unplugged.
2604         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2605         accept any flag as keyword flag.
2606         (elmo-folder-set-flag-plugged): Accept keyword flags.
2607         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2608
2609         * elmo-flag.el (elmo-get-global-flags): New function.
2610
2611         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2612         folders.
2613
2614         * elmo-version.el (elmo-version): Up to 2.11.24.
2615
2616 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2617
2618         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2619         elmo-multiple-field-body instead of std11-field-body to check all
2620         headers.
2621
2622 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2623
2624         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2625         or "size".
2626
2627 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2628
2629         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2630         unintern is unbound.
2631
2632 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2633
2634         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2635         Protect from infinite loop.
2636
2637 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2638
2639         * elsp-bogofilter.el
2640         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2641         (elmo-spam-bogofilter-register-messages): New internal function.
2642         (elmo-spam-register-spam-messages): Define.
2643         (elmo-spam-register-good-messages): Ditto.
2644
2645 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2646
2647         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2648         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2649         (elmo-spam-bogofilter-call): Fixed the last change.
2650         (elmo-spam-bogofilter-arguments): Ditto.
2651
2652         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2653         Follow the options change of latest bogofilter.
2654
2655         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2656         (elmo-spam-bogofilter-good-switch): Ditto.
2657         (elmo-spam-bogofilter-arguments-alist): New user option.
2658         (elmo-spam-bogofilter-debug): Ditto.
2659         (elmo-spam-bogofilter-call): Renamed from
2660         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2661         is non-nil, insert output in buffer for debug.
2662         (elmo-spam-bogofilter-arguments): New macro.
2663         (elmo-spam-buffer-spam-p): Use it.
2664         (elsp-bogofilter-register-buffer): Ditto.
2665
2666 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2667
2668         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2669         regexp.
2670
2671 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2672
2673         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2674         value as "ruby".
2675         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2676         (elmo-spam-bsfilter-program): Set default value as full path for
2677         `bsfilter'.
2678         (elmo-spam-bsfilter-debug): New user option.
2679         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2680         non-nil, insert output in buffer for debug. Fix treating of
2681         argument.
2682
2683 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2684
2685         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2686         `elmo-maildir-flag-specs' element instead of one.
2687         (elmo-map-folder-unset-flag): Ditto.
2688         (Reported by Ken Makimura <macky@astem.or.jp>)
2689
2690         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2691         (elmo-folder-unset-flag-plugged): Ditto.
2692
2693 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2694
2695         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2696         to `reads' slot only if `in-msgdb' is nil.
2697
2698 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2699
2700         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2701         and complement argument list.
2702
2703 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2704
2705         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2706         instead of elmo-folder-list-flagged.
2707
2708 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2709
2710         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2711
2712         * elsp-bsfilter.el: New file.
2713
2714         * elmo-pipe.el (elmo-folder-list-unreads,
2715         elmo-folder-list-answereds,
2716         elmo-folder-list-importants,
2717         elmo-folder-flag-as-important,
2718         elmo-folder-unflag-important,
2719         elmo-folder-flag-as-read,
2720         elmo-folder-unflag-read,
2721         elmo-folder-flag-as-answered,
2722         elmo-folder-unflag-answered): Remove.
2723         (elmo-folder-set-flag): Define.
2724         (elmo-folder-unset-flag): Ditto.
2725
2726         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2727         (elmo-folder-set-flag): Define.
2728         (elmo-folder-unset-flag): Ditto.
2729         (elmo-folder-list-unreads): Remove.
2730         (elmo-folder-list-flagged): Define.
2731
2732         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2733         (elmo-folder-list-unreads,
2734         elmo-folder-list-importants,
2735         elmo-folder-list-answereds,
2736         elmo-folder-list-unreads-plugged,
2737         elmo-folder-list-importants-plugged,
2738         elmo-folder-list-answereds-plugged): Remove.
2739         (elmo-folder-list-flagged-plugged): New method.
2740         (elmo-folder-unflag-important,
2741         elmo-folder-flag-as-important,
2742         elmo-folder-unflag-read,
2743         elmo-folder-flag-as-read,
2744         elmo-folder-unflag-answered,
2745         elmo-folder-flag-as-answered,
2746         elmo-folder-flag-as-read-unplugged,
2747         elmo-folder-unflag-read-unplugged,
2748         elmo-folder-flag-as-important-unplugged,
2749         elmo-folder-unflag-important-unplugged,
2750         elmo-folder-flag-as-answered-unplugged,
2751         elmo-folder-unflag-answered-unplugged): Remove.
2752         (elmo-folder-set-flag): Define.
2753         (elmo-folder-unset-flag): Ditto.
2754         (elmo-folder-set-flag-unplugged): Ditto.
2755         (elmo-folder-unset-flag-unplugged): Ditto.
2756
2757         * elmo-multi.el (elmo-folder-list-unreads,
2758         elmo-folder-list-answereds,
2759         elmo-folder-list-importants,
2760         elmo-folder-flag-as-important,
2761         elmo-folder-unflag-important,
2762         elmo-folder-flag-as-read,
2763         elmo-folder-unflag-read,
2764         elmo-folder-flag-as-answered,
2765         elmo-folder-unflag-answered): Remove.
2766         (elmo-folder-set-flag): Define.
2767         (elmo-folder-unset-flag): Ditto.
2768
2769         * elmo-map.el (elmo-map-folder-unflag-important,
2770         elmo-map-folder-flag-as-important,
2771         elmo-map-folder-unflag-read,
2772         elmo-map-folder-flag-as-read,
2773         elmo-map-folder-unflag-answered,
2774         elmo-map-folder-flag-as-answered): Remove.
2775         (elmo-map-folder-set-flag): New method.
2776         (elmo-map-folder-unset-flag): Ditto.
2777         (elmo-map-folder-list-unreads,
2778         elmo-map-folder-list-importants,
2779         elmo-map-folder-list-answereds): Remove.
2780         (elmo-folder-list-flagged-internal): Define.
2781         (elmo-map-folder-list-flagged): New method.
2782
2783         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2784         (elmo-map-folder-list-unreads,
2785         elmo-map-folder-list-importants,
2786         elmo-map-folder-list-flagged): Remove.
2787         (elmo-map-folder-list-flagged): Define.
2788         (elmo-map-folder-flag-as-important,
2789         elmo-map-folder-unflag-important,
2790         elmo-map-folder-flag-as-read,
2791         elmo-map-folder-unflag-read,
2792         elmo-map-folder-flag-as-answered,
2793         elmo-map-folder-unflag-answered): Remove.
2794         (elmo-maildir-set-mark-messages): New internal function.
2795         (elmo-map-folder-set-flag): Define.
2796         (elmo-map-folder-unset-flag): Ditto.
2797
2798         * elmo.el (toplevel): Added autoload setting for
2799         `elmo-folder-list-global-flag-messages'.
2800         (elmo-folder-list-unreads,
2801         elmo-folder-list-importants,
2802         elmo-folder-list-answereds): Remove.
2803         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2804         Return a list whitch merged with messages have global flag.
2805         (elmo-folder-list-flagged-internal): New method.
2806         (elmo-folder-unflag-important,
2807         elmo-folder-flag-as-important,
2808         elmo-folder-unflag-read,
2809         elmo-folder-flag-as-read,
2810         elmo-folder-unflag-answered,
2811         elmo-folder-flag-as-answered): Remove.
2812         (elmo-folder-set-flag): New method.
2813         (elmo-folder-unset-flag): Ditto.
2814         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2815         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2816
2817         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2818         (elmo-folder-list-unreads-plugged,
2819         elmo-folder-list-importants-plugged,
2820         elmo-folder-list-answereds-plugged,
2821         elmo-folder-list-flagged-unplugged,
2822         elmo-folder-unflag-important-plugged,
2823         elmo-folder-flag-as-important-plugged,
2824         elmo-folder-unflag-read-plugged,
2825         elmo-folder-flag-as-read-plugged,
2826         elmo-folder-unflag-answered-plugged,
2827         elmo-folder-flag-as-answered-plugged): Remove.
2828         (elmo-folder-set-flag-plugged,
2829         elmo-folder-unset-flag-plugged): Define.
2830
2831         * elmo-flag.el (elmo-folder-initialize): Register to
2832         `elmo-global-flag-list' if flag is not global.
2833         (elmo-folder-append-messages): Set flag to source messages.
2834
2835         * elmo-filter.el (elmo-filter-folder-list-unreads,
2836         elmo-folder-list-unreads,
2837         elmo-filter-folder-list-importants,
2838         elmo-folder-list-importants,
2839         elmo-folder-flag-as-read,
2840         elmo-folder-unflag-read,
2841         elmo-folder-flag-as-important,
2842         elmo-folder-unflag-important,
2843         elmo-folder-flag-as-answered,
2844         elmo-folder-unflag-answered): Remove.
2845         (elmo-folder-set-flag): Define.
2846         (elmo-folder-unset-flag): Ditto.
2847
2848         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2849         elmo-folder-unflag-read-dop,
2850         elmo-folder-flag-as-important-dop,
2851         elmo-folder-unflag-important-dop,
2852         elmo-folder-flag-as-answered-dop,
2853         elmo-folder-unflag-answered-dop): Remove.
2854         (elmo-folder-set-flag-dop,
2855         elmo-folder-unset-flag-dop,
2856         elmo-folder-set-important-delayed,
2857         elmo-folder-unset-important-delayed,
2858         elmo-folder-set-read-delayed,
2859         elmo-folder-unset-read-delayed,
2860         elmo-folder-set-answered-delayed,
2861         elmo-folder-unset-answered-delayed): New function.
2862         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2863         (elmo-dop-queue-method-name-alist): Ditto.
2864
2865         * elmo-version.el (elmo-version): Up to 2.11.23.
2866
2867 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2868
2869         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2870
2871         * elsp-sa.el: New file.
2872
2873 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2874
2875         * modb-standard.el (modb-standard-message-entity): New function.
2876         (elmo-msgdb-message-entity): Use it.
2877
2878 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2879
2880         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2881         behavior when one-level is nil.
2882
2883         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2884
2885         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2886
2887 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2888
2889         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2890         get max number.
2891         (elmo-generic-folder-diff): Ditto.
2892
2893         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2894         (elmo-folder-update-number): Ditto.
2895
2896         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2897         (elmo-folder-next-message-number-dop): Ditto.
2898
2899 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2900
2901         * elmo-filter.el (elmo-folder-msgdb-create): Use
2902         `elmo-message-entity' and `elmo-message-flags' instead of
2903         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2904
2905 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2906
2907         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2908         `if-exists'.
2909
2910 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2911
2912         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2913
2914         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2915
2916         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2917
2918 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2919
2920         * elmo-version.el (elmo-version): Up to 2.11.22.
2921
2922 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2923
2924         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2925
2926 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2927
2928         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2929         if the message dose not exist.
2930
2931 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2932
2933         * elmo-version.el (elmo-version): Up to 2.11.21.
2934
2935 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2936
2937         * modb-standard.el (toplevel): Don't require mime.
2938
2939 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2940
2941         * elsp-bogofilter.el (toplevel): Don't require path-util.
2942         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2943         (elmo-spam-bogofilter-header): Abolish.
2944         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2945         (elmo-spam-bogofilter-args): New user option.
2946         (elsp-bogofilter-call-bogofilter): New internal function.
2947         (elmo-spam-buffer-spam-p): Use it.
2948         (elsp-bogofilter-register-buffer): Renamed from
2949         `elmo-spam-bogofilter-register-buffer';
2950         Use `elsp-bogofilter-call-bogofilter'.
2951         (elmo-spam-register-spam-buffer): Follow the change above.
2952         (elmo-spam-register-good-buffer): Ditto.
2953
2954 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2955
2956         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2957         message-id is nil do nothing.
2958
2959 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2960
2961         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2962         Revival.
2963         (elmo-imap4-session): Removed use-flag slot.
2964         (elmo-imap4-session-select-mailbox): Undo last change.
2965         (elmo-folder-use-flag-p): Use
2966         elmo-imap4-disuse-server-flag-mailbox-regexp.
2967
2968 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2969
2970         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2971         (elmo-imap4-session-select-mailbox): Set it up.
2972         (elmo-folder-use-flag-p): Return value of use-flag slot.
2973
2974 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2975
2976         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2977         message-id is nil.
2978         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2979
2980         * modb-entity.el (elmo-message-entity-handler): Likewise.
2981
2982 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2983
2984         * elmo.el (toplevel): Remove setting of autoloding for
2985         elmo-global-flag-initialize.
2986         (elmo-init): Don't call elmo-global-flag-initialize.
2987         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2988
2989         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2990         (elmo-global-mark-migrate): Don't call it.
2991         (elmo-global-mark-upgrade): Ditto.
2992
2993 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2994
2995         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2996         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2997
2998         * elmo-vars.el (elmo-init-hook): New user option.
2999
3000         * elmo.el (elmo-init): Run the elmo-init-hook.
3001
3002         * elmo-flag.el (elmo-global-mark-migrate): New function.
3003
3004 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3005
3006         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
3007         Undo last change (move to elmo-msgdb-unset-flag).
3008         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
3009         flag is unset.
3010
3011 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
3012
3013         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
3014         read flag is set.
3015         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
3016         (elmo-msgdb-unset-flag): Ditto.
3017
3018 2003-11-05  Andreas Fuchs <asf@boinkor.net>
3019
3020         * elmo-split.el (elmo-split): Return split message count.
3021
3022 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3023
3024         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
3025         is nil.
3026
3027 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3028
3029         * elmo.el (elmo-folder-unflag-important): Call
3030         `elmo-global-flag-detach' with 4th argument delete-if-none that is
3031         a symbol `always'.
3032
3033         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
3034         before unset flag.
3035         (elmo-global-flag-detach): Delete the message from flag folder, if
3036         `delete-if-none' is a symbol `always'.
3037
3038 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3039
3040         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
3041         `elmo-spam-spamfilter-decode-buffer'.
3042         (elsp-spamfilter-register-buffer-internal): New internal function.
3043         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
3044         (elmo-spam-register-spam-buffer): Ditto.
3045         (elmo-spam-register-good-buffer): Ditto.
3046
3047         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
3048         change.
3049         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
3050         (elmo-spam-register-spam-buffer): Follow the API change.
3051         (elmo-spam-register-good-buffer): Ditto.
3052
3053         * elmo-split.el (toplevel): Require elmo-spam when copmile.
3054         (elmo-split-spam-p): Added argument plist; Call
3055         `elmo-spam-buffer-spam-p' with new argument register.
3056
3057         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
3058         `register'.
3059         (elmo-spam-message-spam-p): Ditto.
3060         (elmo-spam-register-spam-buffer): Added optional argument
3061         `restore'.
3062         (elmo-spam-register-good-buffer): Ditto.
3063         (elmo-spam-register-spam-messages): Ditto.
3064         (elmo-spam-register-good-messages): Ditto.
3065
3066 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3067
3068         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
3069         register into good corpus.
3070         (elmo-spam-register-good-buffer): Fixed to register into bad
3071         corpus.
3072
3073 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3074
3075         * elmo-version.el (elmo-version): Up to 2.11.20.
3076
3077         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
3078         change.
3079
3080         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
3081         flag without depending on \Recent flag.
3082
3083 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3084
3085         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
3086         (elmo-spam-modified-p): Defined.
3087         (elmo-spam-save-status): Set `modified' slot to nil.
3088         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
3089         (elmo-spam-register-good-buffer): Ditto.
3090
3091         * elmo-spam.el (elmo-spam-modified-p): New API.
3092
3093 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3094
3095         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
3096         duplicate definition.
3097
3098         * elmo-util.el (elmo-unfold-field-body): New function.
3099         (elmo-msgdb-get-message-id-from-buffer): Use it.
3100
3101         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3102         Fixed the last change; Use elmo-unfold-field-body.
3103
3104 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3105
3106         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3107         Unfold date value.
3108
3109 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3110
3111         * elmo-spam.el (elmo-spam-save-status): New API.
3112
3113         * elsp-spamfilter.el: New file.
3114
3115 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3116
3117         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
3118
3119 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3120
3121         * elmo-split.el (elmo-split-spam-p): New function.
3122
3123         * elmo-spam.el: New file.
3124
3125         * elsp-bogofilter.el: Ditto.
3126
3127 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
3128
3129         * elmo.el (elmo-folder-next-message-number): New API.
3130         (elmo-folder-next-message-number): Define.
3131         (elmo-message-field): Don't check folder length.
3132
3133         * elmo-net.el (elmo-folder-next-message-number): Define.
3134         (elmo-folder-next-message-number-unplugged): Define.
3135
3136         * elmo-map.el (elmo-folder-next-message-number): Define.
3137         (elmo-folder-delete-messages): Clear hash value.
3138
3139         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
3140
3141         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
3142         (elmo-folder-delete-messages-dop-delayed): Always return t.
3143
3144         * elmo-version.el (elmo-version): Up to 2.11.19.
3145
3146 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3147
3148         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
3149         change.
3150
3151         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
3152         identical cons cell into the mark-alist and the hash table.
3153
3154 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
3155
3156         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
3157         elmo-folder-list-messages with argument `visible-only' as t.
3158
3159         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
3160         (elmo-folder-msgdb-create): Check the target folder.
3161
3162 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
3163
3164         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
3165         `permanentflag' instead of `flags'.
3166         (elmo-folder-open): Ditto.
3167         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
3168         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
3169         (elmo-folder-use-flag-p): Always return t.
3170         (elmo-imap4-session-select-mailbox): Use value of `flags' if
3171         `permanentflags' does not exist.
3172         (elmo-folder-open): Ditto.
3173
3174 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
3175
3176         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
3177         is nil.
3178         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
3179
3180         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
3181         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
3182         response.
3183         (elmo-folder-open): Ditto.
3184         (elmo-imap4-set-flag): Send store flag command only when the `flags'
3185         slot of the session includes the flag.
3186         (elmo-imap4-session-flag-available-p): New function.
3187         (elmo-imap4-folder-list-flagged): Ditto.
3188         (elmo-folder-list-unreads-plugged): Use it.
3189         (elmo-folder-list-importants-plugged): Ditto.
3190         (elmo-folder-list-answereds-plugged): Ditto.
3191         (elmo-imap4-search-internal-primitive): Ditto.
3192         (elmo-imap4-folder-list-any-plugged,
3193         elmo-imap4-folder-list-digest-plugged): Abolish.
3194
3195         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
3196         if numbers is nil.
3197
3198 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3199
3200         * elmo-util.el (toplevel): Require emu for char-list-to-string.
3201
3202 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
3203
3204         * elmo-util.el (elmo-get-hash-val): Simplify.
3205         (elmo-set-hash-val): Rewrite.
3206
3207 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3208
3209         * elmo.el (elmo-folder-list-messages): Append killed messages into
3210         result if `visible-only' is nil and `in-msgdb' is non-nil.
3211
3212         * elmo-util.el (elmo-uniq-list): Added optional argument
3213         `delete-function'.
3214
3215         * modb.el (elmo-msgdb-flag-count): New API.
3216
3217         * modb-standard.el (modb-standard): Added slot flag-count.
3218         (modb-standard-countup-flags): New function.
3219         (modb-standard-load-flag): Call it.
3220         (elmo-msgdb-append): Ditto.
3221         (elmo-msgdb-clear): Clear slot flag-count.
3222         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
3223         (elmo-msgdb-unset-flag): Treat `all' flag and call
3224         modb-standard-countup-flags.
3225         (elmo-msgdb-flag-count): Define.
3226         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
3227         (elmo-msgdb-delete-messages): Ditto.
3228
3229         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
3230         (elmo-msgdb-flag-count): Define.
3231
3232         * elmo.el (elmo-folder-list-messages): Undo last change.
3233         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
3234         (elmo-folder-kill-messages): Unset all flags to numbers.
3235
3236         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
3237         elmo-folder-kill-messages.
3238
3239         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
3240         (elmo-nntp-folder-delete-messages): Abolish.
3241
3242         * elmo-version.el (elmo-version): Up to 2.11.18.
3243
3244 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3245
3246         * elmo.el (elmo-folder-kill-messages-before): Abolish.
3247         (elmo-folder-kill-messages-range): New function.
3248         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
3249         instead of elmo-folder-kill-messages-before.
3250
3251 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
3252
3253         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
3254         elmo-imap4-current-msgdb to decide entity handler.
3255
3256 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3257
3258         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
3259
3260         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
3261         inline function.
3262         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
3263         (elmo-msgdb-overview-entity-set-number,
3264         elmo-msgdb-overview-entity-get-references,
3265         elmo-msgdb-overview-entity-set-references,
3266         elmo-msgdb-overview-entity-get-from-no-decode,
3267         elmo-msgdb-overview-entity-get-from,
3268         elmo-msgdb-overview-entity-set-from,
3269         elmo-msgdb-overview-entity-get-subject,
3270         elmo-msgdb-overview-entity-get-subject-no-decode,
3271         elmo-msgdb-overview-entity-set-subject,
3272         elmo-msgdb-overview-entity-get-date,
3273         elmo-msgdb-overview-entity-set-date,
3274         elmo-msgdb-overview-entity-get-to,
3275         elmo-msgdb-overview-entity-get-cc,
3276         elmo-msgdb-overview-entity-get-size,
3277         elmo-msgdb-overview-entity-set-size,
3278         elmo-msgdb-overview-entity-get-extra,
3279         elmo-msgdb-overview-entity-set-extra,
3280         elmo-msgdb-overview-entity-get-extra-field,
3281         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
3282         (elmo-msgdb-make-index): Use
3283         `elmo-msgdb-overview-entity-get-number-internal'.
3284         (elmo-msgdb-clear-index): Ditto.
3285         (elmo-msgdb-append-entity): Ditto;
3286         Use `elmo-msgdb-overview-entity-get-id-internal'.
3287
3288         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
3289         elmo-msgdb-overview-entity-set-number,
3290         elmo-msgdb-overview-entity-get-references,
3291         elmo-msgdb-overview-entity-set-references,
3292         elmo-msgdb-overview-entity-get-from-no-decode,
3293         elmo-msgdb-overview-entity-get-from,
3294         elmo-msgdb-overview-entity-set-from,
3295         elmo-msgdb-overview-entity-get-subject,
3296         elmo-msgdb-overview-entity-get-subject-no-decode,
3297         elmo-msgdb-overview-entity-set-subject,
3298         elmo-msgdb-overview-entity-get-date,
3299         elmo-msgdb-overview-entity-set-date,
3300         elmo-msgdb-overview-entity-get-to,
3301         elmo-msgdb-overview-entity-get-cc,
3302         elmo-msgdb-overview-entity-get-size,
3303         elmo-msgdb-overview-entity-set-size,
3304         elmo-msgdb-overview-entity-get-extra,
3305         elmo-msgdb-overview-entity-set-extra,
3306         elmo-msgdb-overview-entity-get-extra-field,
3307         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
3308         and rewrote for backward compatibility.
3309
3310 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3311
3312         * elmo.el (elmo-message-entity-number,
3313         elmo-message-entity-set-number,
3314         elmo-message-entity-field,
3315         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
3316
3317         * elmo-msgdb.el (elmo-message-entity-number,
3318         elmo-message-entity-set-number,
3319         elmo-message-entity-field,
3320         elmo-message-entity-set-field): Moved from elmo.el.
3321
3322 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3323
3324         * elmo.el (toplevel): Changed definition orders.
3325
3326 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3327
3328         * modb.el (elmo-msgdb-search): New API .
3329         (elmo-msgdb-match-condition): Ditto.
3330
3331         * modb-standard.el (elmo-msgdb-search): Define.
3332
3333         * modb-legacy.el (elmo-msgdb-search): Ditto.
3334
3335         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
3336         from elmo-msgdb-match-condition-internal.
3337
3338         * elmo.el (elmo-folder-search-fast): Abolish.
3339         (elmo-folder-search): Use elmo-msgdb-search and
3340         elmo-with-progress-display.
3341
3342         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
3343         as msgdb API.
3344
3345         * elmo.el (elmo-folder): Remove slot message-modified and
3346         flag-modified.
3347         (elmo-folder-set-message-modified): Abolish.
3348         (elmo-generic-folder-commit): Follow the change above.
3349         (elmo-folder-synchronize): Ditto.
3350
3351         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
3352
3353         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3354
3355         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
3356
3357 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3358
3359         * modb-standard.el (modb-standard-make-message-entity,
3360         elmo-msgdb-make-message-entity,
3361         elmo-msgdb-create-message-entity-from-buffer,
3362         elmo-msgdb-message-entity-number,
3363         elmo-msgdb-message-entity-set-number,
3364         elmo-msgdb-message-entity-field,
3365         elmo-msgdb-message-entity-set-field,
3366         elmo-msgdb-copy-message-entity,
3367         elmo-msgdb-match-condition-internal): Remove.
3368
3369         * modb-entity.el: New file (again).
3370
3371         * modb.el (toplevel): Require modb-entity.
3372         (elmo-msgdb-message-entity-handler): New method.
3373
3374         * modb-standard.el (modb-standard-entity-id): Use
3375         elmo-message-entity-handler.
3376         (modb-standard-load-entity): Ditto.
3377         (elmo-msgdb-append-entity): Ditto.
3378         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3379
3380         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
3381         elmo-msgdb-decoded-cache-hashtb,
3382         (modb-legacy-make-message-entity,
3383         elmo-msgdb-make-message-entity,
3384         elmo-msgdb-create-message-entity-from-buffer,
3385         elmo-msgdb-message-entity-number,
3386         elmo-msgdb-message-entity-set-number,
3387         elmo-msgdb-message-entity-field,
3388         elmo-msgdb-message-entity-set-field,
3389         elmo-msgdb-copy-message-entity,
3390         elmo-msgdb-match-condition-internal,
3391         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
3392
3393         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
3394         (elmo-message-entity-set-number): Ditto.
3395         (elmo-message-entity-field): Ditto.
3396         (elmo-message-entity-set-field): Ditto.
3397
3398         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
3399
3400         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3401
3402         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3403
3404         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3405         (elmo-nntp-msgdb-create-message): Ditto.
3406
3407         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
3408         (elmo-folder-msgdb-create): Add unread flag.
3409
3410         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3411
3412         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
3413
3414         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
3415
3416         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3417
3418         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
3419         elmo-msgdb-messge-entity-handler.
3420         * elmo-version.el (elmo-version): Up to 2.11.17.
3421
3422 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3423
3424         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
3425         change.
3426
3427 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3428
3429         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3430
3431         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3432         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3433         (elmo-msgdb-flag-table): Ditto.
3434         (elmo-msgdb-sort-by-date): Ditto.
3435
3436         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3437
3438         * modb-standard.el (toplevel): Require mime.
3439         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3440         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3441         elmo-msgdb-message-entity-number.
3442         (elmo-msgdb-append-entity): Ditto.
3443         (elmo-msgdb-create-message-entity-from-file): Remove.
3444         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3445         corresponds to the entity.
3446         (elmo-msgdb-message-entity-number): Do nothing currently.
3447         (elmo-msgdb-message-entity-field): Ditto.
3448         (elmo-msgdb-message-entity-set-field): Ditto.
3449         (elmo-msgdb-copy-message-entity): Ditto.
3450         (elmo-msgdb-match-condition-internal): Ditto.
3451
3452         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3453         elmo-util.el.
3454         (elmo-msgdb-create-message-entity-from-file): Remove.
3455
3456         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3457         modb-legacy.el.
3458         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3459
3460         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3461
3462 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3463
3464         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3465         (elmo-msgdb-message-entity-field): Ditto.
3466         (elmo-msgdb-message-entity-number): Ditto.
3467
3468 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3469
3470         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3471         Fixed how to set extra field into entity.
3472         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3473         symbol.
3474
3475         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3476         Fixed how to set extra field into entity.
3477         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3478         symbol.
3479
3480 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3481
3482         * modb.el (elmo-message-entity-db): New function.
3483         (elmo-msgdb-make-message-entity): New API.
3484         (elmo-msgdb-message-entity-number): Ditto.
3485         (elmo-msgdb-message-entity-set-number): Ditto.
3486         (elmo-msgdb-message-entity-field): Ditto.
3487         (elmo-msgdb-message-entity-set-field): Ditto.
3488         (elmo-msgdb-copy-message-entity): Ditto.
3489         (elmo-msgdb-create-message-entity-from-file): Ditto.
3490         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3491         (elmo-msgdb-match-condition-internal): Ditto.
3492
3493         * modb-standard.el (modb-legacy): Require modb-legacy.
3494         (modb-standard-make-message-entity): New inline function.
3495         (elmo-msgdb-make-message-entity): Define.
3496         (elmo-msgdb-create-message-entity-from-file): Ditto.
3497         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3498         (elmo-msgdb-message-entity-field): Ditto.
3499         (elmo-msgdb-message-entity-set-field): Ditto.
3500         (elmo-msgdb-copy-message-entity): Ditto.
3501         (elmo-msgdb-match-condition-internal): Ditto.
3502
3503         * modb-legacy.el: Don't require modb-entity.
3504         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3505         (elmo-msgdb-match-condition-primitive): Ditto.
3506         (elmo-msgdb-get-decoded-cache): Ditto.
3507         (elmo-msgdb-overview-entity-get-id): Ditto.
3508         (elmo-msgdb-overview-entity-get-number): Ditto.
3509         (elmo-msgdb-overview-entity-set-number): Ditto.
3510         (elmo-msgdb-overview-entity-get-references): Ditto.
3511         (elmo-msgdb-overview-entity-set-references): Ditto.
3512         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3513         (elmo-msgdb-overview-entity-get-from): Ditto.
3514         (elmo-msgdb-overview-entity-set-from): Ditto.
3515         (elmo-msgdb-overview-entity-get-subject): Ditto.
3516         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3517         (elmo-msgdb-overview-entity-set-subject): Ditto.
3518         (elmo-msgdb-overview-entity-get-date): Ditto.
3519         (elmo-msgdb-overview-entity-set-date): Ditto.
3520         (elmo-msgdb-overview-entity-get-to): Ditto.
3521         (elmo-msgdb-overview-entity-get-cc): Ditto.
3522         (elmo-msgdb-overview-entity-get-size): Ditto.
3523         (elmo-msgdb-overview-entity-set-size): Ditto.
3524         (elmo-msgdb-overview-entity-get-extra): Ditto.
3525         (elmo-msgdb-overview-entity-set-extra): Ditto.
3526         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3527         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3528         (elmo-msgdb-number-load): Ditto.
3529         (elmo-msgdb-overview-load): Ditto.
3530         (elmo-msgdb-mark-load): Ditto.
3531         (elmo-msgdb-number-save): Ditto.
3532         (elmo-msgdb-mark-save): Ditto.
3533         (elmo-msgdb-overview-save): Ditto.
3534         (modb-legacy-make-message-entity): New inline function.
3535         (elmo-msgdb-insert-file-header): Ditto.
3536         (elmo-msgdb-make-message-entity): Define.
3537         (elmo-msgdb-create-message-entity-from-file): Ditto.
3538         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3539         (elmo-msgdb-message-entity-number): Ditto.
3540         (elmo-msgdb-message-entity-set-number): Ditto.
3541         (elmo-msgdb-message-entity-field): Ditto.
3542         (elmo-msgdb-message-entity-set-field): Ditto.
3543         (elmo-msgdb-copy-message-entity): Ditto.
3544         (elmo-msgdb-match-condition-internal): Ditto.
3545
3546         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3547         (elmo-message-copy-entity): Rewrite.
3548         (elmo-message-entity-number): Ditto.
3549         (elmo-message-entity-set-number): Ditto.
3550         (elmo-message-entity-field): Use elmo-message-entity-db.
3551         (elmo-message-entity-set-field): Ditto.
3552         (elmo-message-field): Rewrite.
3553
3554         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3555         elmo-msgdb.el
3556         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3557
3558         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3559         elmo-message-entity-field.
3560         (elmo-shimbun-folder-shimbun-header): Ditto.
3561         (elmo-shimbun-entity-to-header): Ditto.
3562         (elmo-folder-msgdb-create): Ditto.
3563         (elmo-shimbun-msgdb-create-entity): Ditto;
3564         Use elmo-msgdb-create-message-entity-from-buffer.
3565         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3566         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3567
3568         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3569         elmo-msgdb-create-message-entity-from-file and 
3570         elmo-message-entity-field.
3571
3572         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3573         elmo-message-entity-number.
3574         (elmo-pop3-msgdb-create-message): Use
3575         elmo-msgdb-create-message-entity-from-buffer,
3576         elmo-message-entity-set-field, elmo-message-entity-number and
3577         elmo-message-entity-set-number.
3578
3579         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3580         the API change in elmo-msgdb-make-message-entity.
3581         (elmo-nntp-msgdb-create-message): Use
3582         elmo-msgdb-create-message-entity-from-buffer.
3583
3584         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3585         elmo-message-entity-field and
3586         elmo-msgdb-create-message-entity-from-file.
3587
3588         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3589         (elmo-msgdb-get-field): Abolish.
3590         (elmo-msgdb-get-number): Rewrite.
3591         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3592         (elmo-msgdb-flag-table): Ditto.
3593         (elmo-msgdb-get-last-message-id,
3594         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3595         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3596         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3597         (elmo-msgdb-create-overview-from-buffer,
3598         elmo-msgdb-overview-get-parent-entity): Abolish.
3599
3600         * elmo-mime.el (elmo-mime-display-as-is): Use
3601         elmo-message-entity-field.
3602
3603         * elmo-map.el (elmo-folder-pack-numbers): Use
3604         elmo-message-entity-set-number.
3605
3606         * elmo-maildir.el (elmo-folder-msgdb-create): 
3607         elmo-msgdb-create-message-entity-from-file instead of
3608         elmo-msgdb-create-overview-entity-from-file.
3609
3610         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3611         msgdb.
3612         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3613         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3614
3615         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3616         elmo-messge-entity-field and elmo-message-entity-number.
3617         (elmo-imap4-fetch-callback-1): Call
3618         elmo-msgdb-create-message-entity-from-buffer instead of
3619         elmo-msgdb-create-overview-from-buffer. 
3620         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3621         (elmo-find-fetch-strategy): Likewise.
3622
3623         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3624         elmo-localdir-msgdb-create-entity with argument msgdb.
3625
3626         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3627         and elmo-message-entity-set-number.
3628
3629         * elmo-cache.el (elmo-folder-msgdb-create): Use
3630         elmo-message-entity-field.
3631         (elmo-folder-msgdb-create): Call
3632         elmo-msgdb-create-message-entity-from-file instead of
3633         elmo-msgdb-create-overview-entity-from-file.
3634
3635         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3636         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3637         instead of elmo-msgdb-create-overview-from-buffer.
3638         (elmo-archive-msgdb-create-entity): Ditto.
3639         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3640         elmo-message-entity-field.
3641         (elmo-archive-parse-mmdf): Ditto.
3642
3643         * modb-entity.el: Removed.
3644
3645         * elmo-version.el (elmo-version): Up to 2.11.16.
3646
3647 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3648
3649         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3650         `is-local'.
3651         (elmo-folder-flag-as-answered): Ditto.
3652
3653 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3654
3655         * modb-standard.el: New file.
3656
3657         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3658         elmo-msgdb-convert-type is `sync'.
3659
3660         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3661         (elmo-msgdb-convert-type): New user option.
3662
3663         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3664         (elmo-load-msgdb): Auto detect saved type.
3665
3666         * elmo-version.el (elmo-version): Up to 2.11.15.
3667
3668 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3669
3670         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3671
3672         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3673         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3674         with argument `delete-if-none' when dst-folder is 'null.
3675
3676         * elmo-flag.el (elmo-folder-append-messages): Defined.
3677         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3678
3679 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3680
3681         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3682
3683 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3684
3685         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3686         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3687         (elmo-folder-commit): Ditto.
3688
3689 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3690
3691         * elmo-flag.el: New file.
3692
3693         * elmo-mark.el: Removed.
3694
3695         * modb-legacy.el (modb-legacy-new-mark,
3696         modb-legacy-unread-uncached-mark,
3697         modb-legacy-unread-cached-mark,
3698         modb-legacy-read-uncached-mark,
3699         modb-legacy-answered-cached-mark,
3700         modb-legacy-answered-uncached-mark,
3701         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3702         All other related portions are changed.
3703
3704         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3705         (elmo-folder-list-messages-with-global-mark): Abolish.
3706         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3707         (elmo-folder-flag-as-important): Ditto.
3708         (elmo-folder-unflag-read): Ditto.
3709         (elmo-folder-flag-as-read): Ditto.
3710         (elmo-folder-unflag-answered): Ditto.
3711         (elmo-folder-flag-as-answered): Ditto.
3712         (elmo-message-encache): Return the cache path.
3713         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3714         (elmo-message-set-flag): Transitional implementation.
3715         (elmo-message-unset-flag): Ditto.
3716         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3717         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3718         (elmo-init): Call elmo-global-flag-initialize.
3719         (toplevel): Added autoload settings for elmo-flag.
3720
3721         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3722
3723         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3724         (elmo-file-cache-delete): Don't treat global-mark.
3725
3726         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3727
3728         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3729
3730         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3731         `elmo-global-flags-set'.
3732
3733         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3734         `flag'.
3735         (elmo-folder-unflag-read): Ditto.
3736         (elmo-folder-unflag-important): Ditto.
3737         (elmo-folder-flag-as-important): Ditto.
3738         (elmo-folder-unflag-answered): Ditto.
3739         (elmo-folder-flag-as-answered): Ditto.
3740
3741         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3742         `elmo-global-flags-set'.
3743         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3744
3745         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3746
3747         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3748         `flag'.
3749         (elmo-folder-flag-as-important): Ditto.
3750         (elmo-folder-unflag-important): Ditto.
3751         (elmo-folder-flag-as-important): Ditto.
3752         (elmo-folder-unflag-read): Ditto.
3753         (elmo-folder-flag-as-read): Ditto.
3754         (elmo-folder-unflag-answered): Ditto.
3755         (elmo-folder-flag-as-answered): Ditto.
3756
3757         * elmo-multi.el (elmo-folder-list-importants): Don't call
3758         elmo-folder-list-messages-with-global-mark.
3759         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3760         (elmo-folder-unflag-important): Ditto.
3761         (elmo-folder-flag-as-read): Ditto.
3762         (elmo-folder-unflag-read): Ditto.
3763         (elmo-folder-flag-as-answered): Ditto.
3764         (elmo-folder-unflag-answered): Ditto.
3765
3766         * elmo-msgdb.el (elmo-msgdb-new-mark,
3767         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3768         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3769         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3770         (Moved to modb-legacy.el).
3771         (elmo-flag-table-get): Treat important flag too.
3772
3773         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3774         `mark' to `flag'.
3775         (elmo-map-folder-flag-as-important): Ditto.
3776         (elmo-map-folder-unflag-read): Ditto.
3777         (elmo-map-folder-flag-as-read): Ditto.
3778         (elmo-map-folder-unflag-answered): Ditto.
3779         (elmo-map-folder-flag-as-answered): Ditto.
3780         (elmo-folder-unflag-important): Ditto.
3781         (elmo-folder-flag-as-important): Ditto.
3782         (elmo-folder-unflag-read): Ditto.
3783         (elmo-folder-flag-as-read): Ditto.
3784         (elmo-folder-unflag-answered): Ditto.
3785         (elmo-folder-flag-as-answered): Ditto.
3786
3787         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3788         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3789         `flag'.
3790         (elmo-map-folder-unflag-important): Ditto.
3791         (elmo-map-folder-flag-as-read): Ditto.
3792         (elmo-map-folder-unflag-read): Ditto.
3793         (elmo-map-folder-flag-as-answered): Ditto.
3794         (elmo-map-folder-unflag-answered): Ditto.
3795
3796         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3797         `elmo-global-flags-set'.
3798         (elmo-global-flags-set): Added autoload setting.
3799
3800         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3801         `flag'.
3802
3803         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3804         `elmo-msgdb-global-mark-set'.
3805         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3806         Call `elmo-global-flags-set'.
3807         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3808         `flag'.
3809         (elmo-folder-flag-as-important-plugged): Ditto.
3810         (elmo-folder-unflag-read-plugged): Ditto.
3811         (elmo-folder-flag-as-read-plugged): Ditto.
3812         (elmo-folder-unflag-answered-plugged): Ditto.
3813         (elmo-folder-flag-as-answered-plugged): Ditto.
3814         (elmo-global-flags-set): Added autoload setting.
3815
3816         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3817         `flag'.
3818         (elmo-folder-unflag-read): Ditto.
3819         (elmo-folder-flag-as-important): Ditto.
3820         (elmo-folder-unflag-important): Ditto.
3821         (elmo-folder-flag-as-answered): Ditto.
3822         (elmo-folder-unflag-answered): Ditto.
3823
3824         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3825         change of `mark'->`flag'.
3826         (elmo-dop-queue-method-name-alist): Ditto.
3827         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3828         (elmo-folder-unflag-read-dop): Ditto.
3829         (elmo-folder-flag-as-important-dop): Ditto.
3830         (elmo-folder-unflag-important-dop): Ditto.
3831         (elmo-folder-flag-as-answered-dop): Ditto.
3832         (elmo-folder-unflag-answered-dop): Ditto.
3833
3834         * elmo-cache.el (elmo-folder-msgdb-create): Call
3835         `elmo-global-flags-set'.
3836
3837         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3838         Call `elmo-global-flags-set'.
3839         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3840         elmo-archive-parse-mmdf with argument `folder'.
3841         (elmo-archive-parse-mmdf): Added argument `folder';
3842         Call `elmo-global-flags-set'.
3843
3844         * elmo-version.el (elmo-version): Up to 2.11.14.
3845
3846 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3847
3848         * modb.el (elmo-msgdb-length): Define.
3849
3850         * elmo.el (elmo-make-folder): Fixed.
3851         (elmo-generic-folder-append-messages): Follow the API change.
3852
3853         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3854         API change.
3855
3856 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3857
3858         * modb.el: New file.
3859
3860         * modb-entity.el: Ditto.
3861
3862         * modb-legacy.el: Ditto.
3863
3864         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3865         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3866         of `elmo-msgdb-overview-get-entity'.
3867         (elmo-msgdb-get-field): Ditto.
3868         (elmo-msgdb-merge): Moved to `elmo.el'.
3869         (elmo-msgdb-length): Removed; redefine as modb method.
3870         (elmo-msgdb-change-mark): Abolish.
3871         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3872         (elmo-msgdb-match-condition): Don't use mark.
3873         (elmo-msgdb-overview-get-entity): Abolish.
3874         Split modb part into `modb*.el'.
3875
3876         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3877
3878         * elmo-shimbun.el (shimbun-mua-search-id): Use
3879         `elmo-msgdb-message-entity' instead of
3880         `elmo-msgdb-overview-get-entity'.
3881         (elmo-shimbun-folder-shimbun-header): Ditto.
3882         (elmo-shimbun-get-headers): Ditto.
3883         (elmo-shimbun-update-overview): Ditto.
3884
3885         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3886
3887         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3888
3889         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3890         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3891
3892         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3893         `elmo-msgdb-mark-to-flags'.
3894
3895         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3896         `elmo-msgdb-set-path'.
3897
3898         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3899  
3900         * elmo-version.el (elmo-version): Up to 2.11.13.
3901
3902         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3903
3904         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3905         of mark.
3906
3907 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3908
3909         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3910         mismatch.
3911
3912 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3913
3914         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3915         instead of `elmo-msgdb-get-cached'.
3916         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3917
3918         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3919         (elmo-msgdb-set-cached): Ditto.
3920         (elmo-msgdb-set-flag): Rewrite.
3921         (elmo-msgdb-unset-flag): Ditto.
3922
3923         * elmo-msgdb.el: Rewrite with luna.
3924
3925         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3926         (elmo-folder-msgdb): Follow the change above.
3927         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3928         (elmo-folder-unmark-important): Follow the API change.
3929         (elmo-folder-mark-as-important): Ditto.
3930         (elmo-folder-unmark-read): Ditto.
3931         (elmo-folder-mark-as-read): Ditto.
3932         (elmo-folder-unmark-answered): Ditto.
3933         (elmo-folder-mark-as-answered): Ditto.
3934         (elmo-folder-clear): Likewise.
3935
3936         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3937         instead of `elmo-msgdb-load' (renamed).
3938
3939         * elmo-version.el (elmo-version): Up to 2.11.12.
3940
3941 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3942
3943         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3944         change.
3945         (elmo-message-mark): Abolish.
3946         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3947         instead of `elmo-msgdb-change-mark'.
3948
3949         * elmo-pipe.el (elmo-message-mark): Abolish.
3950
3951         * elmo-multi.el (elmo-message-mark): Ditto.
3952
3953         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3954         (elmo-msgdb-unread-uncached-mark): Ditto.
3955         (elmo-msgdb-unread-cached-mark): Ditto.
3956         (elmo-msgdb-read-uncached-mark): Ditto.
3957         (elmo-msgdb-answered-cached-mark): Ditto.
3958         (elmo-msgdb-answered-uncached-mark): Ditto.
3959         (elmo-msgdb-important-mark): Ditto.
3960         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3961         `use-cache'.
3962         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3963         `flags'.
3964         (elmo-flag-table-load): Changed flag to list of flag.
3965         (elmo-flag-table-set): If flags is nil, set read flag.
3966         (elmo-flag-table-get): Return derived flags from global mark,
3967         cache status and saved flags.
3968         (elmo-msgdb-flag-table): Follow the change above.
3969         (elmo-msgdb-out-of-date-messages): New function.
3970
3971         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3972
3973         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3974
3975         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3976
3977         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3978         (elmo-nntp-msgdb-create-message): Ditto.
3979
3980         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3981
3982         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3983         independent.
3984         (elmo-folder-msgdb-create): Follow the API change.
3985
3986         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3987         (elmo-folder-append-messages): Ditto.
3988
3989         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3990         (elmo-folder-append-buffer): Ditto.
3991
3992         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3993
3994         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3995
3996         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3997         (elmo-archive-parse-mmdf): Ditto.
3998
3999         * elmo-version.el (elmo-version): Up to 2.11.11.
4000
4001 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4002
4003         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
4004         `elmo-msgdb-mark'.
4005
4006         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
4007
4008         * elmo-pipe.el (elmo-message-flags): Defined.
4009
4010         * elmo-multi.el (elmo-message-flags): Ditto.
4011
4012 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4013
4014         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
4015         `elmo-msgdb-delete-msgs'.
4016
4017         * elmo.el (elmo-folder-count-flags): Don't use
4018         `elmo-msgdb-get-mark-alist'.
4019         (elmo-folder-detach-messages): Follow the API change.
4020
4021         * elmo.el (elmo-folder-list-messages): Append killed messages into
4022         result if `visible-only' is nil.
4023
4024         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
4025         canceled messages.
4026         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
4027         (elmo-folder-update-number): Likewise.
4028
4029         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
4030         (elmo-pop3-sort-msgdb-by-original-number): Use
4031         `elmo-msgdb-sort-entities'.
4032
4033         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
4034         (elmo-msgdb-sort-by-date): Use it.
4035         (elmo-msgdb-overview-sort-by-date): Abolish.
4036
4037         * elmo-dop.el (elmo-folder-status-dop): Fixed.
4038
4039         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
4040         (elmo-msgdb-flags): New function.
4041         (elmo-msgdb-merge): Use elmo-msgdb-append.
4042
4043         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
4044         change.
4045
4046         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
4047
4048         * elmo-dop.el (elmo-folder-status-dop): Use
4049         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
4050
4051 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4052
4053         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
4054
4055         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
4056
4057         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
4058
4059         * elmo-util.el (elmo-with-progress-display): New macro.
4060
4061         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
4062
4063 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4064
4065         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
4066         `elmo-folder-list-message-entities' instead of
4067         `elmo-msgdb-get-overview'.
4068         (elmo-map-folder-list-message-locations): Ditto.
4069
4070         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
4071         methods instead of treat directly).
4072         (elmo-msgdb-clear): Ditto.
4073         (elmo-msgdb-delete-msgs): Ditto.
4074         (elmo-msgdb-sort-by-date): Ditto.
4075
4076         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
4077         local variables.
4078         (elmo-nntp-folder-msgdb-create): Follow the API change.
4079
4080         * elmo-version.el (elmo-version): Up to 2.11.10.
4081
4082 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4083
4084         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
4085         (elmo-msgdb-flags-to-mark): Ditto.
4086         (elmo-msgdb-append-entity): Ditto.
4087
4088         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
4089         Use `elmo-msgdb-append-entity' instead of construct msgdb.
4090         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4091         (elmo-archive-parse-mmdf): Ditto.
4092
4093         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4094
4095         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
4096
4097         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
4098
4099         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4100
4101         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
4102
4103         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4104
4105         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4106
4107         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4108
4109         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
4110         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
4111         to empty msgdb.
4112
4113         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
4114         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
4115         instead of directly construction.
4116         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
4117         instead of construct msgdb.
4118
4119         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
4120         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
4121         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
4122         instead of construct msgdb.
4123
4124 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4125
4126         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
4127         when field is from or subject.
4128
4129 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
4130
4131         * elmo-multi.el (elmo-message-entity-parent): Define.
4132         (elmo-folder-search): Rewrite.
4133
4134 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4135
4136         * elmo-multi.el (elmo-message-cached-p): Define.
4137
4138         * elmo.el (elmo-message-cached-p): New method.
4139         (elmo-message-accessible-p): Use it instead of msgdb API directly.
4140         (elmo-message-flags): New method.
4141         (elmo-message-flagged-p): New function.
4142
4143         * elmo-version.el (elmo-version): Up to 2.11.9.
4144
4145 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4146
4147         * elmo-version.el (elmo-version): Up to 2.11.8.
4148
4149         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
4150
4151         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
4152
4153 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
4154
4155         * elmo.el (elmo-folder-detach-messages): Undo last change.
4156
4157 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
4158
4159         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
4160
4161         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
4162         only when src folder type is pop3.
4163
4164 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
4165
4166         * elmo-msgdb.el (elmo-msgdb-make-index): Use
4167         elmo-msgdb-overview-entity-get-number instead of
4168         elmo-message-entity-number.
4169
4170 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4171
4172         * elmo-version.el (elmo-version): Up to 2.11.7.
4173
4174 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
4175
4176         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
4177         function.
4178
4179         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
4180         (elmo-msgdb-merge): New function.
4181         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
4182         (elmo-msgdb-make-index): Rewrite.
4183
4184         * elmo-version.el (elmo-version): Up to 2.11.6.
4185
4186         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
4187         use it as a the path for loading message entities.
4188
4189         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
4190
4191 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
4192
4193         * elmo-filter.el (elmo-folder-set-message-modified): Set 
4194         message-modified slot of itself if it does not require target msgdb.
4195
4196         * elmo-mime.el (elmo-mime-message-display): Display message entirely
4197         if folder length is zero.
4198         (elmo-mime-display-as-is): Ditto.
4199
4200         * elmo-filter.el (elmo-folder-set-message-modified): Define.
4201
4202         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
4203
4204 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4205
4206         * elmo.el (elmo-folder-set-message-modified): New method.
4207         (elmo-generic-folder-commit): Use it.
4208         (elmo-folder-synchronize): Ditto.
4209
4210         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
4211         (elmo-folder-commit): Remove duplicate definition.
4212
4213 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4214
4215         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
4216
4217 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4218
4219         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
4220         (elmo-strict-folder-diff): Ditto.
4221         (elmo-folder-set-info-max-by-numdb): Simplify.
4222
4223         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
4224         elmo-msgdb-list-messages.
4225
4226         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
4227         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
4228
4229 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4230
4231         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
4232         visible-only is non-nil.
4233         (elmo-folder-confirm-appends): Changed message.
4234         (elmo-folder-synchronize): Added argument disable-killed.
4235
4236         * elmo-multi.el (elmo-folder-synchronize): Added argument
4237         disable-killed.
4238
4239         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
4240
4241         * elmo-version.el (elmo-version): Up to 2.11.5.
4242
4243         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
4244         elmo-list-filter.
4245
4246         * elmo-util.el (elmo-list-filter): Simplify.
4247
4248         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
4249         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
4250         (elmo-generic-folder-diff): Abolish argument.
4251         (elmo-msgdb-load): Don't use number-alist.
4252
4253         * elmo-filter.el (elmo-folder-diff): Abolish argument.
4254
4255         * elmo-pipe.el (elmo-folder-diff): Ditto.
4256
4257         * elmo-nmz.el (elmo-folder-diff): Ditto.
4258
4259         * elmo-net.el (elmo-folder-diff): Ditto.
4260
4261         * elmo-maildir.el (elmo-folder-diff): Ditto.
4262
4263         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
4264
4265         * elmo-multi.el (elmo-folder-diff): Ditto
4266         (elmo-multi-folder-diff): Rewrite.
4267
4268 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4269
4270         * elmo-pipe.el (elmo-folder-msgdb): Define.
4271
4272 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
4273
4274         * elmo.el (elmo-message-set-cached): Define as a method.
4275
4276         * elmo-pipe.el (elmo-message-set-cached): Define.
4277         (elmo-find-fetch-strategy): Ditto.
4278
4279         * elmo-multi.el (elmo-message-set-cached): Define.
4280         (elmo-find-fetch-strategy): Rewrite.
4281
4282         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
4283
4284         * elmo-pipe.el (elmo-message-folder): Fixed definition.
4285
4286 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4287
4288         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
4289         instead of number-alist.
4290
4291         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
4292         mark nor message-id when msgdb of source folder is not loaded.
4293
4294         * elmo.el (elmo-generic-folder-append-messages): Ditto.
4295
4296         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4297
4298 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
4299
4300         * elmo.el (elmo-folder-length): Don't require msgdb.
4301
4302 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
4303
4304         * elmo.el (elmo-message-mark): Cause an error when empty folder.
4305         (elmo-message-field): Ditto.
4306
4307         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
4308         (elmo-map-folder-list-message-locations): Setup `answered-locations'
4309         slot.
4310         (elmo-map-folder-list-answereds): Define.
4311         (elmo-maildir-list-location): Treat 'R' info.
4312         (elmo-folder-msgdb-create): Treat flag-table.
4313         (elmo-folder-append-messages): Save flag-table.
4314
4315 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
4316
4317         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
4318         Use SELECT when elmo-imap4-use-select-to-update-status is t.
4319
4320 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4321
4322         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
4323
4324         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
4325         'read when mark is null.
4326
4327 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
4328
4329         * elmo-version.el (elmo-version): Up to 2.11.4.
4330
4331 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4332
4333         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
4334         (elmo-folder-mark-as-answered): Ditto.
4335
4336 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
4337
4338         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
4339         (elmo-pop3-get-session): Make msgdb directory after session.
4340         (elmo-folder-exists-p): Check exactly at the first time even when the
4341         elmo-pop3-exists-exactly is nil.
4342
4343         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
4344         (elmo-folder-list-messages): Define instead of
4345         elmo-folder-list-messages-internal.
4346         (elmo-folder-check): Check destination folder.
4347         (elmo-folder-synchronize): Drain the pipe.
4348
4349         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
4350         when msgdb is not loaded.
4351
4352         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
4353
4354         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
4355         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
4356         messages.
4357
4358         * elmo.el (elmo-folder-kill-messages-before): New function.
4359         (elmo-folder-kill-messages): Ditto.
4360         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
4361
4362         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
4363         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
4364         killed not by synchronize (e.g. scoring).
4365
4366 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4367
4368         * elmo.el (elmo-folder-search-fast): Return t if condition is not
4369         treated.
4370         (elmo-folder-search): Follow the change above.
4371
4372         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
4373         into the candidates of search field.
4374
4375 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
4376
4377         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
4378         (elmo-msgdb-unset-flag): Ditto.
4379
4380         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
4381
4382 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
4383
4384         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
4385         (elmo-folder-commit): Define.
4386         (elmo-folder-synchronize): Ditto.
4387         (elmo-folder-list-flagged): Ditto.
4388         (elmo-folder-commit): Ditto.
4389         (elmo-folder-length): Ditto.
4390         (elmo-folder-count-flags): Ditto.
4391         (elmo-message-mark): Ditto.
4392         (elmo-message-field): Ditto.
4393         (elmo-message-entity): Ditto.
4394         (elmo-message-folder): Ditto.
4395
4396 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
4397
4398         * elmo.el (elmo-message-field): Define as a method.
4399
4400         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
4401         (elmo-message-field): Define.
4402
4403         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
4404         (elmo-folder-list-importants): Ditto.
4405         (elmo-folder-list-answereds): Ditto.
4406
4407         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
4408         qualifier.
4409         (elmo-folder-mark-as-read): Ditto.
4410         (elmo-folder-unmark-read): Ditto.
4411         (elmo-folder-mark-as-answered): Ditto.
4412         (elmo-folder-unmark-answered): Ditto.
4413         (elmo-folder-list-flagged): Define.
4414         (elmo-folder-commit): Ditto.
4415         (elmo-folder-length): Ditto.
4416         (elmo-folder-count-flags): Ditto.
4417
4418 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4419
4420         * elmo.el (elmo-folder-detach-messages): New method.
4421         (elmo-folder-move-messages): Use it.
4422         (elmo-folder-synchronize): Ditto.
4423
4424         * elmo-multi.el (elmo-folder-detach-messages): Define.
4425
4426         * elmo.el (elmo-message-copy-entity): New function.
4427         (elmo-message-entity-set-number): Ditto.
4428         (elmo-message-mark): Define as method.
4429
4430         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4431         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4432         (elmo-message-entity): Fixed last change.
4433         (elmo-message-mark): Define.
4434         (elmo-folder-msgdb-create): Abolish.
4435         (elmo-multi-folder-append-msgdb): Ditto.
4436         (elmo-multi-folder-diff): Fixed.
4437         (elmo-multi-split-number-alist): Removed.
4438         (elmo-multi-split-mark-alist): Removed.
4439         (elmo-folder-list-messages): Define.
4440         (elmo-folder-list-messages-internal): Removed.
4441
4442         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4443         local file messages.
4444         (elmo-folder-msgdb-create): Fixed read mark.
4445
4446 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4447
4448         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4449         if mark is nil.
4450
4451 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4452
4453         * elmo.el (elmo-folder-list-message-entities): Define as inline
4454         function.
4455         (elmo-folder-messages): Abolish.
4456
4457         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4458         folder.
4459         (elmo-folder-synchronize): Define.
4460         (elmo-message-entity): Define.
4461
4462 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4463
4464         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4465         elmo-imap4-session-select-mailbox.
4466
4467         * elmo.el (elmo-folder-move-messages): Don't display any message.
4468
4469         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4470         parsing.
4471         (elmo-imap4-session-check): Don't wait CHECK response.
4472         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4473
4474 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4475
4476         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4477
4478 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4479
4480         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4481         API.
4482         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4483
4484
4485         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4486         (elmo-folder-list-message-entities): Added argument in-msgdb and
4487         numbers.
4488         (elmo-folder-synchronize): Define as a method.
4489
4490         * elmo-nntp.el (elmo-folder-initialize): Don't use
4491         elmo-nntp-default-user if zero-length username is specified
4492         explicitly.
4493
4494 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4495
4496         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4497         server name in case with username.
4498         (XXX: this is ad-hoc fix against username includes "@", it
4499         should be solved fundamentally)
4500
4501 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4502
4503         * elmo-nntp.el (elmo-nntp-debug): New function.
4504         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4505         (elmo-network-authenticate-session): Hide auth-info from the log.
4506
4507         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4508         user name if it is equal to elmo-nntp-default-user.
4509
4510 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4511
4512         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4513         instead of shimbun-server-internal;
4514         Use shimbun-current-group instead of shimbun-current-group-internal.
4515         (elmo-folder-plugged-p): Use shimbun-server instead of
4516         shimbun-server-internal.
4517         (elmo-folder-set-plugged): Ditto.
4518         (elmo-net-port-info): Ditto.
4519         (elmo-folder-check): Ditto.
4520         (elmo-folder-expand-msgdb-path): Ditto.
4521         (elmo-folder-list-subfolders): Ditto.
4522
4523 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4524
4525         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4526         Convert field-name to lower case.
4527         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4528
4529 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4530
4531         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4532         `message' and `error' take format string.
4533
4534 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4535
4536         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4537
4538 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4539
4540         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4541         recursive call (can't byte compile on emacs 20.7).
4542
4543 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4544
4545         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4546         (elmo-folder-list-message-entities): New API.
4547         (elmo-message-entity): Ditto.
4548         (elmo-message-entity-parent): Ditto.
4549         (elmo-folder-do-each-message-entity): Ditto.
4550         (elmo-message-entity-number): Ditto.
4551         (elmo-message-entity-field): Ditto.
4552         (elmo-message-entity-set-field): Ditto.
4553         (elmo-folder-count-flags): Ditto.
4554         (elmo-folder-length): Ditto.
4555
4556         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4557         not.
4558
4559         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4560         (elmo-msgdb-count-marks): Abolish.
4561         (elmo-msgdb-make-entity): Ditto.
4562         (elmo-msgdb-do-each-entity): Ditto.
4563         (elmo-msgdb-message-entity): New inline function.
4564         (elmo-msgdb-message-entity-field): Ditto.
4565         (elmo-msgdb-message-entity-set-field): Ditto.
4566         (elmo-msgdb-make-message-entity): New function.
4567
4568 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4569
4570         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4571         to flag. (All other related portions are changed.)
4572         (elmo-folder-msgdb-create): Likewise.
4573         (elmo-generic-folder-append-messages): Use flag-table instead of
4574         seen-list.
4575         (elmo-folder-move-messages): Removed redundant process.
4576         (elmo-folder-synchronize): Likewise.
4577
4578         * elmo-msgdb.el (elmo-flag-table-get): New function.
4579         (elmo-flag-table-save): Fixed.
4580         (elmo-msgdb-length): New inline function.
4581         (elmo-msgdb-flag-table): New function.
4582         (elmo-msgdb-mark): Add optional argument new.
4583         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4584         (elmo-msgdb-seen-list): Ditto.
4585         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4586
4587
4588 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4589
4590         * elmo.el (elmo-message-set-mark): Abolish.
4591         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4592         (All related portions are changed.)
4593
4594         * elmo-msgdb.el (toplevel): Added comment.
4595         (elmo-load-msgdb): Added 4th element `path'.
4596         (elmo-msgdb-append): Follow the change above.
4597         (elmo-msgdb-clear): Ditto.
4598         (elmo-msgdb-delete-msgs): Ditto.
4599         (elmo-msgdb-get-path): New inline function.
4600         (elmo-msgdb-set-path): Ditto.
4601         (elmo-flag-table-filename): New variable.
4602         (elmo-flag-table-load): New function.
4603         (elmo-flag-table-set): Ditto.
4604         (elmo-flag-table-save): Ditto.
4605         (elmo-msgdb-get-field-value): Abolish.
4606         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4607
4608 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4609
4610         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4611         the folder has been deleted successfully.
4612         * elmo-imap4.el (elmo-folder-delete): Ditto.
4613         * elmo-archive.el (elmo-folder-delete): Ditto.
4614         * elmo-localdir.el (elmo-folder-delete): Ditto.
4615         * elmo-maildir.el (elmo-folder-delete): Ditto.
4616
4617 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4618
4619         * elmo-util.el (elmo-string-member-ignore-case): New function.
4620         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4621         (elmo-imap4-fetch-callback-1-subr): Likewise.
4622
4623 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4624
4625         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4626         the case of the name attribute "\Noselect".
4627
4628 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4629
4630         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4631
4632         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4633         flist, is not always a member of onum-alist.
4634
4635 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4636
4637         * elmo-version.el (elmo-version): Up to 2.11.3.
4638
4639 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4640
4641         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4642         copied from localdir's one.
4643
4644         * elmo-pipe.el (elmo-folder-rename): New method, rename
4645         destination folder with leaving source folder as it is.
4646
4647 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4648
4649         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4650         replace-regexp.
4651
4652 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4653
4654         * elmo-version.el (elmo-version): Up to 2.11.2.
4655
4656 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4657
4658         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4659         shimbun-open in case of "@".
4660         (elmo-folder-open-internal): Cope with shimbun = nil case.
4661         (elmo-folder-plugged-p): Ditto.
4662         (elmo-folder-list-subfolders): Make list for "@/" group.
4663
4664 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4665
4666         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4667         mailbox (e.g. for %~/something).
4668
4669 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4670
4671         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4672         Replace nested conditional with guard clauses.
4673
4674 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4675
4676         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4677         error [wl:11327].
4678
4679         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4680         print-depth.
4681
4682 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4683
4684         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4685         Replace nested conditional with guard clauses.
4686
4687 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4688
4689         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4690         (elmo-passwd-alist-save): Ditto.
4691         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4692
4693 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4694
4695         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4696         dir-name only if it is absolute path.
4697         (TODO: distinguish +/something and +something)
4698
4699 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4700
4701         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4702         path for "+~/something".
4703
4704 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4705
4706         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4707         as non-directory, cause error before rename-file.
4708         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4709         apropriately, mimic localdir's one.
4710         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4711
4712 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4713
4714         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4715
4716 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4717
4718         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4719
4720         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4721         
4722         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4723         is included in the global-mark or not.
4724
4725 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4726
4727         * utf7.el (toplevel): Avoid error when the function
4728         find-coding-system does not exist.
4729
4730 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4731
4732         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4733         cache even if the folder is plugged.
4734         (elmo-nntp-search-primitive): Do nothing when body search is
4735         invoked (although it is not used by the change above).
4736         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4737
4738 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4739
4740         * elmo-version.el (elmo-version): Up to 2.11.1.
4741
4742 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4743
4744         * elmo-archive.el: Specify charset.
4745
4746 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4747
4748         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4749         process buffer lives or not.
4750
4751         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4752         while flushing queues (It causes infinite loop).
4753
4754 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4755
4756         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4757
4758 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4759
4760         * utf7.el (toplevel): Check the ucs features dynamically.
4761         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4762
4763         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4764         folder is creatabe or not if it already exists.
4765
4766 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4767
4768         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4769
4770         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4771
4772         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4773         (elmo-imap4-read-response): Take care of garbage response.
4774
4775 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4776
4777         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4778         just return nil instead of error.
4779
4780 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4781
4782         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4783         search-key is "body".
4784
4785 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4786
4787         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4788         of elmo-string-matched-assoc to use match-data.
4789         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4790
4791 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4792
4793         * elmo-split.el (elmo-split->): New function.
4794         (elmo-split-<): Ditto.
4795
4796 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4797
4798         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4799         workaround for invalid message-id.
4800
4801 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4802
4803         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4804         return normal pop3 session or pop3 biff session.
4805
4806 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4807
4808         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4809         info part to the cur files when the new files already have it.
4810         (Adviced by Jared Rhine <jared@wordzoo.com>)
4811
4812 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4813
4814         * elmo-split.el (elmo-split-default-action): New variable.
4815         (elmo-split-subr): Use it if all other conditions are passed.
4816         Extend `fname' and rename it as `action'. (implemented
4817         Teranishi-san's idea in [wl:10800])
4818
4819 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4820
4821         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4822         * elmo-util.el: Ditto.
4823
4824 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4825
4826         * elmo.el (elmo-message-accessible-p): Renamed from
4827         elmo-message-cached-p and rewritten.
4828
4829 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4830
4831         * elmo.el (elmo-folder-list-flagged): New generic function.
4832         (elmo-folder-list-importants): New implementation.
4833         (elmo-folder-list-answereds): Ditto.
4834         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4835         Added 'digest'.
4836         (elmo-message-cached-p): New function.
4837         (elmo-message-set-flag): Ditto (no content).
4838         (elmo-message-unset-flag): Ditto.
4839         (elmo-folder-list-messages-mark-match): Abolish.
4840
4841         * elmo-util.el (elmo-regexp-opt): New function.
4842
4843         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4844         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4845         Added 'digest'.
4846         (elmo-msgdb-list-flagged): New function.
4847
4848         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4849         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4850         Added 'digest'.
4851
4852         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4853
4854 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4855
4856         * elmo-version.el (elmo-version): Up to 2.11.0.
4857
4858 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4859
4860         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4861         `elmo-file-cache-exists-p'; use proper mark that depends on
4862         `use-cache'.
4863         (elmo-msgdb-unset-flag): Ditto.
4864         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4865
4866         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4867         with 4th argument `use-cache'.
4868
4869 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4870
4871         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4872         (elmo-folder-mark-as-important): Ditto.
4873         (elmo-folder-unmark-read): Ditto.
4874         (elmo-folder-mark-as-read): Ditto.
4875         (elmo-folder-unmark-answered): Ditto.
4876         (elmo-folder-mark-as-answered): Ditto.
4877
4878         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4879         message status.
4880         (elmo-msgdb-mark): Likewise.
4881         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4882         (elmo-msgdb-unset-flag): Likewise.
4883
4884         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4885
4886 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4887
4888         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4889         `last:' filter.
4890
4891 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4892
4893         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4894         set spool-length to 0.
4895
4896 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4897
4898         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4899         (elmo-dop-queue-flush): Fixed last change.
4900
4901 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4902
4903         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4904         if require-msgdb slot is nil.
4905         (elmo-folder-list-importants): Likewise.
4906
4907 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4908
4909         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4910         mark is changed.
4911
4912         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4913         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4914         is changed.
4915
4916 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4917
4918         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4919
4920 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4921
4922         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4923
4924         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4925
4926 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4927
4928         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4929         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4930
4931 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4932
4933         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4934         the problem reported by Sean Rima [wl-en:180].
4935
4936 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4937
4938         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4939
4940         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4941
4942         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4943
4944         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4945
4946         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4947
4948         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4949
4950         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4951
4952 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4953
4954         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4955         status number.
4956
4957 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4958
4959         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4960         (elmo-folder-mark-as-read): Follow the API change.
4961         (elmo-message-set-cached): New function.
4962
4963         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4964
4965         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4966
4967         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4968         (elmo-folder-mark-as-important): Ditto.
4969         (elmo-folder-unmark-read): Ditto.
4970         (elmo-folder-mark-as-read): Ditto.
4971         (elmo-folder-unmark-answered): Ditto.
4972         (elmo-folder-mark-as-answered): Ditto.
4973
4974         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4975         (elmo-folder-unmark-important): Ditto.
4976         (elmo-folder-mark-as-read): Ditto.
4977         (elmo-folder-unmark-read): Ditto.
4978         (elmo-folder-mark-as-answered): Ditto.
4979         (elmo-folder-unmark-answered): Ditto.
4980
4981         * elmo-mark.el (toplevel): Removed some mark method definitions.
4982
4983         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4984         (elmo-map-folder-mark-as-answered): Ditto.
4985         (elmo-folder-unmark-important): Add :before qualifier.
4986         (elmo-folder-mark-as-important): Ditto.
4987         (elmo-folder-unmark-read): Ditto.
4988         (elmo-folder-mark-as-read): Ditto.
4989         (elmo-folder-unmark-answered): Define.
4990         (elmo-folder-mark-as-answered): Ditto.
4991
4992         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4993         (elmo-map-folder-unmark-answered): Ditto.
4994
4995         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4996
4997         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4998         (elmo-folder-mark-as-important): Ditto.
4999         (elmo-folder-unmark-read): Ditto.
5000         (elmo-folder-mark-as-read): Ditto.
5001         (elmo-folder-unmark-answered): Ditto.
5002         (elmo-folder-mark-as-answered): Ditto.
5003
5004         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
5005         `mark'; evaluate mark condition.
5006         (elmo-msgdb-match-condition-internal): New function.
5007         (elmo-msgdb-match-condition): Call it; changed argument.
5008
5009         * elmo.el (elmo-folder-search): Follow the API change on
5010         `elmo-msgdb-match-condition'.
5011
5012 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5013
5014         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
5015         original mark is non-nil.
5016
5017 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
5018
5019         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
5020         (elmo-map-folder-list-answereds): New method.
5021         (elmo-folder-list-unreads): Add :around qualifier.
5022         (elmo-folder-list-importants): Ditto.
5023         (elmo-folder-list-answereds): Ditto.
5024
5025 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
5026
5027         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
5028
5029         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
5030         method if msgdb is not required.
5031         (elmo-filter-folder-list-importants): Don't treat global-mark.
5032
5033         * elmo.el (elmo-folder-list-importants): Ditto.
5034
5035         * elmo-net.el (elmo-folder-list-importants): Ditto.
5036
5037         * elmo-map.el (elmo-folder-list-importants): Ditto.
5038
5039         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
5040
5041         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
5042         (elmo-imap4-folder-list-any-plugged): New function.
5043         (elmo-imap4-search-internal-primitive): Use it.
5044
5045         * elmo-filter.el (elmo-folder-check): Synchronize original folder
5046         only when require-msgdb slot is non-nil.
5047         (elmo-folder-close): Clear target folder's msgdb.
5048
5049 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5050
5051         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
5052         (elmo-pop3-msgdb-create-by-header): Ditto.
5053         (elmo-pop3-msgdb-create-message): Ditto.
5054
5055         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
5056
5057         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
5058
5059         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
5060
5061         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
5062         (elmo-folder-msgdb-create): Ditto.
5063         (elmo-nntp-folder-msgdb-create): Ditto.
5064         (elmo-nntp-msgdb-create-by-header): Ditto.
5065         (elmo-nntp-msgdb-create-message): Ditto.
5066         (elmo-folder-list-unreads): Define.
5067
5068         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
5069         (elmo-folder-append-messages): Ditto.
5070         (elmo-folder-list-unreads): Define.
5071         (elmo-folder-list-importants): Ditto.
5072         (elmo-folder-list-answereds): Ditto.
5073
5074         * elmo-net.el (elmo-folder-list-unreads): Define.
5075         (elmo-folder-list-importants): Ditto.
5076         (elmo-folder-list-answereds): Ditto.
5077         (elmo-folder-list-answereds-plugged): Ditto.
5078         (elmo-folder-msgdb-create): Follow the API change.
5079         (elmo-folder-msgdb-create-unplugged): Ditto.
5080         (elmo-folder-unmark-answered): Define.
5081         (elmo-folder-mark-as-answered-unplugged): Ditto.
5082         (elmo-folder-unmark-answered-unplugged): Ditto.
5083
5084         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
5085         (elmo-msgdb-unread-uncached-mark): Ditto.
5086         (elmo-msgdb-unread-cached-mark): Ditto.
5087         (elmo-msgdb-read-uncached-mark): Ditto.
5088         (elmo-msgdb-answered-cached-mark): Ditto.
5089         (elmo-msgdb-answered-uncached-mark): Ditto.
5090         (elmo-msgdb-important-mark): Ditto.
5091         (elmo-msgdb-set-mark): Rewrite.
5092         (elmo-msgdb-count-marks): Rewrite.
5093         (elmo-msgdb-mark-alist-set): Abolish.
5094         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
5095         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
5096
5097         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
5098         (elmo-folder-close): Define.
5099         (elmo-folder-msgdb-create): Follow the API change.
5100         (elmo-folder-list-unreads): Rewrite.
5101         (elmo-folder-mark-as-important): Ditto.
5102         (elmo-folder-unmark-important): Ditto.
5103         (elmo-folder-mark-as-read): Ditto.
5104         (elmo-folder-unmark-read): Ditto.
5105         (elmo-folder-mark-as-answered): Define.
5106         (elmo-folder-unmark-answered): Ditto.
5107
5108         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
5109         (elmo-folder-append-messages): Ditto.
5110
5111         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
5112
5113         * elmo-map.el (elmo-folder-list-unreads): Ditto.
5114         (elmo-folder-list-importants): Ditto.
5115
5116         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
5117         (elmo-folder-append-messages): Ditto.
5118
5119         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
5120         change.
5121         (elmo-folder-msgdb-create-plugged): Ditto.
5122         (elmo-folder-append-messages): Ditto.
5123         (elmo-folder-list-answereds-plugged): Define.
5124         (elmo-imap4-search-internal-primitive): Add `mark' processing.
5125         (elmo-folder-unmark-answered-plugged): Define.
5126         (elmo-folder-mark-as-answered-plugged): Ditto.
5127         (elmo-folder-search-requires-msgdb-p): Ditto.
5128
5129         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
5130         (elmo-folder-initialize): Set it.
5131         (elmo-folder-msgdb): Define.
5132         (elmo-folder-check): Call elmo-folder-synchronize.
5133         (elmo-folder-close): Define.
5134         (elmo-folder-commit): Ditto.
5135         (elmo-folder-msgdb-create): Rewrite.
5136         (elmo-folder-list-unreads): Ditto.
5137         (elmo-folder-list-importants): Ditto.
5138         (elmo-folder-mark-as-read): Ditto.
5139         (elmo-folder-unmark-read): Ditto.
5140         (elmo-folder-mark-as-important): Ditto.
5141         (elmo-folder-unmark-important): Ditto.
5142         (elmo-folder-mark-as-answered): Define.
5143         (elmo-folder-unmark-answered): Ditto.
5144
5145         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
5146         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
5147         (elmo-dop-queue-method-name-alist): Likewise.
5148         (elmo-folder-mark-as-answered-dop): New inline function.
5149         (elmo-folder-unmark-answered-dop): Ditto.
5150         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
5151
5152         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
5153         (elmo-folder-msgdb-create): Ditto.
5154         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
5155         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
5156         (elmo-archive-parse-mmdf): Ditto.
5157
5158         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
5159         (elmo-folder-list-unreads-internal): Ditto.
5160
5161         * elmo.el (elmo-folder-msgdb): Define as generic function.
5162         (elmo-folder-list-messages): Added argument `in-msgdb'.
5163         (elmo-folder-list-unreads): Define as generic function.
5164         (elmo-folder-list-importants): Ditto.
5165         (elmo-folder-list-answereds): Ditto.
5166         (elmo-folder-list-messages-with-global-mark): New function.
5167         (elmo-folder-msgdb-create): Removed mark arguments.
5168         (elmo-folder-unmark-answered): New generic function.
5169         (elmo-folder-mark-as-answered): Ditto.
5170         (elmo-folder-append-messages): Removed argunment `unread-marks'
5171         (elmo-folder-list-unreads-internal): Abolish.
5172         (elmo-folder-list-importants-internal): Ditto.
5173         (elmo-folder-search-requires-msgdb-p): New generic function.
5174         (elmo-folder-search-requires-msgdb-p-internal): New function.
5175         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
5176         elmo-msgdb-load.
5177         (elmo-folder-search-fast): Added key 'mark'.
5178         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
5179         instead of unread-marks argument.
5180         (elmo-folder-move-messages): Removed argunment `unread-marks'
5181         (elmo-folder-unmark-important): Define.
5182         (elmo-folder-mark-as-important): Ditto.
5183         (elmo-folder-unmark-read): Ditto.
5184         (elmo-folder-mark-as-read): Ditto.
5185         (elmo-folder-unmark-answered): Ditto.
5186         (elmo-folder-mark-as-answered): Ditto.
5187         (elmo-folder-replace-marks): Abolish.
5188         (elmo-generic-folder-append-msgdb): Append msgdb before checking
5189         duplicates.
5190         (elmo-folder-synchronize): Removed mark arguments;
5191         return crosspost only number.
5192
5193 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5194
5195         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
5196         Remove redundunt connectivity check.
5197
5198 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5199
5200         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
5201         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
5202
5203 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
5204
5205         * pldap.el (ldap-decode-string): Return string as-is if
5206         `ldap-coding-system' is nil.
5207         (ldap-encode-string): Ditto.
5208         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
5209         (ldap-default-host): Fixed docstring.
5210
5211 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
5212
5213         * elmo-util.el (elmo-warning): Define as a macro which uses
5214         `display-warning' if it is defined as a function.
5215
5216         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
5217         (elmo-split-equal): Use it.
5218         (elmo-split-match): Ditto.
5219         (elmo-split-message-entity): New buffer-local variable.
5220         (elmo-split-subr): Set it.
5221
5222         * elmo-version.el (elmo-version): Up to 2.9.15.
5223
5224 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
5225
5226         * elmo-imap4.el (elmo-network-initialize-session):
5227         Check capability after starttls.
5228
5229 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
5230
5231         * elmo-util.el (elmo-list-delete): Added optional argument
5232         DELETE-FUNCTION.
5233
5234         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
5235
5236         * elmo-util.el (elmo-warning): Ignore errors while recenter.
5237
5238         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
5239
5240         * elmo-imap4.el (elmo-folder-initialize): Don't use
5241         elmo-imap4-default-mailbox.
5242
5243 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5244
5245         * elmo-split.el (toplevel): Use `product-provide'.
5246         (elmo-split): Checkdoc.
5247
5248 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
5249
5250         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
5251         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
5252         the function `elmo-imap4-debug-1'.
5253
5254 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5255
5256         * elmo-split.el (elmo-split): Moved to run hooks and to show
5257         message from elmo-split-subr.
5258         (elmo-split-subr): Follow the change above.
5259
5260         * elmo-split.el (elmo-split-subr): New function (renamed from
5261         elmo-split-subr).
5262         (elmo-split): Changed to call elmo-split-subr by element of
5263         elmo-split-folder.
5264         (elmo-split-folder): Changed customization type to choice.
5265
5266 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5267
5268         * elmo-split.el (elmo-split-and): Fixed condition.
5269
5270 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5271
5272         * elmo-split.el: New file.
5273         (elmo-split): Fixed logic.
5274         Display "Test:" instead of "Folder:" when reharsal.
5275
5276         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
5277         explicitly.
5278
5279         * elmo-version.el (elmo-version): Up to 2.9.14.
5280
5281         * elmo-util.el (elmo-expand-newtext): New function (renamed from
5282         wl-expand-newtext).
5283
5284 2002-06-10  Kenichi Sato <ksato@sonycom.com>
5285
5286         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
5287         message with no message-id field.
5288
5289 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
5290
5291         * elmo-version.el (elmo-version): Up to 2.9.13.
5292
5293         * elmo-dop.el (elmo-folder-status-dop): Fix.
5294
5295 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
5296
5297         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
5298
5299         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
5300         changing default value of default-mime-charset.
5301         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
5302
5303         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
5304
5305         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
5306         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
5307         instead of elmo-dop-queue-method-name-alist to check merging queue.
5308         (elmo-folder-delete-messages-dop): Delete from queue if negative
5309         message number.
5310         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
5311         file is already removed.
5312
5313 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
5314
5315         * elmo-vars.el: Bind colon keywords for old Emacsen.
5316
5317 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5318
5319         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
5320         against non-exsisting charset.
5321
5322 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
5323
5324         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
5325         Use eword-decode-and-unfold-unstructured-field-body.
5326
5327         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
5328         (elmo-msgdb-create-overview-from-buffer): Use document charset if
5329         exists to decode raw subject string.
5330         (toplevel): Require 'mime.
5331
5332         * elmo-version.el (elmo-version): Up to 2.9.12.
5333
5334 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
5335
5336         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
5337         (elmo-msgdb-set-mark): Ditto.
5338
5339         * elmo-version.el (elmo-version): Up to 2.9.11.
5340
5341 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
5342
5343         * elmo-util.el (elmo-delete-match-files): New function.
5344
5345         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
5346         instead of elmo-delete-directory.
5347
5348         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
5349         elmo-hash-minimun-size as 63.
5350
5351         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
5352         elmo-diff-unread is nil.
5353
5354         * elmo-imap4.el (elmo-folder-open): Fix.
5355
5356         * elmo.el (elmo-message-mark): Rewrite.
5357         (elmo-message-field): Ditto.
5358         (elmo-message-set-mark): Ditto.
5359         (elmo-folder-replace-marks): New function.
5360         (elmo-generic-folder-append-msgdb): Removed third argument for
5361         elmo-msgdb-append.
5362         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
5363         (elmo-msgdb-load): New implementation.
5364
5365         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
5366
5367         * elmo-util.el (elmo-list-insert): New implementation.
5368
5369         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
5370         argument for elmo-msgdb-append.
5371         
5372
5373         * elmo-msgdb.el (elmo-load-msgdb): New function.
5374         (elmo-make-msgdb): Ditto.
5375         (elmo-msgdb-get-index): New inline function.
5376         (elmo-msgdb-set-index): Ditto.
5377         (elmo-msgdb-get-entity-hashtb): Ditto.
5378         (elmo-msgdb-get-mark-hashtb): Ditto.
5379         (elmo-msgdb-get-mark): Ditto.
5380         (elmo-msgdb-set-mark): Ditto.
5381         (elmo-msgdb-count-marks): Ditto.
5382         (elmo-msgdb-get-number): Ditto.
5383         (elmo-msgdb-get-field): Ditto.
5384         (elmo-msgdb-seen-list): Ditto.
5385         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
5386         (elmo-msgdb-delete-msgs): Follow the changes above.
5387         (elmo-msgdb-overview-get-entity): Ditto.
5388         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
5389         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
5390         and rewritten.
5391         (elmo-msgdb-make-index): Likewise.
5392         (elmo-msgdb-append): Removed third argument.
5393         (elmo-msgdb-clear): Clear index as nil.
5394         (elmo-folder-set-info-hashtb): Removed.
5395         (elmo-folder-set-info-max-by-numdb): Ditto.
5396         (elmo-folder-info-make-hashtb): Ditto.
5397
5398         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
5399
5400         * elmo-map.el (elmo-folder-pack-number): Ditto.
5401
5402 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
5403
5404         * elmo-version.el (elmo-version): Up to 2.9.10.
5405
5406         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
5407
5408         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
5409
5410 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
5411
5412         * elmo-utils.el (elmo-make-directory): Add option.
5413         Default file mode is 700.
5414
5415 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5416
5417         * elmo-shimbun.el (elmo-folder-local-p): Defined.
5418
5419 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
5420
5421         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
5422         mime-charset.
5423
5424         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
5425         and "smaller".
5426
5427 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5428
5429         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5430         (elmo-shimbun-folder-entity-hash): New function.
5431         (elmo-shimbun-folder-shimbun-header): Ditto.
5432         (elmo-shimbun-entity-to-header): Ditto.
5433         (elmo-shimbun-msgdb-to-headers): Removed.
5434         (elmo-shimbun-folder-setup): Ditto.
5435         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5436         for hash key.
5437         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5438         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5439         Removed useless local bind.
5440         (elmo-folder-open-internal): Don't call
5441         `elmo-shimbun-folder-setup'.
5442         (elmo-folder-close-internal): Clear entity-hash slot.
5443         (elmo-folder-clear): Ditto.
5444         (elmo-shimbun-msgdb-create-entity): Use
5445         `elmo-shimbun-folder-shimbun-header'.
5446         (elmo-map-message-fetch): Ditto.
5447         (elmo-shimbun-update-overview): Use overview entity instead of
5448         shimbun header to lookup id by references.
5449         (elmo-map-folder-list-message-locations): Use not only headers but
5450         also overviews to list locations.
5451
5452 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5453
5454         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5455         msgdb path.
5456
5457         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5458
5459 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5460
5461         * elmo-util.el (elmo-read-search-condition-internal): Give default
5462         value for date.
5463
5464 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5465
5466         * elmo-util.el (elmo-condition-parse-search-value): Accept
5467         YYYY-MM-DD format to search.
5468         * elmo-date.el (elmo-date-get-datevec): Likewise.
5469
5470 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5471
5472         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5473         debugging code.
5474
5475 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5476
5477         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5478         from t.
5479
5480         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5481
5482         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5483         case from `elmo-folder-exists-p'.
5484         (elmo-folder-exists-p): Removed.
5485         (elmo-folder-creatable-p) Ditto.
5486
5487         * elmo-net.el (elmo-folder-create): Defined.
5488         (elmo-folder-create-unplugged): New function.
5489         (elmo-folder-exists-p): Changed default value to nil from t.
5490
5491         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5492         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5493
5494         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5495         `elmo-create-folder-dop' and append queue
5496         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5497         (elmo-folder-create-dop-delayed): New function.
5498
5499         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5500
5501         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5502
5503         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5504         (elmo-folder-writable-p) : Ditto.
5505
5506         * elmo-version.el (elmo-version): Up to 2.9.9.
5507
5508 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5509
5510         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5511         `elmo-message-use-cache-p' returns nil.
5512         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5513         (ignore cache file and refer the substance in local folders)
5514
5515 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5516
5517         * elmo-version.el (elmo-version): Up to 2.9.8.
5518
5519 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5520
5521         * elmo-version.el (elmo-version): Up to 2.9.7.
5522
5523         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5524
5525 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5526
5527         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5528
5529 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5530
5531         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5532         from --early.
5533         (elmo-map-folder-list-message-locations): Reverse location list.
5534
5535 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5536
5537         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5538
5539 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5540
5541         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5542         as a key.
5543         (elmo-nntp-folder-list-subfolders): Follow the change above.
5544
5545 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5546
5547         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5548         name if authentication type is specified.
5549
5550 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5551
5552         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5553         variable.
5554         (elmo-default-nntp-stream-type): Ditto.
5555         (elmo-default-pop3-stream-type): Ditto.
5556
5557 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5558
5559         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5560
5561 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5562
5563         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5564         elmo-vars.el.
5565         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5566
5567         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5568         (elmo-maildir-folder-path): Ditto.
5569         (elmo-maildir-list): Ditto (abolished).
5570
5571 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5572
5573         * elmo-version.el (elmo-version): Up to 2.9.6.
5574
5575 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5576
5577         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5578         (elmo-maildir-folder-path): Ditto.
5579         (elmo-msgdb-directory): Ditto.
5580         (elmo-passwd-life-time): Ditto.
5581         (elmo-msgdb-extra-fields): Ditto.
5582         (elmo-enable-disconnected-operation): Ditto.
5583
5584 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5585
5586         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5587         other choices.
5588         (elmo-pop3-default-authenticate-type): Ditto.
5589
5590 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5591
5592         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5593         choices for custom.
5594         (elmo-pop3-default-authenticate-type): Ditto.
5595
5596 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5597
5598         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5599         mailbox to new-folder.
5600
5601 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5602
5603         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5604         less than new, set new as unread.
5605
5606         * elmo-util.el (elmo-string): Don't put text-property if nil.
5607
5608 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5609
5610         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5611         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5612
5613 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5614
5615         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5616         is nil on `completing-read'.
5617
5618 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5619
5620         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5621         for namespace part.
5622         (elmo-imap4-parse-namespace-subr): Ditto.
5623         (elmo-folder-list-subfolders): Append a delimiter when the specified
5624         folder path is a root with namespace and does not end with delimiter.
5625
5626 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5627
5628         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5629         was used.
5630
5631 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5632
5633         * elmo-util.el (elmo-save-buffer): The first argument of message
5634         is a format control string.
5635
5636 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5637
5638         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5639         `elmo-folder-diff').
5640         (elmo-diff-unread): Likewise.
5641
5642 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5643
5644         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5645         is t on `completing-read'.
5646
5647 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5648
5649         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5650         method of target folder with self mark-alist if MARK-ALIST is nil.
5651
5652 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5653
5654         * elmo-version.el (elmo-version): Up to 2.9.5.
5655
5656 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5657
5658         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5659         (elmo-dop-merge-funcs): Remove.
5660
5661 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5662
5663         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5664         Return t if PATH is directory, too.
5665         Use `dolist' instead of while loop.
5666
5667 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5668
5669         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5670         is deleted.
5671
5672 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5673
5674         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5675         return value to t.
5676         (elmo-folder-list-messages-unplugged): Return t if
5677         elmo-enable-disconnected-operation is nil.
5678
5679         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5680         `elmo-folder-list-messages-internal'.
5681
5682 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5683
5684         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5685         Change to looking-at `[23][0-9]+'.
5686         (elmo-network-initialize-session): Use 'error-msg'
5687         * elmo-net.el (elmo-network-open-session): Set unplugged
5688         if elmo-network-initialize-session returns 'elmo-open-err.
5689
5690 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5691
5692         * elmo-version.el (elmo-version): Up to 2.9.4.
5693
5694 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5695
5696         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5697         `elmo-folder-list-messages-internal'.
5698
5699 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5700
5701         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5702         (elmo-message-match-condition): New method.
5703         (elmo-folder-search-fast): New inline function.
5704         (elmo-msgdb-search): Removed.
5705
5706         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5707         target folder if it is unplugged.
5708         (elmo-folder-list-messages-internal): Return t if target folder is
5709         unplugged and itself is persistent; In this case, use list be
5710         searched already.
5711
5712         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5713         (elmo-msgdb-search-internal-primitive): Ditto.
5714         (elmo-msgdb-match-condition): New function.
5715         (elmo-msgdb-match-condition-primitive): Ditto.
5716
5717         * elmo-util.el (elmo-filter-condition-p): New macro.
5718
5719         * elmo-cache.el (elmo-folder-search): Removed.
5720
5721         * elmo-localdir.el (elmo-folder-search): Ditto.
5722
5723         * elmo-maildir.el (elmo-folder-search): Ditto.
5724
5725         * elmo-mark.el (elmo-folder-search): Ditto.
5726
5727         * elmo-nmz.el (elmo-folder-search): Ditto.
5728
5729         * elmo-sendlog.el (elmo-folder-search): Ditto.
5730
5731         * elmo-shimbun.el (elmo-folder-search): Ditto.
5732
5733         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5734         if folder is unplugged.
5735
5736         * elmo-nntp.el (elmo-folder-search): Likewise.
5737         (elmo-nntp-search-internal): New function.
5738
5739         * elmo-version.el (elmo-version): Up to 2.9.3.
5740
5741 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5742
5743         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5744
5745 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5746
5747         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5748
5749 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5750
5751         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5752
5753 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5754
5755         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5756         (elmo-map-folder-list-message-locations): Do drive letter conversion
5757         on Windows environment.
5758         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5759         (elmo-map-message-fetch): Ditto.
5760
5761 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5762
5763         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5764         (elmo-network-initialize-session): Ditto.
5765
5766 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5767
5768         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5769
5770         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5771
5772         * elmo-util.el (elmo-progress-clear): Ditto.
5773
5774         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5775         `DD-Mon-YYYY' type date.
5776
5777 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5778
5779         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5780         `elmo-date-make-sortable-string' instead of
5781         `timezone-make-date-sortable'.
5782
5783         * elmo-date.el (elmo-date-make-sortable-string): Use
5784         `timezone-make-time-string'.
5785
5786 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5787
5788         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5789
5790         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5791         `since'; Fix timezone.
5792
5793         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5794
5795         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5796
5797 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5798
5799         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5800
5801 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5802
5803         * elmo.el (elmo-generic-folder-append-messages): Make
5804         fetch-strategy with `use-cache' as 'maybe. Check return value of
5805         `elmo-message-fetch'.
5806         (elmo-message-fetch): Return return value of
5807         `elmo-message-fetch-with-cache-process'.
5808         (elmo-message-fetch-with-cache-process): Return non-nil if
5809         fetching was succeed. Load cache when fetching was failed and
5810         fetch-strategy-use-cache is 'maybe.
5811
5812         * elmo-util.el (elmo-file-cache-load): New function.
5813
5814         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5815         defun.
5816
5817         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5818         non-nil if fetching was succeed.
5819
5820         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5821
5822         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5823
5824         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5825         (elmo-message-fetch-with-cache-process): Likwise.
5826
5827         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5828
5829         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5830
5831         * elmo-version.el (elmo-version): Up to 2.9.2.
5832
5833 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5834
5835         * elmo.el (elmo-folder-delete): Delete msgdb path.
5836
5837         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5838
5839         * elmo-maildir.el (elmo-folder-delete): Ditto.
5840
5841         * elmo-localdir.el (elmo-folder-delete): Ditto.
5842
5843         * elmo-imap4.el (elmo-folder-delete): Ditto.
5844
5845 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5846
5847         * elmo.el (luna-define-class): Added `biff' slot.
5848
5849         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5850         (elmo-pop3-debug-inhibit-logging): Abolished.
5851         (elmo-network-close-session): Eliminated needless let.
5852         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5853         (elmo-pop3-send-command): Added `no-log' argument.
5854         (elmo-pop3-process-filter): Use `with-current-buffer'.
5855         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5856         if login failure.
5857         (elmo-pop3-auth-apop): Likewise.
5858         (elmo-network-authenticate-session): Likewise.
5859
5860         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5861         if biff folder.
5862
5863         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5864         string to determine protocol.
5865         (elmo-network-session-name-prefix): Abolished.
5866         (elmo-network-session-cache-key): Follow the change above.
5867         (elmo-network-open-session): Ditto.
5868
5869         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5870         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5871
5872         * elmo-version.el (elmo-version): Up to 2.9.1.
5873
5874         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5875         unmatch condition checking.
5876
5877         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5878         condition.
5879
5880 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5881
5882         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5883
5884 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5885
5886         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5887         test for while loop to execute at least one SEARCH command.
5888
5889 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5890
5891         * elmo-version.el (elmo-version): Up to 2.9.0.
5892
5893 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5894
5895         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5896         (elmo-archive-folder-path): Define.
5897         (elmo-folder-initialize): Setup `dir-name' slot.
5898         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5899         Use `dir-name' as prefix of each subfolders.
5900         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5901
5902 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5903
5904         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5905         (elmo-pipe-folder-list-target-messages): New internal function.
5906         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5907         `killed-list'.
5908         (elmo-pipe-folder-copied-list-load): New function.
5909         (elmo-pipe-folder-copied-list-save): Ditto.
5910         (elmo-folder-open-internal): Follow the change above.
5911         (elmo-folder-status): Fixed for copy.
5912
5913 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5914
5915         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5916
5917 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5918
5919         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5920         elmo-copy-file instead of elmo-add-name-to-file.
5921
5922         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5923
5924         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5925         "file://..." index.
5926
5927         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5928         of accept-process-output as 1.
5929         (elmo-pop3-read-contents): Ditto.
5930         (elmo-pop3-read-body): Ditto.
5931
5932 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5933
5934         * elmo-version.el (product-version-as-string): Remove define.
5935
5936 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5937
5938         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5939         (elmo-imap4-copy-messages): Chop number set using
5940         `elmo-imap4-number-set-chop-length'.
5941         (elmo-imap4-set-flag): Ditto.
5942         (elmo-imap4-search-internal-primitive): Ditto.
5943
5944 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5945
5946         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5947         `elmo-folder-make-temp-dir'
5948
5949         * elmo-vars.el (elmo-cache-directory): New variable.
5950         (elmo-cache-dir): Abolished.
5951         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5952
5953         * elmo-version.el (elmo-version): Up to 2.7.7.
5954
5955 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5956
5957         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5958         defcustom; Set default value as t.
5959
5960 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5961
5962         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5963         (ldap-search-program-arguments): Changed default value.
5964         (ldap-search-basic): Accept exit status 4.
5965         (ldap/field-body): Parse options.
5966         (ldap/collect-field): Ditto.
5967         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5968
5969         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5970         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5971         (elmo-imap4-accept-ok): Ditto.
5972         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5973         'notify-bye, only BYE error is reported.
5974         (elmo-folder-exists-p-plugged): Set no-error argument of
5975         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5976
5977         * elmo.el (elmo-imap4-bye-error): Changed message.
5978
5979         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5980         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5981         queues (It causes infinite loop).
5982
5983 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5984
5985         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5986         (RECENT UNSEEN MESSAGES) extension.
5987
5988 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5989
5990         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5991         Check number of overview fields.
5992
5993 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5994
5995         * elmo.el (elmo-folder-confirm-appends): Changed message.
5996         (elmo-folder-confirm-appends): Ditto.
5997
5998         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5999         `with-temp-buffer'.
6000         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
6001
6002 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
6003
6004         * elmo.el (elmo-folder-confirm-appends): Check whether the value
6005         of elmo-folder-update-threshold is nil, which can be set by
6006         wl-summary-update-confirm-threshold.
6007
6008 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
6009
6010         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
6011         (elmo-nmz-index-alias-alist): Ditto.
6012         (elmo-map-folder-list-message-locations): Follow the change above.
6013
6014 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6015
6016         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
6017
6018         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
6019
6020         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
6021
6022         * elmo-util.el (elmo-read): Ditto.
6023         (elmo-display-error): Ditto.
6024
6025         * elmo-vars.el (elmo-date-match): Ditto.
6026
6027         * pldap.el (ldap-coding-system): Ditto.
6028
6029         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
6030         `elmo-inhibit-number-mapping' as nil.
6031
6032 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
6033
6034         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
6035         space delimiter for list response.
6036
6037 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
6038
6039         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
6040
6041 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
6042
6043         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
6044         (elmo-map-message-fetch): Fix.
6045         * elmo-map.el (elmo-folder-status): Fix for killed.
6046
6047 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
6048
6049         * elmo-sendlog.el: New file.
6050         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
6051
6052 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
6053
6054         * acap.el (acap-logging-out): New buffer local variable.
6055         (acap-close): Set it.
6056         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
6057         an error.
6058
6059 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
6060
6061         * acap.el (acap-response-bye-p): New function.
6062         (acap-response-bye-message): Ditto.
6063         (acap-wait-for-response): If bye response is received, cause an error.
6064         (acap-parse-response): Make bye response when 'Bye' is received.
6065
6066 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
6067
6068         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
6069
6070 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6071
6072         * elmo-util.el (elmo-copy-file): Added argument
6073         `ok-if-already-exists'.
6074         (elmo-copy-file): Fixed typo.
6075
6076 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
6077
6078         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
6079
6080 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
6081
6082         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
6083
6084 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
6085
6086         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
6087         to killed-list.
6088
6089 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
6090
6091         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
6092         (elmo-folder-initialize): Fix for `copy'.
6093         (elmo-pipe-drain): Ditto.
6094         (elmo-folder-open-internal): Ditto.
6095         (elmo-folder-newsgroups): Fix.
6096
6097 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
6098
6099         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
6100         for each message.
6101
6102         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
6103         recent value is returned from imap folder.
6104
6105         * elmo.el (elmo-folder-newsgroups): New generic function.
6106
6107         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
6108         (elmo-folder-initialize): Set it.
6109         (elmo-folder-expand-msgdb-path): Use it.
6110         (elmo-folder-newsgroups): Define.
6111
6112         * elmo-filter.el (elmo-folder-newsgroups): Define.
6113
6114         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
6115
6116         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
6117
6118         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
6119
6120 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6121
6122         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
6123         user option.
6124         (elmo-shimbun-header-extra-field): New inline function.
6125         (elmo-shimbun-header-set-extra-field): Ditto.
6126         (elmo-shimbun-folder-header-hash-setup): Ditto.
6127         (elmo-shimbun-update-overview): Ditto.
6128         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
6129         (elmo-shimbun-folder-setup): Use
6130         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
6131         (elmo-shimbun-get-headers): Ditto.
6132         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
6133         Insert `X-Shimbun-Id:' header if extra field is set.
6134         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
6135         field's value instead of `shimbun-header-id'.
6136
6137         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
6138         inline function.
6139         (elmo-msgdb-overview-entity-set-date): Ditto.
6140         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
6141
6142 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
6143
6144         * mmimap.el (mmimap-entity-section): Changed body node number from
6145         "0" to "1".
6146
6147 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6148
6149         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
6150         `elmo-folder-delete-messages'.
6151
6152         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
6153         (elmo-folder-initialize): Changed to expand alias into index path.
6154
6155         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
6156         `elmo-mime-insert-header-from-buffer' with 6th arg
6157         `sorted-fields'.
6158
6159 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
6160
6161         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
6162
6163         * elmo.el (elmo-diff-new): New inline function.
6164         (elmo-diff-unread): Ditto.
6165         (elmo-diff-all): Ditto.
6166
6167         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
6168         value from responseb.
6169         (elmo-imap4-folder-diff-plugged): Ditto.
6170         (elmo-imap4-server-diff-async): Added recent argument.
6171         (elmo-server-diff-async): Ditto.
6172         (elmo-imap4-folder-diff-plugged): Ditto.
6173
6174         * elmo-version.el (elmo-version): Up to 2.7.6.
6175
6176 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6177
6178         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
6179         in quoted-stirng.
6180
6181 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
6182
6183         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
6184
6185         * elmo-imap4.el (elmo-folder-initialize): Ditto.
6186
6187         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6188
6189         * elmo-multi.el (elmo-folder-initialize): Ditto.
6190
6191         * elmo-util.el (elmo-parse-token): New function.
6192         (elmo-parse-prefixed-element): Ditto.
6193
6194 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6195
6196         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
6197         delete process.
6198         (elmo-imap4-accept-ok): Ditto.
6199
6200 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6201
6202         * mmimap.el (mime-imap-entity-header-string): Don't check first
6203         element of node-id is `0' (Follow last change).
6204
6205 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6206
6207         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
6208         assigned irregular node-id to nested multipart section.
6209         (initialize-instance): Followed above change.
6210
6211 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6212
6213         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
6214         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
6215         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
6216         `elmo-shimbun-get-headers');
6217         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
6218         visible article on summary exists in headers).
6219         (elmo-map-message-fetch): Cause an error when folder is unplugged.
6220
6221 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
6222
6223         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
6224         definition.
6225
6226 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
6227
6228         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
6229
6230 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6231
6232         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
6233         header separator into loop condition.
6234
6235 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6236
6237         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
6238         Return duplicate folder if it has subfolder.
6239
6240 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6241
6242         * elmo.el (elmo-make-folder): Add folder name error check.
6243
6244         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
6245         (elmo-nntp-encode-group-string): New inline function.
6246         (elmo-nntp-decode-group-string): Ditto.
6247         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
6248         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
6249         Use `not' instead of `null';
6250         Use elmo-nntp-decode-group-string.
6251
6252         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
6253
6254         * elmo-version.el (elmo-version): Up to 2.7.5.
6255
6256 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6257
6258         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
6259         Hide progress gauge if `elmo-folder-move-messages' exits
6260         nonlocally.
6261
6262 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6263
6264         * elmo-imap4.el (elmo-folder-initialize): Use
6265         `elmo-imap4-encode-folder-string' for folder name.
6266
6267 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6268
6269         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
6270         `done'.
6271
6272 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6273
6274         * elmo-util.el (elmo-progress-counter-alist): New internal
6275         variable.
6276         (elmo-progress-counter-value): New macro.
6277         (elmo-progress-counter-all-value): Ditto.
6278         (elmo-progress-counter-format): Ditto.
6279         (elmo-progress-counter-set-value): Ditto.
6280         (elmo-progress-set): New function.
6281         (elmo-progress-clear): Ditto.
6282         (elmo-progress-notify): Ditto.
6283
6284         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
6285         counter.
6286
6287         * elmo.el (elmo-generic-folder-append-messages): Call
6288         `elmo-progress-notify'.
6289         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
6290
6291         * elmo-archive.el (elmo-folder-append-messages): Call
6292         `elmo-progress-notify'.
6293
6294         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
6295
6296         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
6297
6298         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
6299
6300 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6301
6302         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
6303         'Create'.
6304         (elmo-message-encache-dop): Added argument `read'.
6305
6306         * elmo-shimbun.el (elmo-message-encache): Ditto.
6307
6308         * elmo-net.el (elmo-message-encache): Ditto.
6309
6310         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
6311         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
6312         elmo-imap4-seen-messages.
6313         (elmo-folder-msgdb-create-plugged): Initialize
6314         elmo-imap4-seen-messages;
6315         Set seen mark on elmo-imap4-seen-messages.
6316
6317         * elmo-pipe.el (elmo-folder-message-file-p): Define.
6318
6319         * elmo.el (elmo-generic-folder-append-messages): Check return value of
6320         elmo-folder-append-buffer.
6321         (elmo-folder-encache): Added optional argument `read'.
6322         (elmo-message-encache): Ditto.
6323
6324         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
6325
6326         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
6327
6328         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
6329         if append buffer content succeds.
6330
6331 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6332
6333         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
6334         elmo-display-progress.
6335
6336         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
6337         Set 4th argument of mime-display-message.
6338         (elmo-mime-display-as-is): Ditto.
6339
6340 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
6341
6342         * elmo-nmz.el (toplevel): Require 'mime-edit.
6343         (elmo-nmz-content-type-alist): Abolished.
6344         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
6345         content is not a message.
6346         (elmo-map-message-fetch): Changed behavior exept for message content;
6347         Detect mime-charset automatically, Use `mime-find-file-type' to detect
6348         content-type, Add From: and Subject: field.
6349
6350 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6351
6352         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
6353         (elmo-map-message-fetch): Add `Content-Type' field if contents is
6354         not a message.
6355
6356 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6357
6358         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
6359         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
6360
6361         * elmo-archive.el (elmo-folder-writable-p): Defined.
6362
6363         * elmo-cache.el (elmo-folder-writable-p): Ditto.
6364
6365         * elmo-filter.el (elmo-folder-writable-p): Ditto.
6366
6367         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
6368
6369         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
6370
6371         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
6372
6373         * elmo-mark.el (elmo-folder-writable-p): Ditto.
6374
6375         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
6376
6377         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
6378
6379 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
6380
6381         * elmo-util.el (elmo-address-quote-specials): New function;
6382         Renamed from `wl-address-quote-specials'.
6383
6384 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6385
6386         * elmo-version.el (elmo-version): Up to 2.7.4.
6387
6388 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
6389
6390         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
6391
6392 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6393
6394         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
6395         both compile-time and run-time to avoid byte-compile warning.
6396
6397 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
6398
6399         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
6400
6401 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6402
6403         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
6404         option.
6405         (elmo-mime-display-as-is-internal): Use it.
6406
6407         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
6408         if `read-passwd' is not defined.
6409
6410 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6411
6412         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
6413         by original number.
6414         (elmo-folder-status): Call `elmo-folder-open-internal';
6415         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
6416         (elmo-folder-close-internal): Set location-alist as nil.
6417         (elmo-folder-clear): Define.
6418         (elmo-folder-check): Don't set location-alist as nil.
6419
6420         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
6421
6422 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
6423
6424         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
6425         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
6426
6427         * mmimap.el (mime-imap-entity::requested): New slot.
6428         (mime-imap-location-fetch-entity-p): New generic function.
6429         (mime-decode-parameters): Define using `defun-maybe'.
6430         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6431         content-type structure.
6432         (mime-entity-body): Return empty body if
6433         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6434
6435         * elmo.el (elmo-message-displaying): New variable.
6436
6437         * elmo-mime.el (elmo-mime-message-display): Bind
6438         elmo-message-displaying as t.
6439
6440         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6441
6442 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6443
6444         * acap.el (acap-open): erase buffer before starting network process.
6445         (acap-store): Rewrite.
6446
6447 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6448
6449         * elmo-imap4.el (elmo-imap4-default-mailbox,
6450         elmo-imap4-default-server
6451         elmo-imap4-default-authenticate-type,
6452         elmo-imap4-default-user,
6453         elmo-imap4-default-port,
6454         elmo-imap4-default-stream-type,
6455         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6456
6457         * elmo-pop3.el (elmo-pop3-default-user,
6458         elmo-pop3-default-server,
6459         elmo-pop3-default-authenticate-type,
6460         elmo-pop3-default-port,
6461         elmo-pop3-default-stream-type,
6462         elmo-pop3-stream-type-alist): Ditto.
6463
6464         * elmo-nntp.el (elmo-nntp-default-server,
6465         elmo-nntp-default-user,
6466         elmo-nntp-default-port,
6467         elmo-nntp-default-stream-type,
6468         elmo-nntp-stream-type-alist): Ditto.
6469
6470         * elmo-vars.el: Follow changes above.
6471         (elmo-setting): New custom group; added 'elmo-setting group to
6472         above variables.
6473
6474         * elmo-version.el (elmo-version): Up to 2.7.3.
6475
6476         * acap.el (acap-parse-response): Don't delete process when BYE
6477         response (It causes hang-up on slow network environment).
6478         (toplevel): Added comment.
6479
6480 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6481
6482         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6483
6484         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6485         parsing NIL.
6486         (acap-parse-return-metadata): Ditto.
6487
6488         * slp.el: New file.
6489         (toplevel): Fixed typo.
6490
6491         * acap.el: New file.
6492         (acap-network-stream-open): Show "Connecting..." message.
6493         (acap-parse-response): Fixed problem for BYE untagged response.
6494         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6495         (toplevel): Added tiny comments.
6496
6497 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6498
6499         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6500         space delimiter for uidl response.
6501
6502 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6503
6504         * elmo-vars.el (elmo-use-semi): Eliminated.
6505
6506         * elmo-util.el (elmo-string-assoc-all): New function.
6507
6508 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6509
6510         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6511         property 'mime-preview-situation for `mime-preview-quit'.
6512
6513 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6514
6515         * elmo.el (elmo-message-fetch-with-cache-process): Call
6516         elmo-message-fetch-internal instead of causing an error when fetch
6517         strategy is 'entire but only 'section cache is available.
6518
6519 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6520
6521         * elmo-version.el (elmo-version): Up to 2.7.2.
6522
6523         * elmo.el (elmo-generic-folder-append-messages): Make
6524         fetch-strategy with `use-cache'.
6525
6526         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6527         (elmo-dop-queue-method-name): New macro.
6528
6529 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6530
6531         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6532         unbalanced parenthesis.
6533
6534 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6535
6536         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6537
6538 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6539
6540         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6541         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6542
6543 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6544
6545         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6546         local variables.
6547
6548 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6549
6550         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6551         (elmo-message-use-cache-p): Define.
6552         (elmo-folder-msgdb-create): Treat cache.
6553
6554 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6555
6556         * elmo-nntp.el (elmo-network-initialize-session): Call
6557         `elmo-nntp-send-mode-reader'.
6558         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6559
6560 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6561
6562         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6563         alist.
6564         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6565         assoc.
6566
6567         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6568         for `elmo-plugged-p'.
6569         (elmo-open-network-stream): Fixed stream-type argument.
6570
6571 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6572
6573         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6574         unknown archive type is specified.
6575
6576 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6577
6578         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6579
6580         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6581         while loading msgdb.
6582
6583         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6584         (elmo-folder-open-internal): Rewrite.
6585
6586 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6587
6588         * elmo-mime.el (elmo-mime-display-as-is-internal):
6589         Adjust buffer-multibyte status.
6590
6591 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6592
6593         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6594         of elmo-condition-find-key.
6595
6596         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6597         (elmo-condition-in-msgdb-p): Ditto.
6598         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6599         argument.
6600
6601 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6602
6603         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6604
6605 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6606
6607         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6608         label for elmo-display-progress.
6609
6610 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6611
6612         * elmo.el (elmo-folder-clear): New method.
6613         (elmo-folder-clear): Define.
6614         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6615
6616         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6617         (elmo-folder-clear): Define.
6618
6619         * elmo-map.el (elmo-folder-clear): Define.
6620
6621         * elmo-version.el (elmo-version): Up to 2.7.1.
6622
6623 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6624
6625         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6626         updates.
6627
6628 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6629
6630         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6631         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6632
6633 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6634
6635         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6636
6637         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6638         and re-written.
6639
6640         * elmo-imap4.el (elmo-folder-initialize): Use
6641         elmo-get-network-stream-type.
6642
6643         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6644
6645         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6646
6647 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6648
6649         * elmo.el (elmo-message-encache): Set unread argument for
6650         elmo-message-fetch.
6651
6652         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6653
6654         * elmo.el (elmo-net-port-info): New method.
6655
6656         * elmo-shimbun.el (elmo-net-port-info): Define.
6657         (elmo-message-encache): Ditto.
6658
6659         * elmo-net.el (elmo-net-port-info): Define as method.
6660
6661         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6662         unplugged status when elmo-enable-disconnected-operation is t.
6663
6664         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6665         of spool folder before checking new number.
6666
6667 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6668
6669         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6670         (elmo-network-setup-session): Ditto.
6671         (elmo-message-fetch-plugged): Ditto.
6672         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6673         (elmo-network-initialize-session): Ditto.
6674         (elmo-pop3-read-response): Abolish 3rd argument.
6675         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6676         (elmo-pop3-read-contents): Ditto.
6677         (elmo-pop3-read-body): Ditto.
6678         (elmo-folder-status): Call elmo-folder-close.
6679         (elmo-pop3-lock): Abolish.
6680         (elmo-pop3-unlock): Ditto.
6681         (elmo-pop3-locked-p): Ditto.
6682         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6683
6684 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6685
6686         * elmo-version.el (elmo-version): Up to 2.7.0.
6687
6688         * elmo-pop3.el (elmo-pop3-debug): New variable.
6689         (elmo-pop3-debug-inhibit-logging): Ditto.
6690         (elmo-pop3-debug): New function.
6691         (elmo-pop3-send-command): Call elmo-pop3-debug.
6692         (elmo-pop3-read-response): Added keep-lock optional argument;
6693         Don't unlock if keep-lock is non-nil.
6694         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6695         (elmo-network-authenticate-session): Bind
6696         elmo-pop3-debug-inhibit-logging as t.
6697         (elmo-network-setup-session): Call elmo-pop3-read-response with
6698         keep-lock argument.
6699         (elmo-pop3-read-msg): Ditto.
6700         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6701         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6702         (elmo-network-initialize-session): Call elmo-pop3-lock.
6703         (elmo-folder-close-internal): Don't clear location-alist slot.
6704         (elmo-folder-check): Clear location-alist slot.
6705
6706 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6707
6708         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6709         (elmo-pop3-send-command): Call elmo-pop3-lock.
6710         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6711         (elmo-pop3-read-contents): Ditto.
6712         (elmo-pop3-lock): New function.
6713         (elmo-pop3-unlock): Ditto.
6714         (elmo-pop3-locked-p): Ditto.
6715         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6716         returns t.
6717
6718 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6719
6720         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6721
6722         * elmo-util.el (elmo-file-field-primitive-condition-match):
6723         New inline function (Don't fetch file content if "first" or "last").
6724         (elmo-file-field-condition-match): Use
6725         elmo-file-field-primitive-condition-match.
6726
6727         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6728         "first".
6729
6730         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6731         (elmo-message-fetch-plugged): Fixed.
6732
6733         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6734
6735 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6736
6737         * elmo.el (elmo-folder-move-messages): Bind
6738         elmo-inhibit-display-retrieval-progress as t while moving messages.
6739
6740         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6741         New variable.
6742         (elmo-inhibit-display-retrieval-progress): Ditto.
6743
6744         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6745         for retrieval progress;
6746         Don't display progress when total buffer size is smaller than
6747         elmo-display-retrieval-progress-threshold.
6748         (elmo-message-fetch-plugged): Don't display progress when
6749         elmo-inhibit-display-retrieval-progress is non-nil.
6750
6751         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6752         for retrieval progress;
6753         Don't display progress when literal size is smaller than
6754         elmo-display-retrieval-progress-threshold.
6755         (elmo-imap4-message-fetch): Don't display progress when
6756         elmo-inhibit-display-retrieval-progress is non-nil.
6757
6758 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6759
6760         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6761         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6762         (elmo-imap4-message-fetch): Likewise.
6763
6764         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6765         (elmo-shimbun-index-range-alist): Ditto.
6766         (elmo-shimbun-use-entire-index): Abolish.
6767         (shimbun-mua-use-entire-index): Ditto.
6768         (elmo-shimbun-folder): Added new slot `range'.
6769         (elmo-folder-initialize): Setup slot `range'.
6770
6771 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6772
6773         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6774         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6775         (elmo-shimbun-get-headers): Use return value of
6776         `shimbun-article-expiration-days'.
6777         (elmo-folder-close-internal): Clean up last-check slot.
6778
6779         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6780         (elmo-pop3-total-size): New variable.
6781         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6782
6783         * elmo.el (elmo-folder-reserve-status-p): New method.
6784
6785         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6786         (elmo-shimbun-use-entire-index): New user option.
6787         (shimbun-elmo-mua): New class.
6788         (shimbun-mua-search-id): Define.
6789         (shimbun-mua-use-entire-index): Ditto.
6790         (elmo-shimbun-folder:last-check): New slot.
6791         (elmo-shimbun-headers-cache-header-list): Abolish.
6792         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6793         (elmo-shimbun-headers-cache-header-hash): Ditto.
6794         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6795         (elmo-shimbun-headers-cache-last-check): Ditto.
6796         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6797         (elmo-shimbun-headers-check-p): Rewrite.
6798         (elmo-shimbun-msgdb-to-headers): New function.
6799         (elmo-shimbun-get-headers): Rewrite.
6800         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6801         (elmo-folder-open-internal): Get headers only if
6802         `elmo-shimbun-headers-check-p' is non-nil.
6803         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6804         is non-nil.
6805         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6806         (elmo-quit): Removed.
6807
6808         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6809         function.
6810         (elmo-msgdb-overview-entity-set-extra): Ditto.
6811         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6812
6813         * elmo-map.el (elmo-folder-status): Don't call
6814         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6815         is non-nil.
6816
6817 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6818
6819         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6820         of `elmo-msgdb-search-internal-primitive' when condition's car is
6821         `and' or `or'.
6822
6823 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6824
6825         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6826
6827 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6828
6829         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6830         call `elmo-pipe-drain'.
6831
6832 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6833
6834         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6835         typo. (elmo-cache-folder -> elmo-mark-folder)
6836
6837 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6838
6839         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6840         `elmo-message-fetch'.
6841
6842 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6843
6844         * elmo-net.el (elmo-message-encache): Fixed typo.
6845         (elmo-message-fetch-unplugged): Changed call
6846         `elmo-message-fetch-internal' without argument `outbuf'.
6847
6848 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6849
6850         * elmo.el (elmo-message-encache): Define as generic function.
6851         (elmo-message-fetch-field): New generic function.
6852         (elmo-message-fetch-with-cache-process): Cause an error when
6853         fetch strategy is 'entire but only 'section cache is available.
6854         (toplevel): Fixed nmz folder definition.
6855
6856         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6857         (elmo-msgdb-resume-list-filename): Ditto.
6858         (elmo-queue-filename): Ditto.
6859         (elmo-enable-disconnected-operation): Changed default value to t.
6860
6861         * elmo-util.el (elmo-cache-path-section-p): New function.
6862         (elmo-file-cache-get): Use it.
6863         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6864         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6865         (elmo-dop-queue-save): Ditto.
6866
6867         * elmo-net.el (elmo-folder-status-unplugged): Call
6868         elmo-folder-status-dop.
6869         (elmo-folder-list-messages-unplugged): Implemented.
6870         (elmo-folder-delete-messages-unplugged): Define.
6871         (elmo-folder-msgdb-create): Define.
6872         (elmo-folder-msgdb-create-unplugged): Define.
6873         (elmo-folder-mark-as-read-unplugged): Ditto.
6874         (elmo-folder-unmark-read-unplugged): Ditto.
6875         (elmo-folder-mark-as-important-unplugged): Ditto.
6876         (elmo-folder-unmark-important-unplugged): Ditto.
6877         (elmo-message-encache): Ditto.
6878
6879         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6880         (elmo-dop-queue-save): Ditto.
6881
6882         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6883         `elmo-folder-msgdb-create'.
6884         (elmo-folder-append-buffer): Implemented unplugged operation.
6885         (elmo-folder-append-messages): Call parent method in unplugged status.
6886         (elmo-message-fetch-unplugged): Removed definition.
6887         (elmo-message-fetch-field): Implemented.
6888
6889         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6890         (elmo-dop-folder): Removed variable definition.
6891         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6892         (elmo-dop-queue-flush): Implemented.
6893         (elmo-dop-queue-merge): Removed definition (TODO).
6894         (elmo-dop-spool-folder): New function.
6895         (elmo-dop-spool-folder-append-buffer): Ditto.
6896         (elmo-dop-spool-folder-list-messages): Ditto.
6897         (elmo-dop-list-deleting-messages): Ditto.
6898         (elmo-folder-append-buffer-dop): Ditto.
6899         (elmo-folder-delete-messages-dop): Ditto.
6900         (elmo-message-encache-dop): New inline function.
6901         (elmo-create-folder-dop): Ditto.
6902         (elmo-folder-mark-as-read-dop): Ditto.
6903         (elmo-folder-unmark-read-dop): Ditto.
6904         (elmo-folder-mark-as-important-dop): Ditto.
6905         (elmo-folder-unmark-important-dop): Ditto.
6906         (elmo-folder-status-dop): Fixed.
6907         (elmo-folder-append-buffer-dop-delayed): New function.
6908         (elmo-folder-delete-messages-dop-delayed): Ditto.
6909         (elmo-dop-msgdb): Ditto.
6910
6911 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6912
6913         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6914
6915 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6916
6917         * elmo.el (elmo-folder-move-messages): Fixed problem when
6918         `dst-folder' is 'null.
6919
6920 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6921
6922         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6923         instead of current mark.
6924
6925         * elmo-multi.el (elmo-folder-list-importants-internal): No
6926         operation if importants is not list.
6927
6928         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6929         Return t if importants is not list.
6930
6931         * elmo-map.el (elmo-map-folder-list-importants): Define.
6932         (elmo-folder-list-importants-internal): Check return value of
6933         `elmo-map-folder-list-importants-internal'.
6934
6935         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6936
6937         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6938
6939         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6940
6941         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6942
6943 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6944
6945         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6946         (Patch is provided by <kita@coe.nttdata.co.jp>).
6947
6948 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6949
6950         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6951         mark folder.
6952
6953 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6954
6955         * elmo.el (elmo-message-fetch): Define.
6956         (elmo-message-fetch-with-cache-process): New generic method.
6957         (elmo-message-fetch-internal): New generic method.
6958         (elmo-folder-synchronize):
6959
6960         * elmo-archive.el (elmo-message-fetch-internal): Define.
6961         (elmo-message-fetch): Eliminated.
6962
6963         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6964         (elmo-message-fetch): Eliminated.
6965
6966         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6967         argument OUTBUF.
6968         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6969
6970         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6971         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6972
6973         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6974         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6975
6976         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6977
6978         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6979
6980         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6981
6982         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6983         (elmo-message-fetch-unplugged): New generic method.
6984         (elmo-message-fetch-internal): Remove cache process (Renamed from
6985         `elmo-message-fetch').
6986
6987         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6988         (elmo-message-fetch): Eliminated.
6989         (elmo-message-fetch-unplugged): Ditto.
6990
6991         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6992
6993 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6994
6995         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6996         of `to-be-deleted' from number-alist to number-list.
6997
6998 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6999
7000         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
7001         (elmo-folder-mark-as-important): Ditto.
7002
7003 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
7004
7005         * elmo.el (elmo-folder): Added process-duplicates slot.
7006
7007         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
7008         (elmo-folder-unmark-read): Ditto.
7009         (elmo-folder-unmark-important): Ditto.
7010         (elmo-folder-mark-as-important): Ditto.
7011
7012         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
7013         duplicated message processing.
7014
7015         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
7016
7017 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7018
7019         * elmo-util.el (elmo-list-subdirectories-1): New function.
7020         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
7021         (elmo-mapcar-list-of-list): New function.
7022
7023         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
7024         `elmo-mapcar-list-of-list' instead of `mapcar'.
7025
7026         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
7027
7028         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
7029         `elmo-have-link-count'. Return the fully qualified folder name.
7030
7031 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
7032
7033         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
7034         (elmo-shimbun-headers-cache): New internal variable.
7035         (elmo-shimbun-headers-cache-header-list): New inline function.
7036         (elmo-shimbun-headers-cache-set-header-list): Ditto.
7037         (elmo-shimbun-headers-cache-header-hash): Ditto.
7038         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
7039         (elmo-shimbun-headers-cache-last-check): Ditto.
7040         (elmo-shimbun-headers-cache-set-last-check): Ditto.
7041         (elmo-shimbun-lapse-seconds): Ditto.
7042         (elmo-shimbun-headers-cache-check-p): Ditto.
7043         (elmo-shimbun-get-headers): New function.
7044         (elmo-folder-open-internal): Call it.
7045         (elmo-quit): Define (Clear headers-cache).
7046
7047 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
7048
7049         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
7050
7051         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
7052         (elmo-msgdb-flist-save): Ditto.
7053
7054         * elmo-shimbun.el (elmo-folder-list-subfolders):
7055         Use `shimbun-groups' instead of `shimbun-groups-internal'.
7056         (elmo-folder-exists-p): Ditto.
7057
7058         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
7059         argument for `shimbun-header-insert'.
7060
7061 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
7062
7063         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
7064         at first time.
7065
7066         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
7067         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
7068
7069 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
7070
7071         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
7072         (elmo-folder-plugged-p): Define.
7073         (elmo-folder-set-plugged): Ditto.
7074         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
7075         (elmo-folder-list-messages-internal): Return t if unplugged.
7076         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
7077
7078         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
7079         when elmo-folder-list-messages-internal method of children returns t.
7080
7081         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
7082         pair is nil.
7083         (elmo-folder-open-internal): Don't update if unplugged status.
7084
7085 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
7086
7087         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
7088         new message.
7089
7090 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
7091
7092         * elmo-util.el (elmo-file-cache-save): Ignore errors.
7093
7094         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
7095         saving.
7096
7097 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
7098
7099         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
7100
7101         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
7102         (elmo-folder-open-internal): Set up headers slot.
7103         (elmo-folder-check): Call elmo-folder-close-internal and
7104         elmo-folder-open-internal.
7105         (elmo-folder-close-internal): Clean up headers slot.
7106
7107 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7108
7109         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
7110         exactly folder list.
7111         (elmo-folder-append-messages): Fixed append archive with prefix.
7112
7113         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
7114         make temp files with start-number.
7115
7116         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
7117
7118 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7119
7120         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
7121         argument `visible-only'.
7122         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
7123         instead of `if'.
7124
7125         * elmo-pop3.el (elmo-folder-open-internal): Check
7126         `elmo-inhibit-number-mapping' is non-nil.
7127
7128         * elmo-pipe.el (elmo-folder-status): Fixed.
7129
7130 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
7131
7132         * elmo.el (elmo-dop-queue-flush): Added autload setting.
7133
7134         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
7135         (elmo-folder-open-internal): Setup `header-hash' slot.
7136         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
7137         information.
7138         (elmo-map-message-fetch): Ditto.
7139
7140 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
7141
7142         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7143         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7144         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7145         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
7146
7147         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
7148
7149 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
7150
7151         * sb-airs.el: Added footer.
7152
7153         * shimbun.el (shimbun-article): Define as luna-method.
7154
7155         * sb-tcup.el: New file.
7156
7157         * sb-airs.el (toplevel): Require 'sb-mhonarc.
7158         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
7159
7160 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
7161
7162         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
7163         (shimbun-get-headers): Ditto.
7164
7165         * elmo.el: Moved obsolete variable definitions from
7166         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
7167
7168         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
7169         groups.
7170
7171         * shimbun.el: New file.
7172
7173         * elmo-shimbun.el: New file.
7174
7175         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7176         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7177         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7178         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
7179
7180 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
7181
7182         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
7183         hierarchy is t.
7184
7185 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
7186
7187         * elmo.el (elmo-folder-msgdb): Define as macro.
7188         (elmo-folder-open): Added argument `load-msgdb'.
7189         (elmo-generic-folder-open): Ditto.
7190         (elmo-folder-encache): New function.
7191
7192         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
7193
7194         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
7195
7196         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
7197         Eliminated argument FOLDER and added argument MSGDB.
7198         (elmo-dop-queue-load): Moved from elmo-dop.el.
7199         (elmo-dop-queue-save): Ditto.
7200
7201         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
7202
7203         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
7204
7205         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
7206         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
7207         (elmo-filter-folder-list-importants-internal): Ditto.
7208
7209         * elmo-map.el (elmo-folder-pack-number): Ditto.
7210
7211         * elmo-mime.el (elmo-mime-message-display): Ditto.
7212
7213         * elmo.el (elmo-generic-folder-commit): Ditto.
7214         (elmo-folder-list-unreads): Ditto.
7215         (elmo-folder-list-importants): Ditto.
7216         (elmo-generic-folder-commit): Ditto.
7217         (elmo-message-set-mark): Ditto.
7218         (elmo-generic-folder-append-msgdb): Ditto.
7219         (elmo-folder-synchronize): Ditto.
7220         (elmo-folder-messages): Ditto.
7221         (elmo-init): Call elmo-dop-queue-load.
7222         (elmo-folder-list-messages): Ditto.
7223
7224         * elmo-nntp.el (elmo-folder-update-number): Ditto.
7225         (elmo-nntp-folder-process-crosspost): Ditto.
7226         (elmo-folder-list-unreads-internal): Ditto.
7227
7228         * elmo-dop.el: Removed old functions.
7229
7230 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
7231
7232         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
7233         `folder' to `msgdb'.
7234
7235 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
7236
7237         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
7238         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
7239
7240         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
7241         case-fold-search.
7242
7243 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
7244
7245         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
7246         defined.
7247
7248         * mmimap.el (toplevel): Require 'mime-parse and 'static.
7249         (mmimap-parse-parameters-from-list): Define as alias for
7250         `mime-decode-parameter-plist' if it is defined as function.
7251         (mmimap-make-mime-entity): Added argument `number'.
7252         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
7253         as 0.
7254         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
7255
7256         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
7257
7258         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
7259
7260         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
7261
7262 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
7263
7264         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
7265
7266         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
7267         when elmo-imap4-default-authenticate-type is nil.
7268         (elmo-folder-list-subfolders): Ditto
7269         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
7270         (elmo-imap4-fetch-callback-1-subr): Renamed from
7271         `elmo-imap4-fetch-callback-1' and define as inline function.
7272         (elmo-imap4-fetch-callback-1):
7273         Renamed from `elmo-imap4-fetch-callback'.
7274         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
7275
7276         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
7277         msgdb path (To keep compatibility with main trunk).
7278
7279         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
7280
7281         * elmo-util.el (elmo-make-file-cache): Moved position of
7282         some macros.
7283
7284         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
7285         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
7286         instead of `elmo-pop3-inhibit-uidl'.
7287         (elmo-folder-exists-p): Ditto.
7288         (elmo-pop3-folder-list-messages): Ditto.
7289
7290         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
7291         instead of `elmo-pop3-inhibit-uidl'.
7292         (elmo-folder-status): Ditto.
7293
7294         * elmo-dop.el (elmo-dop-folder): New variable.
7295         (elmo-dop-lock-message): Eliminated.
7296         (elmo-dop-unlock-message): Ditto.
7297         (elmo-dop-lock-list-load): Ditto.
7298         (elmo-dop-lock-list-save): Ditto.
7299         (elmo-dop-delete-folder): Ditto.
7300         (elmo-dop-rename-folder): Ditto.
7301
7302         * elmo.el: Removed incomplete commentary.
7303
7304 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7305
7306         * elmo.el (toplevel): Require 'elmo-version first;
7307         for little `recursive-load-depth' settings.
7308         Fix "ends here" comment.
7309
7310 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
7311
7312         * elmo-util.el (toplevel): Require 'poem;
7313         Some functions are moved from elmo-cache.el.
7314
7315         * elmo-net.el (toplevel): Require 'elmo-cache.
7316
7317         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
7318
7319         * elmo.el (toplevel): Ditto.
7320
7321         * elmo-cache.el: Rewrite with luna;
7322         Some functions are moved to elmo-util.el.
7323
7324         * elmo-internal.el (elmo-internal-folder-list): New variable.
7325         (elmo-internal-folder-initialize): Rewrite.
7326         (elmo-folder-list-subfolders): Ditto.
7327
7328         * elmo-cache.el (elmo-cache-search-all): Eliminated.
7329         (elmo-cache-collect-sub-directories): Ditto.
7330
7331 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
7332
7333         * elmo-version.el (elmo-version): Up to 2.5.8.
7334
7335         * elmo.el (elmo-folder-list-messages-mark-match): New function.
7336
7337         * elmo-util.el (elmo-list-insert): New function.
7338
7339 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
7340
7341         * elmo.el (elmo-init): New function.
7342         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
7343
7344         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
7345         (Renamed from `elmo-localdir-header-chop-length').
7346
7347         * elmo-pop3.el (elmo-pop3-use-cache,
7348         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
7349
7350         * elmo-nntp.el (elmo-message-fetch): Define.
7351         (elmo-message-fetch-unplugged): Ditto.
7352         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
7353         (elmo-nntp-use-cache): Ditto.
7354         (elmo-nntp-max-number-precedes-list-active): Ditto.
7355
7356         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
7357
7358         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
7359         `elmo-msgdb-insert-file-header'.
7360         Use `elmo-msgdb-file-header-chop-length'.
7361
7362         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
7363         `elmo-vars.el'.
7364
7365         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
7366         (elmo-cache-msgdb-create-overview-entity-from-file): Use
7367         `elmo-msgdb-insert-file-header'.
7368
7369         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
7370         Use new variable;
7371         Define obsolete variables with `elmo-define-obsolete-variable',
7372
7373         * elmo-util.el (elmo-warning-buffer-name): New constant.
7374         (elmo-warning): New function.
7375         (elmo-obsolete-variable-alist): New variable.
7376         (elmo-obsolete-variable-show-warnings): New variable.
7377         (elmo-define-obsolete-variable): New function.
7378         (elmo-resque-obsolete-variable): Ditto.
7379         (elmo-resque-obsolete-variables): Ditto.
7380
7381 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7382
7383         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
7384         Eliminated.
7385
7386         * elmo-pop3.el, elmo-nntp.el: Use custom.
7387
7388 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7389
7390         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
7391         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
7392
7393 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7394
7395         * Luna-fy Kenichi OKADA's following changes.
7396         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
7397         `nohide'.
7398         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
7399
7400 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
7401
7402         * elmo-util.el (elmo-display-progress): Prefer
7403         `progress-feedback-with-label' to `lprogress-display'.
7404
7405 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7406
7407         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
7408
7409 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
7410
7411         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
7412         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
7413         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7414         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7415         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
7416         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
7417         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7418         * elmo-filter.el (elmo-filter-list-folder): Ditto.
7419         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7420         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7421         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7422         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7423         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7424
7425 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7426
7427         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
7428         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7429
7430 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7431
7432         * elmo.el (elmo-folder-process-crosspost): New generic method.
7433         (elmo-folder-writable-p): Ditto.
7434         (elmo-folder-message-appendable-p): Eliminated.
7435         (elmo-generic-folder-append-msgdb): Rewrite.
7436         (elmo-newsgroups-hashtb): New internal variable.
7437         (elmo-crosspost-message-set): Eliminated.
7438         (elmo-crosspost-message-delete): Ditto.
7439         (elmo-setup-subscribed-newsgroups): New function.
7440         (elmo-crosspost-message-alist-modified): New internal variable.
7441         (elmo-crosspost-message-alist-load): New function (Renamed from
7442         `wl-crosspost-alist-load').
7443         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7444         `wl-crosspost-alist-save').
7445
7446         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7447
7448         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7449         `unreads'.
7450         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7451         elmo-newsgroups-hashtb).
7452         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7453         `elmo-nntp-folder-update-crosspost-message-alist'.
7454         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7455         `elmo-nntp-groups-hashtb'.
7456         (elmo-nntp-make-groups-hashtb): Eliminated.
7457         (elmo-nntp-parse-newsgroups): New function (Renamed from
7458         `wl-parse-newsgroups').
7459         (elmo-folder-creatable-p, elmo-folder-writable-p,
7460         elmo-folder-close-internal, elmo-folder-mark-as-read,
7461         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7462         Define.
7463         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7464
7465         * elmo-net.el (elmo-message-fetch): Check buffer size.
7466
7467         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7468
7469         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7470
7471         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7472         before `close' command.
7473
7474         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7475         `mark-alist' (All other related portions are changed).
7476
7477 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7478
7479         * elmo-util.el (elmo-create-hash-size): Eliminated.
7480         (elmo-make-hash) Make a hash with `one less than a power of two'
7481         length.
7482
7483         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7484         (elmo-hash-maximum-size): Changed value.
7485
7486 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7487
7488         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7489         (elmo-mime-message-display-as-is): Ditto.
7490
7491 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7492
7493         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7494         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7495
7496 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7497
7498         * elmo-mark.el: New file.
7499
7500         * elmo-internal.el: Rewrite (Almost empty).
7501
7502 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7503
7504         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7505         (mime-imap-entity-header-string): Ditto.
7506         (mmimap-entity-section): Rewrite.
7507
7508 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7509
7510         * elmo-nmz.el: New file.
7511
7512         * elmo-pipe.el: Rewrite with luna.
7513
7514 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7515
7516         * elmo-archive.el: Rewrite with luna.
7517
7518         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7519         (elmo-folder-list-importants-internal): Ditto.
7520
7521 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7522
7523         * elmo-archive.el (elmo-archive-version): Abolish.
7524         (toplevel) Removed `boso' comment.
7525
7526 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7527
7528         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7529         elmo-msgdb-add-msgs-to-seen-list-subr;
7530         Changed argument seen-marks to unread-marks.
7531
7532         * elmo-nntp.el: Rewrite with luna.
7533
7534 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7535
7536         * elmo-filter.el: Rewrite with luna.
7537
7538 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7539
7540         * elmo-pop3.el: Rewrite with luna.
7541
7542 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7543
7544         * elmo-multi.el: Rewrite with luna.
7545
7546         * elmo-vars.el (elmo-use-killed-list): Abolish.
7547         All other related portions are changed.
7548         (elmo-filename-replace-string-alist): Renamed from
7549         elmo-msgid-replace-string-alist.
7550
7551 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7552
7553         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7554
7555         * elmo-map.el: New file.
7556         * elmo-maildir.el: Rewrite with luna.
7557
7558 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7559
7560         * elmo.el: Changed meaning of `elmo-folder-commit'.
7561         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7562
7563 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7564
7565         * elmo.el (elmo-folder-append-buffer): New function.
7566         (Renamed from `elmo-append-msg')
7567
7568 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7569
7570         * elmo-mime.el: New file.
7571
7572 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7573
7574         * elmo-cache.el: Rewrite.
7575
7576 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7577
7578         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7579
7580 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7581
7582         * elmo-vars.el (elmo): New group.
7583         (elmo-strict-diff-folder-regexp): New variable.
7584
7585         * elmo-util.el (elmo-call-func): Abolish.
7586         (elmo-folder-get-type): Ditto.
7587         (elmo-*-get-spec): Ditto.
7588         (elmo-*-spec-*): Ditto.
7589         (elmo-imap4-identical-name-space-p): Ditto.
7590         (elmo-folder-identical-system-p): Ditto.
7591         (elmo-folder-direct-copy-alist): Ditto.
7592         (elmo-folder-direct-copy-p): Ditto.
7593
7594         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7595         (elmo-folder-initialize): Define.
7596         (elmo-folder-get-primitive-list): Ditto.
7597
7598         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7599         (elmo-folder-initialize): Define.
7600         Renamed `elmo-network-session-host-internal' to
7601         `elmo-network-session-server-internal'.
7602
7603         * elmo-multi.el (elmo-multi-folder): New luna class.
7604         (elmo-folder-initialize): Define.
7605         (elmo-folder-get-primitive-list): Ditto.
7606         (elmo-folder-contains-type): Ditto.
7607         (elmo-message-use-cache-p): Ditto.
7608
7609         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7610         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7611
7612         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7613         (elmo-folder-initialize): Define.
7614
7615         * elmo-filter.el (elmo-filter-folder): New luna class.
7616         (elmo-folder-initialize): Define.
7617         (elmo-folder-get-primitive-list): Ditto.
7618         (elmo-folder-contains-type): Ditto.
7619
7620 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7621
7622         * elmo-imap4.el: Rewrite with luna.
7623
7624         * mmimap.el: New file.
7625
7626         * mmelmo.el, mmelmo-imap4.el: Removed.
7627
7628         * elmo-net.el: Ditto.
7629
7630         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7631         (elmo-folder-initialize): Define.
7632
7633         * elmo-archive.el (elmo-archive-folder): New luna class.
7634         (elmo-folder-initialize): Define.
7635
7636         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7637         `elmo-folder-msgdb-path'.
7638         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7639         `elmo-make-folder'.
7640
7641 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7642
7643         * elmo.el: New file.
7644
7645         * elmo2.el: Renamed to elmo.el.
7646
7647 \f
7648 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7649
7650         * elmo-cache.el (elmo-cache-expire-by-size): Count
7651         a disk usage for a cache file entry in KB even when
7652         its kind is a directory.
7653
7654 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7655
7656         * elmo-version.el (elmo-version): Up to 2.5.7.
7657
7658 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7659
7660         * elmo-version.el (elmo-version): Up to 2.5.6.
7661
7662 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7663
7664         * elmo-version.el (elmo-version): Up to 2.5.5.
7665
7666 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7667
7668         * elmo-imap4.el (elmo-network-authenticate-session):
7669         Fixed a logic for response checking.
7670
7671 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7672
7673         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7674         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7675         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7676         `sasl-mechanisms'.
7677
7678         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7679         for `starttls-open-stream' and `starttls-negotiate'.
7680
7681         * elmo-nntp.el: Remove autoload settings for
7682         `starttls-open-stream' and `starttls-negotiate'.
7683
7684         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7685         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7686         `luna-define-class' with `eval-and-compile'.
7687
7688 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7689
7690         * elmo-util.el (elmo-read-search-condition-internal):
7691         Require an element of table for searching field.
7692
7693 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7694
7695         * elmo-version.el (elmo-version): Up to 2.5.4.
7696
7697 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7698
7699         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7700
7701 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7702
7703         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7704
7705 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7706
7707         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7708         before greeting.
7709
7710 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7711
7712         * elmo-imap4.el (elmo-imap4-delete-folder):
7713         Send "close" before "delete" (Use commented out line).
7714         (elmo-imap4-rename-folder): Ditto.
7715
7716         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7717         folder string itself.
7718         (elmo-dop-list-deleted): New function.
7719         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7720         killed.
7721
7722         * elmo-util.el (elmo-string-rassoc-all): New function.
7723
7724 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7725
7726         * elmo-version.el (elmo-version): Up to 2.5.3.
7727
7728         * elmo-net.el (elmo-network-get-session): Changed logic for
7729         checking process status.
7730
7731         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7732         process is nil;
7733         Changed logic for checking process status.
7734
7735 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7736
7737         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7738         before greeting.
7739         (elmo-network-setup-session): Set UIDL hash size according to
7740         the length of list response.
7741         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7742         according to the length of list response;
7743         Return the length of list response.
7744         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7745
7746 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7747
7748         * elmo-imap4.el (toplevel): Require 'ssl.
7749         Add autoload 'starttls.
7750         * elmo-pop3.el (toplevel): Ditto.
7751         * elmo-nntp.el (toplevel): Ditto.
7752
7753 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7754
7755         * elmo-imap4.el (toplevel): defun at compile time.
7756         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7757         sasl-next-step, sasl-step-data, sasl-step-set-data.
7758         * elmo-pop3.el (toplevel): Ditto.
7759
7760 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7761
7762         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7763
7764 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7765
7766         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7767         if error.
7768         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7769         and `elmo-pop-auth-apop'.
7770
7771 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7772
7773         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7774
7775 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7776
7777         * elmo-pop3.el (elmo-network-authenticate-session): Split
7778         encoded response value.
7779
7780 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7781
7782         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7783         `elmo-pop3-force-login'.
7784         Redefine `sasl-mechanisms'.
7785         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7786
7787 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7788
7789         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7790         Delete `elmo-imap4-authenticator-alist'.
7791         (elmo-imap4-auth-cram-md5): Delete.
7792         (elmo-imap4-auth-digest-md5): Delete.
7793
7794 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7795
7796         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7797         (elmo-pop3-auth-scram-md5): Ditto.
7798         (elmo-pop3-auth-cram-md5): Ditto.
7799
7800 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7801
7802         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7803         Delete `elmo-pop3-authenticator-alist'.
7804
7805 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7806
7807         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7808         new SASL API.
7809         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7810
7811 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7812
7813         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7814
7815 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7816
7817         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7818         Fixed problem when `elmo-pop3-use-uidl' is nil.
7819         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7820
7821 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7822
7823         * elmo-version.el (elmo-version): Up to 2.5.2.
7824
7825 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7826
7827         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7828         New function.
7829         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7830         (elmo-pop3-msgdb-create-as-numlist): Use it.
7831
7832         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7833         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7834
7835         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7836         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7837
7838 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7839
7840         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7841         when elmo-mark-as-read is called with second argument nil.
7842
7843 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7844
7845         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7846         Moved to elmo-util.el.
7847
7848         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7849         Moved from elmo-pipe.el
7850
7851         * elmo-archive.el (elmo-archive-call-process): Enclose with
7852         static-if.
7853
7854         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7855         "RFC822" (because RFC822.PEEK is obsolete).
7856         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7857
7858 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7859
7860         * elmo-archive.el (elmo-archive-call-process): Don't check for
7861         the exit status when Nemacs is running.
7862
7863 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7864
7865         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7866         'plain.
7867
7868         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7869         (elmo-pop3-get-spec): Set default of auth to 'user.
7870
7871         * elmo-imap4.el (elmo-imap4-session-check):
7872         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7873         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7874         (elmo-imap4-auth-login): New function; Revival.
7875         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7876         `elmo-imap4-auth-login'.
7877
7878 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7879
7880         * elmo2.el (toplevel): Move `product-provide' declare.
7881         * mmelmo.el (toplevel): Ditto.
7882
7883 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7884
7885         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7886
7887 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7888
7889         * elmo-util.el (elmo-folder-get-store-type): New function.
7890         (elmo-folder-direct-copy-p): Use it.
7891
7892 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7893
7894         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7895         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7896         and result of `elmo-imap4-use-flag-p'.
7897         (elmo-imap4-fetch-callback-1): Set mark according to
7898         the result of `elmo-imap4-use-flag-p'.
7899
7900 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7901
7902         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7903         (elmo-generic-list-folder-unread): Ditto.
7904         (elmo-folder-get-info): Ditto.
7905         (elmo-folder-set-info-max-by-numdb): Ditto.
7906         (elmo-folder-get-info-max): Ditto.
7907         (elmo-folder-get-info-length): Ditto.
7908         (elmo-folder-get-info-unread): Ditto.
7909         (elmo-folder-info-make-hashtb): Ditto.
7910
7911         * elmo2.el: Removed above functions.
7912
7913 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7914
7915         * elmo-imap4.el (toplevel): Require 'ssl.
7916         Add autoload 'starttls.
7917         * elmo-pop3.el (toplevel): Ditto.
7918         * elmo-nntp.el (toplevel): Ditto.
7919
7920 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7921
7922         * elmo-imap4.el (toplevel): defun at compile time.
7923         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7924         sasl-next-step, sasl-step-data, sasl-step-set-data.
7925         * elmo-pop3.el (toplevel): Ditto.
7926
7927 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7928
7929         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7930
7931 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7932
7933         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7934         if error.
7935         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7936         and `elmo-pop-auth-apop'.
7937
7938 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7939
7940         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7941
7942 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7943
7944         * elmo-pop3.el (elmo-network-authenticate-session): Split
7945         encoded response value.
7946
7947 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7948
7949         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7950         `elmo-pop3-force-login'.
7951         Redefine `sasl-mechanisms'.
7952         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7953
7954 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7955
7956         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7957         Delete `elmo-imap4-authenticator-alist'.
7958         (elmo-imap4-auth-cram-md5): Delete.
7959         (elmo-imap4-auth-digest-md5): Delete.
7960
7961 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7962
7963         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7964         (elmo-pop3-auth-scram-md5): Ditto.
7965         (elmo-pop3-auth-cram-md5): Ditto.
7966
7967 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7968
7969         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7970         Delete `elmo-pop3-authenticator-alist'.
7971
7972 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7973
7974         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7975         new SASL API.
7976         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7977
7978 \f
7979 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7980
7981         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7982
7983 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7984
7985         * elmo-nntp.el (elmo-nntp-get-folders-info):
7986         Fixed problem when '\' character is contained in user-id.
7987         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7988
7989 \f
7990 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7991
7992         * elmo-imap4.el (elmo-imap4-delete-folder):
7993         Send "close" before "delete" (Use commented out line).
7994         (elmo-imap4-rename-folder): Ditto.
7995
7996         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7997         folder string itself.
7998         (elmo-dop-list-deleted): New function.
7999         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
8000         killed.
8001
8002         * elmo-util.el (elmo-string-rassoc-all): New function.
8003
8004         * elmo-version.el (elmo-version): Up to 2.5.1.
8005
8006 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
8007
8008         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
8009
8010         * elmo-internal.el (elmo-internal-search): Fix last change.
8011
8012 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
8013
8014         * elmo-internal.el (elmo-internal-search): Rewrite.
8015         (Fixed problem which is pointed out by Akihiro MOTOKI
8016         <motoki@da.jp.nec.com>)
8017
8018         * elmo-version.el (elmo-version): Up to 2.5.0.
8019
8020 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
8021
8022         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
8023
8024 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
8025
8026         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
8027         non-nil, make hierarchy.
8028
8029 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
8030
8031         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
8032         `elmo-pop3-use-uidl' must be bound to nil.
8033         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
8034
8035 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
8036
8037         * elmo-util.el (elmo-copy-file): Don't cause an error after
8038         `add-name-to-file' failed.
8039
8040         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
8041         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
8042
8043 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8044
8045         * elmo-version.el (elmo-version): Up to 2.3.93.
8046
8047 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
8048
8049         * elmo-util.el (elmo-flatten): New function.
8050
8051 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8052
8053         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
8054         sync Author header.
8055         * elmo-cache.el (toplevel): Ditto.
8056         * elmo-database.el (toplevel): Ditto.
8057         * elmo-date.el (toplevel): Ditto.
8058         * elmo-dop.el (toplevel): Ditto.
8059         * elmo-filter.el (toplevel): Ditto.
8060         * elmo-imap4.el (toplevel): Ditto.
8061         * elmo-internal.el (toplevel): Ditto.
8062         * elmo-localdir.el (toplevel): Ditto.
8063         * elmo-localnews.el (toplevel): Ditto.
8064         * elmo-maildir.el (toplevel): Ditto.
8065         * elmo-msgdb.el (toplevel): Ditto.
8066         * elmo-multi.el (toplevel): Ditto.
8067         * elmo-net.el (toplevel): Ditto.
8068         * elmo-nntp.el (toplevel): Ditto.
8069         * elmo-pipe.el (toplevel): Ditto.
8070         * elmo-pop3.el (toplevel): Ditto.
8071         * elmo-util.el (toplevel): Ditto.
8072         * elmo-vars.el (toplevel): Ditto.
8073         * elmo2.el (toplevel): Ditto.
8074         * mmelmo-imap4.el (toplevel): Ditto.
8075         * mmelmo.el (toplevel): Ditto.
8076
8077         * elmo-version.el (elmo-version): Move to top.
8078
8079         * elmo-cache.el (toplevel): Fixed multiple Author header format.
8080         * elmo-imap4.el (toplevel): Ditto.
8081         * elmo-localdir.el (toplevel): Ditto.
8082         * elmo-msgdb.el (toplevel): Ditto.
8083         * elmo-nntp.el (toplevel): Ditto.
8084         * elmo-pop3.el (toplevel): Ditto.
8085         * elmo-version.el (toplevel): Ditto.
8086
8087         * elmo-localnews.el (toplevel): Added Keyword header.
8088
8089 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
8090
8091         * elmo-version.el (product-version-as-string): Defined using
8092         `defun-maybe'.
8093         (toplevel): Use it.
8094
8095         * elmo-localdir.el (toplevel): Updated copyright notice.
8096         * elmo-version.el (toplevel): Ditto.
8097         * elmo-msgdb.el (toplevel): Ditto.
8098         * elmo-imap4.el (toplevel): Ditto.
8099         * elmo-nntp.el (toplevel): Ditto.
8100         * elmo-pop3.el (toplevel): Ditto.
8101
8102 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
8103
8104         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
8105         messages.
8106
8107         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
8108         parameter value (It sometimes contains raw kanji).
8109
8110 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8111
8112         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
8113         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
8114
8115 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8116
8117         * elmo-imap4.el (elmo-network-initialize-session): Fix.
8118
8119 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8120
8121         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
8122         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
8123
8124 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
8125
8126         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
8127         value if selecting folder succceeded.
8128         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
8129
8130 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8131
8132         * elmo-util.el (elmo-make-directory): Fixed permission lateral
8133         representation.
8134
8135         * elmo-util.el (elmo-string-matched-member): New function.
8136
8137 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
8138
8139         * elmo-util.el (elmo-unintern): New macro.
8140         (elmo-number-set-member): Fixed docstring.
8141
8142         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
8143         tag token.
8144
8145 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
8146
8147         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
8148         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
8149
8150 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
8151
8152         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
8153         `no-error'.
8154         Added docstring.
8155         Return non-nil if selecting folder succeeded.
8156         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
8157
8158 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
8159
8160         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
8161         `file-name-completion' returns t.
8162         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
8163         (elmo-maildir-set-mark): Put `info' part to the files in the cur
8164         directory if it does not exist.
8165         (elmo-maildir-update-current): Use `while' instead of `mapcar'
8166         for iteration.
8167
8168 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
8169
8170         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
8171         enclosure (It's harmful in unplugged status).
8172
8173         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
8174
8175         * mmelmo-1.el: Removed.
8176
8177         * mmelmo-2.el: Ditto.
8178
8179         * mmelmo-imap4-1.el: Ditto.
8180
8181         * mmelmo-imap4-2.el: Ditto.
8182
8183         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
8184
8185         * mmelmo.el: Merged mmelmo-2.el.
8186
8187         * elmo-version.el (elmo-version): Up to 2.3.92.
8188
8189 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8190
8191         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
8192         elmo-update-number): Remove last period in "...done." message.
8193         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
8194         Ditto.
8195         * elmo-cache.el (elmo-cache-expire-by-size,
8196         elmo-cache-get-sorted-cache-file-list,
8197         elmo-cache-msgdb-create-as-numlist): Ditto.
8198         * elmo-dop.el (elmo-dop-save-pending-messages,
8199         (elmo-dop-flush-pending-append-operations): Ditto.
8200         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
8201         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
8202         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
8203         (elmo-localdir-pack-number): Ditto.
8204         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
8205         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
8206         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
8207         mime-write-entity-content): Ditto.
8208         * pldap.el (ldap-search-basic): Ditto.
8209
8210 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
8211
8212         * elmo-version.el (elmo-version): Up to 2.3.91.
8213
8214         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
8215         Only when filter is 'last'.
8216
8217         * elmo-util.el (elmo-condition-atom-regexp): New constant.
8218         (elmo-condition-parse-search-value): Use it.
8219         (elmo-read-search-condition-internal): Quote value only when
8220         it is not an atom.
8221
8222 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
8223
8224         * elmo2.el (elmo-generic-folder-diff): Fix.
8225
8226 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
8227
8228         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
8229         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
8230         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
8231         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8232         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
8233         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
8234
8235 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
8236
8237         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
8238         extra-fields.
8239
8240 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
8241
8242         * elmo-version.el (elmo-version): Up to 2.3.90.
8243
8244         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
8245         (elmo-imap4-list-folder-important): Ditto.
8246
8247 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8248
8249         * elmo-nntp.el (elmo-network-initialize-session): Fix.
8250
8251 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8252
8253         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
8254
8255 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
8256
8257         * elmo-nntp.el (elmo-network-initialize-session):
8258         Add starttls negotiation.
8259
8260 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8261
8262         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
8263         response.
8264         (elmo-network-setup-session): Define.
8265         Call `elmo-nntp-send-mode-reader' when session opened.
8266
8267 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8268
8269         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
8270
8271 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
8272
8273         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
8274         an invalid SPACE character ahead of `SEARCH' command.  Move
8275         a valid SPACE character following `SEARCH' from conditional
8276         `format' arguments to control-strings.
8277
8278 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8279
8280         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
8281         was succeeded.
8282
8283         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
8284
8285 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
8286
8287         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
8288         `w32-get-true-file-link-count' as t.
8289
8290         * elmo-imap4.el (elmo-imap4-read): Abolished.
8291         (Renamed to `elmo-read' and moved to elmo-util.el)
8292         All other related portions are changed.
8293
8294         * elmo-util.el (elmo-read): New function.
8295         (elmo-condition-parse-search-value): Use it.
8296
8297 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
8298
8299         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
8300
8301         * elmo-nntp.el (elmo-nntp-session): Define.
8302         (elmo-nntp-setting): Abolished.
8303         All other related portions are changed.
8304         (elmo-nntp-get-server-command): Changed argument.
8305         (elmo-nntp-set-server-command): Ditto.
8306         (elmo-nntp-xover-p): Ditto.
8307         (elmo-nntp-set-xover): Ditto.
8308         (elmo-nntp-listgroup-p): Ditto.
8309         (elmo-nntp-set-listgroup): Ditto.
8310         (elmo-nntp-list-active-p): Ditto.
8311         (elmo-nntp-set-list-active): Ditto.
8312         (elmo-nntp-xhdr-p): Ditto.
8313         (elmo-nntp-set-xhdr): Ditto.
8314         (elmo-nntp-flush-connection): Abolished.
8315         (elmo-nntp-get-connection): Abolished.
8316         (elmo-nntp-get-session): New function.
8317         (elmo-network-initialize-session): Defined.
8318         (elmo-network-authenticate-session): Ditto.
8319         (elmo-nntp-send-mode-reader): Changed argument.
8320         (elmo-nntp-send-command): Changed argument.
8321         All other related portions are changed.
8322         (elmo-nntp-read-response): Ditto.
8323         (elmo-nntp-read-raw-response): Ditto.
8324         (elmo-nntp-read-contents): Ditto.
8325         (elmo-nntp-read-body): Ditto.
8326         (elmo-nntp-goto-folder): Abolished.
8327         (elmo-nntp-select-group): New function.
8328         All other related portions are changed.
8329         (This function substitutes `elmo-nntp-goto-folder')
8330         (elmo-nntp-msgdb-create-by-header): Rewrite.
8331         (elmo-nntp-get-overview): Eliminated.
8332         (elmo-nntp-get-message): Ditto.
8333         (elmo-nntp-open-connection) Abolished.
8334         (elmo-nntp-read-msg): Rewrite.
8335         (elmo-nntp-post): Ditto.
8336         (elmo-nntp-send-data): Abolished.
8337         (elmo-nntp-send-buffer): New function.
8338         (elmo-nntp-send-data-line): Define as inline function.
8339         (elmo-nntp-get-folders-info-prepare): Use session as key.
8340         (elmo-nntp-groups-read-response): Changed argument.
8341         (elmo-nntp-retrieve-headers): Ditto.
8342         (elmo-nntp-msgdb-create-message): Ditto.
8343
8344         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
8345         when searching by 'since' or 'before'.
8346
8347 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8348
8349         * elmo-version.el (toplevel): Use product-version-as-string for set
8350         verstion-string, if defined.
8351
8352 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
8353
8354         * elmo-util.el: Doc fixes.
8355
8356 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8357
8358         * elmo-archive.el (toplevel): Use product-provide.
8359         * elmo-cache.el (toplevel): Ditto.
8360         * elmo-database.el (toplevel): Ditto.
8361         * elmo-date.el (toplevel): Ditto.
8362         * elmo-dop.el (toplevel): Ditto.
8363         * elmo-filter.el (toplevel): Ditto.
8364         * elmo-imap4.el (toplevel): Ditto.
8365         * elmo-internal.el (toplevel): Ditto.
8366         * elmo-localdir.el (toplevel): Ditto.
8367         * elmo-localnews.el (toplevel): Ditto.
8368         * elmo-maildir.el (toplevel): Ditto.
8369         * elmo-msgdb.el (toplevel): Ditto.
8370         * elmo-multi.el (toplevel): Ditto.
8371         * elmo-net.el (toplevel): Ditto.
8372         * elmo-nntp.el (toplevel): Ditto.
8373         * elmo-pipe.el (toplevel): Ditto.
8374         * elmo-pop3.el (toplevel): Ditto.
8375         * elmo-util.el (toplevel): Ditto.
8376         * elmo-vars.el (toplevel): Ditto.
8377         * elmo2.el (toplevel): Ditto.
8378         * mmelmo-1.el (toplevel): Ditto.
8379         * mmelmo-2.el (toplevel): Ditto.
8380         * mmelmo-imap4-1.el (toplevel): Ditto.
8381         * mmelmo-imap4-2.el (toplevel): Ditto.
8382         * mmelmo-imap4.el (toplevel): Ditto.
8383         * mmelmo.el (toplevel): Ditto.
8384
8385 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
8386
8387         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
8388         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
8389
8390 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
8391
8392         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
8393         before splitting.
8394         (elmo-multi-split-number-alist): Ditto.
8395
8396 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8397
8398         * elmo-version.el: New file.  Use product.el.
8399         * elmo2.el: Add (require 'elmo-version).
8400         * elmo-vars.el (elmo-appname, elmo-version): Move to
8401         elmo-version.el
8402
8403 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
8404
8405         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
8406         `elmo-msgdb-expand-path'.
8407         (elmo-msgdb-load): Ditto.
8408         Abolished 2nd argument. If 1st argument is not string, treat as spec.
8409         (elmo-generic-list-folder-unread): Rewrite.
8410         (elmo-generic-list-folder-important): Changed argument.
8411         (elmo-list-folder-unread): Ditto.
8412         (elmo-list-folder-important): Ditto.
8413         (elmo-folder-diff): Rewrite.
8414         (elmo-generic-folder-diff): New function.
8415         (elmo-multi-get-number-alist-list): Abolished
8416         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
8417         (elmo-multi-folder-diff): Moved to elmo-multi.el
8418         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
8419
8420         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
8421         `elmo-msgdb-expand-path'.
8422         (elmo-pop3-msgdb-create-as-numlist): Ditto.
8423         (elmo-pop3-read-msg): Ditto.
8424         (elmo-pop3-delete-msgs): Ditto.
8425         (elmo-pop3-folder-diff): New alias.
8426
8427         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
8428         `elmo-msgdb-expand-path'.
8429         (elmo-pipe-list-folder-unread): Changed arguments.
8430         (elmo-pipe-list-folder-important): Ditto.
8431         (elmo-pipe-folder-diff): New alias.
8432
8433         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8434         `elmo-msgdb-expand-path'.
8435         (elmo-nntp-max-of-folder): Ditto.
8436         (elmo-nntp-msgdb-create): Ditto.
8437         (elmo-nntp-delete-msgs): Ditto.
8438         (elmo-nntp-folder-diff): New alias.
8439
8440         * elmo-multi.el (elmo-multi-folder-diff): New function.
8441         (elmo-multi-split-mark-alist): Ditto.
8442         (elmo-multi-split-number-alist): Ditto.
8443         (elmo-multi-mark-alist-list): Abolished (Renamed to
8444         elmo-multi-split-mark-alist).
8445         (elmo-multi-list-folder-unread): Rewrite.
8446         (elmo-multi-list-folder-important): Ditto.
8447         (elmo-multi-list-folder): Set `spec' as 1st argument for
8448         `elmo-msgdb-expand-path'.
8449         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8450         instead of `elmo-multi-get-number-alist-list'.
8451
8452         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8453         If 1st argument is not string, treat as spec.
8454         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8455         `elmo-msgdb-expand-path'.
8456         (elmo-msgdb-flist-load): Ditto.
8457         (elmo-msgdb-flist-save): Ditto.
8458         (elmo-msgdb-delete-path): Ditto.
8459         (elmo-msgdb-rename-path): Ditto.
8460
8461         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8462         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8463         (elmo-maildir-delete-mark-msgs): Ditto.
8464         (elmo-maildir-msgdb-create): Ditto.
8465         (elmo-maildir-read-msg): Ditto.
8466         (elmo-maildir-delete-msgs): Ditto.
8467         (elmo-maildir-list-folder-subr): Ditto.
8468         (elmo-maildir-search): Ditto.
8469         (elmo-maildir-get-msg-filename): Ditto.
8470         (elmo-maildir-pack-number): Ditto.
8471         (elmo-maildir-folder-diff): New alias.
8472
8473         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8474
8475         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8476         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8477         (elmo-localdir-folder-diff): New alias.
8478
8479         * elmo-internal.el (elmo-internal-list-folder-subr):
8480         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8481         (elmo-internal-list-folder-by-location): Ditto.
8482         (elmo-internal-msgdb-create): Ditto.
8483         (elmo-internal-delete-msgs): Ditto.
8484         (elmo-internal-read-msg): Ditto.
8485         (elmo-internal-folder-diff): New alias.
8486
8487         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8488         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8489         `elmo-msgdb-expand-path'.
8490         (elmo-imap4-list-folder-unread): Changed arguments.
8491         (elmo-imap4-list-folder-important): Ditto.
8492
8493         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8494         (elmo-filter-list-folder-important): Ditto.
8495         (elmo-filter-folder-diff): New function.
8496
8497         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8498
8499         * elmo-cache.el (elmo-cache-list-folder):
8500         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8501         (elmo-cache-copy-msgs): Ditto.
8502         (elmo-cache-folder-diff): New alias.
8503
8504         * elmo-archive.el (elmo-archive-list-folder-subr):
8505         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8506         (elmo-archive-get-archive-name): Ditto.
8507         (elmo-archive-create-file): Ditto.
8508         (elmo-archive-append-msg): Ditto.
8509         (elmo-archive-copy-msgs): Ditto.
8510         (elmo-archive-copy-msgs-froms): Ditto.
8511         (elmo-archive-get-msg-filename): Ditto.
8512         (elmo-archive-folder-diff): New alias.
8513
8514 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8515
8516         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8517         (elmo-pop3-stream-type-alist): New variable.
8518         (elmo-nntp-stream-type-alist): New variable.
8519
8520         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8521         (elmo-kill-buffer): Ditto.
8522         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8523         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8524         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8525         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8526         (elmo-imap4-get-spec): Take into account
8527         `elmo-imap4-stream-type-alist'.
8528
8529 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8530
8531         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8532         (elmo-nntp-list-folders-get-cache): Ditto.
8533
8534 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8535
8536         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8537         character before 'uid'.
8538
8539 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8540
8541         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8542
8543         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8544
8545         * elmo-util.el (elmo-number-set-member): New function.
8546         (elmo-number-set-append-list): Ditto.
8547         (elmo-number-set-append): Ditto.
8548
8549         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8550         Use `elmo-number-set-member'.
8551         (elmo-living-messages): Ditto.
8552         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8553         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8554
8555         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8556         (elmo-imap4-add-to-cont-list): Abolished.
8557         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8558         instead of elmo-imap4-add-to-cont-list.
8559
8560         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8561         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8562
8563         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8564
8565 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8566
8567         * elmo-util.el (elmo-condition-parse-search-value):
8568         Fixed date parsing.
8569
8570 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8571
8572         * elmo-util.el (elmo-condition-find-key-internal): New function.
8573         (elmo-condition-find-key): Ditto.
8574
8575         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8576         (elmo-msgdb-search-internal): Ditto.
8577         (elmo-msgdb-search): Ditto.
8578
8579 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8580
8581         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8582         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8583
8584         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8585         (elmo-nntp-search-primitive): Fixed problem when condition is
8586         'unmatch'.
8587
8588         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8589
8590         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8591         (elmo-nntp-xhdr-p): New macro.
8592         (elmo-nntp-set-xhdr): Ditto.
8593         (elmo-nntp-parse-xhdr-response): New function.
8594         (elmo-nntp-retrieve-field): Ditto.
8595         (elmo-nntp-search-primitive): Ditto.
8596         (elmo-nntp-search): Implemented.
8597
8598         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8599
8600         * elmo-archive.el (elmo-archive-search): Set all number list to
8601         `elmo-archive-field-condition-match'
8602
8603         * elmo-localdir.el (elmo-localdir-search): Likewise.
8604
8605         * elmo-maildir.el (elmo-maildir-search): Likewise.
8606
8607 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8608
8609         * elmo-msgdb.el (elmo-living-messages): New function.
8610         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8611         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8612         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8613         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8614         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8615         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8616         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8617         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8618         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8619         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8620         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8621
8622 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8623
8624         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8625
8626         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8627
8628         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8629
8630         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8631         arguments for `SEARCH' command.
8632         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8633         All other related portions are changed.
8634
8635         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8636
8637         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8638         (elmo-list-folder-unread): Rewrite.
8639         (elmo-list-folder-important): Ditto.
8640
8641         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8642         (elmo-condition-parse-error): New inline function.
8643         (elmo-read-search-condition): New function.
8644         (elmo-read-search-condition-internal): Ditto.
8645         (elmo-parse-search-condition): Rewrite.
8646         (elmo-condition-parse): New function.
8647         (elmo-condition-parse-or-expr): Ditto.
8648         (elmo-condition-parse-and-expr): Ditto.
8649         (elmo-condition-parse-primitive): Ditto.
8650         (elmo-condition-parse-search-value): Ditto.
8651         (elmo-buffer-field-primitive-condition-match): Ditto.
8652         (elmo-buffer-field-condition-match): Rewrite.
8653         (elmo-file-field-condition-match): Ditto.
8654
8655         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8656         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8657
8658         * elmo-internal.el (elmo-internal-search): Set `number' and
8659         `number-list' argument of `elmo-file-field-condition-match'.
8660
8661         * elmo-maildir.el (elmo-maildir-search): Ditto.
8662
8663         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8664         `msgdb' as argument instead of `mark-alist'.
8665         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8666         `overview'.
8667
8668         * elmo-multi.el: Likewise.
8669
8670         * elmo-pipe.el: Likewise.
8671
8672         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8673         (elmo-imap4-search-internal): Rewrite.
8674         (elmo-imap4-search): Ditto.
8675
8676         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8677         (elmo-filter-list-folder-unread): Ditto.
8678         (elmo-filter-list-folder-important): Ditto.
8679         (elmo-filter-search): Rewrite.
8680
8681         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8682         `number-list' argument of `elmo-file-field-condition-match'.
8683         (elmo-cache-search): Ditto.
8684
8685         * elmo-localdir.el: Likewise.
8686
8687         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8688         number-list and pass it to `elmo-buffer-field-condition-match'.
8689         (elmo-archive-field-condition-match): Pass `number-list' to
8690         `elmo-archive-field-condition-match'
8691
8692 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8693
8694         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8695         `listgroup'.
8696
8697         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8698         (elmo-folder-diff-async-callback-data): Ditto.
8699         (elmo-folder-diff-async): New function.
8700
8701         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8702         (elmo-network-session-cache-key): Use it as a prefix of the session
8703         name.
8704         (elmo-network-open-session): Ditto.
8705
8706         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8707         (elmo-imap4-status-callback-data): Ditto.
8708         (elmo-imap4-server-diff-async-callback): New variable.
8709         (elmo-imap4-server-diff-async-callback-data): Ditto.
8710         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8711         `elmo-imap4-status-callback-data'.
8712         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8713         `elmo-imap4-status-callback-data' as nil.
8714         (elmo-imap4-server-diff): Ditto.
8715         (elmo-imap4-server-diff-async-callback-1): New function.
8716         (elmo-imap4-server-diff-async): Ditto.
8717         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8718
8719 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8720
8721         * elmo-util.el (elmo-list-delete): Doc fix.
8722         (elmo-delete-lists): Abolish.
8723         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8724         instead of `elmo-delete-lists'.
8725
8726 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8727
8728         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8729         before `sort'.
8730
8731 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8732
8733         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8734         `elmo-imap4-literal-subr'.
8735         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8736         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8737
8738 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8739
8740         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8741         (elmo-archive-list-folder): Fix.
8742         (elmo-archive-max-of-folder): Fix.
8743
8744 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8745
8746         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8747          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8748         (elmo-localdir-append-msg): Ditto.
8749         (elmo-localdir-list-folder): Fix for `nonsort'.
8750         (elmo-localdir-list-folder-subr): Fix for `killed'.
8751         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8752         (elmo-maildir-list-folder-subr): Ditto.
8753         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8754         (elmo-archive-list-folder-subr): Ditto.
8755         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8756         (elmo-internal-list-folder-subr): Ditto.
8757
8758 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8759
8760         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8761
8762 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8763
8764         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8765
8766 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8767
8768         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8769         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8770
8771         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8772         before greeting.
8773         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8774         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8775
8776 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8777
8778         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8779
8780         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8781         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8782         before STORE command.
8783
8784 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8785
8786         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8787
8788         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8789         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8790         of `response'.
8791         (elmo-imap4-list-folders): Removed unused local variable.
8792         (elmo-network-initialize-session): Ditto.
8793         (elmo-imap4-delete-msg-by-id): Ditto.
8794         (elmo-imap4-parse-fetch): Ditto.
8795         (elmo-imap4-copy-msgs): Ditto.
8796         Use `dst-spec' instead of `dst-folder'.
8797         (elmo-network-authenticate-session): Check authenticate type `plain'.
8798
8799 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8800
8801         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8802         garbage checking.
8803         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8804         `elmo-imap4-response-value'.
8805         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8806
8807 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8808
8809         * elmo-imap4.el (elmo-imap4-send-command):
8810         Cause elmo-imap4-bye-error when current response is BYE.
8811         (elmo-imap4-arrival-filter): Changed greeting response value.
8812
8813         * elmo2.el (elmo-imap4-bye-error): Define.
8814
8815         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8816         (elmo-imap4-server-diff): Ditto.
8817         (elmo-imap4-response-bye-p): New macro.
8818         (elmo-imap4-response-error-text): Get text from BYE response.
8819         (elmo-imap4-read-response): Return if BYE response.
8820         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8821         (elmo-imap4-folder-exists-p): Ditto.
8822         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8823         (elmo-imap4-parse-bye): New function.
8824         (elmo-imap4-parse-response): Remove needless let.
8825         Call `elmo-imap4-parse-bye'.
8826
8827 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8828
8829         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8830         the mailbox does not exist.
8831         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8832
8833 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8834
8835         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8836
8837 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8838
8839         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8840
8841         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8842         (elmo-network-initialize-session-buffer): Defined.
8843
8844         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8845         Abolished.
8846         (mmelmo-imap4-get-mime-entity): Rewrite.
8847
8848         * elmo2.el (elmo-error): Capitalize error message.
8849
8850         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8851         (elmo-network-session-buffer): New macro.
8852         (elmo-network-open-session): Use it.
8853
8854         * elmo-imap4.el: Rewrite.
8855
8856 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8857
8858         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8859
8860 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8861
8862         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8863         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8864         (elmo-imap4-create-msgdb-from-overview-string): Use
8865         `elmo-msgdb-create-overview-from-buffer'.
8866
8867 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8868
8869         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8870         (elmo-imap4-default-hierarchy-delimiter): New variable.
8871         (elmo-imap4-list-folders): Use it.
8872
8873 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8874
8875         * elmo-net.el (elmo-network-open-session): Add user and
8876         stream-type for process-buffer name.
8877
8878         * elmo-pop3.el (elmo-network-initialize-session): Call
8879         buffer-disable-undo.
8880
8881         * elmo-imap4.el (elmo-network-initialize-session):
8882         Set current-buffer as an argument for `buffer-disable-undo'.
8883
8884         * elmo-pop3.el (elmo-network-close-session): Don't use
8885         `process-live-p'.
8886
8887         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8888         Set default as 'user.
8889
8890         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8891
8892         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8893         and `elmo-imap4-flush-connection'.
8894
8895         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8896         (elmo-pop3-get-spec): Assume auth as symbol.
8897         (elmo-open-network-stream): Moved to `elmo-net'.
8898
8899         * elmo-pop3.el (toplevel): Require 'elmo-net.
8900         Define `sasl-cram-md5' to silence byte compilier.
8901         (elmo-pop3-connection-cache) Abolished.
8902         (elmo-pop3-authenticator-alist) New variable.
8903         (elmo-pop3-session): Define.
8904         (elmo-pop3-connection-get-process): Abolished.
8905         (elmo-pop3-connection-get-buffer): Ditto.
8906         (elmo-pop3-close-connection): Ditto.
8907         (elmo-pop3-flush-connection): Ditto.
8908         (elmo-pop3-get-connection): Ditto.
8909         (elmo-pop3-get-session): New function.
8910         (Replacement for `elmo-pop3-get-connection').
8911         All other related modules are changed.
8912         (elmo-network-close-session): Define.
8913         (elmo-pop3-send-command): Abolished argument `buffer'.
8914         All other related modules are changed.
8915         (elmo-pop3-read-response): Likewise.
8916         (elmo-pop3-open-connection): Abolished.
8917         (elmo-pop3-auth-user): New function.
8918         (elmo-pop3-auth-apop): Ditto.
8919         (elmo-pop3-auth-cram-md5): Ditto.
8920         (elmo-pop3-auth-scram-md5): Ditto.
8921         (elmo-pop3-auth-digest-md5): Ditto.
8922         (elmo-network-initialize-session): Define.
8923         (elmo-network-authenticate-session): Ditto.
8924         (elmo-network-setup-session): Ditto.
8925
8926         * elmo-imap4.el (toplevel): Require 'elmo-net.
8927         (elmo-imap4-session): Define.
8928         (elmo-imap4-connection-cache): Abolished.
8929         (elmo-imap4-password-key): Ditto.
8930         (elmo-imap4-flush-connection): Ditto.
8931         (elmo-imap4-get-connection): Ditto.
8932         All other related modules are changed.
8933         (elmo-imap4-get-session): New function
8934         (Replacement for `elmo-imap4-get-connection').
8935         (elmo-imap4-read-response): Abolished argument `buffer'.
8936         All other related modules are changed.
8937         (elmo-imap4-send-command): Likewise.
8938         (elmo-imap4-select-folder): Abolished.
8939         All other related modules are changed.
8940         (elmo-imap4-select-mailbox): New function.
8941         (Replacement for `elmo-imap4-select-folder').
8942         (elmo-imap4-auth-login): Simplify.
8943         (Assume current buffer as process buffer)
8944         (elmo-imap4-auth-cram-md5): Ditto.
8945         (elmo-imap4-auth-digest-md5): Ditto.
8946         (elmo-imap4-login): Ditto.
8947         (elmo-imap4-open-connection): Abolished.
8948         (elmo-imap4-open-connection-1): Abolished.
8949         (elmo-network-initialize-sessoin): Define.
8950         (elmo-network-authenticate-session): Ditto.
8951         (elmo-network-setup-session): Ditto.
8952
8953         * elmo-net.el: New module.
8954
8955 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8956
8957         * elmo-util.el (elmo-define-error): New function.
8958
8959         * elmo2.el (elmo-error): Define.
8960         (elmo-open-error): Define.
8961         (elmo-authenticate-error): Define.
8962
8963         * elmo-imap4.el (elmo-imap4-error): Abolish.
8964         (elmo-imap4-error-type): Abolish.
8965         (elmo-imap4-error-process): Abolish.
8966         (elmo-imap4-error-message): Abolish
8967         (elmo-imap4-list-folders): Don't quote lambda.
8968         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8969         (elmo-imap4-parse-namespace): Ditto.
8970         (elmo-imap4-open-connection): Rewrite.
8971         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8972         (elmo-imap4-get-connection): Abolish local variable `result'.
8973
8974 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8975
8976         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8977         wrong-type-argument error when auth is nil.
8978
8979 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8980
8981         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8982         (elmo-default-nntp-stream-type): Ditto.
8983         (elmo-default-pop3-stream-type): Ditto.
8984         (elmo-network-stream-type-alist): Ditto.
8985         (elmo-default-imap4-ssl): Abolished.
8986         (elmo-default-nntp-ssl): Ditto.
8987         (elmo-default-pop3-ssl): Ditto.
8988
8989         * elmo-util.el: (toplevel): Removed needless requires.
8990         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8991         (elmo-open-network-stream): Open network stream according to
8992         the value of `elmo-network-stream-type-alist'.
8993         (elmo-get-network-stream-type): New function.
8994         (elmo-network-stream-type-spec-string): New macro.
8995         (elmo-network-stream-type-symbol): Ditto.
8996         (elmo-network-stream-type-function): Ditto.
8997
8998         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8999         network-stream-type. All other related portions are changed.
9000         (elmo-pop3-open-connection): Ditto.
9001
9002         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
9003         network-stream-type. All other related portions are changed.
9004
9005         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
9006         network-stream-type.All other related portions are changed.
9007         (elmo-imap4-error): New macro.
9008         (elmo-imap4-error-type): Ditto.
9009         (elmo-imap4-error-process): Ditto.
9010         (elmo-imap4-error-message): Ditto.
9011         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
9012         (elmo-imap4-auth-cram-md5): Ditto.
9013         (elmo-imap4-auth-digest-md5): Ditto.
9014         (elmo-imap4-login): Ditto.
9015         (elmo-imap4-open-connection): Remove password entry if authentication
9016         was in vain.
9017         (elmo-imap4-user-at-host): Abolished.
9018         (elmo-imap4-password-key): New buffer local variable.
9019         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
9020         using protocol, port, auth and stream-type.
9021
9022         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
9023
9024 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
9025
9026         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
9027
9028         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
9029
9030         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
9031         (elmo-imap4-authenticator-alist): New variable.
9032         (elmo-imap4-open-connection-1): Rename from
9033         elmo-imap4-open-connection.
9034         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
9035         only wraps elmo-imap4-open-connection-1.
9036         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
9037         user-at-host.
9038         (elmo-imap4-auth-login): New function.
9039         (elmo-imap4-auth-cram-md5): New function.
9040         (elmo-imap4-auth-digest-md5): New function.
9041         (elmo-imap4-login): New function.
9042
9043 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
9044
9045         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
9046         function `error'.
9047
9048 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
9049
9050         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
9051
9052 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
9053
9054         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
9055
9056 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
9057
9058         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
9059         for server responses, quote `*' regardless of where it appears.
9060
9061 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
9062
9063         * elmo-maildir.el (elmo-maildir-commit): New alias.
9064
9065 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
9066
9067         * elmo-util.el (elmo-display-progress):
9068                 Use `progress-feedback-with-label'.
9069
9070 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
9071
9072         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
9073         (elmo-imap4-non-atom-char-regex): Ditto.
9074         (elmo-imap4-non-text-char-regex): Ditto.
9075         (elmo-imap4-literal-threshold): Ditto.
9076         (elmo-imap4-atom-p): New function.
9077         (elmo-imap4-quotable-p): Ditto.
9078         (elmo-imap4-nil): Ditto.
9079         (elmo-imap4-atom): Ditto.
9080         (elmo-imap4-quoted): Ditto.
9081         (elmo-imap4-literal-subr): Ditto.
9082         (elmo-imap4-literal): Ditto.
9083         (elmo-imap4-buffer-literal): Ditto.
9084         (elmo-imap4-string-subr): Ditto.
9085         (elmo-imap4-string): Ditto.
9086         (elmo-imap4-buffer-string): Ditto.
9087         (elmo-imap4-astring-subr): Ditto.
9088         (elmo-imap4-astring): Ditto.
9089         (elmo-imap4-buffer-astring): Ditto.
9090         (elmo-imap4-nstring): Ditto.
9091         (elmo-imap4-buffer-nstring): Ditto.
9092         (elmo-imap4-mailbox): New alias.
9093         (elmo-imap4-field-body): Ditto.
9094         (elmo-imap4-userid): Ditto.
9095         (elmo-imap4-password): Ditto.
9096         (elmo-imap4-format-quoted): New function.
9097         (elmo-imap4-send-command): Rewritten.  Accept a list of command
9098         arguments and handle "atom", "quoted" and "literal" string here.
9099         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
9100         `elmo-imap4-send-command'.
9101         (elmo-imap4-folder-exists-p): Likewise.
9102         (elmo-imap4-create-folder): Likewise.
9103         (elmo-imap4-delete-folder): Likewise.
9104         (elmo-imap4-rename-folder): Likewise.
9105         (elmo-imap4-max-of-folder): Likewise.
9106         (elmo-imap4-check-validity): Likewise.
9107         (elmo-imap4-sync-validity): Likewise.
9108         (elmo-imap4-server-diff): Likewise.
9109         (elmo-imap4-select-folder): Likewise.
9110         (elmo-imap4-copy-msgs): Likewise.
9111         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
9112         (elmo-imap4-mark-set-on-msgs): Likewise.
9113         (elmo-imap4-read-part): Likewise.
9114         (elmo-imap4-read-msg): Likewise.
9115         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
9116         `elmo-imap4-password' for `elmo-imap4-send-command'.
9117         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
9118         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
9119         `elmo-imap4-buffer-literal'.
9120         (elmo-imap4-append-msg): Likewise.
9121
9122         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
9123         `delete' for removing dead connection from the connection cache.
9124         Move deletion of the process buffer after that.
9125         (elmo-imap4-list): Change `defsubst' to `defun'.
9126         (elmo-imap4-commit): Make error message verbose.
9127         (elmo-imap4-search): Ditto.
9128         (elmo-imap4-list): Ditto.
9129         (elmo-imap4-select-folder): Ditto.
9130         (elmo-imap4-copy-msgs): Ditto.
9131         (elmo-imap4-delete-msg-by-id): Ditto.
9132         (elmo-imap4-append-msg-by-id): Ditto.
9133         (elmo-imap4-append-msg): Ditto.
9134
9135 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
9136
9137         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
9138         when dired is used on XEmacs.
9139
9140 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
9141
9142         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
9143         instead of `append'.
9144         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
9145         `elmo-plugged-p' directly.
9146         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
9147         of `elmo-plugged-p' directly.
9148
9149         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
9150         Eliminate unused variable.  Use `memq' for checking a process status.
9151         Use `cons' instead of `append' for updating the connection cache.
9152         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
9153         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
9154
9155 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
9156
9157         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
9158         `elmo-imap4-read-point' exactly.
9159
9160         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
9161         the local variable `folder' to `mailbox'.
9162         Rename the argument `fld' to `folder'.
9163
9164 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
9165
9166         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
9167         * elmo-imap4.el (elmo-imap4-commit): Ditto.
9168
9169 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
9170
9171         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
9172         (elmo-pop3-number-uidl-hash): New buffer-local variable.
9173         (elmo-pop3-uidl-number-hash): Ditto.
9174         (elmo-pop3-size-hash): Ditto.
9175         (elmo-pop3-uidl-done): Ditto.
9176         (elmo-pop3-list-done): Ditto.
9177         (elmo-pop3-connection-get-process): New defmacro.
9178         (elmo-pop3-connection-get-buffer): Ditto.
9179         (elmo-pop3-close-connection): Delete buffer and process.
9180         (elmo-pop3-flush-connection): Don't delete buffer and process.
9181         (elmo-pop3-get-connection): Added optional argument `if-exists'.
9182         Setup UIDL and size hash.
9183         (elmo-pop3-send-command-no-erase): Deleted
9184         (elmo-pop3-send-command): Added optional argument `no-erase'.
9185         (elmo-pop3-parse-uidl-response): New function.
9186         (elmo-pop3-parse-list-response): Set size hash.
9187         (elmo-pop3-list-location): New function.
9188         (elmo-pop3-list-by-uidl-subr): Ditto.
9189         (elmo-pop3-list-by-list): Ditto.
9190         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
9191         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
9192         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
9193         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
9194         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
9195         Use uidl.
9196         (elmo-pop3-uidl-to-number): New function.
9197         (elmo-pop3-number-to-uidl): Ditto.
9198         (elmo-pop3-number-to-size): Ditto.
9199         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
9200         Set number by use of uidl.
9201         (elmo-pop3-msgdb-create-message): Likewise.
9202         Set size, loc-alist in msgdb.
9203         (elmo-pop3-read-msg): Set number by use of uidl.
9204         Added optional argument `msgdb'.
9205         (elmo-pop3-delete-msg): Ditto.
9206         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
9207         (elmo-pop3-commit): Close connection.
9208
9209         * elmo-pipe.el (elmo-pipe-max-of-folder):
9210         Bind `elmo-pop3-use-uidl' as nil.
9211         (elmo-pipe-drain): Ditto.
9212         Call `elmo-commit'.
9213
9214         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
9215         (elmo-msgdb-overview-entity-set-size): New defsubst.
9216
9217 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
9218
9219         * elmo-vars.el (elmo-use-killed-list): New variable
9220         (Renamed from `elmo-nntp-use-killed-list').
9221         (elmo-nntp-use-killed-list): Eliminated.
9222
9223         * elmo-msgdb.el (elmo-msgdb-expand-path):
9224         Changed expanding msgdb path for elmo-multi.
9225
9226         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
9227         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
9228         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
9229         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
9230         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
9231         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
9232         (toplevel): Deleted time-stamp line.
9233
9234         * elmo2.el (elmo-clear-killed ): Defined as function
9235         (Abolished defining as a backend function).
9236         All other related modules are changed.
9237
9238 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
9239
9240         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
9241
9242 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
9243
9244         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
9245
9246 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
9247
9248         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
9249
9250 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
9251
9252         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
9253         asynchronous folder check.
9254
9255         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
9256
9257         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
9258         `elmo-nntp-use-killed-list'.
9259         (elmo-nntp-list-folder): Use killed list.
9260         (elmo-nntp-max-of-folder): Ditto.
9261         (elmo-nntp-msgdb-create): Set killed list.
9262
9263         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
9264
9265         * elmo2.el (elmo-clear-killed): New backend function.
9266         All other related modules are changed.
9267
9268 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
9269
9270         * elmo-util.el (elmo-imap4-spec-folder): Use
9271         `elmo-imap4-spec-mailbox'; Mark as obsolete.
9272         All callers changed.
9273
9274 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
9275
9276         * mmelmo-2.el (initialize-instance):
9277         Use `mime-buffer-entity-buffer-internal' instead of
9278         `mime-entity-buffer'.
9279
9280         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
9281         (mime-entity-body): Implemented.
9282         (mime-goto-header-start-point): Deleted.
9283         (mime-goto-body-end-point): Ditto.
9284         (mime-entity-point-min): Ditto.
9285         (mime-entity-point-max): Ditto.
9286         (mime-entity-children): Ditto.
9287         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
9288         instead of `mime-entity-buffer'.
9289         (mime-entity-header-buffer): Ditto.
9290         (mime-entity-body-buffer): Ditto.
9291         (mime-write-entity-content): Ditto.
9292
9293         * pldap.el (ldap-static-if): New macro.
9294         (toplevel): Use it instead of `static-if'.
9295
9296 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
9297
9298         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
9299         included in `attrs' argument.
9300
9301 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
9302
9303         * elmo-util.el (elmo-get-passwd): Use old backquote style.
9304
9305         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
9306         (ldap-ldif-safe-init-char-regexp): Ditto.
9307         (ldap-ldif-safe-string-regexp): Ditto.
9308         (ldap/ldif-safe-string-p): New macro.
9309         (ldap/ldif-insert-field): Ditto.
9310         (ldap-modify): Use it.
9311         (ldap-add): Ditto.
9312         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
9313         (ldap-decode-attribute): Decode only when `attr' is consp.
9314         (ldap-delete): Bind `ret'.
9315         (toplevel): Require 'cl at compile time.
9316         Removed (require 'poe) and (require 'std11).
9317         (pldap-version): Eliminated.
9318         (ldap-search-basic): Removed auth and dn binding.
9319         (ldap-ldif-field-name-regexp): New constant.
9320         (ldap-ldif-field-head-regexp): Ditto.
9321         (ldap-ldif-next-field-head-regexp): Ditto.
9322         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
9323         (ldap/field-end): New function.
9324         (ldap/field-body): Use it.
9325         (ldap/collect-field): Ditto.
9326         (ldap-search-basic): Use `ldap/field-body'.
9327
9328 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
9329
9330         * pldap.el (ldap-default-attribute-encoder): New user option.
9331         (ldap/field-body): Decode base64 string.
9332         (ldap/collect-field): Ditto.
9333         (ldap-encode-attribute): New function.
9334         (ldap-add-entries): Use it.
9335         (ldap-modify-entries): Ditto.
9336         (ldap-search-entries): Enclosed decoding function with
9337         `with-temp-buffer' and set as unibyte.
9338         (ldap-search-basic): Set process buffer as unibyte.
9339
9340         * elmo-util.el (elmo-folder-identical-system-p):
9341         Eliminated name space checking.
9342
9343         * pldap.el: New module.
9344         toplevel: Changed condition to detect built-in ldap feature.
9345         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
9346         (ldap-add): Added error handling.
9347         (ldap-modify): Ditto.
9348         (ldap-delete): Ditto.
9349
9350 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
9351
9352         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
9353         Initialize local variables with `let'.  Inline a temporary
9354         variable for the progress percentage.  Sort `setq' to reduce
9355         function call in the while-loop.
9356
9357         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
9358         into the conditional branch.
9359
9360 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
9361
9362         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
9363         Move a conditional out of the while-loop.
9364
9365 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9366
9367         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
9368         elmo-msgdb-overview-get-entity-by-number.
9369         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
9370         throw.
9371
9372 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
9373
9374         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
9375         the local variable for a packed number self descriptively.
9376
9377 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9378
9379         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
9380         * elmo-localdir.el (elmo-localdir-pack-number): Use
9381         `elmo-msgdb-overview-get-entity' instead of
9382         `elmo-msgdb-overview-get-entity-by-number'.
9383         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
9384         (elmo-msgdb-search-overview-entity): Removed.
9385         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
9386         by message-id or number.
9387         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
9388         instead of `elmo-msgdb-overview-get-entity-by-number'.
9389
9390 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9391
9392         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
9393         non-nil, use hash table for overview.
9394         (elmo-hash-maximum-size): New variable.
9395         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
9396         (elmo-msgdb-make-overview-hashtb): New function.
9397         (elmo-msgdb-clear-overview-hashtb): New function.
9398         (elmo-clear-hash-val): New macro.
9399         All other related modules are changed.
9400
9401 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
9402
9403         * elmo2.el (elmo-move-msgs): If there's other message with
9404         same message-id, don't use cache.
9405
9406 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
9407
9408         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
9409         number is already packed.
9410
9411 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
9412
9413         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
9414
9415 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9416
9417         * elmo-vars.el (elmo-display-progress-threshold): New variable.
9418         All other related modules are changed.
9419
9420 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
9421
9422         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
9423         of refiling failure on Maildir.
9424
9425 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9426
9427         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
9428         decoded mime-charset with cache.
9429         (elmo-msgdb-overview-entity-get-from): Ditto.
9430         (elmo-msgdb-overview-entity-get-subject): Ditto.
9431         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9432
9433 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9434
9435         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9436         (elmo-remove-passwd): Fill password with 0 before erase.
9437         * elmo-vars.el (elmo-passwd-life-time): New variable.
9438
9439 \f
9440 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9441
9442         * elmo-cache.el (elmo-buffer-cache-add):
9443         Set message cache buffer as unibyte.
9444
9445 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9446
9447         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9448         become nil.
9449
9450 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9451
9452         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9453         when display is finished.
9454         (elmo-nntp-msgdb-create): Ditto.
9455         (elmo-nntp-groups-read-response): Ditto.
9456         (elmo-nntp-retrieve-headers): Ditto.
9457         (elmo-nntp-msgdb-create-message): Ditto.
9458         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9459         (elmo-pop3-msgdb-create-message): Ditto.
9460
9461 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9462
9463         * elmo-maildir.el (elmo-maildir-msgdb-create):
9464         Use `elmo-msgdb-sort-by-date'.
9465
9466 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9467
9468         * elmo2.el (elmo-read-msg-no-cache):
9469         Eliminated arguments after `outbuf'.
9470         Don't use cache even if it exists.
9471         (elmo-read-msg): Don't pass arguments after `outbuf' to
9472         `elmo-read-msg-no-cache'.
9473
9474 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9475
9476         * elmo-archive.el (elmo-archive-list-folders):
9477         Use `file-name-directory' if base folder does not exist.
9478
9479 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9480
9481         * elmo-archive.el (elmo-archive-list-folders): Don't use
9482         `file-name-directory'.
9483
9484 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9485
9486         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9487         If `force' is non-nil, try flushing all operation queues.
9488
9489 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9490
9491         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9492         as-binary-process.
9493
9494 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9495
9496         * elmo-util.el (elmo-display-progress): Fixed.
9497
9498 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9499
9500         * elmo-util.el (elmo-display-progress): New function.
9501         All other related modules are changed.