* elmo-dop.el (elmo-dop-spool-folder): Suppress warning "defsubst
[elisp/wanderlust.git] / elmo / ChangeLog
1 2010-01-02  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2
3         * elmo-dop.el (elmo-dop-spool-folder): Suppress warning "defsubst
4         `elmo-dop-spool-folder' was used before it was defined"; Use
5         `defun' instead.
6
7         * pldap.el (ldap/ldif-safe-string-p): macro to function.
8         * elmo-imap4.el (elmo-imap4-detect-search-charset): Ditto.
9
10         * elmo.el (elmo-folder-info-make-hashtb): Use `mapc' instead of
11         `mapcar'; Suppress compile warning.
12         * elmo-imap4.el (elmo-network-initialize-session-buffer)
13         (elmo-imap4-search-internal-primitive): Ditto.
14         * elmo-nntp.el (elmo-nntp-search-primitive): Ditto.
15         * elmo-archive.el (elmo-archive-exec-msgs-subr2): Ditto.
16
17         * elmo-imap4.el (elmo-imap4-parse-address-list)
18         (elmo-imap4-parse-fetch-body-section, elmo-imap4-parse-body)
19         (elmo-imap4-parse-acl, elmo-imap4-parse-body-extension)
20         (elmo-imap4-parse-body-ext, elmo-imap4-parse-body): Use
21         `(string-to-char " ")' instead of `? ', `?\ '.
22
23 2010-01-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
24
25         * pldap.el (ldap-search-entries): Don't use `function' for lambda.
26         (ldap-add-entries, ldap-modify-entries): Use `mapc' instead of `mapcar'.
27         (ldap-delete-entries): Use `mapc' instead of `mapcar'. Don't use
28         `function' for lambda.
29
30         * modb-standard.el (modb-standard-cleanup-stale-entities): Use
31         `string-to-number' instead of `string-to-int'.
32
33         * elmo-util.el (elmo-set-work-buf): Use `with-current-buffer'
34         instead of `save-excursion' (for suppress compile warnings).
35         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
36         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Ditto.
37         (elmo-nntp-post): Ditto.
38
39 2009-08-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
40
41         * utf7.el (utf7-get-u16char-converter): Revert BOM workaround for
42         Mule-UCS (to-utf-16).
43         (utf7-utf-16-coding-system): Change preference when Mule-UCS on
44         Emacs 23.
45
46 2009-07-11  Taiki SUGAWARA  <buzz.taiki@gmail.com>
47
48         * utf7.el (utf7-find-coding-system-without-bom): New Function.
49         (utf7-utf-16-coding-system): use no-BOM coding system.
50         (utf7-get-u16char-converter): remove workaround for BOM.
51
52 2009-05-26  Vitaly Mayatskikh <v.mayatskih@gmail.com>
53
54         * elmo-util.el (elmo-union): New function, make a union of two lists.
55
56         * elmo-mime.el (elmo-mime-entity-display): Fix Emacs crash in
57         mime-view when displaying malformed base64 attach.
58
59         * elmo-imap4.el (elmo-imap4-folder-list-flagged): Use elmo-imap4-list
60         (removed duplicated code)
61
62         * modb-standard.el (modb-standard-cleanup-stale-entities): New
63         function, Remove stale entities from elmo's cache.
64
65 2009-05-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
66
67         * elmo-version.el (elmo-version): Up to 2.15.7.
68
69 2009-03-22  Tetsurou Okazaki  <okazaki@be.to>
70
71         * elsp-bsfilter.el (elmo-spam-bsfilter-update-switch): Change
72         default value to `--auto-update'.
73
74 2008-07-06  TAKAHASHI Kaoru  <kaoru@kaisei.org>
75
76         * elmo-pop3.el (elmo-pop3-read-contents): Fix double `goto-char'.
77         Add `elmo-pop3-read-point' barrier.
78
79 2008-07-06 YAMASHITA Junji <ysiijj@gmail.com>
80
81         * elmo-pop3.el (elmo-pop3-read-contents): improving performance:
82         goto the previous end-point insead of the head-point, and use
83         `search-forward' instead of `re-search-forward'.
84
85 2008-06-30  Tetsurou Okazaki  <okazaki@be.to>
86
87         * elmo-imap4.el (elmo-imap4-parse-status): Use `case' instead of `cond'.
88
89 2008-06-30  Don Bashford  <Don.Bashford@stjude.org>
90
91         * elmo-imap4.el (elmo-imap4-parse-status): Accept IMAP4 tokens in a
92         case-insensitive fashion.
93
94 2008-03-30  Tetsurou Okazaki  <okazaki@be.to>
95
96         * elmo-imap4.el (elmo-imap4-send-command): Combine `process-send-string' calls.
97
98 2008-02-20  TAKAHASHI Kaoru  <kaoru@kaisei.org>
99
100         * elmo-util.el (elmo-add-name-to-file, elmo-field-body): Use
101         `eval-and-compile' for suppress compile warnings.
102
103         * elmo-vars.el (dynamic-link, dynamic-call): Use `defalias-maybe'
104         instead of `defun-maybe'
105
106         * elmo-util.el: Add (eval-when-compile (require 'static)).
107
108 2008-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
109
110         * mmimap.el: Remove (require 'static).
111         * acap.el: Ditto.
112
113         * elmo-flag.el: Move ';;; Code:' comment.
114         * elmo-imap4.el: Ditto.
115         * elmo-net.el: Ditto.
116
117         * elmo-version.el (product-provide): Fix comment.
118
119 2008-02-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
120
121         * slp.el: Add (eval-when-compile (require 'cl)).
122         * elmo-date.el: Ditto.
123         * elmo-pop3.el: Ditto.
124         * elmo-mime.el: Add (eval-when-compile (require 'elmo)).
125
126 2008-02-17  TAKAHASHI Kaoru  <kaoru@kaisei.org>
127
128         * modb.el (elmo-msgdb-match-condition-primitive): Use
129         `string-to-number' instead of `string-to-int'.
130
131         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer)
132         (elmo-msgdb-message-match-condition)
133         (elmo-msgdb-create-message-entity-from-buffer): Use
134         `string-to-number' instead of `string-to-int'.
135
136         * elmo.el (elmo-folder-confirm-appends): Use `string-to-number'
137         instead of `string-to-int'.
138
139         * elmo-util.el (elmo-cache-expire-by-age): Use `string-to-number'
140         instead of `string-to-int'.
141
142         * elmo-pop3.el (elmo-pop3-list-by-list, elmo-folder-status): Use
143         `string-to-number' instead of `string-to-int'.
144
145         * elmo-nntp.el (elmo-nntp-make-msglist)
146         (elmo-folder-list-messages-plugged, elmo-nntp-folder-status)
147         (elmo-nntp-create-msgdb-from-overview-string)
148         (elmo-nntp-parse-xhdr-response, elmo-nntp-msgdb-create-message)
149         (elmo-nntp-search-primitive): Use `string-to-number' instead of
150         `string-to-int'.
151
152         * elmo-net.el (elmo-net-folder-set-parameters): Use
153         `string-to-number' instead of `string-to-int'.
154
155         * elmo-localdir.el (elmo-localdir-list-subr): Use
156         `string-to-number' instead of `string-to-int'.
157
158         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Use
159         `string-to-number' instead of `string-to-int'.
160
161         * elmo-date.el (elmo-date-get-datevec): Use `string-to-number'
162         instead of `string-to-int'.
163
164         * elmo-archive.el (elmo-archive-list-folder-subr): Use
165         `string-to-number' instead of `string-to-int'.
166
167 2008-02-16  TAKAHASHI Kaoru  <kaoru@kaisei.org>
168
169         * elmo-util.el (elmo-get-passwd): Fix typo.
170
171         * elmo-nntp.el (elmo-nntp-get-server-command)
172         (elmo-nntp-set-server-command, elmo-nntp-xover-p)
173         (elmo-nntp-listgroup-p, elmo-nntp-set-listgroup)
174         (elmo-nntp-list-active-p, elmo-nntp-set-list-active)
175         (elmo-nntp-xhdr-p, elmo-nntp-set-xhdr): New backquote style.
176
177         * elmo-imap4.el (elmo-imap4-debug)
178         (elmo-imap4-response-continue-req-p, elmo-imap4-response-ok-p)
179         (elmo-imap4-response-bye-p, elmo-imap4-response-garbage-p)
180         (elmo-imap4-response-value, elmo-imap4-response-error-text)
181         (elmo-imap4-response-bodydetail-text, elmo-imap4-value)
182         (elmo-imap4-nth, elmo-imap4-detect-search-charset)
183         (elmo-imap4-identical-system-p): New backquote style.
184
185 2008-02-15  TAKAHASHI Kaoru  <kaoru@kaisei.org>
186
187         * elmo-dop.el (elmo-make-dop-queue): New backquote style.
188         (elmo-dop-queue-fname, elmo-dop-queue-method): Ditto.
189         (elmo-dop-queue-arguments): Ditto.
190
191         * elmo-date.el (elmo-match-substring): New backquote style.
192         (elmo-match-string, elmo-match-buffer): Ditto.
193         (elmo-date-make-sortable-string): Ditto.
194
195         * elmo-archive.el (elmo-archive-get-method):New backquote style.
196         (elmo-archive-get-suffix, elmo-archive-get-regexp): Ditto.
197
198         * elmo-multi.el (elmo-multi-real-folder-number): New backquote
199         style.
200
201         * elmo-net.el (elmo-network-stream-type-spec-string): New
202         backquote style.
203         (elmo-network-stream-type-symbol): Ditto.
204         (elmo-network-stream-type-feature): Ditto.
205         (elmo-network-stream-type-function): Ditto.
206         (elmo-network-session-buffer): Ditto.
207
208         * elmo-util.el (elmo-file-cache-expand-path): New backquote style.
209         (elmo-file-cache-status, elmo-file-cache-path): Ditto.
210         (elmo-make-file-cache, elmo-string, elmo-get-passwd): Ditto.
211         (elmo-bind-directory, elmo-set-work-buf): Ditto.
212
213         * elmo.el (elmo-folder-send): New backquote style.
214
215 2008-02-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
216
217         * pldap.el (ldap-static-if): New backquote style.
218         (ldap/ldif-safe-string-p): Ditto.
219         (ldap/ldif-insert-field): Ditto.
220
221         * elmo-version.el (elmo-version): Up to 2.15.6.
222
223 2008-01-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
224
225         * elmo-imap4.el (elmo-folder-list-messages-plugged): Don't include
226         messages with \Deleted flag.
227         (elmo-folder-delete-messages-plugged): Ask before sending expunge
228         command if there are messages with \Deleted flag.
229
230 2007-04-24  Yoichi NAKAYAMA  <yoichi@geiin.org>
231
232         * elmo-pop3.el (elmo-pop3-auth-apop): Use more strict regexp.
233         http://seclists.org/bugtraq/2007/Apr/0018.html
234         (Suggested by Tatsuya Kinoshita)
235
236 2007-04-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
237
238         * elmo-imap4.el (elmo-folder-delete): Don't call close for mailbox
239         with \Noselect attribute.
240
241 2007-04-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
242
243         * elmo-imap4.el (elmo-folder-list-subfolders): Fix handling of
244         hierarchical folder structure with UW-imapd.
245
246 2007-02-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
247
248         * elmo-imap4.el (elmo-imap4-clear-login): Don't send LOGIN command
249         when the LOGINDISABLED capability is advertised.
250
251 2007-01-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
252
253         * elmo-msgdb.el (elmo-msgdb-extra-fields): Make it non-destructive.
254
255 2007-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
256
257         * elmo-shimbun.el (elmo-shimbun-update-overview): Add argnument
258         `entity'.
259         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview' only
260         if the message entity is exists.
261
262 2007-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
263
264         * elmo-util.el (elmo-msgdb-insert-file-header): Call
265         `elmo-delete-cr-buffer'.
266
267         * elmo-localdir.el (elmo-message-fetch-internal): Use
268         `insert-file-contents-as-raw-text' instead of
269         `insert-file-contents-as-binary'.
270
271         * elmo-maildir.el (elmo-map-message-fetch): Ditto.
272
273 2006-12-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
274
275         * elmo-imap4.el (elmo-network-initialize-session): Check to
276         retrieve a whole greeting message.
277
278 2006-11-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
279
280         * elmo-flag.el (elmo-folder-commit): Encode `.minfo' at save.
281
282 2006-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
283
284         * elmo-util.el (elmo-safe-plist-get): New alias or macro.
285         (elmo-progress-notify): Use it instead of `plist-get'.
286
287 2006-11-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
288
289         * elmo.el (elmo-generic-folder-append-messages): Remove unused
290         variable `table'.
291
292 2006-11-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
293
294         * elmo-pipe.el (elmo-folder-set-plugged): Define.
295
296 2006-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
297
298         * elsp-bsfilter.el (elmo-spam-bsfilter-use-remote): New user option.
299         (elmo-spam-list-spam-messages): Check it option.
300
301 2006-11-08  Tetsurou Okazaki  <okazaki@be.to>
302
303         * elmo-util.el (elmo-with-progress-display): Return the value
304         of the last form in `body'.
305
306 2006-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
307
308         * elmo-util.el (elmo-progress-start): Accept nil for `total'.  Set
309         `elmo-progress-counter' as t when a query callback returns nil.
310         (elmo-progress-clear): New function.
311         (elmo-progress-done): Split into `elmo-progress-clear'.
312         (elmo-progress-notify): Update a total slot when it is nil.
313         (elmo-with-progress-display): Call `elmo-progress-clear' in
314         unwind-protect and move calling `elmo-progress-done' to outside.
315
316         * elmo-imap4.el (elmo-imap4-find-next-line): Call
317         `elmo-progress-notify' with :total parameter instead of
318         `elmo-progress-counter-set-total'.
319
320 2006-11-07  Tetsurou Okazaki  <okazaki@be.to>
321
322         * elmo-util.el (elmo-cache-expire-by-age): Add docstring.
323         Make it interactive.
324         (elmo-progress-start): Avoid updating `elmo-progress-counter'
325         when a query callback returns nil.  Return a progress counter
326         instead of t whenever a start callback was called.
327
328 2006-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
329
330         * elmo-imap4.el (elmo-imap4-session-capable-p): New macro.
331         (elmo-imap4-send-command): Use it.
332         (elmo-network-initialize-session): Ditto.
333         (elmo-network-setup-session): Ditto.
334         (elmo-folder-msgdb-create-plugged): Ditto.
335
336 2006-11-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
337
338         * elmo-util.el (elmo-progress-done): Fix a miss refer to
339         `elmo-progress-counter'.
340
341 2006-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
342
343         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Abolish.
344         (elsp-bsfilter-list-spam-filter): New function.
345         (elsp-bsfilter-start-list-spam): Ditto.
346         (elsp-bsfilter-read-list-spam): Ditto.
347         (elmo-spam-list-spam-messages): Use async process to display
348         progress message by each message.
349
350 2006-11-03  Yoichi NAKAYAMA  <yoichi@geiin.org>
351
352         * elmo-spam.el (elmo-spam-process-messages-as-mbox): Fix problem
353         of flushing previously inserted message contents.
354
355         * elmo-imap4.el (elmo-folder-search): Fix return value.
356
357 2006-11-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
358
359         * elmo-imap4.el (elmo-imap4-find-next-line): Check whether a label
360         of reporter is enable or not.
361
362 2006-10-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
363
364         * elmo-util.el (elmo-list-bigger-diff): Abolish.
365         (elmo-display-progress): Ditto.
366         (elmo-progress-counter-alist): Ditto.
367         (elmo-progress-set): Ditto.
368         (elmo-progress-clear): Ditto.
369         (elmo-progress-counter-all-value): Rename to
370         `elmo-progress-counter-total'.
371         (elmo-progress-counter-format): Rename to
372         `elmo-progress-counter-action'.
373         (elmo-progress-counter): New internal variable.
374         (elmo-progress-callback-function): Ditto.
375         (elmo-progress-counter-label): New function.
376         (elmo-progress-counter-set-total): Ditto.
377         (elmo-progress-counter-set-action): Ditto.
378         (elmo-progress-call-callback): Ditto.
379         (elmo-progress-start): Ditto.
380         (elmo-progress-done): Ditto.
381         (elmo-progress-notify): Rewrite.
382         (elmo-with-progress-display): Remove first argument
383         `condition'. Add optional argument `var' in `spec'.
384
385         * elmo-vars.el (elmo-display-progress-threshold): Abolish.
386         (elmo-display-retrieval-progress-threshold): Ditto.
387         (elmo-inhibit-display-retrieval-progress): Ditto.
388
389         * Replace all pair of `elmo-progress-set' and
390         `elmo-progress-clear' into `elmo-with-progress-display'.
391
392         * Replace to call `elmo-display-progress' into pair of
393         `elmo-progress-notify' and `elmo-with-progress-display'.
394
395         * elmo-version.el (elmo-version): Up to 2.15.5.
396
397 2006-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
398
399         * elmo-imap4.el (elmo-imap4-arrival-filter): Use `case' instead of
400         `cond'.
401
402 2006-10-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
403
404         * elmo-imap4.el (elmo-imap4-arrival-filter): Call delete-region in
405         cleanup-forms [wl:14027].
406
407 2006-10-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
408
409         * elmo-flag.el (elmo-global-flag-set-internal): Use
410         `elmo-copy-file' by priority when the message is a file.
411
412 2006-10-01  Yoichi NAKAYAMA  <yoichi@geiin.org>
413
414         * elmo.el: Fix typo: disptch -> dispatch.
415
416 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
417
418         * elmo.el (elmo-file-tag): New class.
419         (elmo-append-messages-disptch-table): New constant.
420         (elmo-folder-type-p): New function.
421         (elmo-folder-append-messages): Redefine as function.
422
423         * elmo-null.el (elmo-folder-append-messages): Renamed from
424         `elmo-folder-append-messages'.
425
426         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
427         (elmo-folder-append-messages-*-maildir): Renamed from
428         `elmo-folder-append-messages'.
429
430         * elmo-localdir.el (elmo-localdir-folder): Inherit
431         `elmo-file-tag'.
432         (elmo-folder-append-messages-*-localdir): Renamed from
433         `elmo-folder-append-messages'.
434
435         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
436         from `elmo-folder-append-messages'.
437
438         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
439         `elmo-folder-append-messages'.
440
441         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
442         function.
443         (elmo-folder-append-messages-*-filter): Ditto.
444
445         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
446
447         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
448         (elmo-folder-append-messages-*-pipe): Renamed from
449         `elmo-folder-append-messages'.
450
451         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
452
453         * elmo-file.el (elmo-file-folder): Ditto.
454
455         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
456
457         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
458         from `elmo-folder-append-messages'
459
460 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
461
462         * elmo-map.el (elmo-location-map-setup): Change an argument
463         `locations' to optional.
464         (elmo-location-map-clear): Abolish.
465         (elmo-folder-clear): Follow the API change.
466
467         * elmo-pop3.el (elmo-folder-clear): Ditto.
468
469         * elmo-pop3.el (toplevel): Require elmo-map.
470         (elmo-pop3-folder): Inherit elmo-location-map and abolish
471         location-alist slot (All other related portions are changed).
472         (elmo-pop3-folder-use-uidl): New function.
473         (elmo-folder-msgdb-create): Don't sort message entities.
474         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
475         (elmo-pop3-number-to-size): Convert return value to number.
476         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
477         working buffer.
478
479         * elmo-map.el: Use `location-map' as a variable name for instance
480         instead of `mapper'.
481         (elmo-location-map-setup): Return location alist.
482         (elmo-location-map-update): Ditto.
483
484 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
485
486         * elmo-map.el (elmo-location-map): New class; split location and
487         number mapping from elmo-map-folder (All other related portions
488         are changed).
489
490         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
491         change.
492
493         * elmo-version.el (elmo-version): Up to 2.15.4.
494
495 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
496
497         * elmo-vars.el (elmo-use-hardlink): New user option.
498
499         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
500         `elmo-use-hardlink'.
501
502         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
503         killed-list.
504         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
505         instead of `*-internal'. Use `elmo-with-progress-display'.
506
507 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
508
509         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
510         `elmo-spam-process-messages-as-mbox'.
511
512         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
513
514 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
515
516         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
517         argument BUFFER of `call-process'.
518
519 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
520
521         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
522         args.
523         (elsp-bsfilter-list-spam-files): Ditto.
524
525 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
526
527         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
528         (elmo-spam-bsfilter-max-messages-per-process): New use option.
529         (elmo-spam-bsfilter-debug): Fix a group.
530         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
531         `--homedir'.
532         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
533         (elsp-bsfilter-list-spam-files): New function.
534         (elmo-spam-list-spam-messages): Define.
535         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
536         (elmo-spam-bsfilter-register-messages): New function.
537         (elmo-spam-register-spam-messages): Define.
538         (elmo-spam-register-good-messages): Ditto.
539
540         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
541
542         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
543         `nconc' and `consp'.
544
545 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
546
547         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
548         hash table to test whether a location is exists.
549
550 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
551
552         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
553         even if some error occurred.
554
555         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
556         meaningless unwind-protect.
557
558         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
559         start-number correctly.
560         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
561         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
562
563 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
564
565         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
566         (elmo-folder-initialize): Use it.
567         (elmo-global-flag-replace-referrer): New function.
568
569         * elmo.el (toplevel): Added autoload setting for
570         `elmo-global-flag-replace-referrer'.
571         (elmo-folder-rename): Rewrite the last change use
572         `elmo-global-flag-replace-referrer'.
573
574         * elmo-pipe.el (elmo-folder-rename): Call
575         `elmo-global-flag-replace-referrer'.
576
577 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
578
579         * elmo.el (elmo-folder-rename): Set meta data for global flags
580         follow the rename.
581
582 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
583
584         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
585         as 'not-loaded.
586         (elmo-folder-close): Ditto.
587         (elmo-filter-folder-number-list-loaded-p): New function.
588         (elmo-filter-folder-number-list): Check whether loaded or not.
589         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
590         of `elmo-filter-folder-number-list-internal'.
591         (elmo-folder-delete-messages): Ditto.
592         (elmo-folder-length): Check whether number-list is loaded or not.
593
594 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
595
596         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
597         field `real field' into each element of list.
598         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
599         (elmo-msgdb-message-entity-field): Ditto.
600         (modb-entity-ml-info-real-fields): New function.
601
602         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
603
604         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
605         `elmo-msgdb-extra-fields'.
606
607 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
608
609         * elmo-util.el (elmo-passwd-alist-load): Move point to min
610         position before read.
611
612 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
613
614         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
615         (elmo-global-flags-initialize): Ditto.
616
617 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
618
619         * elmo-archive.el (toplevel): Don't require emu, std11
620         and elmo-localdir.
621
622         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
623         definition.
624
625 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
626
627         * elmo.el (elmo-folder-confirm-appends): Display folder name.
628
629 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
630
631         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
632         literals.
633
634 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
635
636         * elmo-maildir.el (elmo-maildir-list-location): Reduce
637         `elmo-get-last-modification-time' call.
638
639 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
640
641         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
642         expression.
643         (elmo-maildir-set-mark): Ditto.
644         (elmo-maildir-delete-mark): Ditto.
645
646 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
647
648         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
649         optional argument `separators'.
650
651 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
652
653         * elmo.el (cache-changed): Abolish.
654         (status-changed): New signal.
655         (elmo-message-killed-p): New generic function and define for
656         elmo-folder.
657         (elmo-folder-recover-messages): Ditto.
658         (elmo-message-set-cached): Emit signal `status-changed' instead of
659         `cache-changed'.
660         (elmo-message-status): New macro.
661         (elmo-message-status-folder): Ditto.
662         (elmo-message-status-number): Ditto.
663         (elmo-message-status-set-flags): Ditto.
664         (elmo-message-status-set-killed): Ditto.
665         (elmo-message-status-flags): New function.
666         (elmo-message-status-cached-p): Ditto.
667         (elmo-message-status-killed-p): Ditto.
668
669         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
670         `status-changed' instead of `cache-changed'.
671         (elmo-folder-recover-messages): Define.
672         (elmo-message-killed-p): Ditto.
673
674         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
675         `status-changed' instead of `cache-changed'.
676
677         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
678         (elmo-message-killed-p): Define.
679         (elmo-folder-recover-messages): Ditto.
680
681         * elmo-version.el (elmo-version): Up to 2.15.3.
682
683 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
684
685         * elmo-signal.el (elmo-signal-bindings): Use cons to append
686         element into list.
687         (elmo-define-signal-handler): Add docstring.
688         (elmo-define-signal-filter): Ditto.
689
690         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
691
692 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
693
694         * elmo-util.el (elmo-flatten): Don't use recursive call.
695
696         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
697         assignment.
698         (elmo-folder-message-make-temp-files): Use `number-to-string'
699         instead of `int-to-string'.
700
701 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
702
703         * elmo-search.el (elmo-folder-delete-messages): Define.
704
705 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
706
707         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
708         customization type.
709         (elmo-mailing-list-count-spec-list): Ditto.
710
711         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
712         for `list-id'.
713
714 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
715
716         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
717         handling.
718
719 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
720
721         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
722         (elmo-mailing-list-count-spec-list): Ditto.
723
724         * elmo-util.el (elmo-map-until-success): New function.
725         (elmo-string-match-substring): Ditto.
726         (elmo-find-list-match-value): Ditto.
727
728         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
729         Removed.
730         (modb-entity-extract-ml-info-from-subject): Ditto.
731         (modb-entity-extract-ml-info-from-return-path): Ditto.
732         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
733         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
734         (modb-entity-extract-ml-info-from-mailman): Ditto.
735         (modb-entity-extract-mailing-list-info-functions): Ditto.
736         (modb-entity-extract-mailing-list-info): Rewrite with
737         `elmo-find-list-match-value'.
738
739 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
740
741         * elmo-net.el (elmo-network-session-retry-count): New user option.
742         (elmo-network-session-buffer-name): New internal function.
743         (elmo-network-session-buffer-create): Ditto.
744         (elmo-network-open-session): Retry open network session
745         `elmo-network-session-retry-count' times.
746
747 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
748
749         * elmo-util.el (elmo-list-filter): Rewritten.
750
751 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
752
753         * elmo-util.el (elmo-string-member): Allow symbol element in list.
754
755 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
756
757         * elmo-search.el (elmo-make-search-engine): Use prefix
758         `elmo-search-' for require symbol instead of `else-'.
759         (elmo-search-engine-extprog): New class.
760         (elmo-search-engine-do-search): Remove nil from argument
761         list. Added argument pattern to evaluate element as function.
762         (elmo-search-engine-local-file): Derived from
763         `elmo-search-engine-extprog'.
764         (elmo-search-engine-create-message-entity): Check existance of file.
765         (elmo-search-engine-fetch-message): Ditto.
766         (elmo-search-namazu-index): Follow the API change.
767         (elmo-search-grep-target): Ditto.
768
769 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
770
771         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
772         characters of working buffer.
773
774         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
775         Does not bind `default-mime-charset'.
776         (elmo-msgdb-create-message-entity-from-buffer): Removed
777         unnecessary local bind.
778
779         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
780         function.
781         (modb-entity-extract-mailing-list-info-functions): Added it.
782
783 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
784
785         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
786         when number and message-id are non-nil.
787
788         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
789
790         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
791         conditional steatment.
792         (elmo-pop3-auth-apop): Likewise.
793         (elmo-network-authenticate-session): Likewise.
794
795 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
796
797         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
798         symbol `fill-column'.
799         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
800         decode field value.
801
802         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
803         (elmo-decoded-field-body): Ditto.
804
805 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
806
807         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
808         `tokens' to `params'.
809
810 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
811
812         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
813         working buffer.
814
815 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
816
817         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
818         decide index.
819
820 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
821
822         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
823         Set default value as nil.
824         (toplevel): Register search engines by
825         `elmo-search-register-engine' if there are not defined.
826
827         * elmo.el (autoload): Added autoload setting for
828         `elmo-search-register-engine'.
829
830 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
831
832         * elmo.el (toplevel): `[' is redefined as the prefix of the search
833         folder instead of nmz folder.
834         (elmo-nmz-default-index-path): Added obsolete variable setting.
835         (elmo-nmz-index-alias-alist): Ditto.
836         (elmo-nmz-use-drive-letter): Ditto.
837
838         * elmo-search.el (elmo-search-register-engine): New function.
839
840         * elmo-nmz.el: Removed.
841
842         * elmo-version.el (elmo-version): Up to 2.15.2.
843
844 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
845
846         * elmo-search.el: New file.
847
848 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
849
850         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
851         condition `larger' and `smaller'.
852
853 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
854
855         * elmo-util.el (elmo-safe-filename): Rewrite to replace
856         `"' (double quote) into "_Q_".
857
858 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
859
860         * elmo-net.el (elmo-net-quote-chars): Abolish.
861         (elmo-net-format-quoted): Ditto.
862
863 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
864
865         * elmo.el (elmo-get-folder-function): New variable.
866         (elmo-get-folder): New function.
867         (elmo-folder-rename): Call `elmo-make-folder' with specified
868         mime-charset.
869
870         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
871         `elmo-make-folder'.
872         (elmo-split-subr): Ditto.
873
874         * elmo-multi.el (elmo-folder-initialize): Ditto.
875
876         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
877
878         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
879         (elmo-flag-get-folder): Ditto.
880
881         * elmo-filter.el (elmo-folder-initialize): Ditto.
882
883         * elmo-access.el (elmo-folder-initialize): Ditto.
884         (elmo-access-folder-update-children): Ditto.
885
886         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
887         (elmo-dop-queue-flush): Ditto.
888         (elmo-folder-append-buffer-dop-delayed): Ditto.
889         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
890         mime-charset.
891
892         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
893         instead of `elmo-make-folder'.
894         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
895         destination folder instead of send `elmo-folder-rename-internal'.
896
897         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
898         slot of subfolder instead of create it.
899
900 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
901
902         * elmo-util.el (elmo-collect-separators): New function.
903         (elmo-collect-separators-internal): Ditto.
904         (elmo-collect-trail-separators): Ditto.
905         (elmo-parse-separated-tokens): Ditto.
906         (elmo-parse-separated-tokens-internal): Ditto.
907         (elmo-quote-syntactical-element): Ditto.
908
909         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
910         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
911
912         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
913         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
914         (elmo-nntp-folder-list-subfolders): Quote a user name.
915
916         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
917         (elmo-net-parse-network): Abolish.
918         (elmo-net-folder-set-parameters): New function.
919         (elmo-folder-initialize): Follow the above change.
920
921         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
922         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
923         (elmo-folder-list-subfolders): Use
924         `elmo-quote-syntactical-element' instead of
925         `elmo-net-format-quoted' to quote mailbox and user name.
926
927 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
928
929         * elmo-util.el (elmo-token-valid-p): New function.
930         (elmo-parse-token): Add optional argument `requirement'.
931         (elmo-parse-prefixed-element): Likewise.
932
933         * elmo-net.el (elmo-net-quote-chars): Renamed from
934         `elmo-net-quote-chars-regexp'.
935         (elmo-net-format-quoted): Add optional argument `extra-chars'.
936
937         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
938         by info document. Check token `uidl' is started an alphabet.
939
940         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
941         by info document. Check token `user' is started an alphabet.
942
943         * elmo-imap4.el (elmo-folder-initialize): Ditto.
944         (elmo-folder-list-subfolders): Quote user.
945
946 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
947
948         * elmo-util.el (elmo-quoted-specials-list): New constant.
949         (elmo-quoted-token): New function.
950
951         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
952         (elmo-net-format-quoted): New function.
953         (elmo-net-parse-network): Ditto.
954         (elmo-folder-initialize): Use it.
955
956         * elmo-nntp.el (elmo-folder-initialize): Use
957         `elmo-net-parse-network' to parse network specification instead of
958         `elmo-folder-initialize#elmo-net'.
959
960         * elmo-pop3.el (elmo-folder-initialize): Ditto.
961
962         * elmo-imap4.el (elmo-folder-initialize): Ditto.
963         (elmo-folder-list-subfolders): Quote folder name by
964         `elmo-net-format-quoted'.
965
966 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
967
968         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
969         (elmo-folder-search): Use it.
970
971 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
972
973         * modb-standard.el (modb-standard-loaded-message-id): Use
974         `elmo-msgdb-message-entity-field'.
975
976 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
977
978         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
979         without filename.
980
981 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
982
983         * elmo-util.el (elmo-set-auto-coding): New function.
984         (elmo-object-load): Use it.
985
986 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
987
988         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
989         (elmo-time<): Define as alias of `elmo-time-less-p'.
990         (elmo-time-to-datevec): New function.
991
992         * elmo-date.el (elmo-time-to-days): New function.
993
994 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
995
996         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
997         is not cons cell.
998
999 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1000
1001         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
1002         parenthesis.
1003
1004         * elmo-util.el (elmo-map-recursive): New function.
1005
1006         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
1007         (modb-entity-encode-string-recursive): Ditto.
1008
1009 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
1010
1011         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
1012         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
1013         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
1014         compare sequence number when last modified time is nil.
1015
1016 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
1017
1018         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
1019
1020         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
1021
1022 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
1023
1024         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
1025         modification time of the file.
1026
1027 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1028
1029         * elmo-util.el (elmo-condition-optimize): Discriminated against
1030         preserved fields, extra fields and the other weight.
1031
1032 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1033
1034         * modb-entity.el (initialize-instance): Define.
1035         (modb-entity-handler-mime-charset): New internal function.
1036         (modb-standard-entity-set-field): Use it.
1037         (elmo-msgdb-message-entity-field): Ditto.
1038         (elmo-msgdb-message-entity-field): Ditto.
1039
1040         * modb.el (elmo-msgdb-match-condition): Rewrite with
1041         `elmo-condition-match'.
1042         (elmo-msgdb-match-condition-primitive): New function.
1043
1044         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
1045         arguments `flags' and `numbers'.
1046         (elmo-msgdb-match-condition-primitive): Abolished (merged to
1047         `elmo-msgdb-message-match-condition').
1048         (modb-buffer-entity-handler): New class.
1049
1050         * elmo.el (elmo-folder-search): Optimize condition to use
1051         `elmo-condition-optimize'.
1052         (elmo-message-buffer-match-condition): New function.
1053         (elmo-message-match-condition): Use
1054         `elmo-message-buffer-match-condition' instead of
1055         `elmo-buffer-field-condition-match'.
1056
1057         * elmo-util.el (elmo-condition-match): New function.
1058         (elmo-condition-optimize): Ditto.
1059         (elmo-buffer-field-primitive-condition-match): Abolish.
1060         (elmo-buffer-field-condition-match): Ditto.
1061
1062         * elmo-archive.el (elmo-archive-field-condition-match): Use
1063         `elmo-message-buffer-match-condition' instead of
1064         `elmo-buffer-field-condition-match'.
1065
1066 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1067
1068         * elmo-flag.el (elmo-global-flags-initialize): Check the
1069         existence of the flag directory.
1070
1071 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1072
1073         * elmo-access.el (elmo-folder-initialize): Call
1074         `elmo-multi-connect-signals'.
1075
1076         * elmo-pipe.el (elmo-folder-close): Define.
1077
1078         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
1079         children folders.
1080
1081         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
1082         with target folder.
1083
1084         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
1085         `number'.
1086
1087         * elmo-multi.el (elmo-message-entity): Don't use return value of
1088         `elmo-message-entity-set-number'.
1089
1090 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1091
1092         * modb.el (modb-generic): Added slot `mime-charset'.
1093
1094         * modb-standard.el (modb-standard): Added slot `overview-handler'.
1095         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
1096         and `modb-entity-handler-dump-parameters'.
1097         (modb-standard-default-entity-handler): Abolish.
1098         (elmo-msgdb-message-entity-handler): Save created handler by
1099         instance slot.
1100
1101         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
1102         (modb-entity-handler-list-parameters): New method.
1103         (modb-entity-handler-equal-p): New function.
1104         (modb-entity-handler-dump-parameters): Ditto.
1105         (modb-entity-parse-address-string): Encode return value.
1106         (modb-entity-make-address-string): Decode argument value.
1107         (modb-entity-decode-string-recursive): New function.
1108         (modb-entity-encode-string-recursive): Ditto.
1109         (modb-standard-entity-normalizer): Set to encode field value.
1110         (modb-standard-entity-specializer): Follow the above change.
1111         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
1112         mime-charset of handler.
1113         (elmo-msgdb-message-entity-field): Ditto.
1114         (elmo-msgdb-copy-message-entity): Fixed reference to internal
1115         structure.
1116         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
1117
1118         * elmo.el (elmo-folder): Added slot `mime-charset'.
1119         (elmo-make-folder): Added argument `mime-charset'.
1120         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
1121         `mime-charest'.
1122
1123         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
1124         (elmo-make-msgdb): Likewise.
1125
1126         * elmo-internal.el (elmo-internal-folder-initialize): Call
1127         `luna-make-entity' with :mime-charset parameter.
1128
1129 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
1130
1131         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
1132         encoded words in `from' and `subject' field.
1133
1134 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1135
1136         * modb.el (elmo-msgdb-message-field): Add argument `type'.
1137         (elmo-msgdb-match-condition): Get handler from entity instead of
1138         msgdb.
1139
1140         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
1141         (modb-standard-load-entity): Treat new file format.
1142         (modb-standard-save-entity-1): Save as new file format.
1143         (modb-standard-save-entity): Split messages into section here.
1144         (elmo-msgdb-message-field): Follow the API change.
1145         (modb-standard-default-entity-handler): New internal variable.
1146         (elmo-msgdb-message-entity-handler): Define.
1147
1148         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1149         to `elmo-vars.el'.
1150         (modb-entity-field-extractor-alist): New user option.
1151         (elmo-msgdb-message-entity-field): Removed argument `decode' and
1152         added argument `type'.
1153         (elmo-msgdb-copy-message-entity): Add optional argument
1154         `make-handler'.
1155         (modb-set-field-converter): New function.
1156         (modb-convert-field-value): Ditto.
1157         (modb-entity-string-decoder): Ditto.
1158         (modb-entity-string-encoder): Ditto.
1159         (modb-entity-parse-date-string): Ditto.
1160         (modb-entity-make-date-string): Ditto.
1161         (modb-entity-mime-decoder): Ditto.
1162         (modb-entity-mime-encoder): Ditto.
1163         (modb-entity-address-list-decoder): Ditto.
1164         (modb-entity-address-list-encoder): Ditto.
1165         (modb-entity-parse-address-string): Ditto.
1166         (modb-entity-make-address-string): Ditto.
1167         (modb-entity-create-field-indices): Ditto.
1168         (modb-legacy-entity-field-slots): New constant.
1169         (modb-legacy-entity-field-indices): Ditto.
1170         (modb-legacy-entity-normalizer): New variable.
1171         (modb-legacy-entity-specializer): Ditto.
1172         (modb-legacy-entity-field-index): New macro.
1173         (modb-legacy-entity-set-field): New function.
1174         (modb-legacy-make-message-entity): Rewrite.
1175         (elmo-msgdb-create-message-entity-from-buffer): Use
1176         `elmo-msgdb-get-references-from-buffer'. Use
1177         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
1178         Use `modb-legacy-entity-set-field' instead of
1179         `elmo-msgdb-message-entity-set-field'.
1180         (elmo-msgdb-message-entity-field): Rewrite.
1181         (elmo-msgdb-message-entity-set-field): Ditto.
1182         (elmo-msgdb-copy-message-entity): Make new entity by
1183         `make-handler' if it specified.
1184         (elmo-msgdb-message-match-condition): Define a method of
1185         `modb-entity-handler' and follow the API change.
1186         (modb-standard-entity-handler): New class.
1187         (modb-entity-extract-ml-info-from-x-sequence): New function.
1188         (modb-entity-extract-ml-info-from-subject): Ditto.
1189         (modb-entity-extract-ml-info-from-return-path): Ditto.
1190         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
1191         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
1192         (modb-entity-extract-mailing-list-info): Ditto.
1193         (modb-entity-extract-mailing-list-info-functions): New variable.
1194
1195         * elmo.el (elmo-message-field): Add optional argument `type'.
1196
1197         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1198         from `modb-entity.el'.
1199
1200         * elmo-util.el (elmo-object-load): Decode by coding-system from
1201         `set-auto-coding-function'.
1202         (elmo-object-save): Use `detect-mime-charset-region' and add
1203         coding cookie if encode.
1204         (elmo-msgdb-get-references-from-buffer): New function.
1205         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
1206
1207         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
1208
1209         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
1210         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
1211         instead of `shimbun-make-header' and follow the API change.
1212         (elmo-shimbun-update-overview): Follow the API change.
1213         (elmo-map-folder-list-message-locations): Ditto.
1214
1215         * elmo-pipe.el (elmo-message-field): Ditto.
1216
1217         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
1218         Ditto.
1219
1220         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1221
1222         * elmo-multi.el (elmo-message-field): Ditto.
1223
1224         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
1225         (elmo-msgdb-sort-by-date): Ditto.
1226         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
1227         `elmo-message-entity-field'.
1228         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
1229         change.
1230         (elmo-msgdb-overview-entity-get-from): Ditto.
1231         (elmo-msgdb-overview-entity-get-subject): Ditto.
1232         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1233         (elmo-msgdb-overview-entity-get-date): Ditto.
1234         (elmo-msgdb-overview-entity-get-to): Ditto.
1235         (elmo-msgdb-overview-entity-get-cc): Ditto.
1236
1237         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1238         (elmo-mime-collect-message/partial-pieces): Ditto.
1239
1240         * elmo-filter.el (elmo-message-field): Ditto.
1241
1242         * elmo-date.el (elmo-datevec-to-time): New function.
1243         (elmo-time-parse-date-string): Ditto.
1244         (elmo-time-make-date-string): Ditto.
1245         (elmo-time<): Ditto.
1246
1247         * elmo-version.el (elmo-version): Up to 2.15.1.
1248
1249 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
1250
1251         * elmo-flag.el (elmo-global-flags-initialize): Don't include
1252         member of elmo-local-flags.
1253
1254 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
1255
1256         * elmo-version.el (elmo-version): Up to 2.15.0.
1257
1258 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1259
1260         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
1261         `ignore-msgdb' is non-nil.
1262
1263 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1264
1265         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
1266         (elmo-condition-in-msgdb-p): Ditto.
1267         (elmo-file-field-primitive-condition-match): Ditto.
1268         (elmo-file-field-condition-match): Ditto.
1269
1270         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
1271
1272 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1273
1274         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
1275         subdirectories here.
1276         (elmo-global-flags-initialize): New function.
1277
1278         * elmo.el (toplevel): Added autoload setting for
1279         `elmo-global-flags-initialize'.
1280
1281 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
1282
1283         * elmo.el (message-number-changed): Define new signal.
1284         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
1285         message-number-changed signal.
1286         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1287         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1288         Respect `elmo-pack-number-check-strict'.
1289
1290 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1291
1292         * elmo-signal.el (elmo-connect-signal): Document.
1293         (elmo-emit-signal): Ditto.
1294         (elmo-emit-signal): It should pass source argument to filter and
1295         handler, not slot-source.
1296
1297 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1298
1299         * modb.el (elmo-msgdb-update-entity): New API and define generic
1300         implement.
1301
1302         * modb-standard.el (elmo-msgdb-update-entity): Define.
1303
1304         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
1305         API and define generic implement.
1306
1307         * elmo.el (update-overview): New singnal.
1308
1309         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
1310         `elmo-msgdb-update-entity' and emit signal `update-overview'.
1311         (elmo-message-entity-parent): Define.
1312
1313         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
1314         `update-overview'.
1315
1316         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
1317
1318         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
1319
1320 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
1321
1322         * elmo.el (elmo-folder-synchronize): Sort the return value of
1323         `elmo-list-diff'.
1324
1325         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
1326         list.
1327
1328 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1329
1330         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
1331         `default-enable-multibyte-characters'.
1332         (elmo-object-load): Use `with-temp-buffer' instead of
1333         `elmo-set-work-buf'.
1334         (elmo-object-save): Ditto.
1335         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
1336         `elmo-set-work-buf'.
1337         (elmo-decoded-field-body): Ditto.
1338
1339         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
1340
1341         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
1342         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
1343
1344         * elmo-version.el (elmo-version): Up to 2.13.3.
1345
1346 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
1347
1348         * elmo-util.el (elmo-list-diff): Fix the last change.
1349         Reverse order of result lists.
1350
1351 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
1352
1353         * modb-standard.el (elmo-msgdb-set-flag): Use
1354         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
1355         (elmo-msgdb-unset-flag): Ditto.
1356
1357         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
1358         `elmo-list-diff'.
1359
1360         * elmo-util.el (elmo-list-diff): Rewrite.
1361         (elmo-list-diff-nonsortable): New function.
1362
1363 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
1364
1365         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
1366         `elmo-multibypte-buffer-name'.  All referers are updated.
1367
1368 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1369
1370         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
1371         (elmo-mime-entity-fragment-p): New function.
1372         (mime-elmo-buffer-entity): Added slot `reassembled'.
1373         (elmo-message-mime-entity): Added 4th argument `reassemble'.
1374         (elmo-message-mime-entity-internal): New function (renamed from
1375         `elmo-message-mime-entity').
1376         (elmo-mime-inherit-field-list-from-enclosed): New constant.
1377         (elmo-mime-make-reassembled-mime-entity): New function.
1378         (elmo-message-reassembled-mime-entity): Ditto.
1379         (elmo-mime-collect-message/partial-pieces): Ditto.
1380
1381 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1382
1383         * elmo.el (elmo-message-fetch-string): Disable multibyte.
1384
1385         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
1386         (elmo-with-enable-multibyte): New macro.
1387
1388         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
1389
1390 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1391
1392         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
1393         argument `number'.
1394         (elmo-filter-connect-signals): Follow the above change.
1395
1396 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
1397
1398         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
1399
1400         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
1401         that only the first flag is used.
1402
1403 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1404
1405         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
1406         if available.
1407
1408 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1409
1410         * elmo-signal.el: New file.
1411
1412         * elmo.el (toplevel): Require elmo-signal.
1413         (flag-changing, flag-changed, cache-changed): New signal.
1414         (elmo-folder): Remove slog `handlers'.
1415         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1416         `elmo-folder-notify-event'.
1417         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1418         (elmo-folder-unset-flag): Ditto.
1419         (elmo-event-handler): Abolish.
1420         (elmo-event-handler-flag-changed): Ditto.
1421         (elmo-event-handler-cache-changed): Ditto.
1422         (elmo-folder-add-handler): Ditto.
1423         (elmo-folder-remove-handler): Ditto.
1424         (elmo-folder-notify-event): Ditto.
1425
1426         * elmo-pipe.el (toplevel): Require elmo-signal.
1427         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1428         (elmo-pipe-connect-signals): New function.
1429         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1430         (elmo-folder-set-flag): Ditto.
1431         (elmo-folder-unset-flag): Ditto.
1432         (elmo-message-set-cached): Ditto.
1433
1434         * elmo-multi.el (toplevel): Require elmo-signal.
1435         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1436         (elmo-multi-connect-signals): New function.
1437         (elmo-multi-map-numbers): Ditto.
1438         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1439         (elmo-message-fetch): Ditto.
1440         (elmo-folder-set-flag): Ditto.
1441         (elmo-folder-unset-flag): Ditto.
1442
1443         * elmo-filter.el (toplevel): Require elmo-signal.
1444         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1445         (elmo-filter-connect-signals): New function.
1446         (elmo-filter-add-flag-count): Ditto.
1447         (elmo-message-fetch): Does not call
1448         `elmo-filter-folder-countup-message-flags' and
1449         `elmo-folder-notify-event'.
1450         (elmo-message-set-cached): Ditto.
1451         (elmo-folder-set-flag): Ditto.
1452         (elmo-folder-unset-flag): Ditto.
1453
1454         * elmo-version.el (elmo-version): Up to 2.13.2.
1455
1456 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1457
1458         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1459         `flags'.
1460
1461 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1462
1463         * elmo-filter.el (elmo-message-set-cached): Call
1464         `elmo-folder-notify-event' with event `cache-changed'.
1465
1466         * elmo-multi.el (elmo-message-set-cached): Ditto.
1467
1468         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1469
1470 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1471
1472         * elmo.el (elmo-folder-encache): Abolish.
1473
1474 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1475
1476         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1477         (elmo-folder-next-message-number-dop): Return appropriate negative
1478         integer.
1479
1480 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1481
1482         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1483         clearing pending operations.
1484         (elmo-folder-next-message-number-dop): Return appropriate negative
1485         integer.
1486
1487 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1488
1489         * elmo.el (toplevel): Added autoload setting for `md5'.
1490         (elmo-msgdb-path-encode-threshold): New user option.
1491         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1492         longer than `elmo-msgdb-path-encode-threshold'.
1493
1494         * elmo-flag.el (elmo-global-mark-migrate): Use
1495         `elmo-folder-expand-msgdb-path' instead of
1496         `elmo-folder-msgdb-path'.
1497
1498 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1499
1500         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1501         element of the difference is nil.
1502
1503 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1504
1505         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1506         to the check logic of file systems which are weak in colon character.
1507
1508 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1509
1510         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1511
1512 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1513
1514         * elmo-maildir.el (elmo-maildir-move-file): New function.
1515         (elmo-folder-append-buffer): Use it.
1516         (elmo-folder-append-messages): Ditto.
1517         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1518
1519         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1520         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1521
1522         * elmo-maildir.el (elmo-maildir-separator): New user option.
1523         (elmo-maildir-adjust-separator): New macro.
1524         (elmo-maildir-list-location): Use it.
1525         (elmo-maildir-update-current): Ditto.
1526         (elmo-maildir-set-mark): Ditto.
1527         (elmo-maildir-delete-mark): Ditto.
1528         (These changes are based on Hiroya Murata's patch [wl: 13437])
1529
1530 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1531
1532         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1533
1534 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1535
1536         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1537         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1538         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1539
1540 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1541
1542         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1543         Use `with-temp-buffer'.
1544
1545 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1546
1547         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1548
1549         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1550         `wl-read-search-condition').
1551         (elmo-read-search-condition-internal): Likewise.
1552
1553         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1554         (elmo-flag-valid-p): New function.
1555         (elmo-folder-initialize): Check flag name is valid.
1556
1557 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1558
1559         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1560         delimiter to obtain root mailbox itself.
1561
1562 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1563
1564         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1565         type mismatch.
1566
1567 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1568
1569         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1570         as t.
1571
1572 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1573
1574         * elmo-shimbun.el (toplevel): Require cl at compile.
1575
1576         * elmo-nntp.el (toplevel): Ditto.
1577
1578         * elmo-nmz.el (toplevel): Ditto.
1579
1580         * elmo-multi.el (toplevel): Ditto.
1581
1582         * elmo-file.el (toplevel): Ditto.
1583
1584         * elmo-dop.el (toplevel): Ditto.
1585
1586         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1587
1588 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1589
1590         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1591         as nil.
1592
1593         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1594         size of elmo-message-fetch-internal is 0 byte.
1595
1596 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1597
1598         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1599
1600 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1601
1602         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1603         always plugged.
1604
1605 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1606
1607         * elmo-maildir.el (elmo-map-message-fetch): Call
1608         `elmo-map-folder-set-flag'.
1609
1610         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1611         (elmo-message-fetch): Merge from
1612         `elmo-message-fetch-with-cache-process'.
1613
1614         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1615         (elmo-message-fetch): Define.
1616
1617         * elmo-nntp.el (elmo-message-fetch): Renamed from
1618         `elmo-message-fetch-with-cache-process'.
1619
1620         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1621         (elmo-message-fetch): Define.
1622
1623         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1624         search-key.
1625
1626         * elmo-shimbun.el (shimbun-mua-search-id): Use
1627         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1628         (elmo-shimbun-folder-shimbun-header): Ditto.
1629         (elmo-shimbun-get-headers): Ditto.
1630         (elmo-shimbun-update-overview): Ditto.
1631
1632         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1633
1634         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1635         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1636
1637 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1638
1639         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1640         message is cached.
1641         (elmo-message-fetch-string): Fixed argument.
1642
1643 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1644
1645         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1646         exchange order of arguments `section' and `unread'.
1647         (elmo-message-encache): Follow the API change.
1648         (elmo-message-match-condition): Ditto.
1649         (elmo-generic-folder-append-messages): Ditto.
1650         (elmo-message-fetch-string): New function.
1651
1652         * elmo-split.el (elmo-split-subr): Ditto.
1653
1654         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1655
1656         * elmo-pipe.el (elmo-message-fetch): Ditto.
1657
1658         * elmo-multi.el (elmo-message-fetch): Ditto.
1659
1660         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1661
1662         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1663
1664         * elmo-filter.el (elmo-message-fetch): Ditto.
1665
1666         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1667
1668         * elmo-imap4.el (mime-imap-location-section-body): Use
1669         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1670         follow the API change.
1671
1672 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1673
1674         * elmo-access.el: New file.
1675
1676         * elmo-null.el: Ditto.
1677
1678         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1679
1680 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1681
1682         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1683         (elmo-network-session): New attribute `last-accessed'.
1684         (elmo-network-get-session): Discard network cache if elapsed time
1685         since last-accessed is larger than elmo-network-session-idle-timeout.
1686
1687 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1688
1689         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1690         and added `number', `require-entireness'.
1691         (elmo-find-fetch-strategy): Rewrite.
1692         (elmo-message-fetch): Unset `unread' flag when argument unread is
1693         non-nil.
1694
1695         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1696
1697         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1698         (elmo-message-fetch): Notify event `flag-changed'.
1699
1700         * elmo-pipe.el: Likewise.
1701
1702         * elmo-mime.el (elmo-mime-entity): New class.
1703         (elmo-mime-entity-display-p): New generic function.
1704         (elmo-mime-entity-display): Ditto.
1705         (elmo-mime-entity-display-as-is): Ditto.
1706         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1707         elmo-mime-entity.
1708         (elmo-make-mime-message-location): Removed.
1709         (elmo-mime-message-display): Ditto.
1710         (elmo-mime-display-as-is): Ditto.
1711         (elmo-message-mime-entity): New function.
1712
1713         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1714
1715         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1716         change.
1717         (elmo-message-fetch): Re-count flagged message number and notify
1718         event `flag-changed'.
1719
1720         * elmo-version.el (elmo-version): Up to 2.13.1.
1721
1722 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1723
1724         * elmo-filter.el (elmo-message-field): Define.
1725         (elmo-message-set-field): Ditto.
1726
1727 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1728
1729         * elmo.el (elmo-message-set-cached): Call
1730         `elmo-folder-notify-event' with cache-changed.
1731         (elmo-event-handler-cache-changed): New generic function.
1732
1733 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1734
1735         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1736         instead of elmo-add-name-to-file.
1737         (elmo-folder-append-messages): Ditto.
1738
1739 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1740
1741         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1742
1743 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1744
1745         * elmo-version.el (elmo-version): Up to 2.13.0.
1746
1747         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1748         `auto'.
1749
1750         * modb-standard.el (modb-standard-economize-entity-size): Changed
1751         default value to `t'.
1752
1753         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1754         `standard'.
1755
1756         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1757         after parsing greeting string.
1758
1759 2004-11-23  Daishi Kato <daishi@axlight.com>
1760
1761         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1762         New user option.
1763         (elmo-spam-spamoracle-call): Use it.
1764
1765 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1766
1767         * elmo.el (elmo-message-accessible-p): Message in dop spool
1768         is accessible.
1769
1770 2004-11-23  Daishi Kato <daishi@axlight.com>
1771
1772         * elsp-spamoracle.el: New file.
1773
1774 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1775
1776         * elmo.el (elmo-message-flags-for-append): New function.
1777         (elmo-generic-folder-append-messages): Use it.
1778
1779         * elmo-split.el (elmo-split-subr): Ditto.
1780
1781         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1782         `flags' and use elmo-folder-append-buffer instead of
1783         write-region-as-binary.
1784         (elmo-dop-filter-pending-messages): New function.
1785         (elmo-folder-append-buffer-dop): Call
1786         elmo-dop-spool-folder-append-buffer with `flag'.
1787         (elmo-folder-set-flag-dop): Filter messages by
1788         elmo-dop-filter-pending-messages.
1789         (elmo-folder-unset-flag-dop): Ditto.
1790         (elmo-folder-append-buffer-dop-delayed): Use
1791         elmo-message-flags-for-append to get flags of the message and
1792         simplify.
1793
1794 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1795
1796         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1797
1798 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1799
1800         * elmo.el (elmo-folder): Added handlers slot.
1801         (elmo-event-handler): New class.
1802         (elmo-event-handler-flag-changed): New API.
1803         (elmo-folder-add-handler): New function.
1804         (elmo-folder-remove-handler): Ditto.
1805         (elmo-folder-notify-event): Ditto.
1806         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1807         `flag-changed'.
1808         (elmo-folder-unset-flag): Ditto.
1809
1810         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1811         (elmo-folder-unset-flag): Ditto.
1812
1813         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1814         (elmo-folder-unset-flag): Ditto.
1815
1816         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1817         (elmo-folder-unset-flag): Ditto.
1818
1819         * elmo-version.el (elmo-version): Up to 2.11.33.
1820
1821 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1822
1823         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1824
1825 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1826
1827         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1828
1829         * elmo-flag.el (elmo-folder-unset-flag): Define.
1830         (elmo-global-flag-detach): Do process when the flag is not target
1831         flag.
1832
1833 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1834
1835         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1836         variable.
1837         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1838
1839 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1840
1841         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1842         function.
1843         (elmo-folder-delete-messages): Detach messages before delete
1844         messages from target folder.
1845         (elmo-folder-detach-messages): Set updated number-list to slot.
1846
1847 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1848
1849         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1850
1851 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1852
1853         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1854
1855 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1856
1857         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1858         internal use only).
1859         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1860         not modified.
1861         (elmo-folder-delete-messages): Define.
1862         (elmo-folder-move-messages): Don't call
1863         `elmo-folder-detach-messages'.
1864         (elmo-folder-synchronize): Rewrite.
1865         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1866
1867         * elmo-util.el (elmo-last): New function.
1868         (elmo-set-list): Ditto.
1869         (elmo-number-set-delete-list): Ditto.
1870         (elmo-number-set-delete): Ditto.
1871
1872         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1873
1874         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1875         `elmo-folder-delete-messages' and don't delete location map.
1876         (elmo-folder-detach-messages): Define.
1877
1878         * elmo-imap4.el (elmo-folder-delete): Use
1879         `elmo-folder-delete-messages-internal' instead of
1880         `elmo-folder-delete-messages'.
1881
1882         * elmo-filter.el (elmo-folder-delete-messages): Call
1883         `elmo-folder-detach-messages'.
1884         (elmo-folder-detach-messages): Don't call
1885         `elmo-folder-detach-messages' for target folder.
1886
1887         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1888         message deletion is succeeded.
1889
1890         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1891
1892         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1893         from `elmo-folder-delete-messages'.
1894
1895         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1896
1897         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1898
1899         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1900
1901         * elmo-version.el (elmo-version): Up to 2.11.32.
1902
1903 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1904
1905         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1906         (elmo-global-flag-list): Added obsolete variable setting.
1907
1908         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1909
1910         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1911         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1912         `elmo-mime-display-header-analysis' is nil.
1913
1914         * elmo-flag.el (elmo-global-flags): Renamed from
1915         `elmo-global-flag-list' (All other related portions are changed).
1916         (elmo-local-flags): New variable.
1917         (elmo-local-flag-p): New function.
1918         (elmo-global-flag-set-internal): Cause an error when flag is not
1919         global.
1920
1921 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1922
1923         * elmo-util.el (elmo-concat-path): Treat empty path.
1924
1925 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1926
1927         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1928         field-or-fields).
1929         (elmo-split-address-match): Ditto.
1930         (elmo-split-equal): Ditto.
1931         (elmo-split-match): Ditto.
1932
1933 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1934
1935         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1936         (elmo-generic-folder-append-messages): If src message exists but
1937         has no flag, pass (read) for the FLAG argument of
1938         `elmo-folder-append-buffer'. Otherwise, pass nil.
1939
1940         * elmo-split.el (elmo-split-subr): Likewise.
1941
1942         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1943
1944         * elmo-multi.el (elmo-message-flags): Ditto.
1945
1946         * elmo-filter.el (elmo-message-flags): Ditto.
1947
1948         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1949         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1950         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1951         
1952 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1953
1954         * elmo-split.el (elmo-split-rule): Update comment.
1955         (elmo-split-address-equal): Allow 2nd argument to be a list.
1956         (elmo-split-address-match): Ditto.
1957         (elmo-split-equal): Ditto.
1958         (elmo-split-match): Ditto.
1959
1960 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1961
1962         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1963         (elmo-folder-append-msgdb): Don't treat `read'.
1964         (elmo-message-flags): Don't return `read'.
1965
1966         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1967         (elmo-folder-unset-read-delayed): Ditto.
1968
1969         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1970
1971 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1972
1973         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1974         deletion.
1975
1976 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1977
1978         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1979         header.
1980
1981 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1982
1983         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1984         here.
1985         (elmo-msgdb-save): Bind inhibit-quit.
1986         (modb-standard-message-entity): Ditto.
1987
1988 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1989
1990         * elmo-database.el: No need to require elmo-msgdb.
1991
1992 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1993
1994         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1995         instead of `elmo-list-subdirectories'.
1996
1997 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1998
1999         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
2000         group entry.
2001         (elmo-folder-exists-p): "[" is empty.
2002         (elmo-folder-list-subfolders): Define.
2003         (elmo-folder-have-subfolder-p): Ditto.
2004
2005 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
2006
2007         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
2008
2009 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
2010
2011         * elmo-filter.el (elmo-folder-local-p): Define.
2012
2013 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2014
2015         * modb-standard.el (modb-standard-loaded-message-id): Return nil
2016         when entity is garbaged.
2017         (modb-standard-save-entity-1): Don't modify the original entity.
2018
2019 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
2020
2021         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
2022
2023 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2024
2025         * elmo.el (elmo-strict-folder-diff): Use
2026         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
2027
2028 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
2029
2030         * modb.el (elmo-msgdb-flag-available-p): New generic function.
2031         (elmo-msgdb-message-number): Ditto.
2032         (elmo-msgdb-message-field): Ditto.
2033
2034         * modb-standard.el (modb-standard-economize-entity-size): New user
2035         option.
2036         (modb-standard-loaded-message-id): New inline function.
2037         (modb-standard-load-entity): Use it.
2038         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
2039         throw message-id string away.
2040         (elmo-msgdb-flag-available-p): Define.
2041         (elmo-msgdb-message-number): Ditto.
2042         (elmo-msgdb-message-field): Ditto.
2043
2044         * modb-legacy.el (modb-legacy-flag-list): Fix typo
2045         (suppoted -> supported).
2046         (modb-legacy-supported-flag-p): Ditto.
2047         (elmo-msgdb-set-flag): Ditto.
2048         (elmo-msgdb-unset-flag): Ditto.
2049         (elmo-msgdb-flag-available-p): Define.
2050
2051         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
2052         is `t', treat it as legacy entity.
2053         
2054         * elmo.el (elmo-message-flag-available-p): New generic function.
2055         (elmo-message-number): Ditto.
2056         (elmo-message-field): Use `elmo-msgdb-message-field'.
2057
2058         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
2059
2060         * elmo-pipe.el (elmo-message-flag-available-p): Define.
2061         (elmo-message-number): Ditto.
2062
2063         * elmo-multi.el (elmo-message-number): Define.
2064         (elmo-message-flag-available-p): Ditto.
2065
2066         * elmo-filter.el (elmo-message-flag-available-p): Define.
2067         (elmo-message-number): Ditto.
2068
2069         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
2070         (elmo-folder-initialize): Load `max-number'.
2071         (elmo-folder-commit): Save it.
2072         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
2073         (elmo-global-flag-set-internal): Set up max-number slot.
2074
2075 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
2076
2077         * elmo-version.el (elmo-version): Up to 2.11.31.
2078
2079 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
2080
2081         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
2082         unibyte string of the current buffer for the argument of `md5'
2083         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
2084
2085 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2086
2087         * modb-legacy.el (modb-legacy-flag-list): New constant.
2088         (modb-legacy-suppoted-flag-p): New internal function.
2089         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
2090         (elmo-msgdb-unset-flag): Ditto.
2091
2092 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
2093
2094         * elmo.el (elmo-make-folder): Remove text properties for prefix.
2095
2096         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
2097         from msgdb.
2098
2099 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2100
2101         * elmo-multi.el (elmo-folder-count-flags): Changed return value
2102         (follow the API change).
2103
2104         * elmo-filter.el (elmo-folder-count-flags): Ditto.
2105
2106 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
2107
2108         * modb-standard.el (modb-standard-digest-flags): Abolish.
2109         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
2110
2111         * elmo-vars.el (elmo-digest-flags): New variable.
2112         (elmo-preserved-flags): Moved from elmo-flag.el.
2113
2114         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
2115         (elmo-imap4-flag-to-imap-criteria): Ditto.
2116         (elmo-imap4-folder-list-flagged): Use it.
2117
2118         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
2119
2120         * elmo.el (elmo-folder-count-flags): Changed return value.
2121
2122         * elmo-flag.el (elmo-preserved-flags): New variable.
2123         (elmo-get-global-flags): Use it.
2124
2125         * modb-standard.el (modb-standard-digest-flags): New variable.
2126         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
2127         Changed behavior of `any'.
2128
2129         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
2130         which are defined the Internet draft
2131         (draft-melnikov-imap-keywords-03.txt).
2132         (elmo-imap4-flags-to-imap): New function.
2133         (elmo-folder-append-buffer): Use it.
2134
2135         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
2136         in the docstring.
2137
2138         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
2139         avoid the bug of Emacs 21.3.
2140
2141 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
2142
2143         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
2144         function find-coding-system does not exist.
2145
2146 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2147
2148         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
2149         parsing.
2150
2151 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2152
2153         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
2154         response codes.
2155
2156 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2157
2158         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
2159         (elmo-network-close-session): Follow the changes in
2160         `elmo-pop3-read-response'.
2161         (elmo-pop3-auth-user): Ditto.
2162         (elmo-pop3-auth-apop): Ditto.
2163         (elmo-network-initialize-session): Ditto.
2164         (elmo-network-authenticate-session): Ditto.
2165         (elmo-network-setup-session): Ditto.
2166         (elmo-folder-status): Ditto.
2167         (elmo-message-fetch-plugged): Ditto.
2168         (elmo-pop3-delete-msg): Ditto.
2169
2170 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
2171
2172         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
2173         on failure.
2174
2175 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2176
2177         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
2178         style.
2179         (elmo-bind-directory): Ditto.
2180
2181 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2182
2183         * elmo.el (elmo-folder-append-messages): Note on return value.
2184         * elmo-archive.el (elmo-folder-append-messages): Don't return
2185         message numbers which could not be appended.
2186
2187 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2188
2189         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
2190
2191 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2192
2193         * elmo-version.el (elmo-version): Up to 2.11.30.
2194
2195 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2196
2197         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
2198         `mask'.
2199
2200         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
2201
2202         * elmo-multi.el (elmo-folder-synchronize): Likewise.
2203         (elmo-multi-split-numbers): Add elmo-folder object into each
2204         element of return value at first.
2205         (elmo-folder-delete-messages): Follow the above change.
2206         (elmo-folder-detach-messages): Ditto.
2207
2208         * elmo-filter.el (elmo-folder-synchronize): Minimize message
2209         number which is synchronized in target folder.
2210
2211 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2212
2213         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
2214         Change default value to symbol `all'.
2215         (elmo-map-message-fetch): Change condition to update overview
2216         follow the above.
2217
2218 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2219
2220         * elmo-shimbun.el (elmo-map-message-fetch): Change default
2221         behavior to update overview.
2222         (elmo-shimbun-update-overview-folder-list): Note it.
2223
2224 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2225
2226         * modb-standard.el (modb-standard-message-entity): Avoid infinite
2227         recursive call.
2228
2229 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2230
2231         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
2232         buffer-disable-undo, it is unnecessary.
2233         (elmo-spam-register-good-messages): Ditto.
2234
2235         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2236         Ditto.
2237
2238         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
2239
2240 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2241
2242         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
2243         (elmo-set-work-buf): Use set-buffer-multibyte instead of
2244         elmo-set-buffer-multibyte.
2245         (elmo-object-load): Ditto.
2246         (elmo-save-buffer): Ditto.
2247         (elmo-delete-char): Ditto.
2248         (elmo-file-field-primitive-condition-match): Ditto.
2249         (elmo-mime-string): Ditto.
2250
2251         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
2252         (elmo-archive-field-condition-match): Ditto.
2253
2254         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
2255
2256         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
2257
2258         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
2259         (elmo-nntp-msgdb-create-message): Ditto.
2260
2261         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2262
2263         * elmo.el (elmo-message-match-condition): Ditto.
2264         (elmo-message-match-condition): Ditto.
2265
2266         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2267         Ditto.
2268
2269         * elmo-version.el (elmo-version): Up to 2.11.29.
2270
2271         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
2272         (elsp-header): New backend.
2273
2274         * elmo-util.el (elmo-decoded-field-body): New function.
2275
2276 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2277
2278         * elmo-version.el (elmo-version): Up to 2.11.28.
2279
2280 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2281
2282         * elmo-filter.el: Rewrite.
2283
2284         * elmo-version.el (elmo-version): Up to 2.11.27.
2285
2286 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
2287
2288         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
2289         msgdb path for the localdir folder with absolute path.
2290
2291         * utf7.el: Synch up with latest gnus/utf7.el;
2292         Modified for latest Emacs.
2293
2294 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2295
2296         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
2297         shimbun backend couldn't open.
2298
2299 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
2300
2301         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
2302         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
2303         when a destination folder is a filter folder.
2304
2305 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2306
2307         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
2308         (elmo-generic-folder-append-messages): Call elmo-message-flags
2309         with argument `msgid'.
2310
2311         * elmo-split.el (elmo-split-subr): Ditto.
2312
2313         * elmo-pipe.el (elmo-message-flags): Follow the API change.
2314
2315         * elmo-multi.el (elmo-message-flags): Ditto.
2316
2317 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2318
2319         * elmo.el (elmo-folder): Add new slot `flag-table'.
2320         (elmo-folder-flag-table): New API.
2321         (elmo-folder-close-flag-table): Ditto.
2322         (elmo-folder-preserve-flags): New function.
2323         (elmo-generic-folder-append-messages): Use
2324         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
2325         Flag of a non-registered message, it sets to nil.
2326         Does not set flag to flag-table.
2327
2328         * elmo-maildir.el (elmo-folder-append-buffer): Use
2329         `elmo-folder-preserve-flags'.
2330         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2331         `elmo-folder-close-flag-table'.
2332
2333         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
2334         (elmo-archive-folder-append-buffer): Use
2335         `elmo-folder-preserve-flags'.
2336
2337         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
2338
2339         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
2340
2341         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2342         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2343         `elmo-folder-close-flag-table'.
2344
2345         * elmo-version.el (elmo-version): Up to 2.11.26.
2346
2347 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2348
2349         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
2350
2351         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
2352         md5's 4th and 5th argument (non-existent in flim one).
2353
2354 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2355
2356         * elmo-split.el (elmo-split-subr): Flag of a non-registered
2357         message, It sets to nil.
2358
2359 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2360
2361         * elmo.el (elmo-folder-list-messages): Merge lists only if both
2362         list is non-nil.
2363
2364 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
2365
2366         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
2367
2368         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
2369
2370         * elmo-util.el (elmo-uniq-sorted-list): New function.
2371         (elmo-make-number-list): Ditto.
2372         (elmo-number-set-to-number-list): Use elmo-make-number-list
2373         and don't use nreverse.
2374
2375 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2376
2377         * elmo-version.el (elmo-version): Up to 2.11.25.
2378
2379 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2380
2381         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
2382         field not exists in message, Use md5 message digest of header.
2383
2384 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2385
2386         * elmo.el (elmo-folder-append-buffer): Add note on return value.
2387         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
2388         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2389         * elmo-split.el (elmo-split-subr): Check return value of
2390         elmo-folder-append-buffer.
2391
2392         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
2393         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2394
2395         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
2396         message-id.
2397
2398 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
2399
2400         * elmo-split.el (elmo-split-subr): Append message with flag.
2401
2402         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
2403         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
2404         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2405
2406 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
2407
2408         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
2409         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
2410         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2411
2412 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
2413
2414         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2415         with a function call of `process-buffer'.  All callers are updated.
2416         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2417         Remove redundant `set-buffer' in a while loop.
2418
2419 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2420
2421         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2422         calls.
2423
2424 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2425
2426         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2427         elsp-spamfilter-register-buffer-internal with current buffer.
2428         (elmo-spam-register-spam-buffer): Ditto.
2429         (elmo-spam-register-good-buffer): Ditto.
2430
2431 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2432
2433         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2434         if it is not contained in the response(A workaround for courier-imap).
2435
2436 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2437
2438         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2439         parenthesis.
2440
2441 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2442
2443         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2444         range.
2445
2446 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2447
2448         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2449         of nconc.
2450
2451         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2452         argument handler.
2453         (elmo-msgdb-message-match-condition): Follow the change above.
2454
2455 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2456
2457         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2458         folder name.
2459
2460 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2461
2462         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2463
2464 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2465
2466         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2467
2468 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2469
2470         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2471         not found.
2472
2473 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2474
2475         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2476         value.
2477         (elmo-file-command-argument): Undo last change for cygwin.
2478         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2479         Don't return nil.
2480         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2481
2482 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2483
2484         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2485         value returned from elmo-file-find is nil.
2486
2487 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2488
2489         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2490         to elmo-vars.el.
2491
2492         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2493         instead of insert-file-contents-as-binary.
2494         (elmo-message-set-field): New generic function.
2495
2496         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2497         behavior change on `split-string'.
2498
2499         * elmo-file.el (elmo-file-find): New function.
2500         (elmo-file-command): New user option.
2501         (elmo-file-command-argument): Ditto.
2502         (elmo-file-fetch-max-size): Ditto.
2503         (elmo-file-detect-format): New function.
2504         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2505         Use elmo-file-detect-format.
2506         (elmo-map-folder-list-message-locations): Don't treat directories.
2507
2508 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2509
2510         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2511         (elmo-passwd-alist-clear): Shred password before clear.
2512         (elmo-remove-passwd): Remove all mached pair.
2513
2514 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2515
2516         * elmo.el (elmo-folder-synchronize): Fix description of the return
2517         value.
2518
2519 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2520
2521         * elmo.el (elmo-message-fetch-bodystructure): New method.
2522         (elmo-message-fetch-bodystructure): Define default.
2523
2524         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2525         elmo-message-fetch-bodystructure.
2526         (elmo-message-fetch-bodystructure): Define.
2527
2528         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2529
2530 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2531
2532         * elmo-filter.el (elmo-message-folder): Define.
2533
2534 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2535
2536         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2537         elmo-delete-cr-buffer.
2538
2539         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2540
2541         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2542
2543         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2544
2545         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2546         type seems to be a text.
2547
2548 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2549
2550         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2551         (elmo-spam-register-good-buffer): Ditto.
2552         (elmo-spam-spamassassin-register-messages): Ditto.
2553
2554         * elmo-util.el (elmo-string-member-ignore-case): Define with
2555         static-cond.
2556
2557 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2558
2559         * elmo.el (elmo-folder-type): Undo last change.
2560
2561         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2562
2563         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2564         warnings.
2565
2566         * elmo-file.el: New file.
2567         
2568         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2569
2570         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2571         variable.
2572         (elmo-spam-spamassassin-register-messages): New inline function.
2573         (elmo-spam-register-spam-messages): Define.
2574         (elmo-spam-register-good-messages): Ditto.
2575
2576         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2577         Fixed typo.
2578
2579         * elmo.el (toplevel): Added autoload setting for
2580         `elmo-get-global-flags'.
2581         (elmo-message-has-global-flag-p): New function.
2582         (elmo-message-set-global-flags): Ditto.
2583         (elmo-folder-type): Improvement for name: format.
2584
2585         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2586         availability of keyword flags.
2587         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2588         (elmo-folder-list-flagged-plugged): Renamed from
2589         elmo-folder-list-flagged-unplugged.
2590         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2591         accept any flag as keyword flag.
2592         (elmo-folder-set-flag-plugged): Accept keyword flags.
2593         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2594
2595         * elmo-flag.el (elmo-get-global-flags): New function.
2596
2597         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2598         folders.
2599
2600         * elmo-version.el (elmo-version): Up to 2.11.24.
2601
2602 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2603
2604         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2605         elmo-multiple-field-body instead of std11-field-body to check all
2606         headers.
2607
2608 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2609
2610         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2611         or "size".
2612
2613 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2614
2615         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2616         unintern is unbound.
2617
2618 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2619
2620         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2621         Protect from infinite loop.
2622
2623 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2624
2625         * elsp-bogofilter.el
2626         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2627         (elmo-spam-bogofilter-register-messages): New internal function.
2628         (elmo-spam-register-spam-messages): Define.
2629         (elmo-spam-register-good-messages): Ditto.
2630
2631 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2632
2633         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2634         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2635         (elmo-spam-bogofilter-call): Fixed the last change.
2636         (elmo-spam-bogofilter-arguments): Ditto.
2637
2638         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2639         Follow the options change of latest bogofilter.
2640
2641         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2642         (elmo-spam-bogofilter-good-switch): Ditto.
2643         (elmo-spam-bogofilter-arguments-alist): New user option.
2644         (elmo-spam-bogofilter-debug): Ditto.
2645         (elmo-spam-bogofilter-call): Renamed from
2646         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2647         is non-nil, insert output in buffer for debug.
2648         (elmo-spam-bogofilter-arguments): New macro.
2649         (elmo-spam-buffer-spam-p): Use it.
2650         (elsp-bogofilter-register-buffer): Ditto.
2651
2652 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2653
2654         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2655         regexp.
2656
2657 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2658
2659         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2660         value as "ruby".
2661         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2662         (elmo-spam-bsfilter-program): Set default value as full path for
2663         `bsfilter'.
2664         (elmo-spam-bsfilter-debug): New user option.
2665         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2666         non-nil, insert output in buffer for debug. Fix treating of
2667         argument.
2668
2669 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2670
2671         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2672         `elmo-maildir-flag-specs' element instead of one.
2673         (elmo-map-folder-unset-flag): Ditto.
2674         (Reported by Ken Makimura <macky@astem.or.jp>)
2675
2676         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2677         (elmo-folder-unset-flag-plugged): Ditto.
2678
2679 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2680
2681         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2682         to `reads' slot only if `in-msgdb' is nil.
2683
2684 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2685
2686         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2687         and complement argument list.
2688
2689 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2690
2691         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2692         instead of elmo-folder-list-flagged.
2693
2694 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2695
2696         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2697
2698         * elsp-bsfilter.el: New file.
2699
2700         * elmo-pipe.el (elmo-folder-list-unreads,
2701         elmo-folder-list-answereds,
2702         elmo-folder-list-importants,
2703         elmo-folder-flag-as-important,
2704         elmo-folder-unflag-important,
2705         elmo-folder-flag-as-read,
2706         elmo-folder-unflag-read,
2707         elmo-folder-flag-as-answered,
2708         elmo-folder-unflag-answered): Remove.
2709         (elmo-folder-set-flag): Define.
2710         (elmo-folder-unset-flag): Ditto.
2711
2712         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2713         (elmo-folder-set-flag): Define.
2714         (elmo-folder-unset-flag): Ditto.
2715         (elmo-folder-list-unreads): Remove.
2716         (elmo-folder-list-flagged): Define.
2717
2718         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2719         (elmo-folder-list-unreads,
2720         elmo-folder-list-importants,
2721         elmo-folder-list-answereds,
2722         elmo-folder-list-unreads-plugged,
2723         elmo-folder-list-importants-plugged,
2724         elmo-folder-list-answereds-plugged): Remove.
2725         (elmo-folder-list-flagged-plugged): New method.
2726         (elmo-folder-unflag-important,
2727         elmo-folder-flag-as-important,
2728         elmo-folder-unflag-read,
2729         elmo-folder-flag-as-read,
2730         elmo-folder-unflag-answered,
2731         elmo-folder-flag-as-answered,
2732         elmo-folder-flag-as-read-unplugged,
2733         elmo-folder-unflag-read-unplugged,
2734         elmo-folder-flag-as-important-unplugged,
2735         elmo-folder-unflag-important-unplugged,
2736         elmo-folder-flag-as-answered-unplugged,
2737         elmo-folder-unflag-answered-unplugged): Remove.
2738         (elmo-folder-set-flag): Define.
2739         (elmo-folder-unset-flag): Ditto.
2740         (elmo-folder-set-flag-unplugged): Ditto.
2741         (elmo-folder-unset-flag-unplugged): Ditto.
2742
2743         * elmo-multi.el (elmo-folder-list-unreads,
2744         elmo-folder-list-answereds,
2745         elmo-folder-list-importants,
2746         elmo-folder-flag-as-important,
2747         elmo-folder-unflag-important,
2748         elmo-folder-flag-as-read,
2749         elmo-folder-unflag-read,
2750         elmo-folder-flag-as-answered,
2751         elmo-folder-unflag-answered): Remove.
2752         (elmo-folder-set-flag): Define.
2753         (elmo-folder-unset-flag): Ditto.
2754
2755         * elmo-map.el (elmo-map-folder-unflag-important,
2756         elmo-map-folder-flag-as-important,
2757         elmo-map-folder-unflag-read,
2758         elmo-map-folder-flag-as-read,
2759         elmo-map-folder-unflag-answered,
2760         elmo-map-folder-flag-as-answered): Remove.
2761         (elmo-map-folder-set-flag): New method.
2762         (elmo-map-folder-unset-flag): Ditto.
2763         (elmo-map-folder-list-unreads,
2764         elmo-map-folder-list-importants,
2765         elmo-map-folder-list-answereds): Remove.
2766         (elmo-folder-list-flagged-internal): Define.
2767         (elmo-map-folder-list-flagged): New method.
2768
2769         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2770         (elmo-map-folder-list-unreads,
2771         elmo-map-folder-list-importants,
2772         elmo-map-folder-list-flagged): Remove.
2773         (elmo-map-folder-list-flagged): Define.
2774         (elmo-map-folder-flag-as-important,
2775         elmo-map-folder-unflag-important,
2776         elmo-map-folder-flag-as-read,
2777         elmo-map-folder-unflag-read,
2778         elmo-map-folder-flag-as-answered,
2779         elmo-map-folder-unflag-answered): Remove.
2780         (elmo-maildir-set-mark-messages): New internal function.
2781         (elmo-map-folder-set-flag): Define.
2782         (elmo-map-folder-unset-flag): Ditto.
2783
2784         * elmo.el (toplevel): Added autoload setting for
2785         `elmo-folder-list-global-flag-messages'.
2786         (elmo-folder-list-unreads,
2787         elmo-folder-list-importants,
2788         elmo-folder-list-answereds): Remove.
2789         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2790         Return a list whitch merged with messages have global flag.
2791         (elmo-folder-list-flagged-internal): New method.
2792         (elmo-folder-unflag-important,
2793         elmo-folder-flag-as-important,
2794         elmo-folder-unflag-read,
2795         elmo-folder-flag-as-read,
2796         elmo-folder-unflag-answered,
2797         elmo-folder-flag-as-answered): Remove.
2798         (elmo-folder-set-flag): New method.
2799         (elmo-folder-unset-flag): Ditto.
2800         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2801         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2802
2803         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2804         (elmo-folder-list-unreads-plugged,
2805         elmo-folder-list-importants-plugged,
2806         elmo-folder-list-answereds-plugged,
2807         elmo-folder-list-flagged-unplugged,
2808         elmo-folder-unflag-important-plugged,
2809         elmo-folder-flag-as-important-plugged,
2810         elmo-folder-unflag-read-plugged,
2811         elmo-folder-flag-as-read-plugged,
2812         elmo-folder-unflag-answered-plugged,
2813         elmo-folder-flag-as-answered-plugged): Remove.
2814         (elmo-folder-set-flag-plugged,
2815         elmo-folder-unset-flag-plugged): Define.
2816
2817         * elmo-flag.el (elmo-folder-initialize): Register to
2818         `elmo-global-flag-list' if flag is not global.
2819         (elmo-folder-append-messages): Set flag to source messages.
2820
2821         * elmo-filter.el (elmo-filter-folder-list-unreads,
2822         elmo-folder-list-unreads,
2823         elmo-filter-folder-list-importants,
2824         elmo-folder-list-importants,
2825         elmo-folder-flag-as-read,
2826         elmo-folder-unflag-read,
2827         elmo-folder-flag-as-important,
2828         elmo-folder-unflag-important,
2829         elmo-folder-flag-as-answered,
2830         elmo-folder-unflag-answered): Remove.
2831         (elmo-folder-set-flag): Define.
2832         (elmo-folder-unset-flag): Ditto.
2833
2834         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2835         elmo-folder-unflag-read-dop,
2836         elmo-folder-flag-as-important-dop,
2837         elmo-folder-unflag-important-dop,
2838         elmo-folder-flag-as-answered-dop,
2839         elmo-folder-unflag-answered-dop): Remove.
2840         (elmo-folder-set-flag-dop,
2841         elmo-folder-unset-flag-dop,
2842         elmo-folder-set-important-delayed,
2843         elmo-folder-unset-important-delayed,
2844         elmo-folder-set-read-delayed,
2845         elmo-folder-unset-read-delayed,
2846         elmo-folder-set-answered-delayed,
2847         elmo-folder-unset-answered-delayed): New function.
2848         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2849         (elmo-dop-queue-method-name-alist): Ditto.
2850
2851         * elmo-version.el (elmo-version): Up to 2.11.23.
2852
2853 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2854
2855         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2856
2857         * elsp-sa.el: New file.
2858
2859 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2860
2861         * modb-standard.el (modb-standard-message-entity): New function.
2862         (elmo-msgdb-message-entity): Use it.
2863
2864 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2865
2866         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2867         behavior when one-level is nil.
2868
2869         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2870
2871         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2872
2873 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2874
2875         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2876         get max number.
2877         (elmo-generic-folder-diff): Ditto.
2878
2879         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2880         (elmo-folder-update-number): Ditto.
2881
2882         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2883         (elmo-folder-next-message-number-dop): Ditto.
2884
2885 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2886
2887         * elmo-filter.el (elmo-folder-msgdb-create): Use
2888         `elmo-message-entity' and `elmo-message-flags' instead of
2889         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2890
2891 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2892
2893         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2894         `if-exists'.
2895
2896 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2897
2898         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2899
2900         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2901
2902         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2903
2904 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2905
2906         * elmo-version.el (elmo-version): Up to 2.11.22.
2907
2908 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2909
2910         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2911
2912 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2913
2914         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2915         if the message dose not exist.
2916
2917 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2918
2919         * elmo-version.el (elmo-version): Up to 2.11.21.
2920
2921 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2922
2923         * modb-standard.el (toplevel): Don't require mime.
2924
2925 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2926
2927         * elsp-bogofilter.el (toplevel): Don't require path-util.
2928         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2929         (elmo-spam-bogofilter-header): Abolish.
2930         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2931         (elmo-spam-bogofilter-args): New user option.
2932         (elsp-bogofilter-call-bogofilter): New internal function.
2933         (elmo-spam-buffer-spam-p): Use it.
2934         (elsp-bogofilter-register-buffer): Renamed from
2935         `elmo-spam-bogofilter-register-buffer';
2936         Use `elsp-bogofilter-call-bogofilter'.
2937         (elmo-spam-register-spam-buffer): Follow the change above.
2938         (elmo-spam-register-good-buffer): Ditto.
2939
2940 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2941
2942         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2943         message-id is nil do nothing.
2944
2945 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2946
2947         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2948         Revival.
2949         (elmo-imap4-session): Removed use-flag slot.
2950         (elmo-imap4-session-select-mailbox): Undo last change.
2951         (elmo-folder-use-flag-p): Use
2952         elmo-imap4-disuse-server-flag-mailbox-regexp.
2953
2954 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2955
2956         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2957         (elmo-imap4-session-select-mailbox): Set it up.
2958         (elmo-folder-use-flag-p): Return value of use-flag slot.
2959
2960 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2961
2962         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2963         message-id is nil.
2964         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2965
2966         * modb-entity.el (elmo-message-entity-handler): Likewise.
2967
2968 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2969
2970         * elmo.el (toplevel): Remove setting of autoloding for
2971         elmo-global-flag-initialize.
2972         (elmo-init): Don't call elmo-global-flag-initialize.
2973         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2974
2975         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2976         (elmo-global-mark-migrate): Don't call it.
2977         (elmo-global-mark-upgrade): Ditto.
2978
2979 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2980
2981         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2982         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2983
2984         * elmo-vars.el (elmo-init-hook): New user option.
2985
2986         * elmo.el (elmo-init): Run the elmo-init-hook.
2987
2988         * elmo-flag.el (elmo-global-mark-migrate): New function.
2989
2990 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2991
2992         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2993         Undo last change (move to elmo-msgdb-unset-flag).
2994         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2995         flag is unset.
2996
2997 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2998
2999         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
3000         read flag is set.
3001         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
3002         (elmo-msgdb-unset-flag): Ditto.
3003
3004 2003-11-05  Andreas Fuchs <asf@boinkor.net>
3005
3006         * elmo-split.el (elmo-split): Return split message count.
3007
3008 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3009
3010         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
3011         is nil.
3012
3013 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3014
3015         * elmo.el (elmo-folder-unflag-important): Call
3016         `elmo-global-flag-detach' with 4th argument delete-if-none that is
3017         a symbol `always'.
3018
3019         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
3020         before unset flag.
3021         (elmo-global-flag-detach): Delete the message from flag folder, if
3022         `delete-if-none' is a symbol `always'.
3023
3024 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3025
3026         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
3027         `elmo-spam-spamfilter-decode-buffer'.
3028         (elsp-spamfilter-register-buffer-internal): New internal function.
3029         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
3030         (elmo-spam-register-spam-buffer): Ditto.
3031         (elmo-spam-register-good-buffer): Ditto.
3032
3033         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
3034         change.
3035         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
3036         (elmo-spam-register-spam-buffer): Follow the API change.
3037         (elmo-spam-register-good-buffer): Ditto.
3038
3039         * elmo-split.el (toplevel): Require elmo-spam when copmile.
3040         (elmo-split-spam-p): Added argument plist; Call
3041         `elmo-spam-buffer-spam-p' with new argument register.
3042
3043         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
3044         `register'.
3045         (elmo-spam-message-spam-p): Ditto.
3046         (elmo-spam-register-spam-buffer): Added optional argument
3047         `restore'.
3048         (elmo-spam-register-good-buffer): Ditto.
3049         (elmo-spam-register-spam-messages): Ditto.
3050         (elmo-spam-register-good-messages): Ditto.
3051
3052 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3053
3054         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
3055         register into good corpus.
3056         (elmo-spam-register-good-buffer): Fixed to register into bad
3057         corpus.
3058
3059 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3060
3061         * elmo-version.el (elmo-version): Up to 2.11.20.
3062
3063         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
3064         change.
3065
3066         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
3067         flag without depending on \Recent flag.
3068
3069 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3070
3071         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
3072         (elmo-spam-modified-p): Defined.
3073         (elmo-spam-save-status): Set `modified' slot to nil.
3074         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
3075         (elmo-spam-register-good-buffer): Ditto.
3076
3077         * elmo-spam.el (elmo-spam-modified-p): New API.
3078
3079 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3080
3081         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
3082         duplicate definition.
3083
3084         * elmo-util.el (elmo-unfold-field-body): New function.
3085         (elmo-msgdb-get-message-id-from-buffer): Use it.
3086
3087         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3088         Fixed the last change; Use elmo-unfold-field-body.
3089
3090 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3091
3092         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3093         Unfold date value.
3094
3095 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3096
3097         * elmo-spam.el (elmo-spam-save-status): New API.
3098
3099         * elsp-spamfilter.el: New file.
3100
3101 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3102
3103         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
3104
3105 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3106
3107         * elmo-split.el (elmo-split-spam-p): New function.
3108
3109         * elmo-spam.el: New file.
3110
3111         * elsp-bogofilter.el: Ditto.
3112
3113 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
3114
3115         * elmo.el (elmo-folder-next-message-number): New API.
3116         (elmo-folder-next-message-number): Define.
3117         (elmo-message-field): Don't check folder length.
3118
3119         * elmo-net.el (elmo-folder-next-message-number): Define.
3120         (elmo-folder-next-message-number-unplugged): Define.
3121
3122         * elmo-map.el (elmo-folder-next-message-number): Define.
3123         (elmo-folder-delete-messages): Clear hash value.
3124
3125         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
3126
3127         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
3128         (elmo-folder-delete-messages-dop-delayed): Always return t.
3129
3130         * elmo-version.el (elmo-version): Up to 2.11.19.
3131
3132 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3133
3134         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
3135         change.
3136
3137         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
3138         identical cons cell into the mark-alist and the hash table.
3139
3140 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
3141
3142         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
3143         elmo-folder-list-messages with argument `visible-only' as t.
3144
3145         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
3146         (elmo-folder-msgdb-create): Check the target folder.
3147
3148 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
3149
3150         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
3151         `permanentflag' instead of `flags'.
3152         (elmo-folder-open): Ditto.
3153         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
3154         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
3155         (elmo-folder-use-flag-p): Always return t.
3156         (elmo-imap4-session-select-mailbox): Use value of `flags' if
3157         `permanentflags' does not exist.
3158         (elmo-folder-open): Ditto.
3159
3160 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
3161
3162         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
3163         is nil.
3164         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
3165
3166         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
3167         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
3168         response.
3169         (elmo-folder-open): Ditto.
3170         (elmo-imap4-set-flag): Send store flag command only when the `flags'
3171         slot of the session includes the flag.
3172         (elmo-imap4-session-flag-available-p): New function.
3173         (elmo-imap4-folder-list-flagged): Ditto.
3174         (elmo-folder-list-unreads-plugged): Use it.
3175         (elmo-folder-list-importants-plugged): Ditto.
3176         (elmo-folder-list-answereds-plugged): Ditto.
3177         (elmo-imap4-search-internal-primitive): Ditto.
3178         (elmo-imap4-folder-list-any-plugged,
3179         elmo-imap4-folder-list-digest-plugged): Abolish.
3180
3181         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
3182         if numbers is nil.
3183
3184 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3185
3186         * elmo-util.el (toplevel): Require emu for char-list-to-string.
3187
3188 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
3189
3190         * elmo-util.el (elmo-get-hash-val): Simplify.
3191         (elmo-set-hash-val): Rewrite.
3192
3193 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3194
3195         * elmo.el (elmo-folder-list-messages): Append killed messages into
3196         result if `visible-only' is nil and `in-msgdb' is non-nil.
3197
3198         * elmo-util.el (elmo-uniq-list): Added optional argument
3199         `delete-function'.
3200
3201         * modb.el (elmo-msgdb-flag-count): New API.
3202
3203         * modb-standard.el (modb-standard): Added slot flag-count.
3204         (modb-standard-countup-flags): New function.
3205         (modb-standard-load-flag): Call it.
3206         (elmo-msgdb-append): Ditto.
3207         (elmo-msgdb-clear): Clear slot flag-count.
3208         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
3209         (elmo-msgdb-unset-flag): Treat `all' flag and call
3210         modb-standard-countup-flags.
3211         (elmo-msgdb-flag-count): Define.
3212         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
3213         (elmo-msgdb-delete-messages): Ditto.
3214
3215         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
3216         (elmo-msgdb-flag-count): Define.
3217
3218         * elmo.el (elmo-folder-list-messages): Undo last change.
3219         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
3220         (elmo-folder-kill-messages): Unset all flags to numbers.
3221
3222         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
3223         elmo-folder-kill-messages.
3224
3225         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
3226         (elmo-nntp-folder-delete-messages): Abolish.
3227
3228         * elmo-version.el (elmo-version): Up to 2.11.18.
3229
3230 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3231
3232         * elmo.el (elmo-folder-kill-messages-before): Abolish.
3233         (elmo-folder-kill-messages-range): New function.
3234         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
3235         instead of elmo-folder-kill-messages-before.
3236
3237 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
3238
3239         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
3240         elmo-imap4-current-msgdb to decide entity handler.
3241
3242 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3243
3244         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
3245
3246         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
3247         inline function.
3248         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
3249         (elmo-msgdb-overview-entity-set-number,
3250         elmo-msgdb-overview-entity-get-references,
3251         elmo-msgdb-overview-entity-set-references,
3252         elmo-msgdb-overview-entity-get-from-no-decode,
3253         elmo-msgdb-overview-entity-get-from,
3254         elmo-msgdb-overview-entity-set-from,
3255         elmo-msgdb-overview-entity-get-subject,
3256         elmo-msgdb-overview-entity-get-subject-no-decode,
3257         elmo-msgdb-overview-entity-set-subject,
3258         elmo-msgdb-overview-entity-get-date,
3259         elmo-msgdb-overview-entity-set-date,
3260         elmo-msgdb-overview-entity-get-to,
3261         elmo-msgdb-overview-entity-get-cc,
3262         elmo-msgdb-overview-entity-get-size,
3263         elmo-msgdb-overview-entity-set-size,
3264         elmo-msgdb-overview-entity-get-extra,
3265         elmo-msgdb-overview-entity-set-extra,
3266         elmo-msgdb-overview-entity-get-extra-field,
3267         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
3268         (elmo-msgdb-make-index): Use
3269         `elmo-msgdb-overview-entity-get-number-internal'.
3270         (elmo-msgdb-clear-index): Ditto.
3271         (elmo-msgdb-append-entity): Ditto;
3272         Use `elmo-msgdb-overview-entity-get-id-internal'.
3273
3274         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
3275         elmo-msgdb-overview-entity-set-number,
3276         elmo-msgdb-overview-entity-get-references,
3277         elmo-msgdb-overview-entity-set-references,
3278         elmo-msgdb-overview-entity-get-from-no-decode,
3279         elmo-msgdb-overview-entity-get-from,
3280         elmo-msgdb-overview-entity-set-from,
3281         elmo-msgdb-overview-entity-get-subject,
3282         elmo-msgdb-overview-entity-get-subject-no-decode,
3283         elmo-msgdb-overview-entity-set-subject,
3284         elmo-msgdb-overview-entity-get-date,
3285         elmo-msgdb-overview-entity-set-date,
3286         elmo-msgdb-overview-entity-get-to,
3287         elmo-msgdb-overview-entity-get-cc,
3288         elmo-msgdb-overview-entity-get-size,
3289         elmo-msgdb-overview-entity-set-size,
3290         elmo-msgdb-overview-entity-get-extra,
3291         elmo-msgdb-overview-entity-set-extra,
3292         elmo-msgdb-overview-entity-get-extra-field,
3293         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
3294         and rewrote for backward compatibility.
3295
3296 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3297
3298         * elmo.el (elmo-message-entity-number,
3299         elmo-message-entity-set-number,
3300         elmo-message-entity-field,
3301         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
3302
3303         * elmo-msgdb.el (elmo-message-entity-number,
3304         elmo-message-entity-set-number,
3305         elmo-message-entity-field,
3306         elmo-message-entity-set-field): Moved from elmo.el.
3307
3308 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3309
3310         * elmo.el (toplevel): Changed definition orders.
3311
3312 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3313
3314         * modb.el (elmo-msgdb-search): New API .
3315         (elmo-msgdb-match-condition): Ditto.
3316
3317         * modb-standard.el (elmo-msgdb-search): Define.
3318
3319         * modb-legacy.el (elmo-msgdb-search): Ditto.
3320
3321         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
3322         from elmo-msgdb-match-condition-internal.
3323
3324         * elmo.el (elmo-folder-search-fast): Abolish.
3325         (elmo-folder-search): Use elmo-msgdb-search and
3326         elmo-with-progress-display.
3327
3328         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
3329         as msgdb API.
3330
3331         * elmo.el (elmo-folder): Remove slot message-modified and
3332         flag-modified.
3333         (elmo-folder-set-message-modified): Abolish.
3334         (elmo-generic-folder-commit): Follow the change above.
3335         (elmo-folder-synchronize): Ditto.
3336
3337         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
3338
3339         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3340
3341         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
3342
3343 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3344
3345         * modb-standard.el (modb-standard-make-message-entity,
3346         elmo-msgdb-make-message-entity,
3347         elmo-msgdb-create-message-entity-from-buffer,
3348         elmo-msgdb-message-entity-number,
3349         elmo-msgdb-message-entity-set-number,
3350         elmo-msgdb-message-entity-field,
3351         elmo-msgdb-message-entity-set-field,
3352         elmo-msgdb-copy-message-entity,
3353         elmo-msgdb-match-condition-internal): Remove.
3354
3355         * modb-entity.el: New file (again).
3356
3357         * modb.el (toplevel): Require modb-entity.
3358         (elmo-msgdb-message-entity-handler): New method.
3359
3360         * modb-standard.el (modb-standard-entity-id): Use
3361         elmo-message-entity-handler.
3362         (modb-standard-load-entity): Ditto.
3363         (elmo-msgdb-append-entity): Ditto.
3364         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3365
3366         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
3367         elmo-msgdb-decoded-cache-hashtb,
3368         (modb-legacy-make-message-entity,
3369         elmo-msgdb-make-message-entity,
3370         elmo-msgdb-create-message-entity-from-buffer,
3371         elmo-msgdb-message-entity-number,
3372         elmo-msgdb-message-entity-set-number,
3373         elmo-msgdb-message-entity-field,
3374         elmo-msgdb-message-entity-set-field,
3375         elmo-msgdb-copy-message-entity,
3376         elmo-msgdb-match-condition-internal,
3377         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
3378
3379         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
3380         (elmo-message-entity-set-number): Ditto.
3381         (elmo-message-entity-field): Ditto.
3382         (elmo-message-entity-set-field): Ditto.
3383
3384         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
3385
3386         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3387
3388         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3389
3390         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3391         (elmo-nntp-msgdb-create-message): Ditto.
3392
3393         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
3394         (elmo-folder-msgdb-create): Add unread flag.
3395
3396         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3397
3398         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
3399
3400         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
3401
3402         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3403
3404         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
3405         elmo-msgdb-messge-entity-handler.
3406         * elmo-version.el (elmo-version): Up to 2.11.17.
3407
3408 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3409
3410         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
3411         change.
3412
3413 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3414
3415         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3416
3417         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3418         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3419         (elmo-msgdb-flag-table): Ditto.
3420         (elmo-msgdb-sort-by-date): Ditto.
3421
3422         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3423
3424         * modb-standard.el (toplevel): Require mime.
3425         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3426         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3427         elmo-msgdb-message-entity-number.
3428         (elmo-msgdb-append-entity): Ditto.
3429         (elmo-msgdb-create-message-entity-from-file): Remove.
3430         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3431         corresponds to the entity.
3432         (elmo-msgdb-message-entity-number): Do nothing currently.
3433         (elmo-msgdb-message-entity-field): Ditto.
3434         (elmo-msgdb-message-entity-set-field): Ditto.
3435         (elmo-msgdb-copy-message-entity): Ditto.
3436         (elmo-msgdb-match-condition-internal): Ditto.
3437
3438         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3439         elmo-util.el.
3440         (elmo-msgdb-create-message-entity-from-file): Remove.
3441
3442         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3443         modb-legacy.el.
3444         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3445
3446         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3447
3448 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3449
3450         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3451         (elmo-msgdb-message-entity-field): Ditto.
3452         (elmo-msgdb-message-entity-number): Ditto.
3453
3454 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3455
3456         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3457         Fixed how to set extra field into entity.
3458         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3459         symbol.
3460
3461         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3462         Fixed how to set extra field into entity.
3463         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3464         symbol.
3465
3466 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3467
3468         * modb.el (elmo-message-entity-db): New function.
3469         (elmo-msgdb-make-message-entity): New API.
3470         (elmo-msgdb-message-entity-number): Ditto.
3471         (elmo-msgdb-message-entity-set-number): Ditto.
3472         (elmo-msgdb-message-entity-field): Ditto.
3473         (elmo-msgdb-message-entity-set-field): Ditto.
3474         (elmo-msgdb-copy-message-entity): Ditto.
3475         (elmo-msgdb-create-message-entity-from-file): Ditto.
3476         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3477         (elmo-msgdb-match-condition-internal): Ditto.
3478
3479         * modb-standard.el (modb-legacy): Require modb-legacy.
3480         (modb-standard-make-message-entity): New inline function.
3481         (elmo-msgdb-make-message-entity): Define.
3482         (elmo-msgdb-create-message-entity-from-file): Ditto.
3483         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3484         (elmo-msgdb-message-entity-field): Ditto.
3485         (elmo-msgdb-message-entity-set-field): Ditto.
3486         (elmo-msgdb-copy-message-entity): Ditto.
3487         (elmo-msgdb-match-condition-internal): Ditto.
3488
3489         * modb-legacy.el: Don't require modb-entity.
3490         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3491         (elmo-msgdb-match-condition-primitive): Ditto.
3492         (elmo-msgdb-get-decoded-cache): Ditto.
3493         (elmo-msgdb-overview-entity-get-id): Ditto.
3494         (elmo-msgdb-overview-entity-get-number): Ditto.
3495         (elmo-msgdb-overview-entity-set-number): Ditto.
3496         (elmo-msgdb-overview-entity-get-references): Ditto.
3497         (elmo-msgdb-overview-entity-set-references): Ditto.
3498         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3499         (elmo-msgdb-overview-entity-get-from): Ditto.
3500         (elmo-msgdb-overview-entity-set-from): Ditto.
3501         (elmo-msgdb-overview-entity-get-subject): Ditto.
3502         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3503         (elmo-msgdb-overview-entity-set-subject): Ditto.
3504         (elmo-msgdb-overview-entity-get-date): Ditto.
3505         (elmo-msgdb-overview-entity-set-date): Ditto.
3506         (elmo-msgdb-overview-entity-get-to): Ditto.
3507         (elmo-msgdb-overview-entity-get-cc): Ditto.
3508         (elmo-msgdb-overview-entity-get-size): Ditto.
3509         (elmo-msgdb-overview-entity-set-size): Ditto.
3510         (elmo-msgdb-overview-entity-get-extra): Ditto.
3511         (elmo-msgdb-overview-entity-set-extra): Ditto.
3512         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3513         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3514         (elmo-msgdb-number-load): Ditto.
3515         (elmo-msgdb-overview-load): Ditto.
3516         (elmo-msgdb-mark-load): Ditto.
3517         (elmo-msgdb-number-save): Ditto.
3518         (elmo-msgdb-mark-save): Ditto.
3519         (elmo-msgdb-overview-save): Ditto.
3520         (modb-legacy-make-message-entity): New inline function.
3521         (elmo-msgdb-insert-file-header): Ditto.
3522         (elmo-msgdb-make-message-entity): Define.
3523         (elmo-msgdb-create-message-entity-from-file): Ditto.
3524         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3525         (elmo-msgdb-message-entity-number): Ditto.
3526         (elmo-msgdb-message-entity-set-number): Ditto.
3527         (elmo-msgdb-message-entity-field): Ditto.
3528         (elmo-msgdb-message-entity-set-field): Ditto.
3529         (elmo-msgdb-copy-message-entity): Ditto.
3530         (elmo-msgdb-match-condition-internal): Ditto.
3531
3532         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3533         (elmo-message-copy-entity): Rewrite.
3534         (elmo-message-entity-number): Ditto.
3535         (elmo-message-entity-set-number): Ditto.
3536         (elmo-message-entity-field): Use elmo-message-entity-db.
3537         (elmo-message-entity-set-field): Ditto.
3538         (elmo-message-field): Rewrite.
3539
3540         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3541         elmo-msgdb.el
3542         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3543
3544         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3545         elmo-message-entity-field.
3546         (elmo-shimbun-folder-shimbun-header): Ditto.
3547         (elmo-shimbun-entity-to-header): Ditto.
3548         (elmo-folder-msgdb-create): Ditto.
3549         (elmo-shimbun-msgdb-create-entity): Ditto;
3550         Use elmo-msgdb-create-message-entity-from-buffer.
3551         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3552         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3553
3554         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3555         elmo-msgdb-create-message-entity-from-file and 
3556         elmo-message-entity-field.
3557
3558         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3559         elmo-message-entity-number.
3560         (elmo-pop3-msgdb-create-message): Use
3561         elmo-msgdb-create-message-entity-from-buffer,
3562         elmo-message-entity-set-field, elmo-message-entity-number and
3563         elmo-message-entity-set-number.
3564
3565         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3566         the API change in elmo-msgdb-make-message-entity.
3567         (elmo-nntp-msgdb-create-message): Use
3568         elmo-msgdb-create-message-entity-from-buffer.
3569
3570         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3571         elmo-message-entity-field and
3572         elmo-msgdb-create-message-entity-from-file.
3573
3574         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3575         (elmo-msgdb-get-field): Abolish.
3576         (elmo-msgdb-get-number): Rewrite.
3577         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3578         (elmo-msgdb-flag-table): Ditto.
3579         (elmo-msgdb-get-last-message-id,
3580         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3581         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3582         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3583         (elmo-msgdb-create-overview-from-buffer,
3584         elmo-msgdb-overview-get-parent-entity): Abolish.
3585
3586         * elmo-mime.el (elmo-mime-display-as-is): Use
3587         elmo-message-entity-field.
3588
3589         * elmo-map.el (elmo-folder-pack-numbers): Use
3590         elmo-message-entity-set-number.
3591
3592         * elmo-maildir.el (elmo-folder-msgdb-create): 
3593         elmo-msgdb-create-message-entity-from-file instead of
3594         elmo-msgdb-create-overview-entity-from-file.
3595
3596         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3597         msgdb.
3598         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3599         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3600
3601         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3602         elmo-messge-entity-field and elmo-message-entity-number.
3603         (elmo-imap4-fetch-callback-1): Call
3604         elmo-msgdb-create-message-entity-from-buffer instead of
3605         elmo-msgdb-create-overview-from-buffer. 
3606         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3607         (elmo-find-fetch-strategy): Likewise.
3608
3609         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3610         elmo-localdir-msgdb-create-entity with argument msgdb.
3611
3612         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3613         and elmo-message-entity-set-number.
3614
3615         * elmo-cache.el (elmo-folder-msgdb-create): Use
3616         elmo-message-entity-field.
3617         (elmo-folder-msgdb-create): Call
3618         elmo-msgdb-create-message-entity-from-file instead of
3619         elmo-msgdb-create-overview-entity-from-file.
3620
3621         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3622         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3623         instead of elmo-msgdb-create-overview-from-buffer.
3624         (elmo-archive-msgdb-create-entity): Ditto.
3625         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3626         elmo-message-entity-field.
3627         (elmo-archive-parse-mmdf): Ditto.
3628
3629         * modb-entity.el: Removed.
3630
3631         * elmo-version.el (elmo-version): Up to 2.11.16.
3632
3633 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3634
3635         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3636         `is-local'.
3637         (elmo-folder-flag-as-answered): Ditto.
3638
3639 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3640
3641         * modb-standard.el: New file.
3642
3643         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3644         elmo-msgdb-convert-type is `sync'.
3645
3646         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3647         (elmo-msgdb-convert-type): New user option.
3648
3649         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3650         (elmo-load-msgdb): Auto detect saved type.
3651
3652         * elmo-version.el (elmo-version): Up to 2.11.15.
3653
3654 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3655
3656         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3657
3658         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3659         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3660         with argument `delete-if-none' when dst-folder is 'null.
3661
3662         * elmo-flag.el (elmo-folder-append-messages): Defined.
3663         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3664
3665 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3666
3667         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3668
3669 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3670
3671         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3672         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3673         (elmo-folder-commit): Ditto.
3674
3675 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3676
3677         * elmo-flag.el: New file.
3678
3679         * elmo-mark.el: Removed.
3680
3681         * modb-legacy.el (modb-legacy-new-mark,
3682         modb-legacy-unread-uncached-mark,
3683         modb-legacy-unread-cached-mark,
3684         modb-legacy-read-uncached-mark,
3685         modb-legacy-answered-cached-mark,
3686         modb-legacy-answered-uncached-mark,
3687         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3688         All other related portions are changed.
3689
3690         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3691         (elmo-folder-list-messages-with-global-mark): Abolish.
3692         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3693         (elmo-folder-flag-as-important): Ditto.
3694         (elmo-folder-unflag-read): Ditto.
3695         (elmo-folder-flag-as-read): Ditto.
3696         (elmo-folder-unflag-answered): Ditto.
3697         (elmo-folder-flag-as-answered): Ditto.
3698         (elmo-message-encache): Return the cache path.
3699         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3700         (elmo-message-set-flag): Transitional implementation.
3701         (elmo-message-unset-flag): Ditto.
3702         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3703         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3704         (elmo-init): Call elmo-global-flag-initialize.
3705         (toplevel): Added autoload settings for elmo-flag.
3706
3707         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3708
3709         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3710         (elmo-file-cache-delete): Don't treat global-mark.
3711
3712         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3713
3714         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3715
3716         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3717         `elmo-global-flags-set'.
3718
3719         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3720         `flag'.
3721         (elmo-folder-unflag-read): Ditto.
3722         (elmo-folder-unflag-important): Ditto.
3723         (elmo-folder-flag-as-important): Ditto.
3724         (elmo-folder-unflag-answered): Ditto.
3725         (elmo-folder-flag-as-answered): Ditto.
3726
3727         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3728         `elmo-global-flags-set'.
3729         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3730
3731         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3732
3733         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3734         `flag'.
3735         (elmo-folder-flag-as-important): Ditto.
3736         (elmo-folder-unflag-important): Ditto.
3737         (elmo-folder-flag-as-important): Ditto.
3738         (elmo-folder-unflag-read): Ditto.
3739         (elmo-folder-flag-as-read): Ditto.
3740         (elmo-folder-unflag-answered): Ditto.
3741         (elmo-folder-flag-as-answered): Ditto.
3742
3743         * elmo-multi.el (elmo-folder-list-importants): Don't call
3744         elmo-folder-list-messages-with-global-mark.
3745         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3746         (elmo-folder-unflag-important): Ditto.
3747         (elmo-folder-flag-as-read): Ditto.
3748         (elmo-folder-unflag-read): Ditto.
3749         (elmo-folder-flag-as-answered): Ditto.
3750         (elmo-folder-unflag-answered): Ditto.
3751
3752         * elmo-msgdb.el (elmo-msgdb-new-mark,
3753         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3754         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3755         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3756         (Moved to modb-legacy.el).
3757         (elmo-flag-table-get): Treat important flag too.
3758
3759         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3760         `mark' to `flag'.
3761         (elmo-map-folder-flag-as-important): Ditto.
3762         (elmo-map-folder-unflag-read): Ditto.
3763         (elmo-map-folder-flag-as-read): Ditto.
3764         (elmo-map-folder-unflag-answered): Ditto.
3765         (elmo-map-folder-flag-as-answered): Ditto.
3766         (elmo-folder-unflag-important): Ditto.
3767         (elmo-folder-flag-as-important): Ditto.
3768         (elmo-folder-unflag-read): Ditto.
3769         (elmo-folder-flag-as-read): Ditto.
3770         (elmo-folder-unflag-answered): Ditto.
3771         (elmo-folder-flag-as-answered): Ditto.
3772
3773         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3774         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3775         `flag'.
3776         (elmo-map-folder-unflag-important): Ditto.
3777         (elmo-map-folder-flag-as-read): Ditto.
3778         (elmo-map-folder-unflag-read): Ditto.
3779         (elmo-map-folder-flag-as-answered): Ditto.
3780         (elmo-map-folder-unflag-answered): Ditto.
3781
3782         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3783         `elmo-global-flags-set'.
3784         (elmo-global-flags-set): Added autoload setting.
3785
3786         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3787         `flag'.
3788
3789         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3790         `elmo-msgdb-global-mark-set'.
3791         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3792         Call `elmo-global-flags-set'.
3793         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3794         `flag'.
3795         (elmo-folder-flag-as-important-plugged): Ditto.
3796         (elmo-folder-unflag-read-plugged): Ditto.
3797         (elmo-folder-flag-as-read-plugged): Ditto.
3798         (elmo-folder-unflag-answered-plugged): Ditto.
3799         (elmo-folder-flag-as-answered-plugged): Ditto.
3800         (elmo-global-flags-set): Added autoload setting.
3801
3802         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3803         `flag'.
3804         (elmo-folder-unflag-read): Ditto.
3805         (elmo-folder-flag-as-important): Ditto.
3806         (elmo-folder-unflag-important): Ditto.
3807         (elmo-folder-flag-as-answered): Ditto.
3808         (elmo-folder-unflag-answered): Ditto.
3809
3810         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3811         change of `mark'->`flag'.
3812         (elmo-dop-queue-method-name-alist): Ditto.
3813         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3814         (elmo-folder-unflag-read-dop): Ditto.
3815         (elmo-folder-flag-as-important-dop): Ditto.
3816         (elmo-folder-unflag-important-dop): Ditto.
3817         (elmo-folder-flag-as-answered-dop): Ditto.
3818         (elmo-folder-unflag-answered-dop): Ditto.
3819
3820         * elmo-cache.el (elmo-folder-msgdb-create): Call
3821         `elmo-global-flags-set'.
3822
3823         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3824         Call `elmo-global-flags-set'.
3825         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3826         elmo-archive-parse-mmdf with argument `folder'.
3827         (elmo-archive-parse-mmdf): Added argument `folder';
3828         Call `elmo-global-flags-set'.
3829
3830         * elmo-version.el (elmo-version): Up to 2.11.14.
3831
3832 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3833
3834         * modb.el (elmo-msgdb-length): Define.
3835
3836         * elmo.el (elmo-make-folder): Fixed.
3837         (elmo-generic-folder-append-messages): Follow the API change.
3838
3839         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3840         API change.
3841
3842 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3843
3844         * modb.el: New file.
3845
3846         * modb-entity.el: Ditto.
3847
3848         * modb-legacy.el: Ditto.
3849
3850         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3851         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3852         of `elmo-msgdb-overview-get-entity'.
3853         (elmo-msgdb-get-field): Ditto.
3854         (elmo-msgdb-merge): Moved to `elmo.el'.
3855         (elmo-msgdb-length): Removed; redefine as modb method.
3856         (elmo-msgdb-change-mark): Abolish.
3857         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3858         (elmo-msgdb-match-condition): Don't use mark.
3859         (elmo-msgdb-overview-get-entity): Abolish.
3860         Split modb part into `modb*.el'.
3861
3862         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3863
3864         * elmo-shimbun.el (shimbun-mua-search-id): Use
3865         `elmo-msgdb-message-entity' instead of
3866         `elmo-msgdb-overview-get-entity'.
3867         (elmo-shimbun-folder-shimbun-header): Ditto.
3868         (elmo-shimbun-get-headers): Ditto.
3869         (elmo-shimbun-update-overview): Ditto.
3870
3871         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3872
3873         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3874
3875         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3876         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3877
3878         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3879         `elmo-msgdb-mark-to-flags'.
3880
3881         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3882         `elmo-msgdb-set-path'.
3883
3884         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3885  
3886         * elmo-version.el (elmo-version): Up to 2.11.13.
3887
3888         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3889
3890         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3891         of mark.
3892
3893 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3894
3895         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3896         mismatch.
3897
3898 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3899
3900         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3901         instead of `elmo-msgdb-get-cached'.
3902         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3903
3904         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3905         (elmo-msgdb-set-cached): Ditto.
3906         (elmo-msgdb-set-flag): Rewrite.
3907         (elmo-msgdb-unset-flag): Ditto.
3908
3909         * elmo-msgdb.el: Rewrite with luna.
3910
3911         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3912         (elmo-folder-msgdb): Follow the change above.
3913         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3914         (elmo-folder-unmark-important): Follow the API change.
3915         (elmo-folder-mark-as-important): Ditto.
3916         (elmo-folder-unmark-read): Ditto.
3917         (elmo-folder-mark-as-read): Ditto.
3918         (elmo-folder-unmark-answered): Ditto.
3919         (elmo-folder-mark-as-answered): Ditto.
3920         (elmo-folder-clear): Likewise.
3921
3922         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3923         instead of `elmo-msgdb-load' (renamed).
3924
3925         * elmo-version.el (elmo-version): Up to 2.11.12.
3926
3927 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3928
3929         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3930         change.
3931         (elmo-message-mark): Abolish.
3932         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3933         instead of `elmo-msgdb-change-mark'.
3934
3935         * elmo-pipe.el (elmo-message-mark): Abolish.
3936
3937         * elmo-multi.el (elmo-message-mark): Ditto.
3938
3939         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3940         (elmo-msgdb-unread-uncached-mark): Ditto.
3941         (elmo-msgdb-unread-cached-mark): Ditto.
3942         (elmo-msgdb-read-uncached-mark): Ditto.
3943         (elmo-msgdb-answered-cached-mark): Ditto.
3944         (elmo-msgdb-answered-uncached-mark): Ditto.
3945         (elmo-msgdb-important-mark): Ditto.
3946         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3947         `use-cache'.
3948         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3949         `flags'.
3950         (elmo-flag-table-load): Changed flag to list of flag.
3951         (elmo-flag-table-set): If flags is nil, set read flag.
3952         (elmo-flag-table-get): Return derived flags from global mark,
3953         cache status and saved flags.
3954         (elmo-msgdb-flag-table): Follow the change above.
3955         (elmo-msgdb-out-of-date-messages): New function.
3956
3957         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3958
3959         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3960
3961         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3962
3963         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3964         (elmo-nntp-msgdb-create-message): Ditto.
3965
3966         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3967
3968         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3969         independent.
3970         (elmo-folder-msgdb-create): Follow the API change.
3971
3972         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3973         (elmo-folder-append-messages): Ditto.
3974
3975         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3976         (elmo-folder-append-buffer): Ditto.
3977
3978         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3979
3980         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3981
3982         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3983         (elmo-archive-parse-mmdf): Ditto.
3984
3985         * elmo-version.el (elmo-version): Up to 2.11.11.
3986
3987 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3988
3989         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3990         `elmo-msgdb-mark'.
3991
3992         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3993
3994         * elmo-pipe.el (elmo-message-flags): Defined.
3995
3996         * elmo-multi.el (elmo-message-flags): Ditto.
3997
3998 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3999
4000         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
4001         `elmo-msgdb-delete-msgs'.
4002
4003         * elmo.el (elmo-folder-count-flags): Don't use
4004         `elmo-msgdb-get-mark-alist'.
4005         (elmo-folder-detach-messages): Follow the API change.
4006
4007         * elmo.el (elmo-folder-list-messages): Append killed messages into
4008         result if `visible-only' is nil.
4009
4010         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
4011         canceled messages.
4012         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
4013         (elmo-folder-update-number): Likewise.
4014
4015         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
4016         (elmo-pop3-sort-msgdb-by-original-number): Use
4017         `elmo-msgdb-sort-entities'.
4018
4019         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
4020         (elmo-msgdb-sort-by-date): Use it.
4021         (elmo-msgdb-overview-sort-by-date): Abolish.
4022
4023         * elmo-dop.el (elmo-folder-status-dop): Fixed.
4024
4025         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
4026         (elmo-msgdb-flags): New function.
4027         (elmo-msgdb-merge): Use elmo-msgdb-append.
4028
4029         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
4030         change.
4031
4032         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
4033
4034         * elmo-dop.el (elmo-folder-status-dop): Use
4035         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
4036
4037 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4038
4039         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
4040
4041         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
4042
4043         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
4044
4045         * elmo-util.el (elmo-with-progress-display): New macro.
4046
4047         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
4048
4049 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4050
4051         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
4052         `elmo-folder-list-message-entities' instead of
4053         `elmo-msgdb-get-overview'.
4054         (elmo-map-folder-list-message-locations): Ditto.
4055
4056         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
4057         methods instead of treat directly).
4058         (elmo-msgdb-clear): Ditto.
4059         (elmo-msgdb-delete-msgs): Ditto.
4060         (elmo-msgdb-sort-by-date): Ditto.
4061
4062         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
4063         local variables.
4064         (elmo-nntp-folder-msgdb-create): Follow the API change.
4065
4066         * elmo-version.el (elmo-version): Up to 2.11.10.
4067
4068 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4069
4070         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
4071         (elmo-msgdb-flags-to-mark): Ditto.
4072         (elmo-msgdb-append-entity): Ditto.
4073
4074         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
4075         Use `elmo-msgdb-append-entity' instead of construct msgdb.
4076         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4077         (elmo-archive-parse-mmdf): Ditto.
4078
4079         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4080
4081         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
4082
4083         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
4084
4085         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4086
4087         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
4088
4089         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4090
4091         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4092
4093         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4094
4095         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
4096         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
4097         to empty msgdb.
4098
4099         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
4100         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
4101         instead of directly construction.
4102         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
4103         instead of construct msgdb.
4104
4105         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
4106         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
4107         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
4108         instead of construct msgdb.
4109
4110 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4111
4112         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
4113         when field is from or subject.
4114
4115 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
4116
4117         * elmo-multi.el (elmo-message-entity-parent): Define.
4118         (elmo-folder-search): Rewrite.
4119
4120 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4121
4122         * elmo-multi.el (elmo-message-cached-p): Define.
4123
4124         * elmo.el (elmo-message-cached-p): New method.
4125         (elmo-message-accessible-p): Use it instead of msgdb API directly.
4126         (elmo-message-flags): New method.
4127         (elmo-message-flagged-p): New function.
4128
4129         * elmo-version.el (elmo-version): Up to 2.11.9.
4130
4131 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4132
4133         * elmo-version.el (elmo-version): Up to 2.11.8.
4134
4135         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
4136
4137         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
4138
4139 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
4140
4141         * elmo.el (elmo-folder-detach-messages): Undo last change.
4142
4143 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
4144
4145         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
4146
4147         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
4148         only when src folder type is pop3.
4149
4150 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
4151
4152         * elmo-msgdb.el (elmo-msgdb-make-index): Use
4153         elmo-msgdb-overview-entity-get-number instead of
4154         elmo-message-entity-number.
4155
4156 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4157
4158         * elmo-version.el (elmo-version): Up to 2.11.7.
4159
4160 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
4161
4162         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
4163         function.
4164
4165         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
4166         (elmo-msgdb-merge): New function.
4167         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
4168         (elmo-msgdb-make-index): Rewrite.
4169
4170         * elmo-version.el (elmo-version): Up to 2.11.6.
4171
4172         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
4173         use it as a the path for loading message entities.
4174
4175         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
4176
4177 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
4178
4179         * elmo-filter.el (elmo-folder-set-message-modified): Set 
4180         message-modified slot of itself if it does not require target msgdb.
4181
4182         * elmo-mime.el (elmo-mime-message-display): Display message entirely
4183         if folder length is zero.
4184         (elmo-mime-display-as-is): Ditto.
4185
4186         * elmo-filter.el (elmo-folder-set-message-modified): Define.
4187
4188         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
4189
4190 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4191
4192         * elmo.el (elmo-folder-set-message-modified): New method.
4193         (elmo-generic-folder-commit): Use it.
4194         (elmo-folder-synchronize): Ditto.
4195
4196         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
4197         (elmo-folder-commit): Remove duplicate definition.
4198
4199 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4200
4201         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
4202
4203 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4204
4205         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
4206         (elmo-strict-folder-diff): Ditto.
4207         (elmo-folder-set-info-max-by-numdb): Simplify.
4208
4209         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
4210         elmo-msgdb-list-messages.
4211
4212         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
4213         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
4214
4215 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4216
4217         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
4218         visible-only is non-nil.
4219         (elmo-folder-confirm-appends): Changed message.
4220         (elmo-folder-synchronize): Added argument disable-killed.
4221
4222         * elmo-multi.el (elmo-folder-synchronize): Added argument
4223         disable-killed.
4224
4225         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
4226
4227         * elmo-version.el (elmo-version): Up to 2.11.5.
4228
4229         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
4230         elmo-list-filter.
4231
4232         * elmo-util.el (elmo-list-filter): Simplify.
4233
4234         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
4235         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
4236         (elmo-generic-folder-diff): Abolish argument.
4237         (elmo-msgdb-load): Don't use number-alist.
4238
4239         * elmo-filter.el (elmo-folder-diff): Abolish argument.
4240
4241         * elmo-pipe.el (elmo-folder-diff): Ditto.
4242
4243         * elmo-nmz.el (elmo-folder-diff): Ditto.
4244
4245         * elmo-net.el (elmo-folder-diff): Ditto.
4246
4247         * elmo-maildir.el (elmo-folder-diff): Ditto.
4248
4249         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
4250
4251         * elmo-multi.el (elmo-folder-diff): Ditto
4252         (elmo-multi-folder-diff): Rewrite.
4253
4254 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4255
4256         * elmo-pipe.el (elmo-folder-msgdb): Define.
4257
4258 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
4259
4260         * elmo.el (elmo-message-set-cached): Define as a method.
4261
4262         * elmo-pipe.el (elmo-message-set-cached): Define.
4263         (elmo-find-fetch-strategy): Ditto.
4264
4265         * elmo-multi.el (elmo-message-set-cached): Define.
4266         (elmo-find-fetch-strategy): Rewrite.
4267
4268         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
4269
4270         * elmo-pipe.el (elmo-message-folder): Fixed definition.
4271
4272 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4273
4274         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
4275         instead of number-alist.
4276
4277         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
4278         mark nor message-id when msgdb of source folder is not loaded.
4279
4280         * elmo.el (elmo-generic-folder-append-messages): Ditto.
4281
4282         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4283
4284 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
4285
4286         * elmo.el (elmo-folder-length): Don't require msgdb.
4287
4288 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
4289
4290         * elmo.el (elmo-message-mark): Cause an error when empty folder.
4291         (elmo-message-field): Ditto.
4292
4293         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
4294         (elmo-map-folder-list-message-locations): Setup `answered-locations'
4295         slot.
4296         (elmo-map-folder-list-answereds): Define.
4297         (elmo-maildir-list-location): Treat 'R' info.
4298         (elmo-folder-msgdb-create): Treat flag-table.
4299         (elmo-folder-append-messages): Save flag-table.
4300
4301 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
4302
4303         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
4304         Use SELECT when elmo-imap4-use-select-to-update-status is t.
4305
4306 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4307
4308         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
4309
4310         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
4311         'read when mark is null.
4312
4313 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
4314
4315         * elmo-version.el (elmo-version): Up to 2.11.4.
4316
4317 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4318
4319         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
4320         (elmo-folder-mark-as-answered): Ditto.
4321
4322 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
4323
4324         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
4325         (elmo-pop3-get-session): Make msgdb directory after session.
4326         (elmo-folder-exists-p): Check exactly at the first time even when the
4327         elmo-pop3-exists-exactly is nil.
4328
4329         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
4330         (elmo-folder-list-messages): Define instead of
4331         elmo-folder-list-messages-internal.
4332         (elmo-folder-check): Check destination folder.
4333         (elmo-folder-synchronize): Drain the pipe.
4334
4335         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
4336         when msgdb is not loaded.
4337
4338         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
4339
4340         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
4341         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
4342         messages.
4343
4344         * elmo.el (elmo-folder-kill-messages-before): New function.
4345         (elmo-folder-kill-messages): Ditto.
4346         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
4347
4348         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
4349         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
4350         killed not by synchronize (e.g. scoring).
4351
4352 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4353
4354         * elmo.el (elmo-folder-search-fast): Return t if condition is not
4355         treated.
4356         (elmo-folder-search): Follow the change above.
4357
4358         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
4359         into the candidates of search field.
4360
4361 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
4362
4363         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
4364         (elmo-msgdb-unset-flag): Ditto.
4365
4366         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
4367
4368 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
4369
4370         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
4371         (elmo-folder-commit): Define.
4372         (elmo-folder-synchronize): Ditto.
4373         (elmo-folder-list-flagged): Ditto.
4374         (elmo-folder-commit): Ditto.
4375         (elmo-folder-length): Ditto.
4376         (elmo-folder-count-flags): Ditto.
4377         (elmo-message-mark): Ditto.
4378         (elmo-message-field): Ditto.
4379         (elmo-message-entity): Ditto.
4380         (elmo-message-folder): Ditto.
4381
4382 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
4383
4384         * elmo.el (elmo-message-field): Define as a method.
4385
4386         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
4387         (elmo-message-field): Define.
4388
4389         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
4390         (elmo-folder-list-importants): Ditto.
4391         (elmo-folder-list-answereds): Ditto.
4392
4393         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
4394         qualifier.
4395         (elmo-folder-mark-as-read): Ditto.
4396         (elmo-folder-unmark-read): Ditto.
4397         (elmo-folder-mark-as-answered): Ditto.
4398         (elmo-folder-unmark-answered): Ditto.
4399         (elmo-folder-list-flagged): Define.
4400         (elmo-folder-commit): Ditto.
4401         (elmo-folder-length): Ditto.
4402         (elmo-folder-count-flags): Ditto.
4403
4404 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4405
4406         * elmo.el (elmo-folder-detach-messages): New method.
4407         (elmo-folder-move-messages): Use it.
4408         (elmo-folder-synchronize): Ditto.
4409
4410         * elmo-multi.el (elmo-folder-detach-messages): Define.
4411
4412         * elmo.el (elmo-message-copy-entity): New function.
4413         (elmo-message-entity-set-number): Ditto.
4414         (elmo-message-mark): Define as method.
4415
4416         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4417         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4418         (elmo-message-entity): Fixed last change.
4419         (elmo-message-mark): Define.
4420         (elmo-folder-msgdb-create): Abolish.
4421         (elmo-multi-folder-append-msgdb): Ditto.
4422         (elmo-multi-folder-diff): Fixed.
4423         (elmo-multi-split-number-alist): Removed.
4424         (elmo-multi-split-mark-alist): Removed.
4425         (elmo-folder-list-messages): Define.
4426         (elmo-folder-list-messages-internal): Removed.
4427
4428         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4429         local file messages.
4430         (elmo-folder-msgdb-create): Fixed read mark.
4431
4432 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4433
4434         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4435         if mark is nil.
4436
4437 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4438
4439         * elmo.el (elmo-folder-list-message-entities): Define as inline
4440         function.
4441         (elmo-folder-messages): Abolish.
4442
4443         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4444         folder.
4445         (elmo-folder-synchronize): Define.
4446         (elmo-message-entity): Define.
4447
4448 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4449
4450         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4451         elmo-imap4-session-select-mailbox.
4452
4453         * elmo.el (elmo-folder-move-messages): Don't display any message.
4454
4455         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4456         parsing.
4457         (elmo-imap4-session-check): Don't wait CHECK response.
4458         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4459
4460 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4461
4462         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4463
4464 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4465
4466         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4467         API.
4468         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4469
4470
4471         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4472         (elmo-folder-list-message-entities): Added argument in-msgdb and
4473         numbers.
4474         (elmo-folder-synchronize): Define as a method.
4475
4476         * elmo-nntp.el (elmo-folder-initialize): Don't use
4477         elmo-nntp-default-user if zero-length username is specified
4478         explicitly.
4479
4480 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4481
4482         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4483         server name in case with username.
4484         (XXX: this is ad-hoc fix against username includes "@", it
4485         should be solved fundamentally)
4486
4487 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4488
4489         * elmo-nntp.el (elmo-nntp-debug): New function.
4490         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4491         (elmo-network-authenticate-session): Hide auth-info from the log.
4492
4493         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4494         user name if it is equal to elmo-nntp-default-user.
4495
4496 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4497
4498         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4499         instead of shimbun-server-internal;
4500         Use shimbun-current-group instead of shimbun-current-group-internal.
4501         (elmo-folder-plugged-p): Use shimbun-server instead of
4502         shimbun-server-internal.
4503         (elmo-folder-set-plugged): Ditto.
4504         (elmo-net-port-info): Ditto.
4505         (elmo-folder-check): Ditto.
4506         (elmo-folder-expand-msgdb-path): Ditto.
4507         (elmo-folder-list-subfolders): Ditto.
4508
4509 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4510
4511         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4512         Convert field-name to lower case.
4513         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4514
4515 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4516
4517         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4518         `message' and `error' take format string.
4519
4520 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4521
4522         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4523
4524 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4525
4526         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4527         recursive call (can't byte compile on emacs 20.7).
4528
4529 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4530
4531         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4532         (elmo-folder-list-message-entities): New API.
4533         (elmo-message-entity): Ditto.
4534         (elmo-message-entity-parent): Ditto.
4535         (elmo-folder-do-each-message-entity): Ditto.
4536         (elmo-message-entity-number): Ditto.
4537         (elmo-message-entity-field): Ditto.
4538         (elmo-message-entity-set-field): Ditto.
4539         (elmo-folder-count-flags): Ditto.
4540         (elmo-folder-length): Ditto.
4541
4542         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4543         not.
4544
4545         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4546         (elmo-msgdb-count-marks): Abolish.
4547         (elmo-msgdb-make-entity): Ditto.
4548         (elmo-msgdb-do-each-entity): Ditto.
4549         (elmo-msgdb-message-entity): New inline function.
4550         (elmo-msgdb-message-entity-field): Ditto.
4551         (elmo-msgdb-message-entity-set-field): Ditto.
4552         (elmo-msgdb-make-message-entity): New function.
4553
4554 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4555
4556         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4557         to flag. (All other related portions are changed.)
4558         (elmo-folder-msgdb-create): Likewise.
4559         (elmo-generic-folder-append-messages): Use flag-table instead of
4560         seen-list.
4561         (elmo-folder-move-messages): Removed redundant process.
4562         (elmo-folder-synchronize): Likewise.
4563
4564         * elmo-msgdb.el (elmo-flag-table-get): New function.
4565         (elmo-flag-table-save): Fixed.
4566         (elmo-msgdb-length): New inline function.
4567         (elmo-msgdb-flag-table): New function.
4568         (elmo-msgdb-mark): Add optional argument new.
4569         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4570         (elmo-msgdb-seen-list): Ditto.
4571         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4572
4573
4574 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4575
4576         * elmo.el (elmo-message-set-mark): Abolish.
4577         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4578         (All related portions are changed.)
4579
4580         * elmo-msgdb.el (toplevel): Added comment.
4581         (elmo-load-msgdb): Added 4th element `path'.
4582         (elmo-msgdb-append): Follow the change above.
4583         (elmo-msgdb-clear): Ditto.
4584         (elmo-msgdb-delete-msgs): Ditto.
4585         (elmo-msgdb-get-path): New inline function.
4586         (elmo-msgdb-set-path): Ditto.
4587         (elmo-flag-table-filename): New variable.
4588         (elmo-flag-table-load): New function.
4589         (elmo-flag-table-set): Ditto.
4590         (elmo-flag-table-save): Ditto.
4591         (elmo-msgdb-get-field-value): Abolish.
4592         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4593
4594 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4595
4596         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4597         the folder has been deleted successfully.
4598         * elmo-imap4.el (elmo-folder-delete): Ditto.
4599         * elmo-archive.el (elmo-folder-delete): Ditto.
4600         * elmo-localdir.el (elmo-folder-delete): Ditto.
4601         * elmo-maildir.el (elmo-folder-delete): Ditto.
4602
4603 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4604
4605         * elmo-util.el (elmo-string-member-ignore-case): New function.
4606         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4607         (elmo-imap4-fetch-callback-1-subr): Likewise.
4608
4609 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4610
4611         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4612         the case of the name attribute "\Noselect".
4613
4614 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4615
4616         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4617
4618         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4619         flist, is not always a member of onum-alist.
4620
4621 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4622
4623         * elmo-version.el (elmo-version): Up to 2.11.3.
4624
4625 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4626
4627         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4628         copied from localdir's one.
4629
4630         * elmo-pipe.el (elmo-folder-rename): New method, rename
4631         destination folder with leaving source folder as it is.
4632
4633 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4634
4635         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4636         replace-regexp.
4637
4638 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4639
4640         * elmo-version.el (elmo-version): Up to 2.11.2.
4641
4642 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4643
4644         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4645         shimbun-open in case of "@".
4646         (elmo-folder-open-internal): Cope with shimbun = nil case.
4647         (elmo-folder-plugged-p): Ditto.
4648         (elmo-folder-list-subfolders): Make list for "@/" group.
4649
4650 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4651
4652         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4653         mailbox (e.g. for %~/something).
4654
4655 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4656
4657         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4658         Replace nested conditional with guard clauses.
4659
4660 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4661
4662         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4663         error [wl:11327].
4664
4665         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4666         print-depth.
4667
4668 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4669
4670         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4671         Replace nested conditional with guard clauses.
4672
4673 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4674
4675         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4676         (elmo-passwd-alist-save): Ditto.
4677         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4678
4679 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4680
4681         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4682         dir-name only if it is absolute path.
4683         (TODO: distinguish +/something and +something)
4684
4685 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4686
4687         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4688         path for "+~/something".
4689
4690 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4691
4692         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4693         as non-directory, cause error before rename-file.
4694         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4695         apropriately, mimic localdir's one.
4696         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4697
4698 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4699
4700         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4701
4702 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4703
4704         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4705
4706         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4707         
4708         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4709         is included in the global-mark or not.
4710
4711 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4712
4713         * utf7.el (toplevel): Avoid error when the function
4714         find-coding-system does not exist.
4715
4716 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4717
4718         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4719         cache even if the folder is plugged.
4720         (elmo-nntp-search-primitive): Do nothing when body search is
4721         invoked (although it is not used by the change above).
4722         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4723
4724 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4725
4726         * elmo-version.el (elmo-version): Up to 2.11.1.
4727
4728 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4729
4730         * elmo-archive.el: Specify charset.
4731
4732 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4733
4734         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4735         process buffer lives or not.
4736
4737         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4738         while flushing queues (It causes infinite loop).
4739
4740 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4741
4742         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4743
4744 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4745
4746         * utf7.el (toplevel): Check the ucs features dynamically.
4747         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4748
4749         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4750         folder is creatabe or not if it already exists.
4751
4752 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4753
4754         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4755
4756         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4757
4758         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4759         (elmo-imap4-read-response): Take care of garbage response.
4760
4761 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4762
4763         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4764         just return nil instead of error.
4765
4766 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4767
4768         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4769         search-key is "body".
4770
4771 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4772
4773         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4774         of elmo-string-matched-assoc to use match-data.
4775         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4776
4777 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4778
4779         * elmo-split.el (elmo-split->): New function.
4780         (elmo-split-<): Ditto.
4781
4782 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4783
4784         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4785         workaround for invalid message-id.
4786
4787 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4788
4789         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4790         return normal pop3 session or pop3 biff session.
4791
4792 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4793
4794         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4795         info part to the cur files when the new files already have it.
4796         (Adviced by Jared Rhine <jared@wordzoo.com>)
4797
4798 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4799
4800         * elmo-split.el (elmo-split-default-action): New variable.
4801         (elmo-split-subr): Use it if all other conditions are passed.
4802         Extend `fname' and rename it as `action'. (implemented
4803         Teranishi-san's idea in [wl:10800])
4804
4805 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4806
4807         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4808         * elmo-util.el: Ditto.
4809
4810 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4811
4812         * elmo.el (elmo-message-accessible-p): Renamed from
4813         elmo-message-cached-p and rewritten.
4814
4815 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4816
4817         * elmo.el (elmo-folder-list-flagged): New generic function.
4818         (elmo-folder-list-importants): New implementation.
4819         (elmo-folder-list-answereds): Ditto.
4820         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4821         Added 'digest'.
4822         (elmo-message-cached-p): New function.
4823         (elmo-message-set-flag): Ditto (no content).
4824         (elmo-message-unset-flag): Ditto.
4825         (elmo-folder-list-messages-mark-match): Abolish.
4826
4827         * elmo-util.el (elmo-regexp-opt): New function.
4828
4829         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4830         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4831         Added 'digest'.
4832         (elmo-msgdb-list-flagged): New function.
4833
4834         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4835         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4836         Added 'digest'.
4837
4838         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4839
4840 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4841
4842         * elmo-version.el (elmo-version): Up to 2.11.0.
4843
4844 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4845
4846         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4847         `elmo-file-cache-exists-p'; use proper mark that depends on
4848         `use-cache'.
4849         (elmo-msgdb-unset-flag): Ditto.
4850         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4851
4852         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4853         with 4th argument `use-cache'.
4854
4855 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4856
4857         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4858         (elmo-folder-mark-as-important): Ditto.
4859         (elmo-folder-unmark-read): Ditto.
4860         (elmo-folder-mark-as-read): Ditto.
4861         (elmo-folder-unmark-answered): Ditto.
4862         (elmo-folder-mark-as-answered): Ditto.
4863
4864         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4865         message status.
4866         (elmo-msgdb-mark): Likewise.
4867         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4868         (elmo-msgdb-unset-flag): Likewise.
4869
4870         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4871
4872 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4873
4874         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4875         `last:' filter.
4876
4877 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4878
4879         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4880         set spool-length to 0.
4881
4882 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4883
4884         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4885         (elmo-dop-queue-flush): Fixed last change.
4886
4887 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4888
4889         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4890         if require-msgdb slot is nil.
4891         (elmo-folder-list-importants): Likewise.
4892
4893 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4894
4895         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4896         mark is changed.
4897
4898         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4899         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4900         is changed.
4901
4902 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4903
4904         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4905
4906 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4907
4908         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4909
4910         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4911
4912 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4913
4914         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4915         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4916
4917 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4918
4919         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4920         the problem reported by Sean Rima [wl-en:180].
4921
4922 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4923
4924         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4925
4926         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4927
4928         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4929
4930         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4931
4932         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4933
4934         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4935
4936         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4937
4938 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4939
4940         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4941         status number.
4942
4943 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4944
4945         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4946         (elmo-folder-mark-as-read): Follow the API change.
4947         (elmo-message-set-cached): New function.
4948
4949         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4950
4951         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4952
4953         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4954         (elmo-folder-mark-as-important): Ditto.
4955         (elmo-folder-unmark-read): Ditto.
4956         (elmo-folder-mark-as-read): Ditto.
4957         (elmo-folder-unmark-answered): Ditto.
4958         (elmo-folder-mark-as-answered): Ditto.
4959
4960         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4961         (elmo-folder-unmark-important): Ditto.
4962         (elmo-folder-mark-as-read): Ditto.
4963         (elmo-folder-unmark-read): Ditto.
4964         (elmo-folder-mark-as-answered): Ditto.
4965         (elmo-folder-unmark-answered): Ditto.
4966
4967         * elmo-mark.el (toplevel): Removed some mark method definitions.
4968
4969         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4970         (elmo-map-folder-mark-as-answered): Ditto.
4971         (elmo-folder-unmark-important): Add :before qualifier.
4972         (elmo-folder-mark-as-important): Ditto.
4973         (elmo-folder-unmark-read): Ditto.
4974         (elmo-folder-mark-as-read): Ditto.
4975         (elmo-folder-unmark-answered): Define.
4976         (elmo-folder-mark-as-answered): Ditto.
4977
4978         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4979         (elmo-map-folder-unmark-answered): Ditto.
4980
4981         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4982
4983         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4984         (elmo-folder-mark-as-important): Ditto.
4985         (elmo-folder-unmark-read): Ditto.
4986         (elmo-folder-mark-as-read): Ditto.
4987         (elmo-folder-unmark-answered): Ditto.
4988         (elmo-folder-mark-as-answered): Ditto.
4989
4990         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4991         `mark'; evaluate mark condition.
4992         (elmo-msgdb-match-condition-internal): New function.
4993         (elmo-msgdb-match-condition): Call it; changed argument.
4994
4995         * elmo.el (elmo-folder-search): Follow the API change on
4996         `elmo-msgdb-match-condition'.
4997
4998 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4999
5000         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
5001         original mark is non-nil.
5002
5003 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
5004
5005         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
5006         (elmo-map-folder-list-answereds): New method.
5007         (elmo-folder-list-unreads): Add :around qualifier.
5008         (elmo-folder-list-importants): Ditto.
5009         (elmo-folder-list-answereds): Ditto.
5010
5011 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
5012
5013         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
5014
5015         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
5016         method if msgdb is not required.
5017         (elmo-filter-folder-list-importants): Don't treat global-mark.
5018
5019         * elmo.el (elmo-folder-list-importants): Ditto.
5020
5021         * elmo-net.el (elmo-folder-list-importants): Ditto.
5022
5023         * elmo-map.el (elmo-folder-list-importants): Ditto.
5024
5025         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
5026
5027         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
5028         (elmo-imap4-folder-list-any-plugged): New function.
5029         (elmo-imap4-search-internal-primitive): Use it.
5030
5031         * elmo-filter.el (elmo-folder-check): Synchronize original folder
5032         only when require-msgdb slot is non-nil.
5033         (elmo-folder-close): Clear target folder's msgdb.
5034
5035 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5036
5037         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
5038         (elmo-pop3-msgdb-create-by-header): Ditto.
5039         (elmo-pop3-msgdb-create-message): Ditto.
5040
5041         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
5042
5043         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
5044
5045         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
5046
5047         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
5048         (elmo-folder-msgdb-create): Ditto.
5049         (elmo-nntp-folder-msgdb-create): Ditto.
5050         (elmo-nntp-msgdb-create-by-header): Ditto.
5051         (elmo-nntp-msgdb-create-message): Ditto.
5052         (elmo-folder-list-unreads): Define.
5053
5054         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
5055         (elmo-folder-append-messages): Ditto.
5056         (elmo-folder-list-unreads): Define.
5057         (elmo-folder-list-importants): Ditto.
5058         (elmo-folder-list-answereds): Ditto.
5059
5060         * elmo-net.el (elmo-folder-list-unreads): Define.
5061         (elmo-folder-list-importants): Ditto.
5062         (elmo-folder-list-answereds): Ditto.
5063         (elmo-folder-list-answereds-plugged): Ditto.
5064         (elmo-folder-msgdb-create): Follow the API change.
5065         (elmo-folder-msgdb-create-unplugged): Ditto.
5066         (elmo-folder-unmark-answered): Define.
5067         (elmo-folder-mark-as-answered-unplugged): Ditto.
5068         (elmo-folder-unmark-answered-unplugged): Ditto.
5069
5070         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
5071         (elmo-msgdb-unread-uncached-mark): Ditto.
5072         (elmo-msgdb-unread-cached-mark): Ditto.
5073         (elmo-msgdb-read-uncached-mark): Ditto.
5074         (elmo-msgdb-answered-cached-mark): Ditto.
5075         (elmo-msgdb-answered-uncached-mark): Ditto.
5076         (elmo-msgdb-important-mark): Ditto.
5077         (elmo-msgdb-set-mark): Rewrite.
5078         (elmo-msgdb-count-marks): Rewrite.
5079         (elmo-msgdb-mark-alist-set): Abolish.
5080         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
5081         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
5082
5083         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
5084         (elmo-folder-close): Define.
5085         (elmo-folder-msgdb-create): Follow the API change.
5086         (elmo-folder-list-unreads): Rewrite.
5087         (elmo-folder-mark-as-important): Ditto.
5088         (elmo-folder-unmark-important): Ditto.
5089         (elmo-folder-mark-as-read): Ditto.
5090         (elmo-folder-unmark-read): Ditto.
5091         (elmo-folder-mark-as-answered): Define.
5092         (elmo-folder-unmark-answered): Ditto.
5093
5094         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
5095         (elmo-folder-append-messages): Ditto.
5096
5097         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
5098
5099         * elmo-map.el (elmo-folder-list-unreads): Ditto.
5100         (elmo-folder-list-importants): Ditto.
5101
5102         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
5103         (elmo-folder-append-messages): Ditto.
5104
5105         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
5106         change.
5107         (elmo-folder-msgdb-create-plugged): Ditto.
5108         (elmo-folder-append-messages): Ditto.
5109         (elmo-folder-list-answereds-plugged): Define.
5110         (elmo-imap4-search-internal-primitive): Add `mark' processing.
5111         (elmo-folder-unmark-answered-plugged): Define.
5112         (elmo-folder-mark-as-answered-plugged): Ditto.
5113         (elmo-folder-search-requires-msgdb-p): Ditto.
5114
5115         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
5116         (elmo-folder-initialize): Set it.
5117         (elmo-folder-msgdb): Define.
5118         (elmo-folder-check): Call elmo-folder-synchronize.
5119         (elmo-folder-close): Define.
5120         (elmo-folder-commit): Ditto.
5121         (elmo-folder-msgdb-create): Rewrite.
5122         (elmo-folder-list-unreads): Ditto.
5123         (elmo-folder-list-importants): Ditto.
5124         (elmo-folder-mark-as-read): Ditto.
5125         (elmo-folder-unmark-read): Ditto.
5126         (elmo-folder-mark-as-important): Ditto.
5127         (elmo-folder-unmark-important): Ditto.
5128         (elmo-folder-mark-as-answered): Define.
5129         (elmo-folder-unmark-answered): Ditto.
5130
5131         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
5132         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
5133         (elmo-dop-queue-method-name-alist): Likewise.
5134         (elmo-folder-mark-as-answered-dop): New inline function.
5135         (elmo-folder-unmark-answered-dop): Ditto.
5136         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
5137
5138         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
5139         (elmo-folder-msgdb-create): Ditto.
5140         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
5141         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
5142         (elmo-archive-parse-mmdf): Ditto.
5143
5144         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
5145         (elmo-folder-list-unreads-internal): Ditto.
5146
5147         * elmo.el (elmo-folder-msgdb): Define as generic function.
5148         (elmo-folder-list-messages): Added argument `in-msgdb'.
5149         (elmo-folder-list-unreads): Define as generic function.
5150         (elmo-folder-list-importants): Ditto.
5151         (elmo-folder-list-answereds): Ditto.
5152         (elmo-folder-list-messages-with-global-mark): New function.
5153         (elmo-folder-msgdb-create): Removed mark arguments.
5154         (elmo-folder-unmark-answered): New generic function.
5155         (elmo-folder-mark-as-answered): Ditto.
5156         (elmo-folder-append-messages): Removed argunment `unread-marks'
5157         (elmo-folder-list-unreads-internal): Abolish.
5158         (elmo-folder-list-importants-internal): Ditto.
5159         (elmo-folder-search-requires-msgdb-p): New generic function.
5160         (elmo-folder-search-requires-msgdb-p-internal): New function.
5161         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
5162         elmo-msgdb-load.
5163         (elmo-folder-search-fast): Added key 'mark'.
5164         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
5165         instead of unread-marks argument.
5166         (elmo-folder-move-messages): Removed argunment `unread-marks'
5167         (elmo-folder-unmark-important): Define.
5168         (elmo-folder-mark-as-important): Ditto.
5169         (elmo-folder-unmark-read): Ditto.
5170         (elmo-folder-mark-as-read): Ditto.
5171         (elmo-folder-unmark-answered): Ditto.
5172         (elmo-folder-mark-as-answered): Ditto.
5173         (elmo-folder-replace-marks): Abolish.
5174         (elmo-generic-folder-append-msgdb): Append msgdb before checking
5175         duplicates.
5176         (elmo-folder-synchronize): Removed mark arguments;
5177         return crosspost only number.
5178
5179 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5180
5181         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
5182         Remove redundunt connectivity check.
5183
5184 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5185
5186         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
5187         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
5188
5189 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
5190
5191         * pldap.el (ldap-decode-string): Return string as-is if
5192         `ldap-coding-system' is nil.
5193         (ldap-encode-string): Ditto.
5194         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
5195         (ldap-default-host): Fixed docstring.
5196
5197 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
5198
5199         * elmo-util.el (elmo-warning): Define as a macro which uses
5200         `display-warning' if it is defined as a function.
5201
5202         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
5203         (elmo-split-equal): Use it.
5204         (elmo-split-match): Ditto.
5205         (elmo-split-message-entity): New buffer-local variable.
5206         (elmo-split-subr): Set it.
5207
5208         * elmo-version.el (elmo-version): Up to 2.9.15.
5209
5210 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
5211
5212         * elmo-imap4.el (elmo-network-initialize-session):
5213         Check capability after starttls.
5214
5215 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
5216
5217         * elmo-util.el (elmo-list-delete): Added optional argument
5218         DELETE-FUNCTION.
5219
5220         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
5221
5222         * elmo-util.el (elmo-warning): Ignore errors while recenter.
5223
5224         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
5225
5226         * elmo-imap4.el (elmo-folder-initialize): Don't use
5227         elmo-imap4-default-mailbox.
5228
5229 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5230
5231         * elmo-split.el (toplevel): Use `product-provide'.
5232         (elmo-split): Checkdoc.
5233
5234 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
5235
5236         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
5237         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
5238         the function `elmo-imap4-debug-1'.
5239
5240 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5241
5242         * elmo-split.el (elmo-split): Moved to run hooks and to show
5243         message from elmo-split-subr.
5244         (elmo-split-subr): Follow the change above.
5245
5246         * elmo-split.el (elmo-split-subr): New function (renamed from
5247         elmo-split-subr).
5248         (elmo-split): Changed to call elmo-split-subr by element of
5249         elmo-split-folder.
5250         (elmo-split-folder): Changed customization type to choice.
5251
5252 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5253
5254         * elmo-split.el (elmo-split-and): Fixed condition.
5255
5256 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5257
5258         * elmo-split.el: New file.
5259         (elmo-split): Fixed logic.
5260         Display "Test:" instead of "Folder:" when reharsal.
5261
5262         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
5263         explicitly.
5264
5265         * elmo-version.el (elmo-version): Up to 2.9.14.
5266
5267         * elmo-util.el (elmo-expand-newtext): New function (renamed from
5268         wl-expand-newtext).
5269
5270 2002-06-10  Kenichi Sato <ksato@sonycom.com>
5271
5272         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
5273         message with no message-id field.
5274
5275 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
5276
5277         * elmo-version.el (elmo-version): Up to 2.9.13.
5278
5279         * elmo-dop.el (elmo-folder-status-dop): Fix.
5280
5281 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
5282
5283         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
5284
5285         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
5286         changing default value of default-mime-charset.
5287         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
5288
5289         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
5290
5291         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
5292         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
5293         instead of elmo-dop-queue-method-name-alist to check merging queue.
5294         (elmo-folder-delete-messages-dop): Delete from queue if negative
5295         message number.
5296         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
5297         file is already removed.
5298
5299 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
5300
5301         * elmo-vars.el: Bind colon keywords for old Emacsen.
5302
5303 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5304
5305         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
5306         against non-exsisting charset.
5307
5308 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
5309
5310         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
5311         Use eword-decode-and-unfold-unstructured-field-body.
5312
5313         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
5314         (elmo-msgdb-create-overview-from-buffer): Use document charset if
5315         exists to decode raw subject string.
5316         (toplevel): Require 'mime.
5317
5318         * elmo-version.el (elmo-version): Up to 2.9.12.
5319
5320 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
5321
5322         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
5323         (elmo-msgdb-set-mark): Ditto.
5324
5325         * elmo-version.el (elmo-version): Up to 2.9.11.
5326
5327 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
5328
5329         * elmo-util.el (elmo-delete-match-files): New function.
5330
5331         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
5332         instead of elmo-delete-directory.
5333
5334         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
5335         elmo-hash-minimun-size as 63.
5336
5337         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
5338         elmo-diff-unread is nil.
5339
5340         * elmo-imap4.el (elmo-folder-open): Fix.
5341
5342         * elmo.el (elmo-message-mark): Rewrite.
5343         (elmo-message-field): Ditto.
5344         (elmo-message-set-mark): Ditto.
5345         (elmo-folder-replace-marks): New function.
5346         (elmo-generic-folder-append-msgdb): Removed third argument for
5347         elmo-msgdb-append.
5348         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
5349         (elmo-msgdb-load): New implementation.
5350
5351         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
5352
5353         * elmo-util.el (elmo-list-insert): New implementation.
5354
5355         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
5356         argument for elmo-msgdb-append.
5357         
5358
5359         * elmo-msgdb.el (elmo-load-msgdb): New function.
5360         (elmo-make-msgdb): Ditto.
5361         (elmo-msgdb-get-index): New inline function.
5362         (elmo-msgdb-set-index): Ditto.
5363         (elmo-msgdb-get-entity-hashtb): Ditto.
5364         (elmo-msgdb-get-mark-hashtb): Ditto.
5365         (elmo-msgdb-get-mark): Ditto.
5366         (elmo-msgdb-set-mark): Ditto.
5367         (elmo-msgdb-count-marks): Ditto.
5368         (elmo-msgdb-get-number): Ditto.
5369         (elmo-msgdb-get-field): Ditto.
5370         (elmo-msgdb-seen-list): Ditto.
5371         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
5372         (elmo-msgdb-delete-msgs): Follow the changes above.
5373         (elmo-msgdb-overview-get-entity): Ditto.
5374         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
5375         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
5376         and rewritten.
5377         (elmo-msgdb-make-index): Likewise.
5378         (elmo-msgdb-append): Removed third argument.
5379         (elmo-msgdb-clear): Clear index as nil.
5380         (elmo-folder-set-info-hashtb): Removed.
5381         (elmo-folder-set-info-max-by-numdb): Ditto.
5382         (elmo-folder-info-make-hashtb): Ditto.
5383
5384         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
5385
5386         * elmo-map.el (elmo-folder-pack-number): Ditto.
5387
5388 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
5389
5390         * elmo-version.el (elmo-version): Up to 2.9.10.
5391
5392         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
5393
5394         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
5395
5396 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
5397
5398         * elmo-utils.el (elmo-make-directory): Add option.
5399         Default file mode is 700.
5400
5401 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5402
5403         * elmo-shimbun.el (elmo-folder-local-p): Defined.
5404
5405 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
5406
5407         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
5408         mime-charset.
5409
5410         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
5411         and "smaller".
5412
5413 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5414
5415         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5416         (elmo-shimbun-folder-entity-hash): New function.
5417         (elmo-shimbun-folder-shimbun-header): Ditto.
5418         (elmo-shimbun-entity-to-header): Ditto.
5419         (elmo-shimbun-msgdb-to-headers): Removed.
5420         (elmo-shimbun-folder-setup): Ditto.
5421         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5422         for hash key.
5423         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5424         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5425         Removed useless local bind.
5426         (elmo-folder-open-internal): Don't call
5427         `elmo-shimbun-folder-setup'.
5428         (elmo-folder-close-internal): Clear entity-hash slot.
5429         (elmo-folder-clear): Ditto.
5430         (elmo-shimbun-msgdb-create-entity): Use
5431         `elmo-shimbun-folder-shimbun-header'.
5432         (elmo-map-message-fetch): Ditto.
5433         (elmo-shimbun-update-overview): Use overview entity instead of
5434         shimbun header to lookup id by references.
5435         (elmo-map-folder-list-message-locations): Use not only headers but
5436         also overviews to list locations.
5437
5438 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5439
5440         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5441         msgdb path.
5442
5443         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5444
5445 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5446
5447         * elmo-util.el (elmo-read-search-condition-internal): Give default
5448         value for date.
5449
5450 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5451
5452         * elmo-util.el (elmo-condition-parse-search-value): Accept
5453         YYYY-MM-DD format to search.
5454         * elmo-date.el (elmo-date-get-datevec): Likewise.
5455
5456 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5457
5458         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5459         debugging code.
5460
5461 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5462
5463         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5464         from t.
5465
5466         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5467
5468         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5469         case from `elmo-folder-exists-p'.
5470         (elmo-folder-exists-p): Removed.
5471         (elmo-folder-creatable-p) Ditto.
5472
5473         * elmo-net.el (elmo-folder-create): Defined.
5474         (elmo-folder-create-unplugged): New function.
5475         (elmo-folder-exists-p): Changed default value to nil from t.
5476
5477         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5478         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5479
5480         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5481         `elmo-create-folder-dop' and append queue
5482         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5483         (elmo-folder-create-dop-delayed): New function.
5484
5485         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5486
5487         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5488
5489         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5490         (elmo-folder-writable-p) : Ditto.
5491
5492         * elmo-version.el (elmo-version): Up to 2.9.9.
5493
5494 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5495
5496         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5497         `elmo-message-use-cache-p' returns nil.
5498         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5499         (ignore cache file and refer the substance in local folders)
5500
5501 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5502
5503         * elmo-version.el (elmo-version): Up to 2.9.8.
5504
5505 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5506
5507         * elmo-version.el (elmo-version): Up to 2.9.7.
5508
5509         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5510
5511 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5512
5513         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5514
5515 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5516
5517         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5518         from --early.
5519         (elmo-map-folder-list-message-locations): Reverse location list.
5520
5521 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5522
5523         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5524
5525 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5526
5527         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5528         as a key.
5529         (elmo-nntp-folder-list-subfolders): Follow the change above.
5530
5531 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5532
5533         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5534         name if authentication type is specified.
5535
5536 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5537
5538         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5539         variable.
5540         (elmo-default-nntp-stream-type): Ditto.
5541         (elmo-default-pop3-stream-type): Ditto.
5542
5543 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5544
5545         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5546
5547 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5548
5549         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5550         elmo-vars.el.
5551         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5552
5553         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5554         (elmo-maildir-folder-path): Ditto.
5555         (elmo-maildir-list): Ditto (abolished).
5556
5557 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5558
5559         * elmo-version.el (elmo-version): Up to 2.9.6.
5560
5561 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5562
5563         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5564         (elmo-maildir-folder-path): Ditto.
5565         (elmo-msgdb-directory): Ditto.
5566         (elmo-passwd-life-time): Ditto.
5567         (elmo-msgdb-extra-fields): Ditto.
5568         (elmo-enable-disconnected-operation): Ditto.
5569
5570 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5571
5572         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5573         other choices.
5574         (elmo-pop3-default-authenticate-type): Ditto.
5575
5576 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5577
5578         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5579         choices for custom.
5580         (elmo-pop3-default-authenticate-type): Ditto.
5581
5582 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5583
5584         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5585         mailbox to new-folder.
5586
5587 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5588
5589         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5590         less than new, set new as unread.
5591
5592         * elmo-util.el (elmo-string): Don't put text-property if nil.
5593
5594 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5595
5596         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5597         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5598
5599 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5600
5601         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5602         is nil on `completing-read'.
5603
5604 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5605
5606         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5607         for namespace part.
5608         (elmo-imap4-parse-namespace-subr): Ditto.
5609         (elmo-folder-list-subfolders): Append a delimiter when the specified
5610         folder path is a root with namespace and does not end with delimiter.
5611
5612 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5613
5614         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5615         was used.
5616
5617 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5618
5619         * elmo-util.el (elmo-save-buffer): The first argument of message
5620         is a format control string.
5621
5622 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5623
5624         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5625         `elmo-folder-diff').
5626         (elmo-diff-unread): Likewise.
5627
5628 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5629
5630         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5631         is t on `completing-read'.
5632
5633 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5634
5635         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5636         method of target folder with self mark-alist if MARK-ALIST is nil.
5637
5638 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5639
5640         * elmo-version.el (elmo-version): Up to 2.9.5.
5641
5642 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5643
5644         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5645         (elmo-dop-merge-funcs): Remove.
5646
5647 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5648
5649         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5650         Return t if PATH is directory, too.
5651         Use `dolist' instead of while loop.
5652
5653 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5654
5655         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5656         is deleted.
5657
5658 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5659
5660         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5661         return value to t.
5662         (elmo-folder-list-messages-unplugged): Return t if
5663         elmo-enable-disconnected-operation is nil.
5664
5665         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5666         `elmo-folder-list-messages-internal'.
5667
5668 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5669
5670         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5671         Change to looking-at `[23][0-9]+'.
5672         (elmo-network-initialize-session): Use 'error-msg'
5673         * elmo-net.el (elmo-network-open-session): Set unplugged
5674         if elmo-network-initialize-session returns 'elmo-open-err.
5675
5676 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5677
5678         * elmo-version.el (elmo-version): Up to 2.9.4.
5679
5680 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5681
5682         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5683         `elmo-folder-list-messages-internal'.
5684
5685 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5686
5687         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5688         (elmo-message-match-condition): New method.
5689         (elmo-folder-search-fast): New inline function.
5690         (elmo-msgdb-search): Removed.
5691
5692         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5693         target folder if it is unplugged.
5694         (elmo-folder-list-messages-internal): Return t if target folder is
5695         unplugged and itself is persistent; In this case, use list be
5696         searched already.
5697
5698         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5699         (elmo-msgdb-search-internal-primitive): Ditto.
5700         (elmo-msgdb-match-condition): New function.
5701         (elmo-msgdb-match-condition-primitive): Ditto.
5702
5703         * elmo-util.el (elmo-filter-condition-p): New macro.
5704
5705         * elmo-cache.el (elmo-folder-search): Removed.
5706
5707         * elmo-localdir.el (elmo-folder-search): Ditto.
5708
5709         * elmo-maildir.el (elmo-folder-search): Ditto.
5710
5711         * elmo-mark.el (elmo-folder-search): Ditto.
5712
5713         * elmo-nmz.el (elmo-folder-search): Ditto.
5714
5715         * elmo-sendlog.el (elmo-folder-search): Ditto.
5716
5717         * elmo-shimbun.el (elmo-folder-search): Ditto.
5718
5719         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5720         if folder is unplugged.
5721
5722         * elmo-nntp.el (elmo-folder-search): Likewise.
5723         (elmo-nntp-search-internal): New function.
5724
5725         * elmo-version.el (elmo-version): Up to 2.9.3.
5726
5727 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5728
5729         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5730
5731 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5732
5733         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5734
5735 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5736
5737         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5738
5739 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5740
5741         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5742         (elmo-map-folder-list-message-locations): Do drive letter conversion
5743         on Windows environment.
5744         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5745         (elmo-map-message-fetch): Ditto.
5746
5747 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5748
5749         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5750         (elmo-network-initialize-session): Ditto.
5751
5752 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5753
5754         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5755
5756         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5757
5758         * elmo-util.el (elmo-progress-clear): Ditto.
5759
5760         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5761         `DD-Mon-YYYY' type date.
5762
5763 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5764
5765         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5766         `elmo-date-make-sortable-string' instead of
5767         `timezone-make-date-sortable'.
5768
5769         * elmo-date.el (elmo-date-make-sortable-string): Use
5770         `timezone-make-time-string'.
5771
5772 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5773
5774         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5775
5776         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5777         `since'; Fix timezone.
5778
5779         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5780
5781         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5782
5783 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5784
5785         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5786
5787 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5788
5789         * elmo.el (elmo-generic-folder-append-messages): Make
5790         fetch-strategy with `use-cache' as 'maybe. Check return value of
5791         `elmo-message-fetch'.
5792         (elmo-message-fetch): Return return value of
5793         `elmo-message-fetch-with-cache-process'.
5794         (elmo-message-fetch-with-cache-process): Return non-nil if
5795         fetching was succeed. Load cache when fetching was failed and
5796         fetch-strategy-use-cache is 'maybe.
5797
5798         * elmo-util.el (elmo-file-cache-load): New function.
5799
5800         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5801         defun.
5802
5803         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5804         non-nil if fetching was succeed.
5805
5806         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5807
5808         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5809
5810         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5811         (elmo-message-fetch-with-cache-process): Likwise.
5812
5813         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5814
5815         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5816
5817         * elmo-version.el (elmo-version): Up to 2.9.2.
5818
5819 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5820
5821         * elmo.el (elmo-folder-delete): Delete msgdb path.
5822
5823         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5824
5825         * elmo-maildir.el (elmo-folder-delete): Ditto.
5826
5827         * elmo-localdir.el (elmo-folder-delete): Ditto.
5828
5829         * elmo-imap4.el (elmo-folder-delete): Ditto.
5830
5831 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5832
5833         * elmo.el (luna-define-class): Added `biff' slot.
5834
5835         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5836         (elmo-pop3-debug-inhibit-logging): Abolished.
5837         (elmo-network-close-session): Eliminated needless let.
5838         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5839         (elmo-pop3-send-command): Added `no-log' argument.
5840         (elmo-pop3-process-filter): Use `with-current-buffer'.
5841         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5842         if login failure.
5843         (elmo-pop3-auth-apop): Likewise.
5844         (elmo-network-authenticate-session): Likewise.
5845
5846         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5847         if biff folder.
5848
5849         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5850         string to determine protocol.
5851         (elmo-network-session-name-prefix): Abolished.
5852         (elmo-network-session-cache-key): Follow the change above.
5853         (elmo-network-open-session): Ditto.
5854
5855         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5856         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5857
5858         * elmo-version.el (elmo-version): Up to 2.9.1.
5859
5860         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5861         unmatch condition checking.
5862
5863         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5864         condition.
5865
5866 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5867
5868         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5869
5870 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5871
5872         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5873         test for while loop to execute at least one SEARCH command.
5874
5875 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5876
5877         * elmo-version.el (elmo-version): Up to 2.9.0.
5878
5879 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5880
5881         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5882         (elmo-archive-folder-path): Define.
5883         (elmo-folder-initialize): Setup `dir-name' slot.
5884         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5885         Use `dir-name' as prefix of each subfolders.
5886         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5887
5888 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5889
5890         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5891         (elmo-pipe-folder-list-target-messages): New internal function.
5892         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5893         `killed-list'.
5894         (elmo-pipe-folder-copied-list-load): New function.
5895         (elmo-pipe-folder-copied-list-save): Ditto.
5896         (elmo-folder-open-internal): Follow the change above.
5897         (elmo-folder-status): Fixed for copy.
5898
5899 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5900
5901         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5902
5903 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5904
5905         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5906         elmo-copy-file instead of elmo-add-name-to-file.
5907
5908         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5909
5910         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5911         "file://..." index.
5912
5913         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5914         of accept-process-output as 1.
5915         (elmo-pop3-read-contents): Ditto.
5916         (elmo-pop3-read-body): Ditto.
5917
5918 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5919
5920         * elmo-version.el (product-version-as-string): Remove define.
5921
5922 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5923
5924         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5925         (elmo-imap4-copy-messages): Chop number set using
5926         `elmo-imap4-number-set-chop-length'.
5927         (elmo-imap4-set-flag): Ditto.
5928         (elmo-imap4-search-internal-primitive): Ditto.
5929
5930 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5931
5932         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5933         `elmo-folder-make-temp-dir'
5934
5935         * elmo-vars.el (elmo-cache-directory): New variable.
5936         (elmo-cache-dir): Abolished.
5937         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5938
5939         * elmo-version.el (elmo-version): Up to 2.7.7.
5940
5941 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5942
5943         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5944         defcustom; Set default value as t.
5945
5946 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5947
5948         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5949         (ldap-search-program-arguments): Changed default value.
5950         (ldap-search-basic): Accept exit status 4.
5951         (ldap/field-body): Parse options.
5952         (ldap/collect-field): Ditto.
5953         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5954
5955         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5956         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5957         (elmo-imap4-accept-ok): Ditto.
5958         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5959         'notify-bye, only BYE error is reported.
5960         (elmo-folder-exists-p-plugged): Set no-error argument of
5961         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5962
5963         * elmo.el (elmo-imap4-bye-error): Changed message.
5964
5965         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5966         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5967         queues (It causes infinite loop).
5968
5969 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5970
5971         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5972         (RECENT UNSEEN MESSAGES) extension.
5973
5974 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5975
5976         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5977         Check number of overview fields.
5978
5979 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5980
5981         * elmo.el (elmo-folder-confirm-appends): Changed message.
5982         (elmo-folder-confirm-appends): Ditto.
5983
5984         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5985         `with-temp-buffer'.
5986         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5987
5988 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5989
5990         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5991         of elmo-folder-update-threshold is nil, which can be set by
5992         wl-summary-update-confirm-threshold.
5993
5994 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5995
5996         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5997         (elmo-nmz-index-alias-alist): Ditto.
5998         (elmo-map-folder-list-message-locations): Follow the change above.
5999
6000 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6001
6002         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
6003
6004         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
6005
6006         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
6007
6008         * elmo-util.el (elmo-read): Ditto.
6009         (elmo-display-error): Ditto.
6010
6011         * elmo-vars.el (elmo-date-match): Ditto.
6012
6013         * pldap.el (ldap-coding-system): Ditto.
6014
6015         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
6016         `elmo-inhibit-number-mapping' as nil.
6017
6018 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
6019
6020         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
6021         space delimiter for list response.
6022
6023 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
6024
6025         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
6026
6027 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
6028
6029         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
6030         (elmo-map-message-fetch): Fix.
6031         * elmo-map.el (elmo-folder-status): Fix for killed.
6032
6033 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
6034
6035         * elmo-sendlog.el: New file.
6036         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
6037
6038 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
6039
6040         * acap.el (acap-logging-out): New buffer local variable.
6041         (acap-close): Set it.
6042         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
6043         an error.
6044
6045 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
6046
6047         * acap.el (acap-response-bye-p): New function.
6048         (acap-response-bye-message): Ditto.
6049         (acap-wait-for-response): If bye response is received, cause an error.
6050         (acap-parse-response): Make bye response when 'Bye' is received.
6051
6052 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
6053
6054         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
6055
6056 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6057
6058         * elmo-util.el (elmo-copy-file): Added argument
6059         `ok-if-already-exists'.
6060         (elmo-copy-file): Fixed typo.
6061
6062 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
6063
6064         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
6065
6066 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
6067
6068         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
6069
6070 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
6071
6072         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
6073         to killed-list.
6074
6075 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
6076
6077         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
6078         (elmo-folder-initialize): Fix for `copy'.
6079         (elmo-pipe-drain): Ditto.
6080         (elmo-folder-open-internal): Ditto.
6081         (elmo-folder-newsgroups): Fix.
6082
6083 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
6084
6085         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
6086         for each message.
6087
6088         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
6089         recent value is returned from imap folder.
6090
6091         * elmo.el (elmo-folder-newsgroups): New generic function.
6092
6093         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
6094         (elmo-folder-initialize): Set it.
6095         (elmo-folder-expand-msgdb-path): Use it.
6096         (elmo-folder-newsgroups): Define.
6097
6098         * elmo-filter.el (elmo-folder-newsgroups): Define.
6099
6100         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
6101
6102         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
6103
6104         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
6105
6106 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6107
6108         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
6109         user option.
6110         (elmo-shimbun-header-extra-field): New inline function.
6111         (elmo-shimbun-header-set-extra-field): Ditto.
6112         (elmo-shimbun-folder-header-hash-setup): Ditto.
6113         (elmo-shimbun-update-overview): Ditto.
6114         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
6115         (elmo-shimbun-folder-setup): Use
6116         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
6117         (elmo-shimbun-get-headers): Ditto.
6118         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
6119         Insert `X-Shimbun-Id:' header if extra field is set.
6120         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
6121         field's value instead of `shimbun-header-id'.
6122
6123         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
6124         inline function.
6125         (elmo-msgdb-overview-entity-set-date): Ditto.
6126         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
6127
6128 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
6129
6130         * mmimap.el (mmimap-entity-section): Changed body node number from
6131         "0" to "1".
6132
6133 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6134
6135         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
6136         `elmo-folder-delete-messages'.
6137
6138         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
6139         (elmo-folder-initialize): Changed to expand alias into index path.
6140
6141         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
6142         `elmo-mime-insert-header-from-buffer' with 6th arg
6143         `sorted-fields'.
6144
6145 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
6146
6147         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
6148
6149         * elmo.el (elmo-diff-new): New inline function.
6150         (elmo-diff-unread): Ditto.
6151         (elmo-diff-all): Ditto.
6152
6153         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
6154         value from responseb.
6155         (elmo-imap4-folder-diff-plugged): Ditto.
6156         (elmo-imap4-server-diff-async): Added recent argument.
6157         (elmo-server-diff-async): Ditto.
6158         (elmo-imap4-folder-diff-plugged): Ditto.
6159
6160         * elmo-version.el (elmo-version): Up to 2.7.6.
6161
6162 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6163
6164         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
6165         in quoted-stirng.
6166
6167 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
6168
6169         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
6170
6171         * elmo-imap4.el (elmo-folder-initialize): Ditto.
6172
6173         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6174
6175         * elmo-multi.el (elmo-folder-initialize): Ditto.
6176
6177         * elmo-util.el (elmo-parse-token): New function.
6178         (elmo-parse-prefixed-element): Ditto.
6179
6180 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6181
6182         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
6183         delete process.
6184         (elmo-imap4-accept-ok): Ditto.
6185
6186 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6187
6188         * mmimap.el (mime-imap-entity-header-string): Don't check first
6189         element of node-id is `0' (Follow last change).
6190
6191 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6192
6193         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
6194         assigned irregular node-id to nested multipart section.
6195         (initialize-instance): Followed above change.
6196
6197 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6198
6199         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
6200         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
6201         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
6202         `elmo-shimbun-get-headers');
6203         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
6204         visible article on summary exists in headers).
6205         (elmo-map-message-fetch): Cause an error when folder is unplugged.
6206
6207 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
6208
6209         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
6210         definition.
6211
6212 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
6213
6214         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
6215
6216 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6217
6218         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
6219         header separator into loop condition.
6220
6221 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6222
6223         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
6224         Return duplicate folder if it has subfolder.
6225
6226 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6227
6228         * elmo.el (elmo-make-folder): Add folder name error check.
6229
6230         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
6231         (elmo-nntp-encode-group-string): New inline function.
6232         (elmo-nntp-decode-group-string): Ditto.
6233         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
6234         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
6235         Use `not' instead of `null';
6236         Use elmo-nntp-decode-group-string.
6237
6238         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
6239
6240         * elmo-version.el (elmo-version): Up to 2.7.5.
6241
6242 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6243
6244         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
6245         Hide progress gauge if `elmo-folder-move-messages' exits
6246         nonlocally.
6247
6248 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6249
6250         * elmo-imap4.el (elmo-folder-initialize): Use
6251         `elmo-imap4-encode-folder-string' for folder name.
6252
6253 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6254
6255         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
6256         `done'.
6257
6258 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6259
6260         * elmo-util.el (elmo-progress-counter-alist): New internal
6261         variable.
6262         (elmo-progress-counter-value): New macro.
6263         (elmo-progress-counter-all-value): Ditto.
6264         (elmo-progress-counter-format): Ditto.
6265         (elmo-progress-counter-set-value): Ditto.
6266         (elmo-progress-set): New function.
6267         (elmo-progress-clear): Ditto.
6268         (elmo-progress-notify): Ditto.
6269
6270         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
6271         counter.
6272
6273         * elmo.el (elmo-generic-folder-append-messages): Call
6274         `elmo-progress-notify'.
6275         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
6276
6277         * elmo-archive.el (elmo-folder-append-messages): Call
6278         `elmo-progress-notify'.
6279
6280         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
6281
6282         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
6283
6284         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
6285
6286 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6287
6288         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
6289         'Create'.
6290         (elmo-message-encache-dop): Added argument `read'.
6291
6292         * elmo-shimbun.el (elmo-message-encache): Ditto.
6293
6294         * elmo-net.el (elmo-message-encache): Ditto.
6295
6296         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
6297         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
6298         elmo-imap4-seen-messages.
6299         (elmo-folder-msgdb-create-plugged): Initialize
6300         elmo-imap4-seen-messages;
6301         Set seen mark on elmo-imap4-seen-messages.
6302
6303         * elmo-pipe.el (elmo-folder-message-file-p): Define.
6304
6305         * elmo.el (elmo-generic-folder-append-messages): Check return value of
6306         elmo-folder-append-buffer.
6307         (elmo-folder-encache): Added optional argument `read'.
6308         (elmo-message-encache): Ditto.
6309
6310         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
6311
6312         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
6313
6314         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
6315         if append buffer content succeds.
6316
6317 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6318
6319         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
6320         elmo-display-progress.
6321
6322         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
6323         Set 4th argument of mime-display-message.
6324         (elmo-mime-display-as-is): Ditto.
6325
6326 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
6327
6328         * elmo-nmz.el (toplevel): Require 'mime-edit.
6329         (elmo-nmz-content-type-alist): Abolished.
6330         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
6331         content is not a message.
6332         (elmo-map-message-fetch): Changed behavior exept for message content;
6333         Detect mime-charset automatically, Use `mime-find-file-type' to detect
6334         content-type, Add From: and Subject: field.
6335
6336 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6337
6338         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
6339         (elmo-map-message-fetch): Add `Content-Type' field if contents is
6340         not a message.
6341
6342 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6343
6344         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
6345         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
6346
6347         * elmo-archive.el (elmo-folder-writable-p): Defined.
6348
6349         * elmo-cache.el (elmo-folder-writable-p): Ditto.
6350
6351         * elmo-filter.el (elmo-folder-writable-p): Ditto.
6352
6353         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
6354
6355         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
6356
6357         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
6358
6359         * elmo-mark.el (elmo-folder-writable-p): Ditto.
6360
6361         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
6362
6363         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
6364
6365 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
6366
6367         * elmo-util.el (elmo-address-quote-specials): New function;
6368         Renamed from `wl-address-quote-specials'.
6369
6370 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6371
6372         * elmo-version.el (elmo-version): Up to 2.7.4.
6373
6374 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
6375
6376         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
6377
6378 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6379
6380         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
6381         both compile-time and run-time to avoid byte-compile warning.
6382
6383 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
6384
6385         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
6386
6387 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6388
6389         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
6390         option.
6391         (elmo-mime-display-as-is-internal): Use it.
6392
6393         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
6394         if `read-passwd' is not defined.
6395
6396 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6397
6398         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
6399         by original number.
6400         (elmo-folder-status): Call `elmo-folder-open-internal';
6401         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
6402         (elmo-folder-close-internal): Set location-alist as nil.
6403         (elmo-folder-clear): Define.
6404         (elmo-folder-check): Don't set location-alist as nil.
6405
6406         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
6407
6408 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
6409
6410         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
6411         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
6412
6413         * mmimap.el (mime-imap-entity::requested): New slot.
6414         (mime-imap-location-fetch-entity-p): New generic function.
6415         (mime-decode-parameters): Define using `defun-maybe'.
6416         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6417         content-type structure.
6418         (mime-entity-body): Return empty body if
6419         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6420
6421         * elmo.el (elmo-message-displaying): New variable.
6422
6423         * elmo-mime.el (elmo-mime-message-display): Bind
6424         elmo-message-displaying as t.
6425
6426         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6427
6428 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6429
6430         * acap.el (acap-open): erase buffer before starting network process.
6431         (acap-store): Rewrite.
6432
6433 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6434
6435         * elmo-imap4.el (elmo-imap4-default-mailbox,
6436         elmo-imap4-default-server
6437         elmo-imap4-default-authenticate-type,
6438         elmo-imap4-default-user,
6439         elmo-imap4-default-port,
6440         elmo-imap4-default-stream-type,
6441         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6442
6443         * elmo-pop3.el (elmo-pop3-default-user,
6444         elmo-pop3-default-server,
6445         elmo-pop3-default-authenticate-type,
6446         elmo-pop3-default-port,
6447         elmo-pop3-default-stream-type,
6448         elmo-pop3-stream-type-alist): Ditto.
6449
6450         * elmo-nntp.el (elmo-nntp-default-server,
6451         elmo-nntp-default-user,
6452         elmo-nntp-default-port,
6453         elmo-nntp-default-stream-type,
6454         elmo-nntp-stream-type-alist): Ditto.
6455
6456         * elmo-vars.el: Follow changes above.
6457         (elmo-setting): New custom group; added 'elmo-setting group to
6458         above variables.
6459
6460         * elmo-version.el (elmo-version): Up to 2.7.3.
6461
6462         * acap.el (acap-parse-response): Don't delete process when BYE
6463         response (It causes hang-up on slow network environment).
6464         (toplevel): Added comment.
6465
6466 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6467
6468         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6469
6470         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6471         parsing NIL.
6472         (acap-parse-return-metadata): Ditto.
6473
6474         * slp.el: New file.
6475         (toplevel): Fixed typo.
6476
6477         * acap.el: New file.
6478         (acap-network-stream-open): Show "Connecting..." message.
6479         (acap-parse-response): Fixed problem for BYE untagged response.
6480         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6481         (toplevel): Added tiny comments.
6482
6483 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6484
6485         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6486         space delimiter for uidl response.
6487
6488 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6489
6490         * elmo-vars.el (elmo-use-semi): Eliminated.
6491
6492         * elmo-util.el (elmo-string-assoc-all): New function.
6493
6494 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6495
6496         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6497         property 'mime-preview-situation for `mime-preview-quit'.
6498
6499 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6500
6501         * elmo.el (elmo-message-fetch-with-cache-process): Call
6502         elmo-message-fetch-internal instead of causing an error when fetch
6503         strategy is 'entire but only 'section cache is available.
6504
6505 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6506
6507         * elmo-version.el (elmo-version): Up to 2.7.2.
6508
6509         * elmo.el (elmo-generic-folder-append-messages): Make
6510         fetch-strategy with `use-cache'.
6511
6512         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6513         (elmo-dop-queue-method-name): New macro.
6514
6515 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6516
6517         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6518         unbalanced parenthesis.
6519
6520 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6521
6522         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6523
6524 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6525
6526         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6527         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6528
6529 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6530
6531         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6532         local variables.
6533
6534 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6535
6536         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6537         (elmo-message-use-cache-p): Define.
6538         (elmo-folder-msgdb-create): Treat cache.
6539
6540 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6541
6542         * elmo-nntp.el (elmo-network-initialize-session): Call
6543         `elmo-nntp-send-mode-reader'.
6544         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6545
6546 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6547
6548         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6549         alist.
6550         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6551         assoc.
6552
6553         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6554         for `elmo-plugged-p'.
6555         (elmo-open-network-stream): Fixed stream-type argument.
6556
6557 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6558
6559         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6560         unknown archive type is specified.
6561
6562 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6563
6564         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6565
6566         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6567         while loading msgdb.
6568
6569         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6570         (elmo-folder-open-internal): Rewrite.
6571
6572 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6573
6574         * elmo-mime.el (elmo-mime-display-as-is-internal):
6575         Adjust buffer-multibyte status.
6576
6577 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6578
6579         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6580         of elmo-condition-find-key.
6581
6582         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6583         (elmo-condition-in-msgdb-p): Ditto.
6584         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6585         argument.
6586
6587 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6588
6589         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6590
6591 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6592
6593         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6594         label for elmo-display-progress.
6595
6596 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6597
6598         * elmo.el (elmo-folder-clear): New method.
6599         (elmo-folder-clear): Define.
6600         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6601
6602         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6603         (elmo-folder-clear): Define.
6604
6605         * elmo-map.el (elmo-folder-clear): Define.
6606
6607         * elmo-version.el (elmo-version): Up to 2.7.1.
6608
6609 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6610
6611         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6612         updates.
6613
6614 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6615
6616         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6617         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6618
6619 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6620
6621         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6622
6623         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6624         and re-written.
6625
6626         * elmo-imap4.el (elmo-folder-initialize): Use
6627         elmo-get-network-stream-type.
6628
6629         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6630
6631         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6632
6633 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6634
6635         * elmo.el (elmo-message-encache): Set unread argument for
6636         elmo-message-fetch.
6637
6638         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6639
6640         * elmo.el (elmo-net-port-info): New method.
6641
6642         * elmo-shimbun.el (elmo-net-port-info): Define.
6643         (elmo-message-encache): Ditto.
6644
6645         * elmo-net.el (elmo-net-port-info): Define as method.
6646
6647         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6648         unplugged status when elmo-enable-disconnected-operation is t.
6649
6650         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6651         of spool folder before checking new number.
6652
6653 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6654
6655         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6656         (elmo-network-setup-session): Ditto.
6657         (elmo-message-fetch-plugged): Ditto.
6658         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6659         (elmo-network-initialize-session): Ditto.
6660         (elmo-pop3-read-response): Abolish 3rd argument.
6661         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6662         (elmo-pop3-read-contents): Ditto.
6663         (elmo-pop3-read-body): Ditto.
6664         (elmo-folder-status): Call elmo-folder-close.
6665         (elmo-pop3-lock): Abolish.
6666         (elmo-pop3-unlock): Ditto.
6667         (elmo-pop3-locked-p): Ditto.
6668         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6669
6670 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6671
6672         * elmo-version.el (elmo-version): Up to 2.7.0.
6673
6674         * elmo-pop3.el (elmo-pop3-debug): New variable.
6675         (elmo-pop3-debug-inhibit-logging): Ditto.
6676         (elmo-pop3-debug): New function.
6677         (elmo-pop3-send-command): Call elmo-pop3-debug.
6678         (elmo-pop3-read-response): Added keep-lock optional argument;
6679         Don't unlock if keep-lock is non-nil.
6680         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6681         (elmo-network-authenticate-session): Bind
6682         elmo-pop3-debug-inhibit-logging as t.
6683         (elmo-network-setup-session): Call elmo-pop3-read-response with
6684         keep-lock argument.
6685         (elmo-pop3-read-msg): Ditto.
6686         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6687         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6688         (elmo-network-initialize-session): Call elmo-pop3-lock.
6689         (elmo-folder-close-internal): Don't clear location-alist slot.
6690         (elmo-folder-check): Clear location-alist slot.
6691
6692 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6693
6694         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6695         (elmo-pop3-send-command): Call elmo-pop3-lock.
6696         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6697         (elmo-pop3-read-contents): Ditto.
6698         (elmo-pop3-lock): New function.
6699         (elmo-pop3-unlock): Ditto.
6700         (elmo-pop3-locked-p): Ditto.
6701         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6702         returns t.
6703
6704 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6705
6706         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6707
6708         * elmo-util.el (elmo-file-field-primitive-condition-match):
6709         New inline function (Don't fetch file content if "first" or "last").
6710         (elmo-file-field-condition-match): Use
6711         elmo-file-field-primitive-condition-match.
6712
6713         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6714         "first".
6715
6716         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6717         (elmo-message-fetch-plugged): Fixed.
6718
6719         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6720
6721 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6722
6723         * elmo.el (elmo-folder-move-messages): Bind
6724         elmo-inhibit-display-retrieval-progress as t while moving messages.
6725
6726         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6727         New variable.
6728         (elmo-inhibit-display-retrieval-progress): Ditto.
6729
6730         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6731         for retrieval progress;
6732         Don't display progress when total buffer size is smaller than
6733         elmo-display-retrieval-progress-threshold.
6734         (elmo-message-fetch-plugged): Don't display progress when
6735         elmo-inhibit-display-retrieval-progress is non-nil.
6736
6737         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6738         for retrieval progress;
6739         Don't display progress when literal size is smaller than
6740         elmo-display-retrieval-progress-threshold.
6741         (elmo-imap4-message-fetch): Don't display progress when
6742         elmo-inhibit-display-retrieval-progress is non-nil.
6743
6744 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6745
6746         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6747         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6748         (elmo-imap4-message-fetch): Likewise.
6749
6750         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6751         (elmo-shimbun-index-range-alist): Ditto.
6752         (elmo-shimbun-use-entire-index): Abolish.
6753         (shimbun-mua-use-entire-index): Ditto.
6754         (elmo-shimbun-folder): Added new slot `range'.
6755         (elmo-folder-initialize): Setup slot `range'.
6756
6757 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6758
6759         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6760         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6761         (elmo-shimbun-get-headers): Use return value of
6762         `shimbun-article-expiration-days'.
6763         (elmo-folder-close-internal): Clean up last-check slot.
6764
6765         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6766         (elmo-pop3-total-size): New variable.
6767         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6768
6769         * elmo.el (elmo-folder-reserve-status-p): New method.
6770
6771         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6772         (elmo-shimbun-use-entire-index): New user option.
6773         (shimbun-elmo-mua): New class.
6774         (shimbun-mua-search-id): Define.
6775         (shimbun-mua-use-entire-index): Ditto.
6776         (elmo-shimbun-folder:last-check): New slot.
6777         (elmo-shimbun-headers-cache-header-list): Abolish.
6778         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6779         (elmo-shimbun-headers-cache-header-hash): Ditto.
6780         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6781         (elmo-shimbun-headers-cache-last-check): Ditto.
6782         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6783         (elmo-shimbun-headers-check-p): Rewrite.
6784         (elmo-shimbun-msgdb-to-headers): New function.
6785         (elmo-shimbun-get-headers): Rewrite.
6786         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6787         (elmo-folder-open-internal): Get headers only if
6788         `elmo-shimbun-headers-check-p' is non-nil.
6789         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6790         is non-nil.
6791         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6792         (elmo-quit): Removed.
6793
6794         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6795         function.
6796         (elmo-msgdb-overview-entity-set-extra): Ditto.
6797         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6798
6799         * elmo-map.el (elmo-folder-status): Don't call
6800         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6801         is non-nil.
6802
6803 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6804
6805         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6806         of `elmo-msgdb-search-internal-primitive' when condition's car is
6807         `and' or `or'.
6808
6809 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6810
6811         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6812
6813 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6814
6815         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6816         call `elmo-pipe-drain'.
6817
6818 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6819
6820         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6821         typo. (elmo-cache-folder -> elmo-mark-folder)
6822
6823 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6824
6825         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6826         `elmo-message-fetch'.
6827
6828 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6829
6830         * elmo-net.el (elmo-message-encache): Fixed typo.
6831         (elmo-message-fetch-unplugged): Changed call
6832         `elmo-message-fetch-internal' without argument `outbuf'.
6833
6834 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6835
6836         * elmo.el (elmo-message-encache): Define as generic function.
6837         (elmo-message-fetch-field): New generic function.
6838         (elmo-message-fetch-with-cache-process): Cause an error when
6839         fetch strategy is 'entire but only 'section cache is available.
6840         (toplevel): Fixed nmz folder definition.
6841
6842         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6843         (elmo-msgdb-resume-list-filename): Ditto.
6844         (elmo-queue-filename): Ditto.
6845         (elmo-enable-disconnected-operation): Changed default value to t.
6846
6847         * elmo-util.el (elmo-cache-path-section-p): New function.
6848         (elmo-file-cache-get): Use it.
6849         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6850         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6851         (elmo-dop-queue-save): Ditto.
6852
6853         * elmo-net.el (elmo-folder-status-unplugged): Call
6854         elmo-folder-status-dop.
6855         (elmo-folder-list-messages-unplugged): Implemented.
6856         (elmo-folder-delete-messages-unplugged): Define.
6857         (elmo-folder-msgdb-create): Define.
6858         (elmo-folder-msgdb-create-unplugged): Define.
6859         (elmo-folder-mark-as-read-unplugged): Ditto.
6860         (elmo-folder-unmark-read-unplugged): Ditto.
6861         (elmo-folder-mark-as-important-unplugged): Ditto.
6862         (elmo-folder-unmark-important-unplugged): Ditto.
6863         (elmo-message-encache): Ditto.
6864
6865         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6866         (elmo-dop-queue-save): Ditto.
6867
6868         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6869         `elmo-folder-msgdb-create'.
6870         (elmo-folder-append-buffer): Implemented unplugged operation.
6871         (elmo-folder-append-messages): Call parent method in unplugged status.
6872         (elmo-message-fetch-unplugged): Removed definition.
6873         (elmo-message-fetch-field): Implemented.
6874
6875         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6876         (elmo-dop-folder): Removed variable definition.
6877         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6878         (elmo-dop-queue-flush): Implemented.
6879         (elmo-dop-queue-merge): Removed definition (TODO).
6880         (elmo-dop-spool-folder): New function.
6881         (elmo-dop-spool-folder-append-buffer): Ditto.
6882         (elmo-dop-spool-folder-list-messages): Ditto.
6883         (elmo-dop-list-deleting-messages): Ditto.
6884         (elmo-folder-append-buffer-dop): Ditto.
6885         (elmo-folder-delete-messages-dop): Ditto.
6886         (elmo-message-encache-dop): New inline function.
6887         (elmo-create-folder-dop): Ditto.
6888         (elmo-folder-mark-as-read-dop): Ditto.
6889         (elmo-folder-unmark-read-dop): Ditto.
6890         (elmo-folder-mark-as-important-dop): Ditto.
6891         (elmo-folder-unmark-important-dop): Ditto.
6892         (elmo-folder-status-dop): Fixed.
6893         (elmo-folder-append-buffer-dop-delayed): New function.
6894         (elmo-folder-delete-messages-dop-delayed): Ditto.
6895         (elmo-dop-msgdb): Ditto.
6896
6897 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6898
6899         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6900
6901 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6902
6903         * elmo.el (elmo-folder-move-messages): Fixed problem when
6904         `dst-folder' is 'null.
6905
6906 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6907
6908         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6909         instead of current mark.
6910
6911         * elmo-multi.el (elmo-folder-list-importants-internal): No
6912         operation if importants is not list.
6913
6914         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6915         Return t if importants is not list.
6916
6917         * elmo-map.el (elmo-map-folder-list-importants): Define.
6918         (elmo-folder-list-importants-internal): Check return value of
6919         `elmo-map-folder-list-importants-internal'.
6920
6921         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6922
6923         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6924
6925         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6926
6927         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6928
6929 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6930
6931         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6932         (Patch is provided by <kita@coe.nttdata.co.jp>).
6933
6934 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6935
6936         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6937         mark folder.
6938
6939 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6940
6941         * elmo.el (elmo-message-fetch): Define.
6942         (elmo-message-fetch-with-cache-process): New generic method.
6943         (elmo-message-fetch-internal): New generic method.
6944         (elmo-folder-synchronize):
6945
6946         * elmo-archive.el (elmo-message-fetch-internal): Define.
6947         (elmo-message-fetch): Eliminated.
6948
6949         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6950         (elmo-message-fetch): Eliminated.
6951
6952         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6953         argument OUTBUF.
6954         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6955
6956         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6957         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6958
6959         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6960         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6961
6962         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6963
6964         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6965
6966         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6967
6968         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6969         (elmo-message-fetch-unplugged): New generic method.
6970         (elmo-message-fetch-internal): Remove cache process (Renamed from
6971         `elmo-message-fetch').
6972
6973         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6974         (elmo-message-fetch): Eliminated.
6975         (elmo-message-fetch-unplugged): Ditto.
6976
6977         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6978
6979 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6980
6981         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6982         of `to-be-deleted' from number-alist to number-list.
6983
6984 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6985
6986         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6987         (elmo-folder-mark-as-important): Ditto.
6988
6989 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6990
6991         * elmo.el (elmo-folder): Added process-duplicates slot.
6992
6993         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6994         (elmo-folder-unmark-read): Ditto.
6995         (elmo-folder-unmark-important): Ditto.
6996         (elmo-folder-mark-as-important): Ditto.
6997
6998         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6999         duplicated message processing.
7000
7001         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
7002
7003 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7004
7005         * elmo-util.el (elmo-list-subdirectories-1): New function.
7006         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
7007         (elmo-mapcar-list-of-list): New function.
7008
7009         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
7010         `elmo-mapcar-list-of-list' instead of `mapcar'.
7011
7012         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
7013
7014         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
7015         `elmo-have-link-count'. Return the fully qualified folder name.
7016
7017 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
7018
7019         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
7020         (elmo-shimbun-headers-cache): New internal variable.
7021         (elmo-shimbun-headers-cache-header-list): New inline function.
7022         (elmo-shimbun-headers-cache-set-header-list): Ditto.
7023         (elmo-shimbun-headers-cache-header-hash): Ditto.
7024         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
7025         (elmo-shimbun-headers-cache-last-check): Ditto.
7026         (elmo-shimbun-headers-cache-set-last-check): Ditto.
7027         (elmo-shimbun-lapse-seconds): Ditto.
7028         (elmo-shimbun-headers-cache-check-p): Ditto.
7029         (elmo-shimbun-get-headers): New function.
7030         (elmo-folder-open-internal): Call it.
7031         (elmo-quit): Define (Clear headers-cache).
7032
7033 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
7034
7035         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
7036
7037         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
7038         (elmo-msgdb-flist-save): Ditto.
7039
7040         * elmo-shimbun.el (elmo-folder-list-subfolders):
7041         Use `shimbun-groups' instead of `shimbun-groups-internal'.
7042         (elmo-folder-exists-p): Ditto.
7043
7044         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
7045         argument for `shimbun-header-insert'.
7046
7047 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
7048
7049         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
7050         at first time.
7051
7052         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
7053         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
7054
7055 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
7056
7057         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
7058         (elmo-folder-plugged-p): Define.
7059         (elmo-folder-set-plugged): Ditto.
7060         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
7061         (elmo-folder-list-messages-internal): Return t if unplugged.
7062         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
7063
7064         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
7065         when elmo-folder-list-messages-internal method of children returns t.
7066
7067         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
7068         pair is nil.
7069         (elmo-folder-open-internal): Don't update if unplugged status.
7070
7071 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
7072
7073         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
7074         new message.
7075
7076 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
7077
7078         * elmo-util.el (elmo-file-cache-save): Ignore errors.
7079
7080         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
7081         saving.
7082
7083 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
7084
7085         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
7086
7087         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
7088         (elmo-folder-open-internal): Set up headers slot.
7089         (elmo-folder-check): Call elmo-folder-close-internal and
7090         elmo-folder-open-internal.
7091         (elmo-folder-close-internal): Clean up headers slot.
7092
7093 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7094
7095         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
7096         exactly folder list.
7097         (elmo-folder-append-messages): Fixed append archive with prefix.
7098
7099         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
7100         make temp files with start-number.
7101
7102         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
7103
7104 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7105
7106         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
7107         argument `visible-only'.
7108         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
7109         instead of `if'.
7110
7111         * elmo-pop3.el (elmo-folder-open-internal): Check
7112         `elmo-inhibit-number-mapping' is non-nil.
7113
7114         * elmo-pipe.el (elmo-folder-status): Fixed.
7115
7116 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
7117
7118         * elmo.el (elmo-dop-queue-flush): Added autload setting.
7119
7120         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
7121         (elmo-folder-open-internal): Setup `header-hash' slot.
7122         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
7123         information.
7124         (elmo-map-message-fetch): Ditto.
7125
7126 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
7127
7128         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7129         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7130         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7131         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
7132
7133         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
7134
7135 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
7136
7137         * sb-airs.el: Added footer.
7138
7139         * shimbun.el (shimbun-article): Define as luna-method.
7140
7141         * sb-tcup.el: New file.
7142
7143         * sb-airs.el (toplevel): Require 'sb-mhonarc.
7144         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
7145
7146 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
7147
7148         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
7149         (shimbun-get-headers): Ditto.
7150
7151         * elmo.el: Moved obsolete variable definitions from
7152         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
7153
7154         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
7155         groups.
7156
7157         * shimbun.el: New file.
7158
7159         * elmo-shimbun.el: New file.
7160
7161         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7162         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7163         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7164         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
7165
7166 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
7167
7168         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
7169         hierarchy is t.
7170
7171 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
7172
7173         * elmo.el (elmo-folder-msgdb): Define as macro.
7174         (elmo-folder-open): Added argument `load-msgdb'.
7175         (elmo-generic-folder-open): Ditto.
7176         (elmo-folder-encache): New function.
7177
7178         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
7179
7180         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
7181
7182         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
7183         Eliminated argument FOLDER and added argument MSGDB.
7184         (elmo-dop-queue-load): Moved from elmo-dop.el.
7185         (elmo-dop-queue-save): Ditto.
7186
7187         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
7188
7189         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
7190
7191         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
7192         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
7193         (elmo-filter-folder-list-importants-internal): Ditto.
7194
7195         * elmo-map.el (elmo-folder-pack-number): Ditto.
7196
7197         * elmo-mime.el (elmo-mime-message-display): Ditto.
7198
7199         * elmo.el (elmo-generic-folder-commit): Ditto.
7200         (elmo-folder-list-unreads): Ditto.
7201         (elmo-folder-list-importants): Ditto.
7202         (elmo-generic-folder-commit): Ditto.
7203         (elmo-message-set-mark): Ditto.
7204         (elmo-generic-folder-append-msgdb): Ditto.
7205         (elmo-folder-synchronize): Ditto.
7206         (elmo-folder-messages): Ditto.
7207         (elmo-init): Call elmo-dop-queue-load.
7208         (elmo-folder-list-messages): Ditto.
7209
7210         * elmo-nntp.el (elmo-folder-update-number): Ditto.
7211         (elmo-nntp-folder-process-crosspost): Ditto.
7212         (elmo-folder-list-unreads-internal): Ditto.
7213
7214         * elmo-dop.el: Removed old functions.
7215
7216 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
7217
7218         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
7219         `folder' to `msgdb'.
7220
7221 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
7222
7223         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
7224         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
7225
7226         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
7227         case-fold-search.
7228
7229 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
7230
7231         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
7232         defined.
7233
7234         * mmimap.el (toplevel): Require 'mime-parse and 'static.
7235         (mmimap-parse-parameters-from-list): Define as alias for
7236         `mime-decode-parameter-plist' if it is defined as function.
7237         (mmimap-make-mime-entity): Added argument `number'.
7238         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
7239         as 0.
7240         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
7241
7242         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
7243
7244         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
7245
7246         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
7247
7248 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
7249
7250         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
7251
7252         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
7253         when elmo-imap4-default-authenticate-type is nil.
7254         (elmo-folder-list-subfolders): Ditto
7255         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
7256         (elmo-imap4-fetch-callback-1-subr): Renamed from
7257         `elmo-imap4-fetch-callback-1' and define as inline function.
7258         (elmo-imap4-fetch-callback-1):
7259         Renamed from `elmo-imap4-fetch-callback'.
7260         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
7261
7262         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
7263         msgdb path (To keep compatibility with main trunk).
7264
7265         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
7266
7267         * elmo-util.el (elmo-make-file-cache): Moved position of
7268         some macros.
7269
7270         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
7271         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
7272         instead of `elmo-pop3-inhibit-uidl'.
7273         (elmo-folder-exists-p): Ditto.
7274         (elmo-pop3-folder-list-messages): Ditto.
7275
7276         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
7277         instead of `elmo-pop3-inhibit-uidl'.
7278         (elmo-folder-status): Ditto.
7279
7280         * elmo-dop.el (elmo-dop-folder): New variable.
7281         (elmo-dop-lock-message): Eliminated.
7282         (elmo-dop-unlock-message): Ditto.
7283         (elmo-dop-lock-list-load): Ditto.
7284         (elmo-dop-lock-list-save): Ditto.
7285         (elmo-dop-delete-folder): Ditto.
7286         (elmo-dop-rename-folder): Ditto.
7287
7288         * elmo.el: Removed incomplete commentary.
7289
7290 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7291
7292         * elmo.el (toplevel): Require 'elmo-version first;
7293         for little `recursive-load-depth' settings.
7294         Fix "ends here" comment.
7295
7296 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
7297
7298         * elmo-util.el (toplevel): Require 'poem;
7299         Some functions are moved from elmo-cache.el.
7300
7301         * elmo-net.el (toplevel): Require 'elmo-cache.
7302
7303         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
7304
7305         * elmo.el (toplevel): Ditto.
7306
7307         * elmo-cache.el: Rewrite with luna;
7308         Some functions are moved to elmo-util.el.
7309
7310         * elmo-internal.el (elmo-internal-folder-list): New variable.
7311         (elmo-internal-folder-initialize): Rewrite.
7312         (elmo-folder-list-subfolders): Ditto.
7313
7314         * elmo-cache.el (elmo-cache-search-all): Eliminated.
7315         (elmo-cache-collect-sub-directories): Ditto.
7316
7317 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
7318
7319         * elmo-version.el (elmo-version): Up to 2.5.8.
7320
7321         * elmo.el (elmo-folder-list-messages-mark-match): New function.
7322
7323         * elmo-util.el (elmo-list-insert): New function.
7324
7325 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
7326
7327         * elmo.el (elmo-init): New function.
7328         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
7329
7330         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
7331         (Renamed from `elmo-localdir-header-chop-length').
7332
7333         * elmo-pop3.el (elmo-pop3-use-cache,
7334         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
7335
7336         * elmo-nntp.el (elmo-message-fetch): Define.
7337         (elmo-message-fetch-unplugged): Ditto.
7338         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
7339         (elmo-nntp-use-cache): Ditto.
7340         (elmo-nntp-max-number-precedes-list-active): Ditto.
7341
7342         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
7343
7344         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
7345         `elmo-msgdb-insert-file-header'.
7346         Use `elmo-msgdb-file-header-chop-length'.
7347
7348         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
7349         `elmo-vars.el'.
7350
7351         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
7352         (elmo-cache-msgdb-create-overview-entity-from-file): Use
7353         `elmo-msgdb-insert-file-header'.
7354
7355         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
7356         Use new variable;
7357         Define obsolete variables with `elmo-define-obsolete-variable',
7358
7359         * elmo-util.el (elmo-warning-buffer-name): New constant.
7360         (elmo-warning): New function.
7361         (elmo-obsolete-variable-alist): New variable.
7362         (elmo-obsolete-variable-show-warnings): New variable.
7363         (elmo-define-obsolete-variable): New function.
7364         (elmo-resque-obsolete-variable): Ditto.
7365         (elmo-resque-obsolete-variables): Ditto.
7366
7367 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7368
7369         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
7370         Eliminated.
7371
7372         * elmo-pop3.el, elmo-nntp.el: Use custom.
7373
7374 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7375
7376         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
7377         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
7378
7379 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7380
7381         * Luna-fy Kenichi OKADA's following changes.
7382         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
7383         `nohide'.
7384         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
7385
7386 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
7387
7388         * elmo-util.el (elmo-display-progress): Prefer
7389         `progress-feedback-with-label' to `lprogress-display'.
7390
7391 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7392
7393         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
7394
7395 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
7396
7397         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
7398         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
7399         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7400         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7401         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
7402         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
7403         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7404         * elmo-filter.el (elmo-filter-list-folder): Ditto.
7405         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7406         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7407         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7408         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7409         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7410
7411 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7412
7413         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
7414         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7415
7416 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7417
7418         * elmo.el (elmo-folder-process-crosspost): New generic method.
7419         (elmo-folder-writable-p): Ditto.
7420         (elmo-folder-message-appendable-p): Eliminated.
7421         (elmo-generic-folder-append-msgdb): Rewrite.
7422         (elmo-newsgroups-hashtb): New internal variable.
7423         (elmo-crosspost-message-set): Eliminated.
7424         (elmo-crosspost-message-delete): Ditto.
7425         (elmo-setup-subscribed-newsgroups): New function.
7426         (elmo-crosspost-message-alist-modified): New internal variable.
7427         (elmo-crosspost-message-alist-load): New function (Renamed from
7428         `wl-crosspost-alist-load').
7429         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7430         `wl-crosspost-alist-save').
7431
7432         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7433
7434         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7435         `unreads'.
7436         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7437         elmo-newsgroups-hashtb).
7438         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7439         `elmo-nntp-folder-update-crosspost-message-alist'.
7440         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7441         `elmo-nntp-groups-hashtb'.
7442         (elmo-nntp-make-groups-hashtb): Eliminated.
7443         (elmo-nntp-parse-newsgroups): New function (Renamed from
7444         `wl-parse-newsgroups').
7445         (elmo-folder-creatable-p, elmo-folder-writable-p,
7446         elmo-folder-close-internal, elmo-folder-mark-as-read,
7447         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7448         Define.
7449         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7450
7451         * elmo-net.el (elmo-message-fetch): Check buffer size.
7452
7453         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7454
7455         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7456
7457         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7458         before `close' command.
7459
7460         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7461         `mark-alist' (All other related portions are changed).
7462
7463 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7464
7465         * elmo-util.el (elmo-create-hash-size): Eliminated.
7466         (elmo-make-hash) Make a hash with `one less than a power of two'
7467         length.
7468
7469         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7470         (elmo-hash-maximum-size): Changed value.
7471
7472 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7473
7474         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7475         (elmo-mime-message-display-as-is): Ditto.
7476
7477 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7478
7479         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7480         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7481
7482 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7483
7484         * elmo-mark.el: New file.
7485
7486         * elmo-internal.el: Rewrite (Almost empty).
7487
7488 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7489
7490         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7491         (mime-imap-entity-header-string): Ditto.
7492         (mmimap-entity-section): Rewrite.
7493
7494 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7495
7496         * elmo-nmz.el: New file.
7497
7498         * elmo-pipe.el: Rewrite with luna.
7499
7500 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7501
7502         * elmo-archive.el: Rewrite with luna.
7503
7504         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7505         (elmo-folder-list-importants-internal): Ditto.
7506
7507 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7508
7509         * elmo-archive.el (elmo-archive-version): Abolish.
7510         (toplevel) Removed `boso' comment.
7511
7512 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7513
7514         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7515         elmo-msgdb-add-msgs-to-seen-list-subr;
7516         Changed argument seen-marks to unread-marks.
7517
7518         * elmo-nntp.el: Rewrite with luna.
7519
7520 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7521
7522         * elmo-filter.el: Rewrite with luna.
7523
7524 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7525
7526         * elmo-pop3.el: Rewrite with luna.
7527
7528 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7529
7530         * elmo-multi.el: Rewrite with luna.
7531
7532         * elmo-vars.el (elmo-use-killed-list): Abolish.
7533         All other related portions are changed.
7534         (elmo-filename-replace-string-alist): Renamed from
7535         elmo-msgid-replace-string-alist.
7536
7537 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7538
7539         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7540
7541         * elmo-map.el: New file.
7542         * elmo-maildir.el: Rewrite with luna.
7543
7544 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7545
7546         * elmo.el: Changed meaning of `elmo-folder-commit'.
7547         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7548
7549 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7550
7551         * elmo.el (elmo-folder-append-buffer): New function.
7552         (Renamed from `elmo-append-msg')
7553
7554 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7555
7556         * elmo-mime.el: New file.
7557
7558 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7559
7560         * elmo-cache.el: Rewrite.
7561
7562 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7563
7564         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7565
7566 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7567
7568         * elmo-vars.el (elmo): New group.
7569         (elmo-strict-diff-folder-regexp): New variable.
7570
7571         * elmo-util.el (elmo-call-func): Abolish.
7572         (elmo-folder-get-type): Ditto.
7573         (elmo-*-get-spec): Ditto.
7574         (elmo-*-spec-*): Ditto.
7575         (elmo-imap4-identical-name-space-p): Ditto.
7576         (elmo-folder-identical-system-p): Ditto.
7577         (elmo-folder-direct-copy-alist): Ditto.
7578         (elmo-folder-direct-copy-p): Ditto.
7579
7580         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7581         (elmo-folder-initialize): Define.
7582         (elmo-folder-get-primitive-list): Ditto.
7583
7584         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7585         (elmo-folder-initialize): Define.
7586         Renamed `elmo-network-session-host-internal' to
7587         `elmo-network-session-server-internal'.
7588
7589         * elmo-multi.el (elmo-multi-folder): New luna class.
7590         (elmo-folder-initialize): Define.
7591         (elmo-folder-get-primitive-list): Ditto.
7592         (elmo-folder-contains-type): Ditto.
7593         (elmo-message-use-cache-p): Ditto.
7594
7595         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7596         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7597
7598         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7599         (elmo-folder-initialize): Define.
7600
7601         * elmo-filter.el (elmo-filter-folder): New luna class.
7602         (elmo-folder-initialize): Define.
7603         (elmo-folder-get-primitive-list): Ditto.
7604         (elmo-folder-contains-type): Ditto.
7605
7606 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7607
7608         * elmo-imap4.el: Rewrite with luna.
7609
7610         * mmimap.el: New file.
7611
7612         * mmelmo.el, mmelmo-imap4.el: Removed.
7613
7614         * elmo-net.el: Ditto.
7615
7616         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7617         (elmo-folder-initialize): Define.
7618
7619         * elmo-archive.el (elmo-archive-folder): New luna class.
7620         (elmo-folder-initialize): Define.
7621
7622         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7623         `elmo-folder-msgdb-path'.
7624         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7625         `elmo-make-folder'.
7626
7627 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7628
7629         * elmo.el: New file.
7630
7631         * elmo2.el: Renamed to elmo.el.
7632
7633 \f
7634 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7635
7636         * elmo-cache.el (elmo-cache-expire-by-size): Count
7637         a disk usage for a cache file entry in KB even when
7638         its kind is a directory.
7639
7640 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7641
7642         * elmo-version.el (elmo-version): Up to 2.5.7.
7643
7644 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7645
7646         * elmo-version.el (elmo-version): Up to 2.5.6.
7647
7648 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7649
7650         * elmo-version.el (elmo-version): Up to 2.5.5.
7651
7652 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7653
7654         * elmo-imap4.el (elmo-network-authenticate-session):
7655         Fixed a logic for response checking.
7656
7657 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7658
7659         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7660         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7661         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7662         `sasl-mechanisms'.
7663
7664         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7665         for `starttls-open-stream' and `starttls-negotiate'.
7666
7667         * elmo-nntp.el: Remove autoload settings for
7668         `starttls-open-stream' and `starttls-negotiate'.
7669
7670         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7671         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7672         `luna-define-class' with `eval-and-compile'.
7673
7674 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7675
7676         * elmo-util.el (elmo-read-search-condition-internal):
7677         Require an element of table for searching field.
7678
7679 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7680
7681         * elmo-version.el (elmo-version): Up to 2.5.4.
7682
7683 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7684
7685         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7686
7687 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7688
7689         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7690
7691 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7692
7693         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7694         before greeting.
7695
7696 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7697
7698         * elmo-imap4.el (elmo-imap4-delete-folder):
7699         Send "close" before "delete" (Use commented out line).
7700         (elmo-imap4-rename-folder): Ditto.
7701
7702         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7703         folder string itself.
7704         (elmo-dop-list-deleted): New function.
7705         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7706         killed.
7707
7708         * elmo-util.el (elmo-string-rassoc-all): New function.
7709
7710 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7711
7712         * elmo-version.el (elmo-version): Up to 2.5.3.
7713
7714         * elmo-net.el (elmo-network-get-session): Changed logic for
7715         checking process status.
7716
7717         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7718         process is nil;
7719         Changed logic for checking process status.
7720
7721 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7722
7723         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7724         before greeting.
7725         (elmo-network-setup-session): Set UIDL hash size according to
7726         the length of list response.
7727         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7728         according to the length of list response;
7729         Return the length of list response.
7730         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7731
7732 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7733
7734         * elmo-imap4.el (toplevel): Require 'ssl.
7735         Add autoload 'starttls.
7736         * elmo-pop3.el (toplevel): Ditto.
7737         * elmo-nntp.el (toplevel): Ditto.
7738
7739 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7740
7741         * elmo-imap4.el (toplevel): defun at compile time.
7742         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7743         sasl-next-step, sasl-step-data, sasl-step-set-data.
7744         * elmo-pop3.el (toplevel): Ditto.
7745
7746 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7747
7748         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7749
7750 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7751
7752         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7753         if error.
7754         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7755         and `elmo-pop-auth-apop'.
7756
7757 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7758
7759         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7760
7761 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7762
7763         * elmo-pop3.el (elmo-network-authenticate-session): Split
7764         encoded response value.
7765
7766 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7767
7768         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7769         `elmo-pop3-force-login'.
7770         Redefine `sasl-mechanisms'.
7771         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7772
7773 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7774
7775         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7776         Delete `elmo-imap4-authenticator-alist'.
7777         (elmo-imap4-auth-cram-md5): Delete.
7778         (elmo-imap4-auth-digest-md5): Delete.
7779
7780 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7781
7782         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7783         (elmo-pop3-auth-scram-md5): Ditto.
7784         (elmo-pop3-auth-cram-md5): Ditto.
7785
7786 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7787
7788         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7789         Delete `elmo-pop3-authenticator-alist'.
7790
7791 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7792
7793         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7794         new SASL API.
7795         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7796
7797 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7798
7799         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7800
7801 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7802
7803         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7804         Fixed problem when `elmo-pop3-use-uidl' is nil.
7805         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7806
7807 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7808
7809         * elmo-version.el (elmo-version): Up to 2.5.2.
7810
7811 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7812
7813         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7814         New function.
7815         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7816         (elmo-pop3-msgdb-create-as-numlist): Use it.
7817
7818         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7819         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7820
7821         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7822         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7823
7824 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7825
7826         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7827         when elmo-mark-as-read is called with second argument nil.
7828
7829 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7830
7831         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7832         Moved to elmo-util.el.
7833
7834         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7835         Moved from elmo-pipe.el
7836
7837         * elmo-archive.el (elmo-archive-call-process): Enclose with
7838         static-if.
7839
7840         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7841         "RFC822" (because RFC822.PEEK is obsolete).
7842         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7843
7844 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7845
7846         * elmo-archive.el (elmo-archive-call-process): Don't check for
7847         the exit status when Nemacs is running.
7848
7849 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7850
7851         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7852         'plain.
7853
7854         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7855         (elmo-pop3-get-spec): Set default of auth to 'user.
7856
7857         * elmo-imap4.el (elmo-imap4-session-check):
7858         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7859         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7860         (elmo-imap4-auth-login): New function; Revival.
7861         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7862         `elmo-imap4-auth-login'.
7863
7864 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7865
7866         * elmo2.el (toplevel): Move `product-provide' declare.
7867         * mmelmo.el (toplevel): Ditto.
7868
7869 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7870
7871         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7872
7873 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7874
7875         * elmo-util.el (elmo-folder-get-store-type): New function.
7876         (elmo-folder-direct-copy-p): Use it.
7877
7878 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7879
7880         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7881         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7882         and result of `elmo-imap4-use-flag-p'.
7883         (elmo-imap4-fetch-callback-1): Set mark according to
7884         the result of `elmo-imap4-use-flag-p'.
7885
7886 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7887
7888         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7889         (elmo-generic-list-folder-unread): Ditto.
7890         (elmo-folder-get-info): Ditto.
7891         (elmo-folder-set-info-max-by-numdb): Ditto.
7892         (elmo-folder-get-info-max): Ditto.
7893         (elmo-folder-get-info-length): Ditto.
7894         (elmo-folder-get-info-unread): Ditto.
7895         (elmo-folder-info-make-hashtb): Ditto.
7896
7897         * elmo2.el: Removed above functions.
7898
7899 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7900
7901         * elmo-imap4.el (toplevel): Require 'ssl.
7902         Add autoload 'starttls.
7903         * elmo-pop3.el (toplevel): Ditto.
7904         * elmo-nntp.el (toplevel): Ditto.
7905
7906 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7907
7908         * elmo-imap4.el (toplevel): defun at compile time.
7909         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7910         sasl-next-step, sasl-step-data, sasl-step-set-data.
7911         * elmo-pop3.el (toplevel): Ditto.
7912
7913 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7914
7915         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7916
7917 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7918
7919         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7920         if error.
7921         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7922         and `elmo-pop-auth-apop'.
7923
7924 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7925
7926         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7927
7928 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7929
7930         * elmo-pop3.el (elmo-network-authenticate-session): Split
7931         encoded response value.
7932
7933 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7934
7935         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7936         `elmo-pop3-force-login'.
7937         Redefine `sasl-mechanisms'.
7938         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7939
7940 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7941
7942         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7943         Delete `elmo-imap4-authenticator-alist'.
7944         (elmo-imap4-auth-cram-md5): Delete.
7945         (elmo-imap4-auth-digest-md5): Delete.
7946
7947 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7948
7949         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7950         (elmo-pop3-auth-scram-md5): Ditto.
7951         (elmo-pop3-auth-cram-md5): Ditto.
7952
7953 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7954
7955         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7956         Delete `elmo-pop3-authenticator-alist'.
7957
7958 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7959
7960         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7961         new SASL API.
7962         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7963
7964 \f
7965 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7966
7967         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7968
7969 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7970
7971         * elmo-nntp.el (elmo-nntp-get-folders-info):
7972         Fixed problem when '\' character is contained in user-id.
7973         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7974
7975 \f
7976 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7977
7978         * elmo-imap4.el (elmo-imap4-delete-folder):
7979         Send "close" before "delete" (Use commented out line).
7980         (elmo-imap4-rename-folder): Ditto.
7981
7982         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7983         folder string itself.
7984         (elmo-dop-list-deleted): New function.
7985         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7986         killed.
7987
7988         * elmo-util.el (elmo-string-rassoc-all): New function.
7989
7990         * elmo-version.el (elmo-version): Up to 2.5.1.
7991
7992 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7993
7994         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7995
7996         * elmo-internal.el (elmo-internal-search): Fix last change.
7997
7998 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7999
8000         * elmo-internal.el (elmo-internal-search): Rewrite.
8001         (Fixed problem which is pointed out by Akihiro MOTOKI
8002         <motoki@da.jp.nec.com>)
8003
8004         * elmo-version.el (elmo-version): Up to 2.5.0.
8005
8006 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
8007
8008         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
8009
8010 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
8011
8012         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
8013         non-nil, make hierarchy.
8014
8015 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
8016
8017         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
8018         `elmo-pop3-use-uidl' must be bound to nil.
8019         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
8020
8021 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
8022
8023         * elmo-util.el (elmo-copy-file): Don't cause an error after
8024         `add-name-to-file' failed.
8025
8026         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
8027         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
8028
8029 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8030
8031         * elmo-version.el (elmo-version): Up to 2.3.93.
8032
8033 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
8034
8035         * elmo-util.el (elmo-flatten): New function.
8036
8037 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8038
8039         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
8040         sync Author header.
8041         * elmo-cache.el (toplevel): Ditto.
8042         * elmo-database.el (toplevel): Ditto.
8043         * elmo-date.el (toplevel): Ditto.
8044         * elmo-dop.el (toplevel): Ditto.
8045         * elmo-filter.el (toplevel): Ditto.
8046         * elmo-imap4.el (toplevel): Ditto.
8047         * elmo-internal.el (toplevel): Ditto.
8048         * elmo-localdir.el (toplevel): Ditto.
8049         * elmo-localnews.el (toplevel): Ditto.
8050         * elmo-maildir.el (toplevel): Ditto.
8051         * elmo-msgdb.el (toplevel): Ditto.
8052         * elmo-multi.el (toplevel): Ditto.
8053         * elmo-net.el (toplevel): Ditto.
8054         * elmo-nntp.el (toplevel): Ditto.
8055         * elmo-pipe.el (toplevel): Ditto.
8056         * elmo-pop3.el (toplevel): Ditto.
8057         * elmo-util.el (toplevel): Ditto.
8058         * elmo-vars.el (toplevel): Ditto.
8059         * elmo2.el (toplevel): Ditto.
8060         * mmelmo-imap4.el (toplevel): Ditto.
8061         * mmelmo.el (toplevel): Ditto.
8062
8063         * elmo-version.el (elmo-version): Move to top.
8064
8065         * elmo-cache.el (toplevel): Fixed multiple Author header format.
8066         * elmo-imap4.el (toplevel): Ditto.
8067         * elmo-localdir.el (toplevel): Ditto.
8068         * elmo-msgdb.el (toplevel): Ditto.
8069         * elmo-nntp.el (toplevel): Ditto.
8070         * elmo-pop3.el (toplevel): Ditto.
8071         * elmo-version.el (toplevel): Ditto.
8072
8073         * elmo-localnews.el (toplevel): Added Keyword header.
8074
8075 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
8076
8077         * elmo-version.el (product-version-as-string): Defined using
8078         `defun-maybe'.
8079         (toplevel): Use it.
8080
8081         * elmo-localdir.el (toplevel): Updated copyright notice.
8082         * elmo-version.el (toplevel): Ditto.
8083         * elmo-msgdb.el (toplevel): Ditto.
8084         * elmo-imap4.el (toplevel): Ditto.
8085         * elmo-nntp.el (toplevel): Ditto.
8086         * elmo-pop3.el (toplevel): Ditto.
8087
8088 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
8089
8090         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
8091         messages.
8092
8093         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
8094         parameter value (It sometimes contains raw kanji).
8095
8096 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8097
8098         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
8099         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
8100
8101 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8102
8103         * elmo-imap4.el (elmo-network-initialize-session): Fix.
8104
8105 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8106
8107         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
8108         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
8109
8110 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
8111
8112         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
8113         value if selecting folder succceeded.
8114         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
8115
8116 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8117
8118         * elmo-util.el (elmo-make-directory): Fixed permission lateral
8119         representation.
8120
8121         * elmo-util.el (elmo-string-matched-member): New function.
8122
8123 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
8124
8125         * elmo-util.el (elmo-unintern): New macro.
8126         (elmo-number-set-member): Fixed docstring.
8127
8128         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
8129         tag token.
8130
8131 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
8132
8133         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
8134         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
8135
8136 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
8137
8138         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
8139         `no-error'.
8140         Added docstring.
8141         Return non-nil if selecting folder succeeded.
8142         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
8143
8144 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
8145
8146         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
8147         `file-name-completion' returns t.
8148         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
8149         (elmo-maildir-set-mark): Put `info' part to the files in the cur
8150         directory if it does not exist.
8151         (elmo-maildir-update-current): Use `while' instead of `mapcar'
8152         for iteration.
8153
8154 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
8155
8156         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
8157         enclosure (It's harmful in unplugged status).
8158
8159         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
8160
8161         * mmelmo-1.el: Removed.
8162
8163         * mmelmo-2.el: Ditto.
8164
8165         * mmelmo-imap4-1.el: Ditto.
8166
8167         * mmelmo-imap4-2.el: Ditto.
8168
8169         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
8170
8171         * mmelmo.el: Merged mmelmo-2.el.
8172
8173         * elmo-version.el (elmo-version): Up to 2.3.92.
8174
8175 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8176
8177         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
8178         elmo-update-number): Remove last period in "...done." message.
8179         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
8180         Ditto.
8181         * elmo-cache.el (elmo-cache-expire-by-size,
8182         elmo-cache-get-sorted-cache-file-list,
8183         elmo-cache-msgdb-create-as-numlist): Ditto.
8184         * elmo-dop.el (elmo-dop-save-pending-messages,
8185         (elmo-dop-flush-pending-append-operations): Ditto.
8186         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
8187         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
8188         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
8189         (elmo-localdir-pack-number): Ditto.
8190         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
8191         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
8192         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
8193         mime-write-entity-content): Ditto.
8194         * pldap.el (ldap-search-basic): Ditto.
8195
8196 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
8197
8198         * elmo-version.el (elmo-version): Up to 2.3.91.
8199
8200         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
8201         Only when filter is 'last'.
8202
8203         * elmo-util.el (elmo-condition-atom-regexp): New constant.
8204         (elmo-condition-parse-search-value): Use it.
8205         (elmo-read-search-condition-internal): Quote value only when
8206         it is not an atom.
8207
8208 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
8209
8210         * elmo2.el (elmo-generic-folder-diff): Fix.
8211
8212 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
8213
8214         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
8215         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
8216         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
8217         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8218         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
8219         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
8220
8221 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
8222
8223         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
8224         extra-fields.
8225
8226 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
8227
8228         * elmo-version.el (elmo-version): Up to 2.3.90.
8229
8230         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
8231         (elmo-imap4-list-folder-important): Ditto.
8232
8233 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8234
8235         * elmo-nntp.el (elmo-network-initialize-session): Fix.
8236
8237 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8238
8239         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
8240
8241 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
8242
8243         * elmo-nntp.el (elmo-network-initialize-session):
8244         Add starttls negotiation.
8245
8246 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8247
8248         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
8249         response.
8250         (elmo-network-setup-session): Define.
8251         Call `elmo-nntp-send-mode-reader' when session opened.
8252
8253 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8254
8255         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
8256
8257 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
8258
8259         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
8260         an invalid SPACE character ahead of `SEARCH' command.  Move
8261         a valid SPACE character following `SEARCH' from conditional
8262         `format' arguments to control-strings.
8263
8264 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8265
8266         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
8267         was succeeded.
8268
8269         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
8270
8271 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
8272
8273         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
8274         `w32-get-true-file-link-count' as t.
8275
8276         * elmo-imap4.el (elmo-imap4-read): Abolished.
8277         (Renamed to `elmo-read' and moved to elmo-util.el)
8278         All other related portions are changed.
8279
8280         * elmo-util.el (elmo-read): New function.
8281         (elmo-condition-parse-search-value): Use it.
8282
8283 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
8284
8285         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
8286
8287         * elmo-nntp.el (elmo-nntp-session): Define.
8288         (elmo-nntp-setting): Abolished.
8289         All other related portions are changed.
8290         (elmo-nntp-get-server-command): Changed argument.
8291         (elmo-nntp-set-server-command): Ditto.
8292         (elmo-nntp-xover-p): Ditto.
8293         (elmo-nntp-set-xover): Ditto.
8294         (elmo-nntp-listgroup-p): Ditto.
8295         (elmo-nntp-set-listgroup): Ditto.
8296         (elmo-nntp-list-active-p): Ditto.
8297         (elmo-nntp-set-list-active): Ditto.
8298         (elmo-nntp-xhdr-p): Ditto.
8299         (elmo-nntp-set-xhdr): Ditto.
8300         (elmo-nntp-flush-connection): Abolished.
8301         (elmo-nntp-get-connection): Abolished.
8302         (elmo-nntp-get-session): New function.
8303         (elmo-network-initialize-session): Defined.
8304         (elmo-network-authenticate-session): Ditto.
8305         (elmo-nntp-send-mode-reader): Changed argument.
8306         (elmo-nntp-send-command): Changed argument.
8307         All other related portions are changed.
8308         (elmo-nntp-read-response): Ditto.
8309         (elmo-nntp-read-raw-response): Ditto.
8310         (elmo-nntp-read-contents): Ditto.
8311         (elmo-nntp-read-body): Ditto.
8312         (elmo-nntp-goto-folder): Abolished.
8313         (elmo-nntp-select-group): New function.
8314         All other related portions are changed.
8315         (This function substitutes `elmo-nntp-goto-folder')
8316         (elmo-nntp-msgdb-create-by-header): Rewrite.
8317         (elmo-nntp-get-overview): Eliminated.
8318         (elmo-nntp-get-message): Ditto.
8319         (elmo-nntp-open-connection) Abolished.
8320         (elmo-nntp-read-msg): Rewrite.
8321         (elmo-nntp-post): Ditto.
8322         (elmo-nntp-send-data): Abolished.
8323         (elmo-nntp-send-buffer): New function.
8324         (elmo-nntp-send-data-line): Define as inline function.
8325         (elmo-nntp-get-folders-info-prepare): Use session as key.
8326         (elmo-nntp-groups-read-response): Changed argument.
8327         (elmo-nntp-retrieve-headers): Ditto.
8328         (elmo-nntp-msgdb-create-message): Ditto.
8329
8330         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
8331         when searching by 'since' or 'before'.
8332
8333 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8334
8335         * elmo-version.el (toplevel): Use product-version-as-string for set
8336         verstion-string, if defined.
8337
8338 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
8339
8340         * elmo-util.el: Doc fixes.
8341
8342 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8343
8344         * elmo-archive.el (toplevel): Use product-provide.
8345         * elmo-cache.el (toplevel): Ditto.
8346         * elmo-database.el (toplevel): Ditto.
8347         * elmo-date.el (toplevel): Ditto.
8348         * elmo-dop.el (toplevel): Ditto.
8349         * elmo-filter.el (toplevel): Ditto.
8350         * elmo-imap4.el (toplevel): Ditto.
8351         * elmo-internal.el (toplevel): Ditto.
8352         * elmo-localdir.el (toplevel): Ditto.
8353         * elmo-localnews.el (toplevel): Ditto.
8354         * elmo-maildir.el (toplevel): Ditto.
8355         * elmo-msgdb.el (toplevel): Ditto.
8356         * elmo-multi.el (toplevel): Ditto.
8357         * elmo-net.el (toplevel): Ditto.
8358         * elmo-nntp.el (toplevel): Ditto.
8359         * elmo-pipe.el (toplevel): Ditto.
8360         * elmo-pop3.el (toplevel): Ditto.
8361         * elmo-util.el (toplevel): Ditto.
8362         * elmo-vars.el (toplevel): Ditto.
8363         * elmo2.el (toplevel): Ditto.
8364         * mmelmo-1.el (toplevel): Ditto.
8365         * mmelmo-2.el (toplevel): Ditto.
8366         * mmelmo-imap4-1.el (toplevel): Ditto.
8367         * mmelmo-imap4-2.el (toplevel): Ditto.
8368         * mmelmo-imap4.el (toplevel): Ditto.
8369         * mmelmo.el (toplevel): Ditto.
8370
8371 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
8372
8373         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
8374         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
8375
8376 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
8377
8378         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
8379         before splitting.
8380         (elmo-multi-split-number-alist): Ditto.
8381
8382 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8383
8384         * elmo-version.el: New file.  Use product.el.
8385         * elmo2.el: Add (require 'elmo-version).
8386         * elmo-vars.el (elmo-appname, elmo-version): Move to
8387         elmo-version.el
8388
8389 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
8390
8391         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
8392         `elmo-msgdb-expand-path'.
8393         (elmo-msgdb-load): Ditto.
8394         Abolished 2nd argument. If 1st argument is not string, treat as spec.
8395         (elmo-generic-list-folder-unread): Rewrite.
8396         (elmo-generic-list-folder-important): Changed argument.
8397         (elmo-list-folder-unread): Ditto.
8398         (elmo-list-folder-important): Ditto.
8399         (elmo-folder-diff): Rewrite.
8400         (elmo-generic-folder-diff): New function.
8401         (elmo-multi-get-number-alist-list): Abolished
8402         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
8403         (elmo-multi-folder-diff): Moved to elmo-multi.el
8404         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
8405
8406         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
8407         `elmo-msgdb-expand-path'.
8408         (elmo-pop3-msgdb-create-as-numlist): Ditto.
8409         (elmo-pop3-read-msg): Ditto.
8410         (elmo-pop3-delete-msgs): Ditto.
8411         (elmo-pop3-folder-diff): New alias.
8412
8413         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
8414         `elmo-msgdb-expand-path'.
8415         (elmo-pipe-list-folder-unread): Changed arguments.
8416         (elmo-pipe-list-folder-important): Ditto.
8417         (elmo-pipe-folder-diff): New alias.
8418
8419         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8420         `elmo-msgdb-expand-path'.
8421         (elmo-nntp-max-of-folder): Ditto.
8422         (elmo-nntp-msgdb-create): Ditto.
8423         (elmo-nntp-delete-msgs): Ditto.
8424         (elmo-nntp-folder-diff): New alias.
8425
8426         * elmo-multi.el (elmo-multi-folder-diff): New function.
8427         (elmo-multi-split-mark-alist): Ditto.
8428         (elmo-multi-split-number-alist): Ditto.
8429         (elmo-multi-mark-alist-list): Abolished (Renamed to
8430         elmo-multi-split-mark-alist).
8431         (elmo-multi-list-folder-unread): Rewrite.
8432         (elmo-multi-list-folder-important): Ditto.
8433         (elmo-multi-list-folder): Set `spec' as 1st argument for
8434         `elmo-msgdb-expand-path'.
8435         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8436         instead of `elmo-multi-get-number-alist-list'.
8437
8438         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8439         If 1st argument is not string, treat as spec.
8440         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8441         `elmo-msgdb-expand-path'.
8442         (elmo-msgdb-flist-load): Ditto.
8443         (elmo-msgdb-flist-save): Ditto.
8444         (elmo-msgdb-delete-path): Ditto.
8445         (elmo-msgdb-rename-path): Ditto.
8446
8447         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8448         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8449         (elmo-maildir-delete-mark-msgs): Ditto.
8450         (elmo-maildir-msgdb-create): Ditto.
8451         (elmo-maildir-read-msg): Ditto.
8452         (elmo-maildir-delete-msgs): Ditto.
8453         (elmo-maildir-list-folder-subr): Ditto.
8454         (elmo-maildir-search): Ditto.
8455         (elmo-maildir-get-msg-filename): Ditto.
8456         (elmo-maildir-pack-number): Ditto.
8457         (elmo-maildir-folder-diff): New alias.
8458
8459         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8460
8461         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8462         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8463         (elmo-localdir-folder-diff): New alias.
8464
8465         * elmo-internal.el (elmo-internal-list-folder-subr):
8466         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8467         (elmo-internal-list-folder-by-location): Ditto.
8468         (elmo-internal-msgdb-create): Ditto.
8469         (elmo-internal-delete-msgs): Ditto.
8470         (elmo-internal-read-msg): Ditto.
8471         (elmo-internal-folder-diff): New alias.
8472
8473         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8474         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8475         `elmo-msgdb-expand-path'.
8476         (elmo-imap4-list-folder-unread): Changed arguments.
8477         (elmo-imap4-list-folder-important): Ditto.
8478
8479         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8480         (elmo-filter-list-folder-important): Ditto.
8481         (elmo-filter-folder-diff): New function.
8482
8483         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8484
8485         * elmo-cache.el (elmo-cache-list-folder):
8486         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8487         (elmo-cache-copy-msgs): Ditto.
8488         (elmo-cache-folder-diff): New alias.
8489
8490         * elmo-archive.el (elmo-archive-list-folder-subr):
8491         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8492         (elmo-archive-get-archive-name): Ditto.
8493         (elmo-archive-create-file): Ditto.
8494         (elmo-archive-append-msg): Ditto.
8495         (elmo-archive-copy-msgs): Ditto.
8496         (elmo-archive-copy-msgs-froms): Ditto.
8497         (elmo-archive-get-msg-filename): Ditto.
8498         (elmo-archive-folder-diff): New alias.
8499
8500 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8501
8502         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8503         (elmo-pop3-stream-type-alist): New variable.
8504         (elmo-nntp-stream-type-alist): New variable.
8505
8506         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8507         (elmo-kill-buffer): Ditto.
8508         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8509         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8510         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8511         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8512         (elmo-imap4-get-spec): Take into account
8513         `elmo-imap4-stream-type-alist'.
8514
8515 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8516
8517         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8518         (elmo-nntp-list-folders-get-cache): Ditto.
8519
8520 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8521
8522         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8523         character before 'uid'.
8524
8525 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8526
8527         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8528
8529         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8530
8531         * elmo-util.el (elmo-number-set-member): New function.
8532         (elmo-number-set-append-list): Ditto.
8533         (elmo-number-set-append): Ditto.
8534
8535         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8536         Use `elmo-number-set-member'.
8537         (elmo-living-messages): Ditto.
8538         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8539         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8540
8541         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8542         (elmo-imap4-add-to-cont-list): Abolished.
8543         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8544         instead of elmo-imap4-add-to-cont-list.
8545
8546         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8547         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8548
8549         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8550
8551 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8552
8553         * elmo-util.el (elmo-condition-parse-search-value):
8554         Fixed date parsing.
8555
8556 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8557
8558         * elmo-util.el (elmo-condition-find-key-internal): New function.
8559         (elmo-condition-find-key): Ditto.
8560
8561         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8562         (elmo-msgdb-search-internal): Ditto.
8563         (elmo-msgdb-search): Ditto.
8564
8565 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8566
8567         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8568         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8569
8570         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8571         (elmo-nntp-search-primitive): Fixed problem when condition is
8572         'unmatch'.
8573
8574         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8575
8576         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8577         (elmo-nntp-xhdr-p): New macro.
8578         (elmo-nntp-set-xhdr): Ditto.
8579         (elmo-nntp-parse-xhdr-response): New function.
8580         (elmo-nntp-retrieve-field): Ditto.
8581         (elmo-nntp-search-primitive): Ditto.
8582         (elmo-nntp-search): Implemented.
8583
8584         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8585
8586         * elmo-archive.el (elmo-archive-search): Set all number list to
8587         `elmo-archive-field-condition-match'
8588
8589         * elmo-localdir.el (elmo-localdir-search): Likewise.
8590
8591         * elmo-maildir.el (elmo-maildir-search): Likewise.
8592
8593 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8594
8595         * elmo-msgdb.el (elmo-living-messages): New function.
8596         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8597         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8598         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8599         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8600         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8601         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8602         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8603         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8604         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8605         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8606         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8607
8608 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8609
8610         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8611
8612         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8613
8614         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8615
8616         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8617         arguments for `SEARCH' command.
8618         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8619         All other related portions are changed.
8620
8621         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8622
8623         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8624         (elmo-list-folder-unread): Rewrite.
8625         (elmo-list-folder-important): Ditto.
8626
8627         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8628         (elmo-condition-parse-error): New inline function.
8629         (elmo-read-search-condition): New function.
8630         (elmo-read-search-condition-internal): Ditto.
8631         (elmo-parse-search-condition): Rewrite.
8632         (elmo-condition-parse): New function.
8633         (elmo-condition-parse-or-expr): Ditto.
8634         (elmo-condition-parse-and-expr): Ditto.
8635         (elmo-condition-parse-primitive): Ditto.
8636         (elmo-condition-parse-search-value): Ditto.
8637         (elmo-buffer-field-primitive-condition-match): Ditto.
8638         (elmo-buffer-field-condition-match): Rewrite.
8639         (elmo-file-field-condition-match): Ditto.
8640
8641         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8642         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8643
8644         * elmo-internal.el (elmo-internal-search): Set `number' and
8645         `number-list' argument of `elmo-file-field-condition-match'.
8646
8647         * elmo-maildir.el (elmo-maildir-search): Ditto.
8648
8649         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8650         `msgdb' as argument instead of `mark-alist'.
8651         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8652         `overview'.
8653
8654         * elmo-multi.el: Likewise.
8655
8656         * elmo-pipe.el: Likewise.
8657
8658         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8659         (elmo-imap4-search-internal): Rewrite.
8660         (elmo-imap4-search): Ditto.
8661
8662         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8663         (elmo-filter-list-folder-unread): Ditto.
8664         (elmo-filter-list-folder-important): Ditto.
8665         (elmo-filter-search): Rewrite.
8666
8667         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8668         `number-list' argument of `elmo-file-field-condition-match'.
8669         (elmo-cache-search): Ditto.
8670
8671         * elmo-localdir.el: Likewise.
8672
8673         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8674         number-list and pass it to `elmo-buffer-field-condition-match'.
8675         (elmo-archive-field-condition-match): Pass `number-list' to
8676         `elmo-archive-field-condition-match'
8677
8678 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8679
8680         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8681         `listgroup'.
8682
8683         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8684         (elmo-folder-diff-async-callback-data): Ditto.
8685         (elmo-folder-diff-async): New function.
8686
8687         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8688         (elmo-network-session-cache-key): Use it as a prefix of the session
8689         name.
8690         (elmo-network-open-session): Ditto.
8691
8692         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8693         (elmo-imap4-status-callback-data): Ditto.
8694         (elmo-imap4-server-diff-async-callback): New variable.
8695         (elmo-imap4-server-diff-async-callback-data): Ditto.
8696         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8697         `elmo-imap4-status-callback-data'.
8698         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8699         `elmo-imap4-status-callback-data' as nil.
8700         (elmo-imap4-server-diff): Ditto.
8701         (elmo-imap4-server-diff-async-callback-1): New function.
8702         (elmo-imap4-server-diff-async): Ditto.
8703         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8704
8705 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8706
8707         * elmo-util.el (elmo-list-delete): Doc fix.
8708         (elmo-delete-lists): Abolish.
8709         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8710         instead of `elmo-delete-lists'.
8711
8712 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8713
8714         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8715         before `sort'.
8716
8717 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8718
8719         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8720         `elmo-imap4-literal-subr'.
8721         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8722         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8723
8724 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8725
8726         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8727         (elmo-archive-list-folder): Fix.
8728         (elmo-archive-max-of-folder): Fix.
8729
8730 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8731
8732         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8733          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8734         (elmo-localdir-append-msg): Ditto.
8735         (elmo-localdir-list-folder): Fix for `nonsort'.
8736         (elmo-localdir-list-folder-subr): Fix for `killed'.
8737         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8738         (elmo-maildir-list-folder-subr): Ditto.
8739         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8740         (elmo-archive-list-folder-subr): Ditto.
8741         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8742         (elmo-internal-list-folder-subr): Ditto.
8743
8744 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8745
8746         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8747
8748 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8749
8750         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8751
8752 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8753
8754         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8755         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8756
8757         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8758         before greeting.
8759         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8760         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8761
8762 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8763
8764         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8765
8766         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8767         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8768         before STORE command.
8769
8770 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8771
8772         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8773
8774         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8775         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8776         of `response'.
8777         (elmo-imap4-list-folders): Removed unused local variable.
8778         (elmo-network-initialize-session): Ditto.
8779         (elmo-imap4-delete-msg-by-id): Ditto.
8780         (elmo-imap4-parse-fetch): Ditto.
8781         (elmo-imap4-copy-msgs): Ditto.
8782         Use `dst-spec' instead of `dst-folder'.
8783         (elmo-network-authenticate-session): Check authenticate type `plain'.
8784
8785 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8786
8787         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8788         garbage checking.
8789         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8790         `elmo-imap4-response-value'.
8791         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8792
8793 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8794
8795         * elmo-imap4.el (elmo-imap4-send-command):
8796         Cause elmo-imap4-bye-error when current response is BYE.
8797         (elmo-imap4-arrival-filter): Changed greeting response value.
8798
8799         * elmo2.el (elmo-imap4-bye-error): Define.
8800
8801         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8802         (elmo-imap4-server-diff): Ditto.
8803         (elmo-imap4-response-bye-p): New macro.
8804         (elmo-imap4-response-error-text): Get text from BYE response.
8805         (elmo-imap4-read-response): Return if BYE response.
8806         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8807         (elmo-imap4-folder-exists-p): Ditto.
8808         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8809         (elmo-imap4-parse-bye): New function.
8810         (elmo-imap4-parse-response): Remove needless let.
8811         Call `elmo-imap4-parse-bye'.
8812
8813 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8814
8815         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8816         the mailbox does not exist.
8817         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8818
8819 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8820
8821         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8822
8823 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8824
8825         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8826
8827         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8828         (elmo-network-initialize-session-buffer): Defined.
8829
8830         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8831         Abolished.
8832         (mmelmo-imap4-get-mime-entity): Rewrite.
8833
8834         * elmo2.el (elmo-error): Capitalize error message.
8835
8836         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8837         (elmo-network-session-buffer): New macro.
8838         (elmo-network-open-session): Use it.
8839
8840         * elmo-imap4.el: Rewrite.
8841
8842 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8843
8844         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8845
8846 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8847
8848         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8849         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8850         (elmo-imap4-create-msgdb-from-overview-string): Use
8851         `elmo-msgdb-create-overview-from-buffer'.
8852
8853 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8854
8855         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8856         (elmo-imap4-default-hierarchy-delimiter): New variable.
8857         (elmo-imap4-list-folders): Use it.
8858
8859 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8860
8861         * elmo-net.el (elmo-network-open-session): Add user and
8862         stream-type for process-buffer name.
8863
8864         * elmo-pop3.el (elmo-network-initialize-session): Call
8865         buffer-disable-undo.
8866
8867         * elmo-imap4.el (elmo-network-initialize-session):
8868         Set current-buffer as an argument for `buffer-disable-undo'.
8869
8870         * elmo-pop3.el (elmo-network-close-session): Don't use
8871         `process-live-p'.
8872
8873         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8874         Set default as 'user.
8875
8876         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8877
8878         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8879         and `elmo-imap4-flush-connection'.
8880
8881         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8882         (elmo-pop3-get-spec): Assume auth as symbol.
8883         (elmo-open-network-stream): Moved to `elmo-net'.
8884
8885         * elmo-pop3.el (toplevel): Require 'elmo-net.
8886         Define `sasl-cram-md5' to silence byte compilier.
8887         (elmo-pop3-connection-cache) Abolished.
8888         (elmo-pop3-authenticator-alist) New variable.
8889         (elmo-pop3-session): Define.
8890         (elmo-pop3-connection-get-process): Abolished.
8891         (elmo-pop3-connection-get-buffer): Ditto.
8892         (elmo-pop3-close-connection): Ditto.
8893         (elmo-pop3-flush-connection): Ditto.
8894         (elmo-pop3-get-connection): Ditto.
8895         (elmo-pop3-get-session): New function.
8896         (Replacement for `elmo-pop3-get-connection').
8897         All other related modules are changed.
8898         (elmo-network-close-session): Define.
8899         (elmo-pop3-send-command): Abolished argument `buffer'.
8900         All other related modules are changed.
8901         (elmo-pop3-read-response): Likewise.
8902         (elmo-pop3-open-connection): Abolished.
8903         (elmo-pop3-auth-user): New function.
8904         (elmo-pop3-auth-apop): Ditto.
8905         (elmo-pop3-auth-cram-md5): Ditto.
8906         (elmo-pop3-auth-scram-md5): Ditto.
8907         (elmo-pop3-auth-digest-md5): Ditto.
8908         (elmo-network-initialize-session): Define.
8909         (elmo-network-authenticate-session): Ditto.
8910         (elmo-network-setup-session): Ditto.
8911
8912         * elmo-imap4.el (toplevel): Require 'elmo-net.
8913         (elmo-imap4-session): Define.
8914         (elmo-imap4-connection-cache): Abolished.
8915         (elmo-imap4-password-key): Ditto.
8916         (elmo-imap4-flush-connection): Ditto.
8917         (elmo-imap4-get-connection): Ditto.
8918         All other related modules are changed.
8919         (elmo-imap4-get-session): New function
8920         (Replacement for `elmo-imap4-get-connection').
8921         (elmo-imap4-read-response): Abolished argument `buffer'.
8922         All other related modules are changed.
8923         (elmo-imap4-send-command): Likewise.
8924         (elmo-imap4-select-folder): Abolished.
8925         All other related modules are changed.
8926         (elmo-imap4-select-mailbox): New function.
8927         (Replacement for `elmo-imap4-select-folder').
8928         (elmo-imap4-auth-login): Simplify.
8929         (Assume current buffer as process buffer)
8930         (elmo-imap4-auth-cram-md5): Ditto.
8931         (elmo-imap4-auth-digest-md5): Ditto.
8932         (elmo-imap4-login): Ditto.
8933         (elmo-imap4-open-connection): Abolished.
8934         (elmo-imap4-open-connection-1): Abolished.
8935         (elmo-network-initialize-sessoin): Define.
8936         (elmo-network-authenticate-session): Ditto.
8937         (elmo-network-setup-session): Ditto.
8938
8939         * elmo-net.el: New module.
8940
8941 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8942
8943         * elmo-util.el (elmo-define-error): New function.
8944
8945         * elmo2.el (elmo-error): Define.
8946         (elmo-open-error): Define.
8947         (elmo-authenticate-error): Define.
8948
8949         * elmo-imap4.el (elmo-imap4-error): Abolish.
8950         (elmo-imap4-error-type): Abolish.
8951         (elmo-imap4-error-process): Abolish.
8952         (elmo-imap4-error-message): Abolish
8953         (elmo-imap4-list-folders): Don't quote lambda.
8954         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8955         (elmo-imap4-parse-namespace): Ditto.
8956         (elmo-imap4-open-connection): Rewrite.
8957         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8958         (elmo-imap4-get-connection): Abolish local variable `result'.
8959
8960 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8961
8962         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8963         wrong-type-argument error when auth is nil.
8964
8965 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8966
8967         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8968         (elmo-default-nntp-stream-type): Ditto.
8969         (elmo-default-pop3-stream-type): Ditto.
8970         (elmo-network-stream-type-alist): Ditto.
8971         (elmo-default-imap4-ssl): Abolished.
8972         (elmo-default-nntp-ssl): Ditto.
8973         (elmo-default-pop3-ssl): Ditto.
8974
8975         * elmo-util.el: (toplevel): Removed needless requires.
8976         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8977         (elmo-open-network-stream): Open network stream according to
8978         the value of `elmo-network-stream-type-alist'.
8979         (elmo-get-network-stream-type): New function.
8980         (elmo-network-stream-type-spec-string): New macro.
8981         (elmo-network-stream-type-symbol): Ditto.
8982         (elmo-network-stream-type-function): Ditto.
8983
8984         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8985         network-stream-type. All other related portions are changed.
8986         (elmo-pop3-open-connection): Ditto.
8987
8988         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8989         network-stream-type. All other related portions are changed.
8990
8991         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8992         network-stream-type.All other related portions are changed.
8993         (elmo-imap4-error): New macro.
8994         (elmo-imap4-error-type): Ditto.
8995         (elmo-imap4-error-process): Ditto.
8996         (elmo-imap4-error-message): Ditto.
8997         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8998         (elmo-imap4-auth-cram-md5): Ditto.
8999         (elmo-imap4-auth-digest-md5): Ditto.
9000         (elmo-imap4-login): Ditto.
9001         (elmo-imap4-open-connection): Remove password entry if authentication
9002         was in vain.
9003         (elmo-imap4-user-at-host): Abolished.
9004         (elmo-imap4-password-key): New buffer local variable.
9005         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
9006         using protocol, port, auth and stream-type.
9007
9008         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
9009
9010 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
9011
9012         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
9013
9014         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
9015
9016         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
9017         (elmo-imap4-authenticator-alist): New variable.
9018         (elmo-imap4-open-connection-1): Rename from
9019         elmo-imap4-open-connection.
9020         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
9021         only wraps elmo-imap4-open-connection-1.
9022         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
9023         user-at-host.
9024         (elmo-imap4-auth-login): New function.
9025         (elmo-imap4-auth-cram-md5): New function.
9026         (elmo-imap4-auth-digest-md5): New function.
9027         (elmo-imap4-login): New function.
9028
9029 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
9030
9031         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
9032         function `error'.
9033
9034 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
9035
9036         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
9037
9038 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
9039
9040         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
9041
9042 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
9043
9044         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
9045         for server responses, quote `*' regardless of where it appears.
9046
9047 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
9048
9049         * elmo-maildir.el (elmo-maildir-commit): New alias.
9050
9051 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
9052
9053         * elmo-util.el (elmo-display-progress):
9054                 Use `progress-feedback-with-label'.
9055
9056 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
9057
9058         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
9059         (elmo-imap4-non-atom-char-regex): Ditto.
9060         (elmo-imap4-non-text-char-regex): Ditto.
9061         (elmo-imap4-literal-threshold): Ditto.
9062         (elmo-imap4-atom-p): New function.
9063         (elmo-imap4-quotable-p): Ditto.
9064         (elmo-imap4-nil): Ditto.
9065         (elmo-imap4-atom): Ditto.
9066         (elmo-imap4-quoted): Ditto.
9067         (elmo-imap4-literal-subr): Ditto.
9068         (elmo-imap4-literal): Ditto.
9069         (elmo-imap4-buffer-literal): Ditto.
9070         (elmo-imap4-string-subr): Ditto.
9071         (elmo-imap4-string): Ditto.
9072         (elmo-imap4-buffer-string): Ditto.
9073         (elmo-imap4-astring-subr): Ditto.
9074         (elmo-imap4-astring): Ditto.
9075         (elmo-imap4-buffer-astring): Ditto.
9076         (elmo-imap4-nstring): Ditto.
9077         (elmo-imap4-buffer-nstring): Ditto.
9078         (elmo-imap4-mailbox): New alias.
9079         (elmo-imap4-field-body): Ditto.
9080         (elmo-imap4-userid): Ditto.
9081         (elmo-imap4-password): Ditto.
9082         (elmo-imap4-format-quoted): New function.
9083         (elmo-imap4-send-command): Rewritten.  Accept a list of command
9084         arguments and handle "atom", "quoted" and "literal" string here.
9085         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
9086         `elmo-imap4-send-command'.
9087         (elmo-imap4-folder-exists-p): Likewise.
9088         (elmo-imap4-create-folder): Likewise.
9089         (elmo-imap4-delete-folder): Likewise.
9090         (elmo-imap4-rename-folder): Likewise.
9091         (elmo-imap4-max-of-folder): Likewise.
9092         (elmo-imap4-check-validity): Likewise.
9093         (elmo-imap4-sync-validity): Likewise.
9094         (elmo-imap4-server-diff): Likewise.
9095         (elmo-imap4-select-folder): Likewise.
9096         (elmo-imap4-copy-msgs): Likewise.
9097         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
9098         (elmo-imap4-mark-set-on-msgs): Likewise.
9099         (elmo-imap4-read-part): Likewise.
9100         (elmo-imap4-read-msg): Likewise.
9101         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
9102         `elmo-imap4-password' for `elmo-imap4-send-command'.
9103         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
9104         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
9105         `elmo-imap4-buffer-literal'.
9106         (elmo-imap4-append-msg): Likewise.
9107
9108         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
9109         `delete' for removing dead connection from the connection cache.
9110         Move deletion of the process buffer after that.
9111         (elmo-imap4-list): Change `defsubst' to `defun'.
9112         (elmo-imap4-commit): Make error message verbose.
9113         (elmo-imap4-search): Ditto.
9114         (elmo-imap4-list): Ditto.
9115         (elmo-imap4-select-folder): Ditto.
9116         (elmo-imap4-copy-msgs): Ditto.
9117         (elmo-imap4-delete-msg-by-id): Ditto.
9118         (elmo-imap4-append-msg-by-id): Ditto.
9119         (elmo-imap4-append-msg): Ditto.
9120
9121 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
9122
9123         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
9124         when dired is used on XEmacs.
9125
9126 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
9127
9128         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
9129         instead of `append'.
9130         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
9131         `elmo-plugged-p' directly.
9132         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
9133         of `elmo-plugged-p' directly.
9134
9135         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
9136         Eliminate unused variable.  Use `memq' for checking a process status.
9137         Use `cons' instead of `append' for updating the connection cache.
9138         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
9139         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
9140
9141 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
9142
9143         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
9144         `elmo-imap4-read-point' exactly.
9145
9146         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
9147         the local variable `folder' to `mailbox'.
9148         Rename the argument `fld' to `folder'.
9149
9150 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
9151
9152         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
9153         * elmo-imap4.el (elmo-imap4-commit): Ditto.
9154
9155 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
9156
9157         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
9158         (elmo-pop3-number-uidl-hash): New buffer-local variable.
9159         (elmo-pop3-uidl-number-hash): Ditto.
9160         (elmo-pop3-size-hash): Ditto.
9161         (elmo-pop3-uidl-done): Ditto.
9162         (elmo-pop3-list-done): Ditto.
9163         (elmo-pop3-connection-get-process): New defmacro.
9164         (elmo-pop3-connection-get-buffer): Ditto.
9165         (elmo-pop3-close-connection): Delete buffer and process.
9166         (elmo-pop3-flush-connection): Don't delete buffer and process.
9167         (elmo-pop3-get-connection): Added optional argument `if-exists'.
9168         Setup UIDL and size hash.
9169         (elmo-pop3-send-command-no-erase): Deleted
9170         (elmo-pop3-send-command): Added optional argument `no-erase'.
9171         (elmo-pop3-parse-uidl-response): New function.
9172         (elmo-pop3-parse-list-response): Set size hash.
9173         (elmo-pop3-list-location): New function.
9174         (elmo-pop3-list-by-uidl-subr): Ditto.
9175         (elmo-pop3-list-by-list): Ditto.
9176         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
9177         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
9178         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
9179         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
9180         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
9181         Use uidl.
9182         (elmo-pop3-uidl-to-number): New function.
9183         (elmo-pop3-number-to-uidl): Ditto.
9184         (elmo-pop3-number-to-size): Ditto.
9185         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
9186         Set number by use of uidl.
9187         (elmo-pop3-msgdb-create-message): Likewise.
9188         Set size, loc-alist in msgdb.
9189         (elmo-pop3-read-msg): Set number by use of uidl.
9190         Added optional argument `msgdb'.
9191         (elmo-pop3-delete-msg): Ditto.
9192         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
9193         (elmo-pop3-commit): Close connection.
9194
9195         * elmo-pipe.el (elmo-pipe-max-of-folder):
9196         Bind `elmo-pop3-use-uidl' as nil.
9197         (elmo-pipe-drain): Ditto.
9198         Call `elmo-commit'.
9199
9200         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
9201         (elmo-msgdb-overview-entity-set-size): New defsubst.
9202
9203 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
9204
9205         * elmo-vars.el (elmo-use-killed-list): New variable
9206         (Renamed from `elmo-nntp-use-killed-list').
9207         (elmo-nntp-use-killed-list): Eliminated.
9208
9209         * elmo-msgdb.el (elmo-msgdb-expand-path):
9210         Changed expanding msgdb path for elmo-multi.
9211
9212         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
9213         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
9214         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
9215         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
9216         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
9217         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
9218         (toplevel): Deleted time-stamp line.
9219
9220         * elmo2.el (elmo-clear-killed ): Defined as function
9221         (Abolished defining as a backend function).
9222         All other related modules are changed.
9223
9224 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
9225
9226         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
9227
9228 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
9229
9230         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
9231
9232 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
9233
9234         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
9235
9236 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
9237
9238         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
9239         asynchronous folder check.
9240
9241         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
9242
9243         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
9244         `elmo-nntp-use-killed-list'.
9245         (elmo-nntp-list-folder): Use killed list.
9246         (elmo-nntp-max-of-folder): Ditto.
9247         (elmo-nntp-msgdb-create): Set killed list.
9248
9249         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
9250
9251         * elmo2.el (elmo-clear-killed): New backend function.
9252         All other related modules are changed.
9253
9254 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
9255
9256         * elmo-util.el (elmo-imap4-spec-folder): Use
9257         `elmo-imap4-spec-mailbox'; Mark as obsolete.
9258         All callers changed.
9259
9260 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
9261
9262         * mmelmo-2.el (initialize-instance):
9263         Use `mime-buffer-entity-buffer-internal' instead of
9264         `mime-entity-buffer'.
9265
9266         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
9267         (mime-entity-body): Implemented.
9268         (mime-goto-header-start-point): Deleted.
9269         (mime-goto-body-end-point): Ditto.
9270         (mime-entity-point-min): Ditto.
9271         (mime-entity-point-max): Ditto.
9272         (mime-entity-children): Ditto.
9273         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
9274         instead of `mime-entity-buffer'.
9275         (mime-entity-header-buffer): Ditto.
9276         (mime-entity-body-buffer): Ditto.
9277         (mime-write-entity-content): Ditto.
9278
9279         * pldap.el (ldap-static-if): New macro.
9280         (toplevel): Use it instead of `static-if'.
9281
9282 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
9283
9284         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
9285         included in `attrs' argument.
9286
9287 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
9288
9289         * elmo-util.el (elmo-get-passwd): Use old backquote style.
9290
9291         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
9292         (ldap-ldif-safe-init-char-regexp): Ditto.
9293         (ldap-ldif-safe-string-regexp): Ditto.
9294         (ldap/ldif-safe-string-p): New macro.
9295         (ldap/ldif-insert-field): Ditto.
9296         (ldap-modify): Use it.
9297         (ldap-add): Ditto.
9298         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
9299         (ldap-decode-attribute): Decode only when `attr' is consp.
9300         (ldap-delete): Bind `ret'.
9301         (toplevel): Require 'cl at compile time.
9302         Removed (require 'poe) and (require 'std11).
9303         (pldap-version): Eliminated.
9304         (ldap-search-basic): Removed auth and dn binding.
9305         (ldap-ldif-field-name-regexp): New constant.
9306         (ldap-ldif-field-head-regexp): Ditto.
9307         (ldap-ldif-next-field-head-regexp): Ditto.
9308         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
9309         (ldap/field-end): New function.
9310         (ldap/field-body): Use it.
9311         (ldap/collect-field): Ditto.
9312         (ldap-search-basic): Use `ldap/field-body'.
9313
9314 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
9315
9316         * pldap.el (ldap-default-attribute-encoder): New user option.
9317         (ldap/field-body): Decode base64 string.
9318         (ldap/collect-field): Ditto.
9319         (ldap-encode-attribute): New function.
9320         (ldap-add-entries): Use it.
9321         (ldap-modify-entries): Ditto.
9322         (ldap-search-entries): Enclosed decoding function with
9323         `with-temp-buffer' and set as unibyte.
9324         (ldap-search-basic): Set process buffer as unibyte.
9325
9326         * elmo-util.el (elmo-folder-identical-system-p):
9327         Eliminated name space checking.
9328
9329         * pldap.el: New module.
9330         toplevel: Changed condition to detect built-in ldap feature.
9331         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
9332         (ldap-add): Added error handling.
9333         (ldap-modify): Ditto.
9334         (ldap-delete): Ditto.
9335
9336 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
9337
9338         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
9339         Initialize local variables with `let'.  Inline a temporary
9340         variable for the progress percentage.  Sort `setq' to reduce
9341         function call in the while-loop.
9342
9343         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
9344         into the conditional branch.
9345
9346 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
9347
9348         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
9349         Move a conditional out of the while-loop.
9350
9351 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9352
9353         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
9354         elmo-msgdb-overview-get-entity-by-number.
9355         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
9356         throw.
9357
9358 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
9359
9360         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
9361         the local variable for a packed number self descriptively.
9362
9363 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9364
9365         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
9366         * elmo-localdir.el (elmo-localdir-pack-number): Use
9367         `elmo-msgdb-overview-get-entity' instead of
9368         `elmo-msgdb-overview-get-entity-by-number'.
9369         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
9370         (elmo-msgdb-search-overview-entity): Removed.
9371         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
9372         by message-id or number.
9373         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
9374         instead of `elmo-msgdb-overview-get-entity-by-number'.
9375
9376 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9377
9378         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
9379         non-nil, use hash table for overview.
9380         (elmo-hash-maximum-size): New variable.
9381         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
9382         (elmo-msgdb-make-overview-hashtb): New function.
9383         (elmo-msgdb-clear-overview-hashtb): New function.
9384         (elmo-clear-hash-val): New macro.
9385         All other related modules are changed.
9386
9387 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
9388
9389         * elmo2.el (elmo-move-msgs): If there's other message with
9390         same message-id, don't use cache.
9391
9392 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
9393
9394         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
9395         number is already packed.
9396
9397 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
9398
9399         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
9400
9401 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9402
9403         * elmo-vars.el (elmo-display-progress-threshold): New variable.
9404         All other related modules are changed.
9405
9406 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
9407
9408         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
9409         of refiling failure on Maildir.
9410
9411 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9412
9413         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
9414         decoded mime-charset with cache.
9415         (elmo-msgdb-overview-entity-get-from): Ditto.
9416         (elmo-msgdb-overview-entity-get-subject): Ditto.
9417         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9418
9419 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9420
9421         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9422         (elmo-remove-passwd): Fill password with 0 before erase.
9423         * elmo-vars.el (elmo-passwd-life-time): New variable.
9424
9425 \f
9426 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9427
9428         * elmo-cache.el (elmo-buffer-cache-add):
9429         Set message cache buffer as unibyte.
9430
9431 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9432
9433         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9434         become nil.
9435
9436 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9437
9438         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9439         when display is finished.
9440         (elmo-nntp-msgdb-create): Ditto.
9441         (elmo-nntp-groups-read-response): Ditto.
9442         (elmo-nntp-retrieve-headers): Ditto.
9443         (elmo-nntp-msgdb-create-message): Ditto.
9444         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9445         (elmo-pop3-msgdb-create-message): Ditto.
9446
9447 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9448
9449         * elmo-maildir.el (elmo-maildir-msgdb-create):
9450         Use `elmo-msgdb-sort-by-date'.
9451
9452 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9453
9454         * elmo2.el (elmo-read-msg-no-cache):
9455         Eliminated arguments after `outbuf'.
9456         Don't use cache even if it exists.
9457         (elmo-read-msg): Don't pass arguments after `outbuf' to
9458         `elmo-read-msg-no-cache'.
9459
9460 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9461
9462         * elmo-archive.el (elmo-archive-list-folders):
9463         Use `file-name-directory' if base folder does not exist.
9464
9465 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9466
9467         * elmo-archive.el (elmo-archive-list-folders): Don't use
9468         `file-name-directory'.
9469
9470 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9471
9472         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9473         If `force' is non-nil, try flushing all operation queues.
9474
9475 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9476
9477         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9478         as-binary-process.
9479
9480 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9481
9482         * elmo-util.el (elmo-display-progress): Fixed.
9483
9484 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9485
9486         * elmo-util.el (elmo-display-progress): New function.
9487         All other related modules are changed.