1 2005-06-10 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3 * elmo-util.el (elmo-collect-separators): New function.
4 (elmo-collect-separators-internal): Ditto.
5 (elmo-collect-trail-separators): Ditto.
6 (elmo-parse-separated-tokens): Ditto.
7 (elmo-parse-separated-tokens-internal): Ditto.
8 (elmo-quote-syntactical-element): Ditto.
10 * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
11 (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
13 * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
14 (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
15 (elmo-nntp-folder-list-subfolders): Quote a user name.
17 * elmo-net.el (elmo-net-folder-name-syntax): New constant.
18 (elmo-net-parse-network): Abolish.
19 (elmo-net-folder-set-parameters): New function.
20 (elmo-folder-initialize): Follow the above change.
22 * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
23 (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
24 (elmo-folder-list-subfolders): Use
25 `elmo-quote-syntactical-element' instead of
26 `elmo-net-format-quoted' to quote mailbox and user name.
28 2005-06-07 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
30 * elmo-util.el (elmo-token-valid-p): New function.
31 (elmo-parse-token): Add optional argument `requirement'.
32 (elmo-parse-prefixed-element): Likewise.
34 * elmo-net.el (elmo-net-quote-chars): Renamed from
35 `elmo-net-quote-chars-regexp'.
36 (elmo-net-format-quoted): Add optional argument `extra-chars'.
38 * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
39 by info document. Check token `uidl' is started an alphabet.
41 * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
42 by info document. Check token `user' is started an alphabet.
44 * elmo-imap4.el (elmo-folder-initialize): Ditto.
45 (elmo-folder-list-subfolders): Quote user.
47 2005-06-05 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
49 * elmo-util.el (elmo-quoted-specials-list): New constant.
50 (elmo-quoted-token): New function.
52 * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
53 (elmo-net-format-quoted): New function.
54 (elmo-net-parse-network): Ditto.
55 (elmo-folder-initialize): Use it.
57 * elmo-nntp.el (elmo-folder-initialize): Use
58 `elmo-net-parse-network' to parse network specification instead of
59 `elmo-folder-initialize#elmo-net'.
61 * elmo-pop3.el (elmo-folder-initialize): Ditto.
63 * elmo-imap4.el (elmo-folder-initialize): Ditto.
64 (elmo-folder-list-subfolders): Quote folder name by
65 `elmo-net-format-quoted'.
67 2005-05-22 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
69 * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
70 (elmo-folder-search): Use it.
72 2005-04-13 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
74 * modb-standard.el (modb-standard-loaded-message-id): Use
75 `elmo-msgdb-message-entity-field'.
77 2005-04-11 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
79 * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
82 2005-04-11 Katsumi Yamaoka <yamaoka@jpl.org>
84 * elmo-util.el (elmo-set-auto-coding): New function.
85 (elmo-object-load): Use it.
87 2005-04-09 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
89 * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
90 (elmo-time<): Define as alias of `elmo-time-less-p'.
91 (elmo-time-to-datevec): New function.
93 * elmo-date.el (elmo-time-to-days): New function.
95 2005-04-08 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
97 * elmo-util.el (elmo-map-recursive): Call `function' if `object'
100 2005-04-07 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
102 * modb-entity.el (modb-entity-encode-string-recursive): Fixed
105 * elmo-util.el (elmo-map-recursive): New function.
107 * modb-entity.el (modb-entity-decode-string-recursive): Use it.
108 (modb-entity-encode-string-recursive): Ditto.
110 2005-04-05 Yuuichi Teranishi <teranisi@gohome.org>
112 * elmo-maildir.el (elmo-maildir-sequence-number): New function.
113 (elmo-maildir-make-unique-string): Throw Emacs 18 away.
114 (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
115 compare sequence number when last modified time is nil.
117 2005-04-03 Yuuichi Teranishi <teranisi@gohome.org>
119 * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
121 * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
123 2005-04-01 Yuuichi Teranishi <teranisi@gohome.org>
125 * elmo-maildir.el (elmo-maildir-list-location): Sort by last
126 modification time of the file.
128 2005-03-28 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
130 * elmo-util.el (elmo-condition-optimize): Discriminated against
131 preserved fields, extra fields and the other weight.
133 2005-03-27 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
135 * modb-entity.el (initialize-instance): Define.
136 (modb-entity-handler-mime-charset): New internal function.
137 (modb-standard-entity-set-field): Use it.
138 (elmo-msgdb-message-entity-field): Ditto.
139 (elmo-msgdb-message-entity-field): Ditto.
141 * modb.el (elmo-msgdb-match-condition): Rewrite with
142 `elmo-condition-match'.
143 (elmo-msgdb-match-condition-primitive): New function.
145 * modb-entity.el (elmo-msgdb-message-match-condition): Removed
146 arguments `flags' and `numbers'.
147 (elmo-msgdb-match-condition-primitive): Abolished (merged to
148 `elmo-msgdb-message-match-condition').
149 (modb-buffer-entity-handler): New class.
151 * elmo.el (elmo-folder-search): Optimize condition to use
152 `elmo-condition-optimize'.
153 (elmo-message-buffer-match-condition): New function.
154 (elmo-message-match-condition): Use
155 `elmo-message-buffer-match-condition' instead of
156 `elmo-buffer-field-condition-match'.
158 * elmo-util.el (elmo-condition-match): New function.
159 (elmo-condition-optimize): Ditto.
160 (elmo-buffer-field-primitive-condition-match): Abolish.
161 (elmo-buffer-field-condition-match): Ditto.
163 * elmo-archive.el (elmo-archive-field-condition-match): Use
164 `elmo-message-buffer-match-condition' instead of
165 `elmo-buffer-field-condition-match'.
167 2005-03-25 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
169 * elmo-flag.el (elmo-global-flags-initialize): Check the
170 existence of the flag directory.
172 2005-03-23 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
174 * elmo-access.el (elmo-folder-initialize): Call
175 `elmo-multi-connect-signals'.
177 * elmo-pipe.el (elmo-folder-close): Define.
179 * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
182 * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
185 * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
188 * elmo-multi.el (elmo-message-entity): Don't use return value of
189 `elmo-message-entity-set-number'.
191 2005-03-22 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
193 * modb.el (modb-generic): Added slot `mime-charset'.
195 * modb-standard.el (modb-standard): Added slot `overview-handler'.
196 (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
197 and `modb-entity-handler-dump-parameters'.
198 (modb-standard-default-entity-handler): Abolish.
199 (elmo-msgdb-message-entity-handler): Save created handler by
202 * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
203 (modb-entity-handler-list-parameters): New method.
204 (modb-entity-handler-equal-p): New function.
205 (modb-entity-handler-dump-parameters): Ditto.
206 (modb-entity-parse-address-string): Encode return value.
207 (modb-entity-make-address-string): Decode argument value.
208 (modb-entity-decode-string-recursive): New function.
209 (modb-entity-encode-string-recursive): Ditto.
210 (modb-standard-entity-normalizer): Set to encode field value.
211 (modb-standard-entity-specializer): Follow the above change.
212 (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
213 mime-charset of handler.
214 (elmo-msgdb-message-entity-field): Ditto.
215 (elmo-msgdb-copy-message-entity): Fixed reference to internal
217 (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
219 * elmo.el (elmo-folder): Added slot `mime-charset'.
220 (elmo-make-folder): Added argument `mime-charset'.
221 (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
224 * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
225 (elmo-make-msgdb): Likewise.
227 * elmo-internal.el (elmo-internal-folder-initialize): Call
228 `luna-make-entity' with :mime-charset parameter.
230 2005-03-21 Yuuichi Teranishi <teranisi@gohome.org>
232 * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
233 encoded words in `from' and `subject' field.
235 2005-03-20 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
237 * modb.el (elmo-msgdb-message-field): Add argument `type'.
238 (elmo-msgdb-match-condition): Get handler from entity instead of
241 * modb-standard.el (modb-standard-economize-entity-size): Abolish.
242 (modb-standard-load-entity): Treat new file format.
243 (modb-standard-save-entity-1): Save as new file format.
244 (modb-standard-save-entity): Split messages into section here.
245 (elmo-msgdb-message-field): Follow the API change.
246 (modb-standard-default-entity-handler): New internal variable.
247 (elmo-msgdb-message-entity-handler): Define.
249 * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
251 (modb-entity-field-extractor-alist): New user option.
252 (elmo-msgdb-message-entity-field): Removed argument `decode' and
253 added argument `type'.
254 (elmo-msgdb-copy-message-entity): Add optional argument
256 (modb-set-field-converter): New function.
257 (modb-convert-field-value): Ditto.
258 (modb-entity-string-decoder): Ditto.
259 (modb-entity-string-encoder): Ditto.
260 (modb-entity-parse-date-string): Ditto.
261 (modb-entity-make-date-string): Ditto.
262 (modb-entity-mime-decoder): Ditto.
263 (modb-entity-mime-encoder): Ditto.
264 (modb-entity-address-list-decoder): Ditto.
265 (modb-entity-address-list-encoder): Ditto.
266 (modb-entity-parse-address-string): Ditto.
267 (modb-entity-make-address-string): Ditto.
268 (modb-entity-create-field-indices): Ditto.
269 (modb-legacy-entity-field-slots): New constant.
270 (modb-legacy-entity-field-indices): Ditto.
271 (modb-legacy-entity-normalizer): New variable.
272 (modb-legacy-entity-specializer): Ditto.
273 (modb-legacy-entity-field-index): New macro.
274 (modb-legacy-entity-set-field): New function.
275 (modb-legacy-make-message-entity): Rewrite.
276 (elmo-msgdb-create-message-entity-from-buffer): Use
277 `elmo-msgdb-get-references-from-buffer'. Use
278 `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
279 Use `modb-legacy-entity-set-field' instead of
280 `elmo-msgdb-message-entity-set-field'.
281 (elmo-msgdb-message-entity-field): Rewrite.
282 (elmo-msgdb-message-entity-set-field): Ditto.
283 (elmo-msgdb-copy-message-entity): Make new entity by
284 `make-handler' if it specified.
285 (elmo-msgdb-message-match-condition): Define a method of
286 `modb-entity-handler' and follow the API change.
287 (modb-standard-entity-handler): New class.
288 (modb-entity-extract-ml-info-from-x-sequence): New function.
289 (modb-entity-extract-ml-info-from-subject): Ditto.
290 (modb-entity-extract-ml-info-from-return-path): Ditto.
291 (modb-entity-extract-ml-info-from-delivered-to): Ditto.
292 (modb-entity-extract-ml-info-from-mailing-list): Ditto.
293 (modb-entity-extract-mailing-list-info): Ditto.
294 (modb-entity-extract-mailing-list-info-functions): New variable.
296 * elmo.el (elmo-message-field): Add optional argument `type'.
298 * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
299 from `modb-entity.el'.
301 * elmo-util.el (elmo-object-load): Decode by coding-system from
302 `set-auto-coding-function'.
303 (elmo-object-save): Use `detect-mime-charset-region' and add
304 coding cookie if encode.
305 (elmo-msgdb-get-references-from-buffer): New function.
306 (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
308 * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
310 * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
311 (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
312 instead of `shimbun-make-header' and follow the API change.
313 (elmo-shimbun-update-overview): Follow the API change.
314 (elmo-map-folder-list-message-locations): Ditto.
316 * elmo-pipe.el (elmo-message-field): Ditto.
318 * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
321 * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
323 * elmo-multi.el (elmo-message-field): Ditto.
325 * elmo-msgdb.el (elmo-message-entity-field): Ditto.
326 (elmo-msgdb-sort-by-date): Ditto.
327 (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
328 `elmo-message-entity-field'.
329 (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
331 (elmo-msgdb-overview-entity-get-from): Ditto.
332 (elmo-msgdb-overview-entity-get-subject): Ditto.
333 (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
334 (elmo-msgdb-overview-entity-get-date): Ditto.
335 (elmo-msgdb-overview-entity-get-to): Ditto.
336 (elmo-msgdb-overview-entity-get-cc): Ditto.
338 * elmo-mime.el (elmo-message-mime-entity): Ditto.
339 (elmo-mime-collect-message/partial-pieces): Ditto.
341 * elmo-filter.el (elmo-message-field): Ditto.
343 * elmo-date.el (elmo-datevec-to-time): New function.
344 (elmo-time-parse-date-string): Ditto.
345 (elmo-time-make-date-string): Ditto.
348 * elmo-version.el (elmo-version): Up to 2.15.1.
350 2005-03-14 Yoichi NAKAYAMA <yoichi@geiin.org>
352 * elmo-flag.el (elmo-global-flags-initialize): Don't include
353 member of elmo-local-flags.
355 2005-03-13 Yuuichi Teranishi <teranisi@gohome.org>
357 * elmo-version.el (elmo-version): Up to 2.15.0.
359 2005-03-13 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
361 * elmo.el (elmo-folder-synchronize): Ignore `mask' when
362 `ignore-msgdb' is non-nil.
364 2005-03-12 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
366 * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
367 (elmo-condition-in-msgdb-p): Ditto.
368 (elmo-file-field-primitive-condition-match): Ditto.
369 (elmo-file-field-condition-match): Ditto.
371 * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
373 2005-03-11 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
375 * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
377 (elmo-global-flags-initialize): New function.
379 * elmo.el (toplevel): Added autoload setting for
380 `elmo-global-flags-initialize'.
382 2005-03-07 Yoichi NAKAYAMA <yoichi@geiin.org>
384 * elmo.el (message-number-changed): Define new signal.
385 * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
386 message-number-changed signal.
387 * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
388 * elmo-map.el (elmo-folder-pack-numbers): Ditto.
389 Respect `elmo-pack-number-check-strict'.
391 2005-03-06 Yoichi NAKAYAMA <yoichi@geiin.org>
393 * elmo-signal.el (elmo-connect-signal): Document.
394 (elmo-emit-signal): Ditto.
395 (elmo-emit-signal): It should pass source argument to filter and
396 handler, not slot-source.
398 2005-03-05 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
400 * modb.el (elmo-msgdb-update-entity): New API and define generic
403 * modb-standard.el (elmo-msgdb-update-entity): Define.
405 * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
406 API and define generic implement.
408 * elmo.el (update-overview): New singnal.
410 * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
411 `elmo-msgdb-update-entity' and emit signal `update-overview'.
412 (elmo-message-entity-parent): Define.
414 * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
417 * elmo-multi.el (elmo-multi-connect-signals): Ditto.
419 * elmo-filter.el (elmo-filter-connect-signals): Ditto.
421 2005-02-27 Yuuichi Teranishi <teranisi@gohome.org>
423 * elmo.el (elmo-folder-synchronize): Sort the return value of
426 * elmo-util.el (elmo-list-diff): Don't care the order of the returned
429 2005-02-27 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
431 * elmo-util.el (elmo-with-enable-multibyte): Don't bind
432 `default-enable-multibyte-characters'.
433 (elmo-object-load): Use `with-temp-buffer' instead of
435 (elmo-object-save): Ditto.
436 (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
438 (elmo-decoded-field-body): Ditto.
440 * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
442 * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
443 Use `with-temp-buffer' instead of `elmo-set-work-buf'.
445 * elmo-version.el (elmo-version): Up to 2.13.3.
447 2005-02-27 Tetsurou Okazaki <okazaki@be.to>
449 * elmo-util.el (elmo-list-diff): Fix the last change.
450 Reverse order of result lists.
452 2005-02-26 Yuuichi Teranishi <teranisi@gohome.org>
454 * modb-standard.el (elmo-msgdb-set-flag): Use
455 `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
456 (elmo-msgdb-unset-flag): Ditto.
458 * elmo.el (elmo-strict-folder-diff): Don't use third argument of
461 * elmo-util.el (elmo-list-diff): Rewrite.
462 (elmo-list-diff-nonsortable): New function.
464 2005-02-26 Tetsurou Okazaki <okazaki@be.to>
466 * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
467 `elmo-multibypte-buffer-name'. All referers are updated.
469 2005-02-25 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
471 * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
472 (elmo-mime-entity-fragment-p): New function.
473 (mime-elmo-buffer-entity): Added slot `reassembled'.
474 (elmo-message-mime-entity): Added 4th argument `reassemble'.
475 (elmo-message-mime-entity-internal): New function (renamed from
476 `elmo-message-mime-entity').
477 (elmo-mime-inherit-field-list-from-enclosed): New constant.
478 (elmo-mime-make-reassembled-mime-entity): New function.
479 (elmo-message-reassembled-mime-entity): Ditto.
480 (elmo-mime-collect-message/partial-pieces): Ditto.
482 2005-02-24 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
484 * elmo.el (elmo-message-fetch-string): Disable multibyte.
486 * elmo-util.el (elmo-multibypte-buffer-name): New constant.
487 (elmo-with-enable-multibyte): New macro.
489 * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
491 2005-02-23 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
493 * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
495 (elmo-filter-connect-signals): Follow the above change.
497 2005-02-19 Yuuichi Teranishi <teranisi@gohome.org>
499 * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
501 * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
502 that only the first flag is used.
504 2005-02-17 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
506 * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p'
509 2005-02-18 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
511 * elmo-signal.el: New file.
513 * elmo.el (toplevel): Require elmo-signal.
514 (flag-changing, flag-changed, cache-changed): New signal.
515 (elmo-folder): Remove slog `handlers'.
516 (elmo-message-set-cached): Use `elmo-emit-signal' instead of
517 `elmo-folder-notify-event'.
518 (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
519 (elmo-folder-unset-flag): Ditto.
520 (elmo-event-handler): Abolish.
521 (elmo-event-handler-flag-changed): Ditto.
522 (elmo-event-handler-cache-changed): Ditto.
523 (elmo-folder-add-handler): Ditto.
524 (elmo-folder-remove-handler): Ditto.
525 (elmo-folder-notify-event): Ditto.
527 * elmo-pipe.el (toplevel): Require elmo-signal.
528 (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
529 (elmo-pipe-connect-signals): New function.
530 (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
531 (elmo-folder-set-flag): Ditto.
532 (elmo-folder-unset-flag): Ditto.
533 (elmo-message-set-cached): Ditto.
535 * elmo-multi.el (toplevel): Require elmo-signal.
536 (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
537 (elmo-multi-connect-signals): New function.
538 (elmo-multi-map-numbers): Ditto.
539 (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
540 (elmo-message-fetch): Ditto.
541 (elmo-folder-set-flag): Ditto.
542 (elmo-folder-unset-flag): Ditto.
544 * elmo-filter.el (toplevel): Require elmo-signal.
545 (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
546 (elmo-filter-connect-signals): New function.
547 (elmo-filter-add-flag-count): Ditto.
548 (elmo-message-fetch): Does not call
549 `elmo-filter-folder-countup-message-flags' and
550 `elmo-folder-notify-event'.
551 (elmo-message-set-cached): Ditto.
552 (elmo-folder-set-flag): Ditto.
553 (elmo-folder-unset-flag): Ditto.
555 * elmo-version.el (elmo-version): Up to 2.13.2.
557 2005-02-17 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
559 * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
562 2005-02-16 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
564 * elmo-filter.el (elmo-message-set-cached): Call
565 `elmo-folder-notify-event' with event `cache-changed'.
567 * elmo-multi.el (elmo-message-set-cached): Ditto.
569 * elmo-pipe.el (elmo-message-set-cached): Ditto.
571 2005-02-16 Yoichi NAKAYAMA <yoichi@geiin.org>
573 * elmo.el (elmo-folder-encache): Abolish.
575 2005-02-16 Yuuichi Teranishi <teranisi@gohome.org>
577 * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
578 (elmo-folder-next-message-number-dop): Return appropriate negative
581 2005-02-15 Yoichi NAKAYAMA <yoichi@geiin.org>
583 * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
584 clearing pending operations.
585 (elmo-folder-next-message-number-dop): Return appropriate negative
588 2005-02-12 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
590 * elmo.el (toplevel): Added autoload setting for `md5'.
591 (elmo-msgdb-path-encode-threshold): New user option.
592 (elmo-folder-msgdb-path): Encode msgdb path if its length is
593 longer than `elmo-msgdb-path-encode-threshold'.
595 * elmo-flag.el (elmo-global-mark-migrate): Use
596 `elmo-folder-expand-msgdb-path' instead of
597 `elmo-folder-msgdb-path'.
599 2005-02-11 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
601 * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
602 element of the difference is nil.
604 2005-02-11 Yuuichi Teranishi <teranisi@gohome.org>
606 * elmo-maildir.el (elmo-maildir-separator): Added some OS types
607 to the check logic of file systems which are weak in colon character.
609 2005-02-11 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
611 * elmo-maildir.el (elmo-maildir-move-file): Simplify.
613 2005-02-10 Yuuichi Teranishi <teranisi@gohome.org>
615 * elmo-maildir.el (elmo-maildir-move-file): New function.
616 (elmo-folder-append-buffer): Use it.
617 (elmo-folder-append-messages): Ditto.
618 (These changes are based on Ron Isaacson's patch [wl-en: 01205])
620 * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
621 (elmo-imap4-encode-folder-string): Call `utf7-encode'.
623 * elmo-maildir.el (elmo-maildir-separator): New user option.
624 (elmo-maildir-adjust-separator): New macro.
625 (elmo-maildir-list-location): Use it.
626 (elmo-maildir-update-current): Ditto.
627 (elmo-maildir-set-mark): Ditto.
628 (elmo-maildir-delete-mark): Ditto.
629 (These changes are based on Hiroya Murata's patch [wl: 13437])
631 2005-02-06 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
633 * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
635 2005-02-01 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
637 * elmo-flag.el (elmo-flag-valid-p): Simplify.
638 (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
639 (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
641 2005-01-30 TAKAHASHI Kaoru <kaoru@kaisei.org>
643 * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
644 Use `with-temp-buffer'.
646 2005-01-30 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
648 * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
650 * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
651 `wl-read-search-condition').
652 (elmo-read-search-condition-internal): Likewise.
654 * elmo-flag.el (elmo-flag-char-regexp): New constant.
655 (elmo-flag-valid-p): New function.
656 (elmo-folder-initialize): Check flag name is valid.
658 2005-01-26 Yuuichi Teranishi <teranisi@gohome.org>
660 * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
661 delimiter to obtain root mailbox itself.
663 2005-01-25 Tetsurou Okazaki <okazaki@be.to>
665 * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
668 2005-01-24 Yuuichi Teranishi <teranisi@gohome.org>
670 * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
673 2005-01-23 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
675 * elmo-shimbun.el (toplevel): Require cl at compile.
677 * elmo-nntp.el (toplevel): Ditto.
679 * elmo-nmz.el (toplevel): Ditto.
681 * elmo-multi.el (toplevel): Ditto.
683 * elmo-file.el (toplevel): Ditto.
685 * elmo-dop.el (toplevel): Ditto.
687 * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
689 2005-01-20 Yuuichi Teranishi <teranisi@gohome.org>
691 * mmimap.el (mmimap-make-mime-entity): Set children's top node number
694 * elmo.el (elmo-message-fetch): Return t even when the output buffer
695 size of elmo-message-fetch-internal is 0 byte.
697 2005-01-14 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
699 * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
701 2005-01-13 Yoichi NAKAYAMA <yoichi@geiin.org>
703 * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
706 2005-01-13 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
708 * elmo-maildir.el (elmo-map-message-fetch): Call
709 `elmo-map-folder-set-flag'.
711 * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
712 (elmo-message-fetch): Merge from
713 `elmo-message-fetch-with-cache-process'.
715 * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
716 (elmo-message-fetch): Define.
718 * elmo-nntp.el (elmo-message-fetch): Renamed from
719 `elmo-message-fetch-with-cache-process'.
721 * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
722 (elmo-message-fetch): Define.
724 * elmo-util.el (elmo-condition-parse-primitive): Downcase
727 * elmo-shimbun.el (shimbun-mua-search-id): Use
728 `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
729 (elmo-shimbun-folder-shimbun-header): Ditto.
730 (elmo-shimbun-get-headers): Ditto.
731 (elmo-shimbun-update-overview): Ditto.
733 * elmo-pipe.el (elmo-folder-detach-messages): Define.
735 * elmo-net.el (elmo-folder-list-messages-unplugged): Use
736 `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
738 2005-01-13 Yuuichi Teranishi <teranisi@gohome.org>
740 * elmo.el (elmo-message-fetch): Unset unread flag on server when
742 (elmo-message-fetch-string): Fixed argument.
744 2005-01-11 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
746 * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
747 exchange order of arguments `section' and `unread'.
748 (elmo-message-encache): Follow the API change.
749 (elmo-message-match-condition): Ditto.
750 (elmo-generic-folder-append-messages): Ditto.
751 (elmo-message-fetch-string): New function.
753 * elmo-split.el (elmo-split-subr): Ditto.
755 * elmo-spam.el (elmo-spam-message-fetch): Ditto.
757 * elmo-pipe.el (elmo-message-fetch): Ditto.
759 * elmo-multi.el (elmo-message-fetch): Ditto.
761 * elmo-mime.el (elmo-message-mime-entity): Ditto.
763 * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
765 * elmo-filter.el (elmo-message-fetch): Ditto.
767 * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
769 * elmo-imap4.el (mime-imap-location-section-body): Use
770 `elmo-message-fetch-string' instead of `elmo-message-fetch' and
771 follow the API change.
773 2005-01-10 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
775 * elmo-access.el: New file.
777 * elmo-null.el: Ditto.
779 * elmo-internal.el (elmo-internal-folder-list): Added `null'.
781 2005-01-08 Yuuichi Teranishi <teranisi@gohome.org>
783 * elmo-net.el (elmo-network-session-idle-timeout): New option.
784 (elmo-network-session): New attribute `last-accessed'.
785 (elmo-network-get-session): Discard network cache if elapsed time
786 since last-accessed is larger than elmo-network-session-idle-timeout.
788 2005-01-07 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
790 * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
791 and added `number', `require-entireness'.
792 (elmo-find-fetch-strategy): Rewrite.
793 (elmo-message-fetch): Unset `unread' flag when argument unread is
796 * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
798 * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
799 (elmo-message-fetch): Notify event `flag-changed'.
801 * elmo-pipe.el: Likewise.
803 * elmo-mime.el (elmo-mime-entity): New class.
804 (elmo-mime-entity-display-p): New generic function.
805 (elmo-mime-entity-display): Ditto.
806 (elmo-mime-entity-display-as-is): Ditto.
807 (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
809 (elmo-make-mime-message-location): Removed.
810 (elmo-mime-message-display): Ditto.
811 (elmo-mime-display-as-is): Ditto.
812 (elmo-message-mime-entity): New function.
814 * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
816 * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
818 (elmo-message-fetch): Re-count flagged message number and notify
819 event `flag-changed'.
821 * elmo-version.el (elmo-version): Up to 2.13.1.
823 2005-01-02 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
825 * elmo-filter.el (elmo-message-field): Define.
826 (elmo-message-set-field): Ditto.
828 2004-12-25 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
830 * elmo.el (elmo-message-set-cached): Call
831 `elmo-folder-notify-event' with cache-changed.
832 (elmo-event-handler-cache-changed): New generic function.
834 2004-12-22 Yuuichi Teranishi <teranisi@gohome.org>
836 * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
837 instead of elmo-add-name-to-file.
838 (elmo-folder-append-messages): Ditto.
840 2004-12-21 Yoichi NAKAYAMA <yoichi@geiin.org>
842 * elmo.el (elmo-folder-update-threshold): Add nil to range.
844 2004-12-12 Yuuichi Teranishi <teranisi@gohome.org>
846 * elmo-version.el (elmo-version): Up to 2.13.0.
848 * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
851 * modb-standard.el (modb-standard-economize-entity-size): Changed
852 default value to `t'.
854 * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
857 * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
858 after parsing greeting string.
860 2004-11-23 Daishi Kato <daishi@axlight.com>
862 * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
864 (elmo-spam-spamoracle-call): Use it.
866 2004-11-23 Yoichi NAKAYAMA <yoichi@geiin.org>
868 * elmo.el (elmo-message-accessible-p): Message in dop spool
871 2004-11-23 Daishi Kato <daishi@axlight.com>
873 * elsp-spamoracle.el: New file.
875 2004-11-23 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
877 * elmo.el (elmo-message-flags-for-append): New function.
878 (elmo-generic-folder-append-messages): Use it.
880 * elmo-split.el (elmo-split-subr): Ditto.
882 * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
883 `flags' and use elmo-folder-append-buffer instead of
884 write-region-as-binary.
885 (elmo-dop-filter-pending-messages): New function.
886 (elmo-folder-append-buffer-dop): Call
887 elmo-dop-spool-folder-append-buffer with `flag'.
888 (elmo-folder-set-flag-dop): Filter messages by
889 elmo-dop-filter-pending-messages.
890 (elmo-folder-unset-flag-dop): Ditto.
891 (elmo-folder-append-buffer-dop-delayed): Use
892 elmo-message-flags-for-append to get flags of the message and
895 2004-11-07 Yuuichi Teranishi <teranisi@gohome.org>
897 * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
899 2004-11-06 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
901 * elmo.el (elmo-folder): Added handlers slot.
902 (elmo-event-handler): New class.
903 (elmo-event-handler-flag-changed): New API.
904 (elmo-folder-add-handler): New function.
905 (elmo-folder-remove-handler): Ditto.
906 (elmo-folder-notify-event): Ditto.
907 (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
909 (elmo-folder-unset-flag): Ditto.
911 * elmo-pipe.el (elmo-folder-set-flag): Ditto.
912 (elmo-folder-unset-flag): Ditto.
914 * elmo-multi.el (elmo-folder-set-flag): Ditto.
915 (elmo-folder-unset-flag): Ditto.
917 * elmo-filter.el (elmo-folder-set-flag): Ditto.
918 (elmo-folder-unset-flag): Ditto.
920 * elmo-version.el (elmo-version): Up to 2.11.33.
922 2004-10-25 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
924 * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
926 2004-10-24 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
928 * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
930 * elmo-flag.el (elmo-folder-unset-flag): Define.
931 (elmo-global-flag-detach): Do process when the flag is not target
934 2004-10-18 Yoichi NAKAYAMA <yoichi@geiin.org>
936 * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
938 (elmo-msgdb-create-message-entity-from-buffer): Use it.
940 2004-10-16 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
942 * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
944 (elmo-folder-delete-messages): Detach messages before delete
945 messages from target folder.
946 (elmo-folder-detach-messages): Set updated number-list to slot.
948 2004-10-14 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
950 * elmo-filter.el (elmo-folder-detach-messages): Always return t.
952 2004-10-12 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
954 * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
956 2004-10-11 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
958 * elmo.el (elmo-folder-delete-messages-internal): New API (for
960 (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
962 (elmo-folder-delete-messages): Define.
963 (elmo-folder-move-messages): Don't call
964 `elmo-folder-detach-messages'.
965 (elmo-folder-synchronize): Rewrite.
966 (elmo-folder-detach-messages): Delete numbers from `killed-list'.
968 * elmo-util.el (elmo-last): New function.
969 (elmo-set-list): Ditto.
970 (elmo-number-set-delete-list): Ditto.
971 (elmo-number-set-delete): Ditto.
973 * elmo-shimbun.el (elmo-folder-delete-messages): Define.
975 * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
976 `elmo-folder-delete-messages' and don't delete location map.
977 (elmo-folder-detach-messages): Define.
979 * elmo-imap4.el (elmo-folder-delete): Use
980 `elmo-folder-delete-messages-internal' instead of
981 `elmo-folder-delete-messages'.
983 * elmo-filter.el (elmo-folder-delete-messages): Call
984 `elmo-folder-detach-messages'.
985 (elmo-folder-detach-messages): Don't call
986 `elmo-folder-detach-messages' for target folder.
988 * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
989 message deletion is succeeded.
991 * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
993 * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
994 from `elmo-folder-delete-messages'.
996 * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
998 * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1000 * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1002 * elmo-version.el (elmo-version): Up to 2.11.32.
1004 2004-10-10 Yuuichi Teranishi <teranisi@gohome.org>
1006 * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1007 (elmo-global-flag-list): Added obsolete variable setting.
1009 * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1011 * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1012 (elmo-mime-insert-header-from-buffer): Don't decode header content when
1013 `elmo-mime-display-header-analysis' is nil.
1015 * elmo-flag.el (elmo-global-flags): Renamed from
1016 `elmo-global-flag-list' (All other related portions are changed).
1017 (elmo-local-flags): New variable.
1018 (elmo-local-flag-p): New function.
1019 (elmo-global-flag-set-internal): Cause an error when flag is not
1022 2004-10-04 Yuuichi Teranishi <teranisi@gohome.org>
1024 * elmo-util.el (elmo-concat-path): Treat empty path.
1026 2004-10-03 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1028 * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1030 (elmo-split-address-match): Ditto.
1031 (elmo-split-equal): Ditto.
1032 (elmo-split-match): Ditto.
1034 2004-10-03 Yuuichi Teranishi <teranisi@gohome.org>
1036 * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1037 (elmo-generic-folder-append-messages): If src message exists but
1038 has no flag, pass (read) for the FLAG argument of
1039 `elmo-folder-append-buffer'. Otherwise, pass nil.
1041 * elmo-split.el (elmo-split-subr): Likewise.
1043 * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1045 * elmo-multi.el (elmo-message-flags): Ditto.
1047 * elmo-filter.el (elmo-message-flags): Ditto.
1049 * elmo.el (elmo-folder-append-buffer): Fix docstring.
1050 (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1051 pass (read) for the FLAG argument of elmo-folder-append-buffer.
1053 2004-10-02 Yoichi NAKAYAMA <yoichi@geiin.org>
1055 * elmo-split.el (elmo-split-rule): Update comment.
1056 (elmo-split-address-equal): Allow 2nd argument to be a list.
1057 (elmo-split-address-match): Ditto.
1058 (elmo-split-equal): Ditto.
1059 (elmo-split-match): Ditto.
1061 2004-09-29 Yuuichi Teranishi <teranisi@gohome.org>
1063 * elmo.el (elmo-folder-append-buffer): Fix docstring.
1064 (elmo-folder-append-msgdb): Don't treat `read'.
1065 (elmo-message-flags): Don't return `read'.
1067 * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1068 (elmo-folder-unset-read-delayed): Ditto.
1070 * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1072 2004-09-26 Yoichi NAKAYAMA <yoichi@geiin.org>
1074 * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1077 2004-09-24 Yuuichi Teranishi <teranisi@gohome.org>
1079 * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1082 2004-09-23 Yuuichi Teranishi <teranisi@gohome.org>
1084 * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1086 (elmo-msgdb-save): Bind inhibit-quit.
1087 (modb-standard-message-entity): Ditto.
1089 2004-09-20 Yoichi NAKAYAMA <yoichi@geiin.org>
1091 * elmo-database.el: No need to require elmo-msgdb.
1093 2004-09-20 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1095 * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1096 instead of `elmo-list-subdirectories'.
1098 2004-09-20 Yoichi NAKAYAMA <yoichi@geiin.org>
1100 * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1102 (elmo-folder-exists-p): "[" is empty.
1103 (elmo-folder-list-subfolders): Define.
1104 (elmo-folder-have-subfolder-p): Ditto.
1106 2004-09-19 Yoichi NAKAYAMA <yoichi@geiin.org>
1108 * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1110 2004-09-14 Tetsurou Okazaki <okazaki@be.to>
1112 * elmo-filter.el (elmo-folder-local-p): Define.
1114 2004-09-13 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1116 * modb-standard.el (modb-standard-loaded-message-id): Return nil
1117 when entity is garbaged.
1118 (modb-standard-save-entity-1): Don't modify the original entity.
1120 2004-09-13 Tetsurou Okazaki <okazaki@be.to>
1122 * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1124 2004-09-12 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1126 * elmo.el (elmo-strict-folder-diff): Use
1127 `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1129 2004-09-12 Yuuichi Teranishi <teranisi@gohome.org>
1131 * modb.el (elmo-msgdb-flag-available-p): New generic function.
1132 (elmo-msgdb-message-number): Ditto.
1133 (elmo-msgdb-message-field): Ditto.
1135 * modb-standard.el (modb-standard-economize-entity-size): New user
1137 (modb-standard-loaded-message-id): New inline function.
1138 (modb-standard-load-entity): Use it.
1139 (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1140 throw message-id string away.
1141 (elmo-msgdb-flag-available-p): Define.
1142 (elmo-msgdb-message-number): Ditto.
1143 (elmo-msgdb-message-field): Ditto.
1145 * modb-legacy.el (modb-legacy-flag-list): Fix typo
1146 (suppoted -> supported).
1147 (modb-legacy-supported-flag-p): Ditto.
1148 (elmo-msgdb-set-flag): Ditto.
1149 (elmo-msgdb-unset-flag): Ditto.
1150 (elmo-msgdb-flag-available-p): Define.
1152 * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1153 is `t', treat it as legacy entity.
1155 * elmo.el (elmo-message-flag-available-p): New generic function.
1156 (elmo-message-number): Ditto.
1157 (elmo-message-field): Use `elmo-msgdb-message-field'.
1159 * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1161 * elmo-pipe.el (elmo-message-flag-available-p): Define.
1162 (elmo-message-number): Ditto.
1164 * elmo-multi.el (elmo-message-number): Define.
1165 (elmo-message-flag-available-p): Ditto.
1167 * elmo-filter.el (elmo-message-flag-available-p): Define.
1168 (elmo-message-number): Ditto.
1170 * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1171 (elmo-folder-initialize): Load `max-number'.
1172 (elmo-folder-commit): Save it.
1173 (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1174 (elmo-global-flag-set-internal): Set up max-number slot.
1176 2004-09-12 Yuuichi Teranishi <teranisi@gohome.org>
1178 * elmo-version.el (elmo-version): Up to 2.11.31.
1180 2004-09-09 Yuuichi Teranishi <teranisi@gohome.org>
1182 * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1183 unibyte string of the current buffer for the argument of `md5'
1184 (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1186 2004-09-05 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1188 * modb-legacy.el (modb-legacy-flag-list): New constant.
1189 (modb-legacy-suppoted-flag-p): New internal function.
1190 (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1191 (elmo-msgdb-unset-flag): Ditto.
1193 2004-09-05 Yuuichi Teranishi <teranisi@gohome.org>
1195 * elmo.el (elmo-make-folder): Remove text properties for prefix.
1197 * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1200 2004-08-31 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1202 * elmo-multi.el (elmo-folder-count-flags): Changed return value
1203 (follow the API change).
1205 * elmo-filter.el (elmo-folder-count-flags): Ditto.
1207 2004-08-31 Yuuichi Teranishi <teranisi@gohome.org>
1209 * modb-standard.el (modb-standard-digest-flags): Abolish.
1210 (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
1212 * elmo-vars.el (elmo-digest-flags): New variable.
1213 (elmo-preserved-flags): Moved from elmo-flag.el.
1215 * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
1216 (elmo-imap4-flag-to-imap-criteria): Ditto.
1217 (elmo-imap4-folder-list-flagged): Use it.
1219 * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
1221 * elmo.el (elmo-folder-count-flags): Changed return value.
1223 * elmo-flag.el (elmo-preserved-flags): New variable.
1224 (elmo-get-global-flags): Use it.
1226 * modb-standard.el (modb-standard-digest-flags): New variable.
1227 (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
1228 Changed behavior of `any'.
1230 * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1231 which are defined the Internet draft
1232 (draft-melnikov-imap-keywords-03.txt).
1233 (elmo-imap4-flags-to-imap): New function.
1234 (elmo-folder-append-buffer): Use it.
1236 * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1239 * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1240 avoid the bug of Emacs 21.3.
1242 2004-08-31 Yoichi NAKAYAMA <yoichi@geiin.org>
1244 * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1245 function find-coding-system does not exist.
1247 2004-08-18 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1249 * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1252 2004-08-09 Yuuichi Teranishi <teranisi@gohome.org>
1254 * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1257 2004-08-09 Yuuichi Teranishi <teranisi@gohome.org>
1259 * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1260 (elmo-network-close-session): Follow the changes in
1261 `elmo-pop3-read-response'.
1262 (elmo-pop3-auth-user): Ditto.
1263 (elmo-pop3-auth-apop): Ditto.
1264 (elmo-network-initialize-session): Ditto.
1265 (elmo-network-authenticate-session): Ditto.
1266 (elmo-network-setup-session): Ditto.
1267 (elmo-folder-status): Ditto.
1268 (elmo-message-fetch-plugged): Ditto.
1269 (elmo-pop3-delete-msg): Ditto.
1271 2004-07-15 Yoichi NAKAYAMA <yoichi@geiin.org>
1273 * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1276 2004-07-15 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1278 * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1280 (elmo-bind-directory): Ditto.
1282 2004-07-12 Yoichi NAKAYAMA <yoichi@geiin.org>
1284 * elmo.el (elmo-folder-append-messages): Note on return value.
1285 * elmo-archive.el (elmo-folder-append-messages): Don't return
1286 message numbers which could not be appended.
1288 2004-07-11 Yoichi NAKAYAMA <yoichi@geiin.org>
1290 * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1292 2004-06-18 Yoichi NAKAYAMA <yoichi@geiin.org>
1294 * elmo-version.el (elmo-version): Up to 2.11.30.
1296 2004-06-13 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1298 * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1301 * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1303 * elmo-multi.el (elmo-folder-synchronize): Likewise.
1304 (elmo-multi-split-numbers): Add elmo-folder object into each
1305 element of return value at first.
1306 (elmo-folder-delete-messages): Follow the above change.
1307 (elmo-folder-detach-messages): Ditto.
1309 * elmo-filter.el (elmo-folder-synchronize): Minimize message
1310 number which is synchronized in target folder.
1312 2004-05-25 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1314 * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1315 Change default value to symbol `all'.
1316 (elmo-map-message-fetch): Change condition to update overview
1319 2004-05-25 Yoichi NAKAYAMA <yoichi@geiin.org>
1321 * elmo-shimbun.el (elmo-map-message-fetch): Change default
1322 behavior to update overview.
1323 (elmo-shimbun-update-overview-folder-list): Note it.
1325 2004-05-24 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1327 * modb-standard.el (modb-standard-message-entity): Avoid infinite
1330 2004-05-23 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1332 * elmo-spam.el (elmo-spam-register-good-messages): Don't call
1333 buffer-disable-undo, it is unnecessary.
1334 (elmo-spam-register-good-messages): Ditto.
1336 * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1339 * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
1341 2004-05-22 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1343 * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
1344 (elmo-set-work-buf): Use set-buffer-multibyte instead of
1345 elmo-set-buffer-multibyte.
1346 (elmo-object-load): Ditto.
1347 (elmo-save-buffer): Ditto.
1348 (elmo-delete-char): Ditto.
1349 (elmo-file-field-primitive-condition-match): Ditto.
1350 (elmo-mime-string): Ditto.
1352 * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
1353 (elmo-archive-field-condition-match): Ditto.
1355 * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
1357 * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
1359 * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
1360 (elmo-nntp-msgdb-create-message): Ditto.
1362 * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1364 * elmo.el (elmo-message-match-condition): Ditto.
1365 (elmo-message-match-condition): Ditto.
1367 * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1370 * elmo-version.el (elmo-version): Up to 2.11.29.
1372 * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
1373 (elsp-header): New backend.
1375 * elmo-util.el (elmo-decoded-field-body): New function.
1377 2004-05-16 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1379 * elmo-version.el (elmo-version): Up to 2.11.28.
1381 2004-05-09 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1383 * elmo-filter.el: Rewrite.
1385 * elmo-version.el (elmo-version): Up to 2.11.27.
1387 2004-05-05 Yuuichi Teranishi <teranisi@gohome.org>
1389 * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
1390 msgdb path for the localdir folder with absolute path.
1392 * utf7.el: Synch up with latest gnus/utf7.el;
1393 Modified for latest Emacs.
1395 2004-05-05 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1397 * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
1398 shimbun backend couldn't open.
1400 2004-04-25 Tetsurou Okazaki <okazaki@be.to>
1402 * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
1403 (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
1404 when a destination folder is a filter folder.
1406 2004-04-23 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1408 * elmo.el (elmo-message-flags): Add optional argument `msgid'.
1409 (elmo-generic-folder-append-messages): Call elmo-message-flags
1410 with argument `msgid'.
1412 * elmo-split.el (elmo-split-subr): Ditto.
1414 * elmo-pipe.el (elmo-message-flags): Follow the API change.
1416 * elmo-multi.el (elmo-message-flags): Ditto.
1418 2004-04-18 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1420 * elmo.el (elmo-folder): Add new slot `flag-table'.
1421 (elmo-folder-flag-table): New API.
1422 (elmo-folder-close-flag-table): Ditto.
1423 (elmo-folder-preserve-flags): New function.
1424 (elmo-generic-folder-append-messages): Use
1425 `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
1426 Flag of a non-registered message, it sets to nil.
1427 Does not set flag to flag-table.
1429 * elmo-maildir.el (elmo-folder-append-buffer): Use
1430 `elmo-folder-preserve-flags'.
1431 (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1432 `elmo-folder-close-flag-table'.
1434 * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
1435 (elmo-archive-folder-append-buffer): Use
1436 `elmo-folder-preserve-flags'.
1438 * elmo-cache.el (elmo-folder-append-buffer): Ditto.
1440 * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
1442 * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1443 (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1444 `elmo-folder-close-flag-table'.
1446 * elmo-version.el (elmo-version): Up to 2.11.26.
1448 2004-04-18 Yoichi NAKAYAMA <yoichi@geiin.org>
1450 * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
1452 * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
1453 md5's 4th and 5th argument (non-existent in flim one).
1455 2004-04-17 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1457 * elmo-split.el (elmo-split-subr): Flag of a non-registered
1458 message, It sets to nil.
1460 2004-04-16 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1462 * elmo.el (elmo-folder-list-messages): Merge lists only if both
1465 2004-04-16 YAMASHITA Junji <ysjj@unixuser.org>
1467 * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
1469 * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
1471 * elmo-util.el (elmo-uniq-sorted-list): New function.
1472 (elmo-make-number-list): Ditto.
1473 (elmo-number-set-to-number-list): Use elmo-make-number-list
1474 and don't use nreverse.
1476 2004-04-16 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1478 * elmo-version.el (elmo-version): Up to 2.11.25.
1480 2004-04-14 TAKAHASHI Kaoru <kaoru@kaisei.org>
1482 * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
1483 field not exists in message, Use md5 message digest of header.
1485 2004-04-11 Yoichi NAKAYAMA <yoichi@geiin.org>
1487 * elmo.el (elmo-folder-append-buffer): Add note on return value.
1488 * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
1489 * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1490 * elmo-split.el (elmo-split-subr): Check return value of
1491 elmo-folder-append-buffer.
1493 * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
1494 * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1496 * elmo-cache.el (elmo-folder-append-buffer): Check existence of
1499 2004-04-10 Yoichi NAKAYAMA <yoichi@geiin.org>
1501 * elmo-split.el (elmo-split-subr): Append message with flag.
1503 * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
1504 * elmo-flag.el (elmo-folder-append-buffer): Ditto.
1505 * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1507 2004-04-03 Tetsurou Okazaki <okazaki@be.to>
1509 * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
1510 * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
1511 * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
1513 2004-03-29 Tetsurou Okazaki <okazaki@be.to>
1515 * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
1516 with a function call of `process-buffer'. All callers are updated.
1517 (elmo-pop3-retrieve-headers): Likewise. Move `process' to the 1st argument.
1518 Remove redundant `set-buffer' in a while loop.
1520 2004-03-28 Tetsurou Okazaki <okazaki@be.to>
1522 * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
1525 2004-03-26 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1527 * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
1528 elsp-spamfilter-register-buffer-internal with current buffer.
1529 (elmo-spam-register-spam-buffer): Ditto.
1530 (elmo-spam-register-good-buffer): Ditto.
1532 2004-03-15 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
1534 * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
1535 if it is not contained in the response(A workaround for courier-imap).
1537 2004-03-11 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1539 * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
1542 2004-03-08 Yoichi NAKAYAMA <yoichi@geiin.org>
1544 * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
1547 2004-03-07 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1549 * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
1552 * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
1554 (elmo-msgdb-message-match-condition): Follow the change above.
1556 2004-02-29 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1558 * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
1561 2004-02-26 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1563 * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
1565 2004-02-25 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1567 * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
1569 2004-02-24 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1571 * elmo-file.el (elmo-file-find): Fixed the problem when file is
1574 2004-02-22 Yuuichi Teranishi <teranisi@gohome.org>
1576 * elmo-file.el (elmo-file-find): Use expand-file-name for return
1578 (elmo-file-command-argument): Undo last change for cygwin.
1579 (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
1581 (elmo-map-message-fetch): Use elmo-file-detect-content-type.
1583 2004-02-21 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1585 * elmo-file.el (elmo-file-command-argument): Fixed problem when a
1586 value returned from elmo-file-find is nil.
1588 2004-02-20 Yuuichi Teranishi <teranisi@gohome.org>
1590 * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
1593 * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
1594 instead of insert-file-contents-as-binary.
1595 (elmo-message-set-field): New generic function.
1597 * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
1598 behavior change on `split-string'.
1600 * elmo-file.el (elmo-file-find): New function.
1601 (elmo-file-command): New user option.
1602 (elmo-file-command-argument): Ditto.
1603 (elmo-file-fetch-max-size): Ditto.
1604 (elmo-file-detect-format): New function.
1605 (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
1606 Use elmo-file-detect-format.
1607 (elmo-map-folder-list-message-locations): Don't treat directories.
1609 2004-02-19 TAKAHASHI Kaoru <kaoru@kaisei.org>
1611 * elmo-util.el (elmo-string-partial-p): Removed unused function.
1612 (elmo-passwd-alist-clear): Shred password before clear.
1613 (elmo-remove-passwd): Remove all mached pair.
1615 2004-02-18 Yoichi NAKAYAMA <yoichi@geiin.org>
1617 * elmo.el (elmo-folder-synchronize): Fix description of the return
1620 2004-02-16 Yuuichi Teranishi <teranisi@gohome.org>
1622 * elmo.el (elmo-message-fetch-bodystructure): New method.
1623 (elmo-message-fetch-bodystructure): Define default.
1625 * elmo-imap4.el (mime-imap-location-bodystructure): Call
1626 elmo-message-fetch-bodystructure.
1627 (elmo-message-fetch-bodystructure): Define.
1629 * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
1631 2004-02-15 Tetsurou Okazaki <okazaki@be.to>
1633 * elmo-filter.el (elmo-message-folder): Define.
1635 2004-02-13 Yuuichi Teranishi <teranisi@gohome.org>
1637 * elmo.el (elmo-message-fetch-with-cache-process): Don't call
1638 elmo-delete-cr-buffer.
1640 * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
1642 * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
1644 * elmo-nntp.el (elmo-nntp-read-body): Ditto.
1646 * elmo-file.el (elmo-map-message-fetch): Decode body only when content
1647 type seems to be a text.
1649 2004-02-12 Yuuichi Teranishi <teranisi@gohome.org>
1651 * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
1652 (elmo-spam-register-good-buffer): Ditto.
1653 (elmo-spam-spamassassin-register-messages): Ditto.
1655 * elmo-util.el (elmo-string-member-ignore-case): Define with
1658 2004-02-09 Yuuichi Teranishi <teranisi@gohome.org>
1660 * elmo.el (elmo-folder-type): Undo last change.
1662 * slp.el (slp-exec-wait): Avoid byte-compile warnings.
1664 * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
1667 * elmo-file.el: New file.
1669 * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
1671 * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
1673 (elmo-spam-spamassassin-register-messages): New inline function.
1674 (elmo-spam-register-spam-messages): Define.
1675 (elmo-spam-register-good-messages): Ditto.
1677 * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
1680 * elmo.el (toplevel): Added autoload setting for
1681 `elmo-get-global-flags'.
1682 (elmo-message-has-global-flag-p): New function.
1683 (elmo-message-set-global-flags): Ditto.
1684 (elmo-folder-type): Improvement for name: format.
1686 * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
1687 availability of keyword flags.
1688 (elmo-imap4-folder-list-flagged): Treat keyword flags.
1689 (elmo-folder-list-flagged-plugged): Renamed from
1690 elmo-folder-list-flagged-unplugged.
1691 (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
1692 accept any flag as keyword flag.
1693 (elmo-folder-set-flag-plugged): Accept keyword flags.
1694 (toplevel): Added autoload setting for `elmo-get-global-flags'.
1696 * elmo-flag.el (elmo-get-global-flags): New function.
1698 * elmo-filter.el (elmo-folder-diff): Fix total number for filter
1701 * elmo-version.el (elmo-version): Up to 2.11.24.
1703 2004-02-08 Yoichi NAKAYAMA <yoichi@geiin.org>
1705 * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
1706 elmo-multiple-field-body instead of std11-field-body to check all
1709 2004-02-07 TAKAHASHI Kaoru <kaoru@kaisei.org>
1711 * elmo-util.el (elmo-cache-expire): Completion require match "age"
1714 2004-01-28 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1716 * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
1717 unintern is unbound.
1719 2004-01-25 Yoichi NAKAYAMA <yoichi@geiin.org>
1721 * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1722 Protect from infinite loop.
1724 2004-01-25 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1726 * elsp-bogofilter.el
1727 (elmo-spam-bogofilter-max-messages-per-process): New user option.
1728 (elmo-spam-bogofilter-register-messages): New internal function.
1729 (elmo-spam-register-spam-messages): Define.
1730 (elmo-spam-register-good-messages): Ditto.
1732 2004-01-24 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1734 * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
1735 Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
1736 (elmo-spam-bogofilter-call): Fixed the last change.
1737 (elmo-spam-bogofilter-arguments): Ditto.
1739 * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
1740 Follow the options change of latest bogofilter.
1742 * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
1743 (elmo-spam-bogofilter-good-switch): Ditto.
1744 (elmo-spam-bogofilter-arguments-alist): New user option.
1745 (elmo-spam-bogofilter-debug): Ditto.
1746 (elmo-spam-bogofilter-call): Renamed from
1747 `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
1748 is non-nil, insert output in buffer for debug.
1749 (elmo-spam-bogofilter-arguments): New macro.
1750 (elmo-spam-buffer-spam-p): Use it.
1751 (elsp-bogofilter-register-buffer): Ditto.
1753 2004-01-19 TAKAHASHI Kaoru <kaoru@kaisei.org>
1755 * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
1758 2004-01-17 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1760 * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
1762 (elmo-spam-bsfilter-shell-switch): Set default value as nil.
1763 (elmo-spam-bsfilter-program): Set default value as full path for
1765 (elmo-spam-bsfilter-debug): New user option.
1766 (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
1767 non-nil, insert output in buffer for debug. Fix treating of
1770 2004-01-16 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1772 * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
1773 `elmo-maildir-flag-specs' element instead of one.
1774 (elmo-map-folder-unset-flag): Ditto.
1775 (Reported by Ken Makimura <macky@astem.or.jp>)
1777 * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
1778 (elmo-folder-unset-flag-plugged): Ditto.
1780 2004-01-13 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1782 * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
1783 to `reads' slot only if `in-msgdb' is nil.
1785 2004-01-12 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1787 * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
1788 and complement argument list.
1790 2004-01-12 Yoichi NAKAYAMA <yoichi@geiin.org>
1792 * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
1793 instead of elmo-folder-list-flagged.
1795 2004-01-11 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1797 * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
1799 * elsp-bsfilter.el: New file.
1801 * elmo-pipe.el (elmo-folder-list-unreads,
1802 elmo-folder-list-answereds,
1803 elmo-folder-list-importants,
1804 elmo-folder-flag-as-important,
1805 elmo-folder-unflag-important,
1806 elmo-folder-flag-as-read,
1807 elmo-folder-unflag-read,
1808 elmo-folder-flag-as-answered,
1809 elmo-folder-unflag-answered): Remove.
1810 (elmo-folder-set-flag): Define.
1811 (elmo-folder-unset-flag): Ditto.
1813 * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
1814 (elmo-folder-set-flag): Define.
1815 (elmo-folder-unset-flag): Ditto.
1816 (elmo-folder-list-unreads): Remove.
1817 (elmo-folder-list-flagged): Define.
1819 * elmo-net.el (elmo-folder-list-flagged-internal): Define.
1820 (elmo-folder-list-unreads,
1821 elmo-folder-list-importants,
1822 elmo-folder-list-answereds,
1823 elmo-folder-list-unreads-plugged,
1824 elmo-folder-list-importants-plugged,
1825 elmo-folder-list-answereds-plugged): Remove.
1826 (elmo-folder-list-flagged-plugged): New method.
1827 (elmo-folder-unflag-important,
1828 elmo-folder-flag-as-important,
1829 elmo-folder-unflag-read,
1830 elmo-folder-flag-as-read,
1831 elmo-folder-unflag-answered,
1832 elmo-folder-flag-as-answered,
1833 elmo-folder-flag-as-read-unplugged,
1834 elmo-folder-unflag-read-unplugged,
1835 elmo-folder-flag-as-important-unplugged,
1836 elmo-folder-unflag-important-unplugged,
1837 elmo-folder-flag-as-answered-unplugged,
1838 elmo-folder-unflag-answered-unplugged): Remove.
1839 (elmo-folder-set-flag): Define.
1840 (elmo-folder-unset-flag): Ditto.
1841 (elmo-folder-set-flag-unplugged): Ditto.
1842 (elmo-folder-unset-flag-unplugged): Ditto.
1844 * elmo-multi.el (elmo-folder-list-unreads,
1845 elmo-folder-list-answereds,
1846 elmo-folder-list-importants,
1847 elmo-folder-flag-as-important,
1848 elmo-folder-unflag-important,
1849 elmo-folder-flag-as-read,
1850 elmo-folder-unflag-read,
1851 elmo-folder-flag-as-answered,
1852 elmo-folder-unflag-answered): Remove.
1853 (elmo-folder-set-flag): Define.
1854 (elmo-folder-unset-flag): Ditto.
1856 * elmo-map.el (elmo-map-folder-unflag-important,
1857 elmo-map-folder-flag-as-important,
1858 elmo-map-folder-unflag-read,
1859 elmo-map-folder-flag-as-read,
1860 elmo-map-folder-unflag-answered,
1861 elmo-map-folder-flag-as-answered): Remove.
1862 (elmo-map-folder-set-flag): New method.
1863 (elmo-map-folder-unset-flag): Ditto.
1864 (elmo-map-folder-list-unreads,
1865 elmo-map-folder-list-importants,
1866 elmo-map-folder-list-answereds): Remove.
1867 (elmo-folder-list-flagged-internal): Define.
1868 (elmo-map-folder-list-flagged): New method.
1870 * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
1871 (elmo-map-folder-list-unreads,
1872 elmo-map-folder-list-importants,
1873 elmo-map-folder-list-flagged): Remove.
1874 (elmo-map-folder-list-flagged): Define.
1875 (elmo-map-folder-flag-as-important,
1876 elmo-map-folder-unflag-important,
1877 elmo-map-folder-flag-as-read,
1878 elmo-map-folder-unflag-read,
1879 elmo-map-folder-flag-as-answered,
1880 elmo-map-folder-unflag-answered): Remove.
1881 (elmo-maildir-set-mark-messages): New internal function.
1882 (elmo-map-folder-set-flag): Define.
1883 (elmo-map-folder-unset-flag): Ditto.
1885 * elmo.el (toplevel): Added autoload setting for
1886 `elmo-folder-list-global-flag-messages'.
1887 (elmo-folder-list-unreads,
1888 elmo-folder-list-importants,
1889 elmo-folder-list-answereds): Remove.
1890 (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
1891 Return a list whitch merged with messages have global flag.
1892 (elmo-folder-list-flagged-internal): New method.
1893 (elmo-folder-unflag-important,
1894 elmo-folder-flag-as-important,
1895 elmo-folder-unflag-read,
1896 elmo-folder-flag-as-read,
1897 elmo-folder-unflag-answered,
1898 elmo-folder-flag-as-answered): Remove.
1899 (elmo-folder-set-flag): New method.
1900 (elmo-folder-unset-flag): Ditto.
1901 (elmo-message-set-flag):Use `elmo-folder-set-flag'.
1902 (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
1904 * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
1905 (elmo-folder-list-unreads-plugged,
1906 elmo-folder-list-importants-plugged,
1907 elmo-folder-list-answereds-plugged,
1908 elmo-folder-list-flagged-unplugged,
1909 elmo-folder-unflag-important-plugged,
1910 elmo-folder-flag-as-important-plugged,
1911 elmo-folder-unflag-read-plugged,
1912 elmo-folder-flag-as-read-plugged,
1913 elmo-folder-unflag-answered-plugged,
1914 elmo-folder-flag-as-answered-plugged): Remove.
1915 (elmo-folder-set-flag-plugged,
1916 elmo-folder-unset-flag-plugged): Define.
1918 * elmo-flag.el (elmo-folder-initialize): Register to
1919 `elmo-global-flag-list' if flag is not global.
1920 (elmo-folder-append-messages): Set flag to source messages.
1922 * elmo-filter.el (elmo-filter-folder-list-unreads,
1923 elmo-folder-list-unreads,
1924 elmo-filter-folder-list-importants,
1925 elmo-folder-list-importants,
1926 elmo-folder-flag-as-read,
1927 elmo-folder-unflag-read,
1928 elmo-folder-flag-as-important,
1929 elmo-folder-unflag-important,
1930 elmo-folder-flag-as-answered,
1931 elmo-folder-unflag-answered): Remove.
1932 (elmo-folder-set-flag): Define.
1933 (elmo-folder-unset-flag): Ditto.
1935 * elmo-dop.el (elmo-folder-flag-as-read-dop,
1936 elmo-folder-unflag-read-dop,
1937 elmo-folder-flag-as-important-dop,
1938 elmo-folder-unflag-important-dop,
1939 elmo-folder-flag-as-answered-dop,
1940 elmo-folder-unflag-answered-dop): Remove.
1941 (elmo-folder-set-flag-dop,
1942 elmo-folder-unset-flag-dop,
1943 elmo-folder-set-important-delayed,
1944 elmo-folder-unset-important-delayed,
1945 elmo-folder-set-read-delayed,
1946 elmo-folder-unset-read-delayed,
1947 elmo-folder-set-answered-delayed,
1948 elmo-folder-unset-answered-delayed): New function.
1949 (elmo-dop-queue-merge-method-list): Follow the above chagned.
1950 (elmo-dop-queue-method-name-alist): Ditto.
1952 * elmo-version.el (elmo-version): Up to 2.11.23.
1954 2004-01-11 Yuuichi Teranishi <teranisi@gohome.org>
1956 * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
1958 * elsp-sa.el: New file.
1960 2003-12-17 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1962 * modb-standard.el (modb-standard-message-entity): New function.
1963 (elmo-msgdb-message-entity): Use it.
1965 2003-12-14 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1967 * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
1968 behavior when one-level is nil.
1970 * elmo-flag.el (elmo-folder-list-subfolders): Defined.
1972 * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
1974 2003-12-06 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1976 * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
1978 (elmo-generic-folder-diff): Ditto.
1980 * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
1981 (elmo-folder-update-number): Ditto.
1983 * elmo-dop.el (elmo-folder-status-dop): Ditto.
1984 (elmo-folder-next-message-number-dop): Ditto.
1986 2003-12-04 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1988 * elmo-filter.el (elmo-folder-msgdb-create): Use
1989 `elmo-message-entity' and `elmo-message-flags' instead of
1990 `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
1992 2003-11-27 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1994 * elmo-spam.el (elmo-spam-processor): Added 3rd argument
1997 2003-11-23 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1999 * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2001 * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2003 * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2005 2003-11-22 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2007 * elmo-version.el (elmo-version): Up to 2.11.22.
2009 2003-11-21 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2011 * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2013 2003-11-20 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2015 * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2016 if the message dose not exist.
2018 2003-11-18 Tetsurou Okazaki <okazaki@be.to>
2020 * elmo-version.el (elmo-version): Up to 2.11.21.
2022 2003-11-18 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2024 * modb-standard.el (toplevel): Don't require mime.
2026 2003-11-15 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2028 * elsp-bogofilter.el (toplevel): Don't require path-util.
2029 (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2030 (elmo-spam-bogofilter-header): Abolish.
2031 (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2032 (elmo-spam-bogofilter-args): New user option.
2033 (elsp-bogofilter-call-bogofilter): New internal function.
2034 (elmo-spam-buffer-spam-p): Use it.
2035 (elsp-bogofilter-register-buffer): Renamed from
2036 `elmo-spam-bogofilter-register-buffer';
2037 Use `elsp-bogofilter-call-bogofilter'.
2038 (elmo-spam-register-spam-buffer): Follow the change above.
2039 (elmo-spam-register-good-buffer): Ditto.
2041 2003-11-11 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2043 * modb-standard.el (elmo-msgdb-append-entity): If entity or
2044 message-id is nil do nothing.
2046 2003-11-10 Yuuichi Teranishi <teranisi@gohome.org>
2048 * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2050 (elmo-imap4-session): Removed use-flag slot.
2051 (elmo-imap4-session-select-mailbox): Undo last change.
2052 (elmo-folder-use-flag-p): Use
2053 elmo-imap4-disuse-server-flag-mailbox-regexp.
2055 2003-11-09 Yuuichi Teranishi <teranisi@gohome.org>
2057 * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2058 (elmo-imap4-session-select-mailbox): Set it up.
2059 (elmo-folder-use-flag-p): Return value of use-flag slot.
2061 2003-11-07 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2063 * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2065 (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2067 * modb-entity.el (elmo-message-entity-handler): Likewise.
2069 2003-11-07 Yuuichi Teranishi <teranisi@gohome.org>
2071 * elmo.el (toplevel): Remove setting of autoloding for
2072 elmo-global-flag-initialize.
2073 (elmo-init): Don't call elmo-global-flag-initialize.
2074 (toplevel): Added autoload setting for elmo-global-mark-migrate.
2076 * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2077 (elmo-global-mark-migrate): Don't call it.
2078 (elmo-global-mark-upgrade): Ditto.
2080 2003-11-06 Yuuichi Teranishi <teranisi@gohome.org>
2082 * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2083 (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2085 * elmo-vars.el (elmo-init-hook): New user option.
2087 * elmo.el (elmo-init): Run the elmo-init-hook.
2089 * elmo-flag.el (elmo-global-mark-migrate): New function.
2091 2003-11-06 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2093 * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2094 Undo last change (move to elmo-msgdb-unset-flag).
2095 (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2098 2003-11-05 Yuuichi Teranishi <teranisi@gohome.org>
2100 * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2102 (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2103 (elmo-msgdb-unset-flag): Ditto.
2105 2003-11-05 Andreas Fuchs <asf@boinkor.net>
2107 * elmo-split.el (elmo-split): Return split message count.
2109 2003-11-05 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2111 * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2114 2003-11-03 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2116 * elmo.el (elmo-folder-unflag-important): Call
2117 `elmo-global-flag-detach' with 4th argument delete-if-none that is
2120 * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2122 (elmo-global-flag-detach): Delete the message from flag folder, if
2123 `delete-if-none' is a symbol `always'.
2125 2003-11-02 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2127 * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2128 `elmo-spam-spamfilter-decode-buffer'.
2129 (elsp-spamfilter-register-buffer-internal): New internal function.
2130 (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2131 (elmo-spam-register-spam-buffer): Ditto.
2132 (elmo-spam-register-good-buffer): Ditto.
2134 * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2136 (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2137 (elmo-spam-register-spam-buffer): Follow the API change.
2138 (elmo-spam-register-good-buffer): Ditto.
2140 * elmo-split.el (toplevel): Require elmo-spam when copmile.
2141 (elmo-split-spam-p): Added argument plist; Call
2142 `elmo-spam-buffer-spam-p' with new argument register.
2144 * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2146 (elmo-spam-message-spam-p): Ditto.
2147 (elmo-spam-register-spam-buffer): Added optional argument
2149 (elmo-spam-register-good-buffer): Ditto.
2150 (elmo-spam-register-spam-messages): Ditto.
2151 (elmo-spam-register-good-messages): Ditto.
2153 2003-10-27 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2155 * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2156 register into good corpus.
2157 (elmo-spam-register-good-buffer): Fixed to register into bad
2160 2003-10-26 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2162 * elmo-version.el (elmo-version): Up to 2.11.20.
2164 * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2167 * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2168 flag without depending on \Recent flag.
2170 2003-10-25 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2172 * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2173 (elmo-spam-modified-p): Defined.
2174 (elmo-spam-save-status): Set `modified' slot to nil.
2175 (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2176 (elmo-spam-register-good-buffer): Ditto.
2178 * elmo-spam.el (elmo-spam-modified-p): New API.
2180 2003-10-23 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2182 * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2183 duplicate definition.
2185 * elmo-util.el (elmo-unfold-field-body): New function.
2186 (elmo-msgdb-get-message-id-from-buffer): Use it.
2188 * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2189 Fixed the last change; Use elmo-unfold-field-body.
2191 2003-10-22 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2193 * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2196 2003-10-21 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2198 * elmo-spam.el (elmo-spam-save-status): New API.
2200 * elsp-spamfilter.el: New file.
2202 2003-10-21 TAKAHASHI Kaoru <kaoru@kaisei.org>
2204 * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2206 2003-10-20 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2208 * elmo-split.el (elmo-split-spam-p): New function.
2210 * elmo-spam.el: New file.
2212 * elsp-bogofilter.el: Ditto.
2214 2003-10-15 Yuuichi Teranishi <teranisi@gohome.org>
2216 * elmo.el (elmo-folder-next-message-number): New API.
2217 (elmo-folder-next-message-number): Define.
2218 (elmo-message-field): Don't check folder length.
2220 * elmo-net.el (elmo-folder-next-message-number): Define.
2221 (elmo-folder-next-message-number-unplugged): Define.
2223 * elmo-map.el (elmo-folder-next-message-number): Define.
2224 (elmo-folder-delete-messages): Clear hash value.
2226 * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
2228 * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2229 (elmo-folder-delete-messages-dop-delayed): Always return t.
2231 * elmo-version.el (elmo-version): Up to 2.11.19.
2233 2003-10-15 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2235 * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2238 * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2239 identical cons cell into the mark-alist and the hash table.
2241 2003-10-08 Yuuichi Teranishi <teranisi@gohome.org>
2243 * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2244 elmo-folder-list-messages with argument `visible-only' as t.
2246 * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2247 (elmo-folder-msgdb-create): Check the target folder.
2249 2003-10-07 Yuuichi Teranishi <teranisi@gohome.org>
2251 * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2252 `permanentflag' instead of `flags'.
2253 (elmo-folder-open): Ditto.
2254 (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2255 (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2256 (elmo-folder-use-flag-p): Always return t.
2257 (elmo-imap4-session-select-mailbox): Use value of `flags' if
2258 `permanentflags' does not exist.
2259 (elmo-folder-open): Ditto.
2261 2003-10-06 Yuuichi Teranishi <teranisi@gohome.org>
2263 * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2265 * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2267 * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2268 (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2270 (elmo-folder-open): Ditto.
2271 (elmo-imap4-set-flag): Send store flag command only when the `flags'
2272 slot of the session includes the flag.
2273 (elmo-imap4-session-flag-available-p): New function.
2274 (elmo-imap4-folder-list-flagged): Ditto.
2275 (elmo-folder-list-unreads-plugged): Use it.
2276 (elmo-folder-list-importants-plugged): Ditto.
2277 (elmo-folder-list-answereds-plugged): Ditto.
2278 (elmo-imap4-search-internal-primitive): Ditto.
2279 (elmo-imap4-folder-list-any-plugged,
2280 elmo-imap4-folder-list-digest-plugged): Abolish.
2282 * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2285 2003-10-06 Yoichi NAKAYAMA <yoichi@geiin.org>
2287 * elmo-util.el (toplevel): Require emu for char-list-to-string.
2289 2003-10-05 Yuuichi Teranishi <teranisi@gohome.org>
2291 * elmo-util.el (elmo-get-hash-val): Simplify.
2292 (elmo-set-hash-val): Rewrite.
2294 2003-09-27 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2296 * elmo.el (elmo-folder-list-messages): Append killed messages into
2297 result if `visible-only' is nil and `in-msgdb' is non-nil.
2299 * elmo-util.el (elmo-uniq-list): Added optional argument
2302 * modb.el (elmo-msgdb-flag-count): New API.
2304 * modb-standard.el (modb-standard): Added slot flag-count.
2305 (modb-standard-countup-flags): New function.
2306 (modb-standard-load-flag): Call it.
2307 (elmo-msgdb-append): Ditto.
2308 (elmo-msgdb-clear): Clear slot flag-count.
2309 (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2310 (elmo-msgdb-unset-flag): Treat `all' flag and call
2311 modb-standard-countup-flags.
2312 (elmo-msgdb-flag-count): Define.
2313 (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2314 (elmo-msgdb-delete-messages): Ditto.
2316 * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2317 (elmo-msgdb-flag-count): Define.
2319 * elmo.el (elmo-folder-list-messages): Undo last change.
2320 (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
2321 (elmo-folder-kill-messages): Unset all flags to numbers.
2323 * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
2324 elmo-folder-kill-messages.
2326 * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
2327 (elmo-nntp-folder-delete-messages): Abolish.
2329 * elmo-version.el (elmo-version): Up to 2.11.18.
2331 2003-09-26 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2333 * elmo.el (elmo-folder-kill-messages-before): Abolish.
2334 (elmo-folder-kill-messages-range): New function.
2335 (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
2336 instead of elmo-folder-kill-messages-before.
2338 2003-09-26 Yuuichi Teranishi <teranisi@gohome.org>
2340 * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
2341 elmo-imap4-current-msgdb to decide entity handler.
2343 2003-09-25 Yuuichi Teranishi <teranisi@gohome.org>
2345 * elmo-dop.el (elmo-dop-msgdb): Rewrite.
2347 * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
2349 (elmo-msgdb-overview-entity-get-number-internal): Ditto.
2350 (elmo-msgdb-overview-entity-set-number,
2351 elmo-msgdb-overview-entity-get-references,
2352 elmo-msgdb-overview-entity-set-references,
2353 elmo-msgdb-overview-entity-get-from-no-decode,
2354 elmo-msgdb-overview-entity-get-from,
2355 elmo-msgdb-overview-entity-set-from,
2356 elmo-msgdb-overview-entity-get-subject,
2357 elmo-msgdb-overview-entity-get-subject-no-decode,
2358 elmo-msgdb-overview-entity-set-subject,
2359 elmo-msgdb-overview-entity-get-date,
2360 elmo-msgdb-overview-entity-set-date,
2361 elmo-msgdb-overview-entity-get-to,
2362 elmo-msgdb-overview-entity-get-cc,
2363 elmo-msgdb-overview-entity-get-size,
2364 elmo-msgdb-overview-entity-set-size,
2365 elmo-msgdb-overview-entity-get-extra,
2366 elmo-msgdb-overview-entity-set-extra,
2367 elmo-msgdb-overview-entity-get-extra-field,
2368 elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
2369 (elmo-msgdb-make-index): Use
2370 `elmo-msgdb-overview-entity-get-number-internal'.
2371 (elmo-msgdb-clear-index): Ditto.
2372 (elmo-msgdb-append-entity): Ditto;
2373 Use `elmo-msgdb-overview-entity-get-id-internal'.
2375 * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
2376 elmo-msgdb-overview-entity-set-number,
2377 elmo-msgdb-overview-entity-get-references,
2378 elmo-msgdb-overview-entity-set-references,
2379 elmo-msgdb-overview-entity-get-from-no-decode,
2380 elmo-msgdb-overview-entity-get-from,
2381 elmo-msgdb-overview-entity-set-from,
2382 elmo-msgdb-overview-entity-get-subject,
2383 elmo-msgdb-overview-entity-get-subject-no-decode,
2384 elmo-msgdb-overview-entity-set-subject,
2385 elmo-msgdb-overview-entity-get-date,
2386 elmo-msgdb-overview-entity-set-date,
2387 elmo-msgdb-overview-entity-get-to,
2388 elmo-msgdb-overview-entity-get-cc,
2389 elmo-msgdb-overview-entity-get-size,
2390 elmo-msgdb-overview-entity-set-size,
2391 elmo-msgdb-overview-entity-get-extra,
2392 elmo-msgdb-overview-entity-set-extra,
2393 elmo-msgdb-overview-entity-get-extra-field,
2394 elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
2395 and rewrote for backward compatibility.
2397 2003-09-24 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2399 * elmo.el (elmo-message-entity-number,
2400 elmo-message-entity-set-number,
2401 elmo-message-entity-field,
2402 elmo-message-entity-set-field): Moved to elmo-msgdb.el.
2404 * elmo-msgdb.el (elmo-message-entity-number,
2405 elmo-message-entity-set-number,
2406 elmo-message-entity-field,
2407 elmo-message-entity-set-field): Moved from elmo.el.
2409 2003-09-24 Yuuichi Teranishi <teranisi@gohome.org>
2411 * elmo.el (toplevel): Changed definition orders.
2413 2003-09-23 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2415 * modb.el (elmo-msgdb-search): New API .
2416 (elmo-msgdb-match-condition): Ditto.
2418 * modb-standard.el (elmo-msgdb-search): Define.
2420 * modb-legacy.el (elmo-msgdb-search): Ditto.
2422 * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
2423 from elmo-msgdb-match-condition-internal.
2425 * elmo.el (elmo-folder-search-fast): Abolish.
2426 (elmo-folder-search): Use elmo-msgdb-search and
2427 elmo-with-progress-display.
2429 * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
2432 * elmo.el (elmo-folder): Remove slot message-modified and
2434 (elmo-folder-set-message-modified): Abolish.
2435 (elmo-generic-folder-commit): Follow the change above.
2436 (elmo-folder-synchronize): Ditto.
2438 * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
2440 * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2442 * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
2444 2003-09-22 Yuuichi Teranishi <teranisi@gohome.org>
2446 * modb-standard.el (modb-standard-make-message-entity,
2447 elmo-msgdb-make-message-entity,
2448 elmo-msgdb-create-message-entity-from-buffer,
2449 elmo-msgdb-message-entity-number,
2450 elmo-msgdb-message-entity-set-number,
2451 elmo-msgdb-message-entity-field,
2452 elmo-msgdb-message-entity-set-field,
2453 elmo-msgdb-copy-message-entity,
2454 elmo-msgdb-match-condition-internal): Remove.
2456 * modb-entity.el: New file (again).
2458 * modb.el (toplevel): Require modb-entity.
2459 (elmo-msgdb-message-entity-handler): New method.
2461 * modb-standard.el (modb-standard-entity-id): Use
2462 elmo-message-entity-handler.
2463 (modb-standard-load-entity): Ditto.
2464 (elmo-msgdb-append-entity): Ditto.
2465 (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2467 * modb-legacy.el (elmo-msgdb-get-decoded-cache,
2468 elmo-msgdb-decoded-cache-hashtb,
2469 (modb-legacy-make-message-entity,
2470 elmo-msgdb-make-message-entity,
2471 elmo-msgdb-create-message-entity-from-buffer,
2472 elmo-msgdb-message-entity-number,
2473 elmo-msgdb-message-entity-set-number,
2474 elmo-msgdb-message-entity-field,
2475 elmo-msgdb-message-entity-set-field,
2476 elmo-msgdb-copy-message-entity,
2477 elmo-msgdb-match-condition-internal,
2478 elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
2480 * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
2481 (elmo-message-entity-set-number): Ditto.
2482 (elmo-message-entity-field): Ditto.
2483 (elmo-message-entity-set-field): Ditto.
2485 * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
2487 * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2489 * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2491 * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
2492 (elmo-nntp-msgdb-create-message): Ditto.
2494 * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
2495 (elmo-folder-msgdb-create): Add unread flag.
2497 * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2499 * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
2501 * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
2503 * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2505 * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
2506 elmo-msgdb-messge-entity-handler.
2507 * elmo-version.el (elmo-version): Up to 2.11.17.
2509 2003-09-22 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2511 * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
2514 2003-09-22 Yuuichi Teranishi <teranisi@gohome.org>
2516 * elmo.el (elmo-message-field): Use elmo-message-entity-field.
2518 * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
2519 (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
2520 (elmo-msgdb-flag-table): Ditto.
2521 (elmo-msgdb-sort-by-date): Ditto.
2523 * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
2525 * modb-standard.el (toplevel): Require mime.
2526 (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
2527 (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
2528 elmo-msgdb-message-entity-number.
2529 (elmo-msgdb-append-entity): Ditto.
2530 (elmo-msgdb-create-message-entity-from-file): Remove.
2531 (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which
2532 corresponds to the entity.
2533 (elmo-msgdb-message-entity-number): Do nothing currently.
2534 (elmo-msgdb-message-entity-field): Ditto.
2535 (elmo-msgdb-message-entity-set-field): Ditto.
2536 (elmo-msgdb-copy-message-entity): Ditto.
2537 (elmo-msgdb-match-condition-internal): Ditto.
2539 * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
2541 (elmo-msgdb-create-message-entity-from-file): Remove.
2543 * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
2545 (elmo-multiple-field-body): Moved from elmo-msgdb.el.
2547 * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
2549 2003-09-21 Yuuichi Teranishi <teranisi@gohome.org>
2551 * modb.el (elmo-msgdb-make-message-entity): Define simple one.
2552 (elmo-msgdb-message-entity-field): Ditto.
2553 (elmo-msgdb-message-entity-number): Ditto.
2555 2003-09-21 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2557 * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer):
2558 Fixed how to set extra field into entity.
2559 (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2562 * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
2563 Fixed how to set extra field into entity.
2564 (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2567 2003-09-21 Yuuichi Teranishi <teranisi@gohome.org>
2569 * modb.el (elmo-message-entity-db): New function.
2570 (elmo-msgdb-make-message-entity): New API.
2571 (elmo-msgdb-message-entity-number): Ditto.
2572 (elmo-msgdb-message-entity-set-number): Ditto.
2573 (elmo-msgdb-message-entity-field): Ditto.
2574 (elmo-msgdb-message-entity-set-field): Ditto.
2575 (elmo-msgdb-copy-message-entity): Ditto.
2576 (elmo-msgdb-create-message-entity-from-file): Ditto.
2577 (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2578 (elmo-msgdb-match-condition-internal): Ditto.
2580 * modb-standard.el (modb-legacy): Require modb-legacy.
2581 (modb-standard-make-message-entity): New inline function.
2582 (elmo-msgdb-make-message-entity): Define.
2583 (elmo-msgdb-create-message-entity-from-file): Ditto.
2584 (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2585 (elmo-msgdb-message-entity-field): Ditto.
2586 (elmo-msgdb-message-entity-set-field): Ditto.
2587 (elmo-msgdb-copy-message-entity): Ditto.
2588 (elmo-msgdb-match-condition-internal): Ditto.
2590 * modb-legacy.el: Don't require modb-entity.
2591 (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
2592 (elmo-msgdb-match-condition-primitive): Ditto.
2593 (elmo-msgdb-get-decoded-cache): Ditto.
2594 (elmo-msgdb-overview-entity-get-id): Ditto.
2595 (elmo-msgdb-overview-entity-get-number): Ditto.
2596 (elmo-msgdb-overview-entity-set-number): Ditto.
2597 (elmo-msgdb-overview-entity-get-references): Ditto.
2598 (elmo-msgdb-overview-entity-set-references): Ditto.
2599 (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
2600 (elmo-msgdb-overview-entity-get-from): Ditto.
2601 (elmo-msgdb-overview-entity-set-from): Ditto.
2602 (elmo-msgdb-overview-entity-get-subject): Ditto.
2603 (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
2604 (elmo-msgdb-overview-entity-set-subject): Ditto.
2605 (elmo-msgdb-overview-entity-get-date): Ditto.
2606 (elmo-msgdb-overview-entity-set-date): Ditto.
2607 (elmo-msgdb-overview-entity-get-to): Ditto.
2608 (elmo-msgdb-overview-entity-get-cc): Ditto.
2609 (elmo-msgdb-overview-entity-get-size): Ditto.
2610 (elmo-msgdb-overview-entity-set-size): Ditto.
2611 (elmo-msgdb-overview-entity-get-extra): Ditto.
2612 (elmo-msgdb-overview-entity-set-extra): Ditto.
2613 (elmo-msgdb-overview-entity-get-extra-field): Ditto.
2614 (elmo-msgdb-overview-entity-set-extra-field): Ditto.
2615 (elmo-msgdb-number-load): Ditto.
2616 (elmo-msgdb-overview-load): Ditto.
2617 (elmo-msgdb-mark-load): Ditto.
2618 (elmo-msgdb-number-save): Ditto.
2619 (elmo-msgdb-mark-save): Ditto.
2620 (elmo-msgdb-overview-save): Ditto.
2621 (modb-legacy-make-message-entity): New inline function.
2622 (elmo-msgdb-insert-file-header): Ditto.
2623 (elmo-msgdb-make-message-entity): Define.
2624 (elmo-msgdb-create-message-entity-from-file): Ditto.
2625 (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2626 (elmo-msgdb-message-entity-number): Ditto.
2627 (elmo-msgdb-message-entity-set-number): Ditto.
2628 (elmo-msgdb-message-entity-field): Ditto.
2629 (elmo-msgdb-message-entity-set-field): Ditto.
2630 (elmo-msgdb-copy-message-entity): Ditto.
2631 (elmo-msgdb-match-condition-internal): Ditto.
2633 * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
2634 (elmo-message-copy-entity): Rewrite.
2635 (elmo-message-entity-number): Ditto.
2636 (elmo-message-entity-set-number): Ditto.
2637 (elmo-message-entity-field): Use elmo-message-entity-db.
2638 (elmo-message-entity-set-field): Ditto.
2639 (elmo-message-field): Rewrite.
2641 * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
2643 (elmo-msgdb-get-message-id-from-buffer): Ditto.
2645 * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
2646 elmo-message-entity-field.
2647 (elmo-shimbun-folder-shimbun-header): Ditto.
2648 (elmo-shimbun-entity-to-header): Ditto.
2649 (elmo-folder-msgdb-create): Ditto.
2650 (elmo-shimbun-msgdb-create-entity): Ditto;
2651 Use elmo-msgdb-create-message-entity-from-buffer.
2652 (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
2653 (elmo-map-folder-list-message-locations): elmo-message-entity-field.
2655 * elmo-sendlog.el (elmo-folder-msgdb-create): Use
2656 elmo-msgdb-create-message-entity-from-file and
2657 elmo-message-entity-field.
2659 * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
2660 elmo-message-entity-number.
2661 (elmo-pop3-msgdb-create-message): Use
2662 elmo-msgdb-create-message-entity-from-buffer,
2663 elmo-message-entity-set-field, elmo-message-entity-number and
2664 elmo-message-entity-set-number.
2666 * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
2667 the API change in elmo-msgdb-make-message-entity.
2668 (elmo-nntp-msgdb-create-message): Use
2669 elmo-msgdb-create-message-entity-from-buffer.
2671 * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
2672 elmo-message-entity-field and
2673 elmo-msgdb-create-message-entity-from-file.
2675 * elmo-msgdb.el (toplevel): Don't require modb-entity.
2676 (elmo-msgdb-get-field): Abolish.
2677 (elmo-msgdb-get-number): Rewrite.
2678 (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
2679 (elmo-msgdb-flag-table): Ditto.
2680 (elmo-msgdb-get-last-message-id,
2681 elmo-msgdb-number-load, elmo-msgdb-overview-load,
2682 elmo-msgdb-mark-load, elmo-msgdb-number-save,
2683 elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
2684 (elmo-msgdb-create-overview-from-buffer,
2685 elmo-msgdb-overview-get-parent-entity): Abolish.
2687 * elmo-mime.el (elmo-mime-display-as-is): Use
2688 elmo-message-entity-field.
2690 * elmo-map.el (elmo-folder-pack-numbers): Use
2691 elmo-message-entity-set-number.
2693 * elmo-maildir.el (elmo-folder-msgdb-create):
2694 elmo-msgdb-create-message-entity-from-file instead of
2695 elmo-msgdb-create-overview-entity-from-file.
2697 * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
2699 (elmo-folder-msgdb-create): Use elmo-message-entity-field.
2700 (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
2702 * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
2703 elmo-messge-entity-field and elmo-message-entity-number.
2704 (elmo-imap4-fetch-callback-1): Call
2705 elmo-msgdb-create-message-entity-from-buffer instead of
2706 elmo-msgdb-create-overview-from-buffer.
2707 (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
2708 (elmo-find-fetch-strategy): Likewise.
2710 * elmo-flag.el (elmo-folder-msgdb-create): Call
2711 elmo-localdir-msgdb-create-entity with argument msgdb.
2713 * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
2714 and elmo-message-entity-set-number.
2716 * elmo-cache.el (elmo-folder-msgdb-create): Use
2717 elmo-message-entity-field.
2718 (elmo-folder-msgdb-create): Call
2719 elmo-msgdb-create-message-entity-from-file instead of
2720 elmo-msgdb-create-overview-entity-from-file.
2722 * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
2723 argument msgdb; Call elmo-msgdb-create-message-from-buffer
2724 instead of elmo-msgdb-create-overview-from-buffer.
2725 (elmo-archive-msgdb-create-entity): Ditto.
2726 (elmo-archive-msgdb-create-as-numlist-subr1): Use
2727 elmo-message-entity-field.
2728 (elmo-archive-parse-mmdf): Ditto.
2730 * modb-entity.el: Removed.
2732 * elmo-version.el (elmo-version): Up to 2.11.16.
2734 2003-09-20 Yuuichi Teranishi <teranisi@gohome.org>
2736 * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
2738 (elmo-folder-flag-as-answered): Ditto.
2740 2003-09-19 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2742 * modb-standard.el: New file.
2744 * elmo.el (elmo-folder-clear): Reconstruct msgdb if
2745 elmo-msgdb-convert-type is `sync'.
2747 * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
2748 (elmo-msgdb-convert-type): New user option.
2750 * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
2751 (elmo-load-msgdb): Auto detect saved type.
2753 * elmo-version.el (elmo-version): Up to 2.11.15.
2755 2003-09-19 Yuuichi Teranishi <teranisi@gohome.org>
2757 * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
2759 * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
2760 (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
2761 with argument `delete-if-none' when dst-folder is 'null.
2763 * elmo-flag.el (elmo-folder-append-messages): Defined.
2764 (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
2766 2003-09-18 Yuuichi Teranishi <teranisi@gohome.org>
2768 * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
2770 2003-09-18 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2772 * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
2773 (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
2774 (elmo-folder-commit): Ditto.
2776 2003-09-18 Yuuichi Teranishi <teranisi@gohome.org>
2778 * elmo-flag.el: New file.
2780 * elmo-mark.el: Removed.
2782 * modb-legacy.el (modb-legacy-new-mark,
2783 modb-legacy-unread-uncached-mark,
2784 modb-legacy-unread-cached-mark,
2785 modb-legacy-read-uncached-mark,
2786 modb-legacy-answered-cached-mark,
2787 modb-legacy-answered-uncached-mark,
2788 modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
2789 All other related portions are changed.
2791 * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
2792 (elmo-folder-list-messages-with-global-mark): Abolish.
2793 (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
2794 (elmo-folder-flag-as-important): Ditto.
2795 (elmo-folder-unflag-read): Ditto.
2796 (elmo-folder-flag-as-read): Ditto.
2797 (elmo-folder-unflag-answered): Ditto.
2798 (elmo-folder-flag-as-answered): Ditto.
2799 (elmo-message-encache): Return the cache path.
2800 (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
2801 (elmo-message-set-flag): Transitional implementation.
2802 (elmo-message-unset-flag): Ditto.
2803 (elmo-folder-unflag-important): Call elmo-global-flag-detach.
2804 (elmo-folder-flag-as-important): Call elmo-global-flag-set.
2805 (elmo-init): Call elmo-global-flag-initialize.
2806 (toplevel): Added autoload settings for elmo-flag.
2808 * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
2810 * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
2811 (elmo-file-cache-delete): Don't treat global-mark.
2813 * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
2815 * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2817 * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
2818 `elmo-global-flags-set'.
2820 * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
2822 (elmo-folder-unflag-read): Ditto.
2823 (elmo-folder-unflag-important): Ditto.
2824 (elmo-folder-flag-as-important): Ditto.
2825 (elmo-folder-unflag-answered): Ditto.
2826 (elmo-folder-flag-as-answered): Ditto.
2828 * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
2829 `elmo-global-flags-set'.
2830 (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
2832 * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
2834 * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
2836 (elmo-folder-flag-as-important): Ditto.
2837 (elmo-folder-unflag-important): Ditto.
2838 (elmo-folder-flag-as-important): Ditto.
2839 (elmo-folder-unflag-read): Ditto.
2840 (elmo-folder-flag-as-read): Ditto.
2841 (elmo-folder-unflag-answered): Ditto.
2842 (elmo-folder-flag-as-answered): Ditto.
2844 * elmo-multi.el (elmo-folder-list-importants): Don't call
2845 elmo-folder-list-messages-with-global-mark.
2846 (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
2847 (elmo-folder-unflag-important): Ditto.
2848 (elmo-folder-flag-as-read): Ditto.
2849 (elmo-folder-unflag-read): Ditto.
2850 (elmo-folder-flag-as-answered): Ditto.
2851 (elmo-folder-unflag-answered): Ditto.
2853 * elmo-msgdb.el (elmo-msgdb-new-mark,
2854 elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
2855 elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
2856 elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
2857 (Moved to modb-legacy.el).
2858 (elmo-flag-table-get): Treat important flag too.
2860 * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
2862 (elmo-map-folder-flag-as-important): Ditto.
2863 (elmo-map-folder-unflag-read): Ditto.
2864 (elmo-map-folder-flag-as-read): Ditto.
2865 (elmo-map-folder-unflag-answered): Ditto.
2866 (elmo-map-folder-flag-as-answered): Ditto.
2867 (elmo-folder-unflag-important): Ditto.
2868 (elmo-folder-flag-as-important): Ditto.
2869 (elmo-folder-unflag-read): Ditto.
2870 (elmo-folder-flag-as-read): Ditto.
2871 (elmo-folder-unflag-answered): Ditto.
2872 (elmo-folder-flag-as-answered): Ditto.
2874 * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2875 (elmo-map-folder-flag-as-important): Renamed from `mark' to
2877 (elmo-map-folder-unflag-important): Ditto.
2878 (elmo-map-folder-flag-as-read): Ditto.
2879 (elmo-map-folder-unflag-read): Ditto.
2880 (elmo-map-folder-flag-as-answered): Ditto.
2881 (elmo-map-folder-unflag-answered): Ditto.
2883 * elmo-localdir.el (elmo-folder-msgdb-create): Call
2884 `elmo-global-flags-set'.
2885 (elmo-global-flags-set): Added autoload setting.
2887 * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
2890 * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
2891 `elmo-msgdb-global-mark-set'.
2892 (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
2893 Call `elmo-global-flags-set'.
2894 (elmo-folder-unflag-important-plugged): Renamed from `mark' to
2896 (elmo-folder-flag-as-important-plugged): Ditto.
2897 (elmo-folder-unflag-read-plugged): Ditto.
2898 (elmo-folder-flag-as-read-plugged): Ditto.
2899 (elmo-folder-unflag-answered-plugged): Ditto.
2900 (elmo-folder-flag-as-answered-plugged): Ditto.
2901 (elmo-global-flags-set): Added autoload setting.
2903 * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
2905 (elmo-folder-unflag-read): Ditto.
2906 (elmo-folder-flag-as-important): Ditto.
2907 (elmo-folder-unflag-important): Ditto.
2908 (elmo-folder-flag-as-answered): Ditto.
2909 (elmo-folder-unflag-answered): Ditto.
2911 * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
2912 change of `mark'->`flag'.
2913 (elmo-dop-queue-method-name-alist): Ditto.
2914 (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
2915 (elmo-folder-unflag-read-dop): Ditto.
2916 (elmo-folder-flag-as-important-dop): Ditto.
2917 (elmo-folder-unflag-important-dop): Ditto.
2918 (elmo-folder-flag-as-answered-dop): Ditto.
2919 (elmo-folder-unflag-answered-dop): Ditto.
2921 * elmo-cache.el (elmo-folder-msgdb-create): Call
2922 `elmo-global-flags-set'.
2924 * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
2925 Call `elmo-global-flags-set'.
2926 (elmo-archive-msgdb-create-as-numlist-subr2): Call
2927 elmo-archive-parse-mmdf with argument `folder'.
2928 (elmo-archive-parse-mmdf): Added argument `folder';
2929 Call `elmo-global-flags-set'.
2931 * elmo-version.el (elmo-version): Up to 2.11.14.
2933 2003-09-17 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2935 * modb.el (elmo-msgdb-length): Define.
2937 * elmo.el (elmo-make-folder): Fixed.
2938 (elmo-generic-folder-append-messages): Follow the API change.
2940 * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
2943 2003-09-15 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
2945 * modb.el: New file.
2947 * modb-entity.el: Ditto.
2949 * modb-legacy.el: Ditto.
2951 * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
2952 (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
2953 of `elmo-msgdb-overview-get-entity'.
2954 (elmo-msgdb-get-field): Ditto.
2955 (elmo-msgdb-merge): Moved to `elmo.el'.
2956 (elmo-msgdb-length): Removed; redefine as modb method.
2957 (elmo-msgdb-change-mark): Abolish.
2958 (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
2959 (elmo-msgdb-match-condition): Don't use mark.
2960 (elmo-msgdb-overview-get-entity): Abolish.
2961 Split modb part into `modb*.el'.
2963 * elmo-vars.el (elmo-msgdb-default-type): New user option.
2965 * elmo-shimbun.el (shimbun-mua-search-id): Use
2966 `elmo-msgdb-message-entity' instead of
2967 `elmo-msgdb-overview-get-entity'.
2968 (elmo-shimbun-folder-shimbun-header): Ditto.
2969 (elmo-shimbun-get-headers): Ditto.
2970 (elmo-shimbun-update-overview): Ditto.
2972 * elmo-mime.el (elmo-mime-display-as-is): Ditto.
2974 * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
2976 * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
2977 (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
2979 * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
2980 `elmo-msgdb-mark-to-flags'.
2982 * elmo-map.el (elmo-folder-pack-numbers): Don't use
2983 `elmo-msgdb-set-path'.
2985 * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
2987 * elmo-version.el (elmo-version): Up to 2.11.13.
2989 * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
2991 * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
2994 2003-09-14 TAKAHASHI Kaoru <kaoru@kaisei.org>
2996 * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
2999 2003-09-14 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3001 * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3002 instead of `elmo-msgdb-get-cached'.
3003 (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3005 * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3006 (elmo-msgdb-set-cached): Ditto.
3007 (elmo-msgdb-set-flag): Rewrite.
3008 (elmo-msgdb-unset-flag): Ditto.
3010 * elmo-msgdb.el: Rewrite with luna.
3012 * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3013 (elmo-folder-msgdb): Follow the change above.
3014 (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3015 (elmo-folder-unmark-important): Follow the API change.
3016 (elmo-folder-mark-as-important): Ditto.
3017 (elmo-folder-unmark-read): Ditto.
3018 (elmo-folder-mark-as-read): Ditto.
3019 (elmo-folder-unmark-answered): Ditto.
3020 (elmo-folder-mark-as-answered): Ditto.
3021 (elmo-folder-clear): Likewise.
3023 * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3024 instead of `elmo-msgdb-load' (renamed).
3026 * elmo-version.el (elmo-version): Up to 2.11.12.
3028 2003-09-13 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3030 * elmo.el (elmo-generic-folder-append-messages): Follow the API
3032 (elmo-message-mark): Abolish.
3033 (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3034 instead of `elmo-msgdb-change-mark'.
3036 * elmo-pipe.el (elmo-message-mark): Abolish.
3038 * elmo-multi.el (elmo-message-mark): Ditto.
3040 * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3041 (elmo-msgdb-unread-uncached-mark): Ditto.
3042 (elmo-msgdb-unread-cached-mark): Ditto.
3043 (elmo-msgdb-read-uncached-mark): Ditto.
3044 (elmo-msgdb-answered-cached-mark): Ditto.
3045 (elmo-msgdb-answered-uncached-mark): Ditto.
3046 (elmo-msgdb-important-mark): Ditto.
3047 (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3049 (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3051 (elmo-flag-table-load): Changed flag to list of flag.
3052 (elmo-flag-table-set): If flags is nil, set read flag.
3053 (elmo-flag-table-get): Return derived flags from global mark,
3054 cache status and saved flags.
3055 (elmo-msgdb-flag-table): Follow the change above.
3056 (elmo-msgdb-out-of-date-messages): New function.
3058 * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3060 * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3062 * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3064 * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3065 (elmo-nntp-msgdb-create-message): Ditto.
3067 * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3069 * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3071 (elmo-folder-msgdb-create): Follow the API change.
3073 * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3074 (elmo-folder-append-messages): Ditto.
3076 * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3077 (elmo-folder-append-buffer): Ditto.
3079 * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3081 * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3083 * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3084 (elmo-archive-parse-mmdf): Ditto.
3086 * elmo-version.el (elmo-version): Up to 2.11.11.
3088 2003-09-10 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3090 * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3093 * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3095 * elmo-pipe.el (elmo-message-flags): Defined.
3097 * elmo-multi.el (elmo-message-flags): Ditto.
3099 2003-09-07 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3101 * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3102 `elmo-msgdb-delete-msgs'.
3104 * elmo.el (elmo-folder-count-flags): Don't use
3105 `elmo-msgdb-get-mark-alist'.
3106 (elmo-folder-detach-messages): Follow the API change.
3108 * elmo.el (elmo-folder-list-messages): Append killed messages into
3109 result if `visible-only' is nil.
3111 * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3113 (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3114 (elmo-folder-update-number): Likewise.
3116 * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3117 (elmo-pop3-sort-msgdb-by-original-number): Use
3118 `elmo-msgdb-sort-entities'.
3120 * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3121 (elmo-msgdb-sort-by-date): Use it.
3122 (elmo-msgdb-overview-sort-by-date): Abolish.
3124 * elmo-dop.el (elmo-folder-status-dop): Fixed.
3126 * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3127 (elmo-msgdb-flags): New function.
3128 (elmo-msgdb-merge): Use elmo-msgdb-append.
3130 * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3133 * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3135 * elmo-dop.el (elmo-folder-status-dop): Use
3136 elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3138 2003-09-06 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3140 * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3142 * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3144 * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3146 * elmo-util.el (elmo-with-progress-display): New macro.
3148 * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3150 2003-09-05 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3152 * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3153 `elmo-folder-list-message-entities' instead of
3154 `elmo-msgdb-get-overview'.
3155 (elmo-map-folder-list-message-locations): Ditto.
3157 * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3158 methods instead of treat directly).
3159 (elmo-msgdb-clear): Ditto.
3160 (elmo-msgdb-delete-msgs): Ditto.
3161 (elmo-msgdb-sort-by-date): Ditto.
3163 * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3165 (elmo-nntp-folder-msgdb-create): Follow the API change.
3167 * elmo-version.el (elmo-version): Up to 2.11.10.
3169 2003-08-30 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3171 * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3172 (elmo-msgdb-flags-to-mark): Ditto.
3173 (elmo-msgdb-append-entity): Ditto.
3175 * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3176 Use `elmo-msgdb-append-entity' instead of construct msgdb.
3177 (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3178 (elmo-archive-parse-mmdf): Ditto.
3180 * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3182 * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3184 * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3186 * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3188 * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3190 * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3192 * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3194 * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3196 * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3197 (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3200 * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3201 `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3202 instead of directly construction.
3203 (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3204 instead of construct msgdb.
3206 * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3207 `elmo-msgdb-set-overview' instead of reconstruct msgdb.
3208 (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
3209 instead of construct msgdb.
3211 2003-08-28 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3213 * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
3214 when field is from or subject.
3216 2003-08-23 Yuuichi Teranishi <teranisi@gohome.org>
3218 * elmo-multi.el (elmo-message-entity-parent): Define.
3219 (elmo-folder-search): Rewrite.
3221 2003-08-22 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3223 * elmo-multi.el (elmo-message-cached-p): Define.
3225 * elmo.el (elmo-message-cached-p): New method.
3226 (elmo-message-accessible-p): Use it instead of msgdb API directly.
3227 (elmo-message-flags): New method.
3228 (elmo-message-flagged-p): New function.
3230 * elmo-version.el (elmo-version): Up to 2.11.9.
3232 2003-08-20 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3234 * elmo-version.el (elmo-version): Up to 2.11.8.
3236 * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3238 * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3240 2003-08-14 Yuuichi Teranishi <teranisi@gohome.org>
3242 * elmo.el (elmo-folder-detach-messages): Undo last change.
3244 2003-08-13 Yuuichi Teranishi <teranisi@gohome.org>
3246 * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3248 * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3249 only when src folder type is pop3.
3251 2003-08-12 Yuuichi Teranishi <teranisi@gohome.org>
3253 * elmo-msgdb.el (elmo-msgdb-make-index): Use
3254 elmo-msgdb-overview-entity-get-number instead of
3255 elmo-message-entity-number.
3257 2003-08-09 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3259 * elmo-version.el (elmo-version): Up to 2.11.7.
3261 2003-08-07 Yuuichi Teranishi <teranisi@gohome.org>
3263 * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3266 * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3267 (elmo-msgdb-merge): New function.
3268 (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3269 (elmo-msgdb-make-index): Rewrite.
3271 * elmo-version.el (elmo-version): Up to 2.11.6.
3273 * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3274 use it as a the path for loading message entities.
3276 * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3278 2003-08-05 Yuuichi Teranishi <teranisi@gohome.org>
3280 * elmo-filter.el (elmo-folder-set-message-modified): Set
3281 message-modified slot of itself if it does not require target msgdb.
3283 * elmo-mime.el (elmo-mime-message-display): Display message entirely
3284 if folder length is zero.
3285 (elmo-mime-display-as-is): Ditto.
3287 * elmo-filter.el (elmo-folder-set-message-modified): Define.
3289 * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3291 2003-08-03 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3293 * elmo.el (elmo-folder-set-message-modified): New method.
3294 (elmo-generic-folder-commit): Use it.
3295 (elmo-folder-synchronize): Ditto.
3297 * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3298 (elmo-folder-commit): Remove duplicate definition.
3300 2003-08-02 Yuuichi Teranishi <teranisi@gohome.org>
3302 * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3304 2003-08-02 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3306 * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3307 (elmo-strict-folder-diff): Ditto.
3308 (elmo-folder-set-info-max-by-numdb): Simplify.
3310 * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3311 elmo-msgdb-list-messages.
3313 * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3314 (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3316 2003-08-02 Yuuichi Teranishi <teranisi@gohome.org>
3318 * elmo.el (elmo-folder-list-messages): Treat killed-list only when
3319 visible-only is non-nil.
3320 (elmo-folder-confirm-appends): Changed message.
3321 (elmo-folder-synchronize): Added argument disable-killed.
3323 * elmo-multi.el (elmo-folder-synchronize): Added argument
3326 * elmo-pipe.el (elmo-folder-synchronize): Ditto.
3328 * elmo-version.el (elmo-version): Up to 2.11.5.
3330 * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
3333 * elmo-util.el (elmo-list-filter): Simplify.
3335 * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
3336 (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
3337 (elmo-generic-folder-diff): Abolish argument.
3338 (elmo-msgdb-load): Don't use number-alist.
3340 * elmo-filter.el (elmo-folder-diff): Abolish argument.
3342 * elmo-pipe.el (elmo-folder-diff): Ditto.
3344 * elmo-nmz.el (elmo-folder-diff): Ditto.
3346 * elmo-net.el (elmo-folder-diff): Ditto.
3348 * elmo-maildir.el (elmo-folder-diff): Ditto.
3350 * elmo-imap4.el (elmo-folder-diff-async): Ditto.
3352 * elmo-multi.el (elmo-folder-diff): Ditto
3353 (elmo-multi-folder-diff): Rewrite.
3355 2003-08-02 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3357 * elmo-pipe.el (elmo-folder-msgdb): Define.
3359 2003-08-01 Yuuichi Teranishi <teranisi@gohome.org>
3361 * elmo.el (elmo-message-set-cached): Define as a method.
3363 * elmo-pipe.el (elmo-message-set-cached): Define.
3364 (elmo-find-fetch-strategy): Ditto.
3366 * elmo-multi.el (elmo-message-set-cached): Define.
3367 (elmo-find-fetch-strategy): Rewrite.
3369 * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
3371 * elmo-pipe.el (elmo-message-folder): Fixed definition.
3373 2003-07-30 Yuuichi Teranishi <teranisi@gohome.org>
3375 * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
3376 instead of number-alist.
3378 * elmo-localdir.el (elmo-folder-append-messages): Don't refer
3379 mark nor message-id when msgdb of source folder is not loaded.
3381 * elmo.el (elmo-generic-folder-append-messages): Ditto.
3383 * elmo-maildir.el (elmo-folder-append-messages): Ditto.
3385 2003-07-29 Yuuichi Teranishi <teranisi@gohome.org>
3387 * elmo.el (elmo-folder-length): Don't require msgdb.
3389 2003-07-28 Yuuichi Teranishi <teranisi@gohome.org>
3391 * elmo.el (elmo-message-mark): Cause an error when empty folder.
3392 (elmo-message-field): Ditto.
3394 * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
3395 (elmo-map-folder-list-message-locations): Setup `answered-locations'
3397 (elmo-map-folder-list-answereds): Define.
3398 (elmo-maildir-list-location): Treat 'R' info.
3399 (elmo-folder-msgdb-create): Treat flag-table.
3400 (elmo-folder-append-messages): Save flag-table.
3402 2002-05-05 David Smith <ultrasoul@ultrasoul.com>
3404 * elmo-imap4.el (elmo-imap4-folder-diff-plugged):
3405 Use SELECT when elmo-imap4-use-select-to-update-status is t.
3407 2003-07-24 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3409 * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
3411 * elmo-localdir.el (elmo-folder-append-messages): Set flag as
3412 'read when mark is null.
3414 2003-07-24 Yuuichi Teranishi <teranisi@gohome.org>
3416 * elmo-version.el (elmo-version): Up to 2.11.4.
3418 2003-07-23 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3420 * elmo-pipe.el (elmo-folder-unmark-answered): Define.
3421 (elmo-folder-mark-as-answered): Ditto.
3423 2003-07-22 Yuuichi Teranishi <teranisi@gohome.org>
3425 * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
3426 (elmo-pop3-get-session): Make msgdb directory after session.
3427 (elmo-folder-exists-p): Check exactly at the first time even when the
3428 elmo-pop3-exists-exactly is nil.
3430 * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
3431 (elmo-folder-list-messages): Define instead of
3432 elmo-folder-list-messages-internal.
3433 (elmo-folder-check): Check destination folder.
3434 (elmo-folder-synchronize): Drain the pipe.
3436 * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
3437 when msgdb is not loaded.
3439 * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
3441 * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
3442 (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
3445 * elmo.el (elmo-folder-kill-messages-before): New function.
3446 (elmo-folder-kill-messages): Ditto.
3447 (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
3449 * elmo-imap4.el (elmo-folder-list-messages-plugged):
3450 Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
3451 killed not by synchronize (e.g. scoring).
3453 2003-07-22 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3455 * elmo.el (elmo-folder-search-fast): Return t if condition is not
3457 (elmo-folder-search): Follow the change above.
3459 * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
3460 into the candidates of search field.
3462 2003-07-21 Yuuichi Teranishi <teranisi@gohome.org>
3464 * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
3465 (elmo-msgdb-unset-flag): Ditto.
3467 * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
3469 2003-07-19 Yuuichi Teranishi <teranisi@gohome.org>
3471 * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
3472 (elmo-folder-commit): Define.
3473 (elmo-folder-synchronize): Ditto.
3474 (elmo-folder-list-flagged): Ditto.
3475 (elmo-folder-commit): Ditto.
3476 (elmo-folder-length): Ditto.
3477 (elmo-folder-count-flags): Ditto.
3478 (elmo-message-mark): Ditto.
3479 (elmo-message-field): Ditto.
3480 (elmo-message-entity): Ditto.
3481 (elmo-message-folder): Ditto.
3483 2003-07-18 Yuuichi Teranishi <teranisi@gohome.org>
3485 * elmo.el (elmo-message-field): Define as a method.
3487 * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
3488 (elmo-message-field): Define.
3490 * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
3491 (elmo-folder-list-importants): Ditto.
3492 (elmo-folder-list-answereds): Ditto.
3494 * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
3496 (elmo-folder-mark-as-read): Ditto.
3497 (elmo-folder-unmark-read): Ditto.
3498 (elmo-folder-mark-as-answered): Ditto.
3499 (elmo-folder-unmark-answered): Ditto.
3500 (elmo-folder-list-flagged): Define.
3501 (elmo-folder-commit): Ditto.
3502 (elmo-folder-length): Ditto.
3503 (elmo-folder-count-flags): Ditto.
3505 2003-07-17 Yuuichi Teranishi <teranisi@gohome.org>
3507 * elmo.el (elmo-folder-detach-messages): New method.
3508 (elmo-folder-move-messages): Use it.
3509 (elmo-folder-synchronize): Ditto.
3511 * elmo-multi.el (elmo-folder-detach-messages): Define.
3513 * elmo.el (elmo-message-copy-entity): New function.
3514 (elmo-message-entity-set-number): Ditto.
3515 (elmo-message-mark): Define as method.
3517 * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
3518 (elmo-folder-synchronize): Return 0 (Should be reconsider).
3519 (elmo-message-entity): Fixed last change.
3520 (elmo-message-mark): Define.
3521 (elmo-folder-msgdb-create): Abolish.
3522 (elmo-multi-folder-append-msgdb): Ditto.
3523 (elmo-multi-folder-diff): Fixed.
3524 (elmo-multi-split-number-alist): Removed.
3525 (elmo-multi-split-mark-alist): Removed.
3526 (elmo-folder-list-messages): Define.
3527 (elmo-folder-list-messages-internal): Removed.
3529 * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
3530 local file messages.
3531 (elmo-folder-msgdb-create): Fixed read mark.
3533 2003-07-17 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3535 * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
3538 2003-07-17 Yuuichi Teranishi <teranisi@gohome.org>
3540 * elmo.el (elmo-folder-list-message-entities): Define as inline
3542 (elmo-folder-messages): Abolish.
3544 * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
3546 (elmo-folder-synchronize): Define.
3547 (elmo-message-entity): Define.
3549 2003-07-16 Yuuichi Teranishi <teranisi@gohome.org>
3551 * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
3552 elmo-imap4-session-select-mailbox.
3554 * elmo.el (elmo-folder-move-messages): Don't display any message.
3556 * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
3558 (elmo-imap4-session-check): Don't wait CHECK response.
3559 (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
3561 2003-07-13 Yuuichi Teranishi <teranisi@gohome.org>
3563 * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
3565 2003-07-12 Yuuichi Teranishi <teranisi@gohome.org>
3567 * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
3569 * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
3572 * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
3573 (elmo-folder-list-message-entities): Added argument in-msgdb and
3575 (elmo-folder-synchronize): Define as a method.
3577 * elmo-nntp.el (elmo-folder-initialize): Don't use
3578 elmo-nntp-default-user if zero-length username is specified
3581 2003-07-06 Yoichi NAKAYAMA <yoichi@geiin.org>
3583 * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
3584 server name in case with username.
3585 (XXX: this is ad-hoc fix against username includes "@", it
3586 should be solved fundamentally)
3588 2003-07-05 Yoichi NAKAYAMA <yoichi@geiin.org>
3590 * elmo-nntp.el (elmo-nntp-debug): New function.
3591 (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
3592 (elmo-network-authenticate-session): Hide auth-info from the log.
3594 * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
3595 user name if it is equal to elmo-nntp-default-user.
3597 2003-06-07 Yuuichi Teranishi <teranisi@gohome.org>
3599 * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
3600 instead of shimbun-server-internal;
3601 Use shimbun-current-group instead of shimbun-current-group-internal.
3602 (elmo-folder-plugged-p): Use shimbun-server instead of
3603 shimbun-server-internal.
3604 (elmo-folder-set-plugged): Ditto.
3605 (elmo-net-port-info): Ditto.
3606 (elmo-folder-check): Ditto.
3607 (elmo-folder-expand-msgdb-path): Ditto.
3608 (elmo-folder-list-subfolders): Ditto.
3610 2003-05-18 Yoichi NAKAYAMA <yoichi@geiin.org>
3612 * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
3613 Convert field-name to lower case.
3614 (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3616 2003-05-12 Yoichi NAKAYAMA <yoichi@geiin.org>
3618 * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
3619 `message' and `error' take format string.
3621 2003-04-10 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3623 * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
3625 2003-04-05 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3627 * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
3628 recursive call (can't byte compile on emacs 20.7).
3630 2003-04-02 Yuuichi Teranishi <teranisi@gohome.org>
3632 * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
3633 (elmo-folder-list-message-entities): New API.
3634 (elmo-message-entity): Ditto.
3635 (elmo-message-entity-parent): Ditto.
3636 (elmo-folder-do-each-message-entity): Ditto.
3637 (elmo-message-entity-number): Ditto.
3638 (elmo-message-entity-field): Ditto.
3639 (elmo-message-entity-set-field): Ditto.
3640 (elmo-folder-count-flags): Ditto.
3641 (elmo-folder-length): Ditto.
3643 * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
3646 * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
3647 (elmo-msgdb-count-marks): Abolish.
3648 (elmo-msgdb-make-entity): Ditto.
3649 (elmo-msgdb-do-each-entity): Ditto.
3650 (elmo-msgdb-message-entity): New inline function.
3651 (elmo-msgdb-message-entity-field): Ditto.
3652 (elmo-msgdb-message-entity-set-field): Ditto.
3653 (elmo-msgdb-make-message-entity): New function.
3655 2003-03-25 Yuuichi Teranishi <teranisi@gohome.org>
3657 * elmo.el (elmo-folder-append-buffer): Changed argument from unread
3658 to flag. (All other related portions are changed.)
3659 (elmo-folder-msgdb-create): Likewise.
3660 (elmo-generic-folder-append-messages): Use flag-table instead of
3662 (elmo-folder-move-messages): Removed redundant process.
3663 (elmo-folder-synchronize): Likewise.
3665 * elmo-msgdb.el (elmo-flag-table-get): New function.
3666 (elmo-flag-table-save): Fixed.
3667 (elmo-msgdb-length): New inline function.
3668 (elmo-msgdb-flag-table): New function.
3669 (elmo-msgdb-mark): Add optional argument new.
3670 (elmo-msgdb-add-msgs-to-seen-list): Abolish.
3671 (elmo-msgdb-seen-list): Ditto.
3672 (elmo-msgdb-add-msgs-to-seen-list): Ditto.
3675 2003-03-24 Yuuichi Teranishi <teranisi@gohome.org>
3677 * elmo.el (elmo-message-set-mark): Abolish.
3678 (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
3679 (All related portions are changed.)
3681 * elmo-msgdb.el (toplevel): Added comment.
3682 (elmo-load-msgdb): Added 4th element `path'.
3683 (elmo-msgdb-append): Follow the change above.
3684 (elmo-msgdb-clear): Ditto.
3685 (elmo-msgdb-delete-msgs): Ditto.
3686 (elmo-msgdb-get-path): New inline function.
3687 (elmo-msgdb-set-path): Ditto.
3688 (elmo-flag-table-filename): New variable.
3689 (elmo-flag-table-load): New function.
3690 (elmo-flag-table-set): Ditto.
3691 (elmo-flag-table-save): Ditto.
3692 (elmo-msgdb-get-field-value): Abolish.
3693 (elmo-msgdb-overview-get-entity-by-number): Ditto.
3695 2003-03-30 Yoichi NAKAYAMA <yoichi@geiin.org>
3697 * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
3698 the folder has been deleted successfully.
3699 * elmo-imap4.el (elmo-folder-delete): Ditto.
3700 * elmo-archive.el (elmo-folder-delete): Ditto.
3701 * elmo-localdir.el (elmo-folder-delete): Ditto.
3702 * elmo-maildir.el (elmo-folder-delete): Ditto.
3704 2003-03-27 Tetsurou Okazaki <okazaki@be.to>
3706 * elmo-util.el (elmo-string-member-ignore-case): New function.
3707 * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
3708 (elmo-imap4-fetch-callback-1-subr): Likewise.
3710 2003-03-27 Kimura Fuyuki <fuyuki@hadaly.org>
3712 * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
3713 the case of the name attribute "\Noselect".
3715 2003-02-16 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3717 * elmo.el (elmo-folder-rename-internal): New method to cause error.
3719 * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
3720 flist, is not always a member of onum-alist.
3722 2003-02-14 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3724 * elmo-version.el (elmo-version): Up to 2.11.3.
3726 2003-02-10 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3728 * elmo-maildir.el (elmo-folder-rename-internal): New method,
3729 copied from localdir's one.
3731 * elmo-pipe.el (elmo-folder-rename): New method, rename
3732 destination folder with leaving source folder as it is.
3734 2003-02-08 KAMO Tomoyuki <kamo@ITmanage.co.jp>
3736 * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
3739 2003-02-08 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3741 * elmo-version.el (elmo-version): Up to 2.11.2.
3743 2003-02-05 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3745 * elmo-shimbun.el (elmo-folder-initialize): Do not call
3746 shimbun-open in case of "@".
3747 (elmo-folder-open-internal): Cope with shimbun = nil case.
3748 (elmo-folder-plugged-p): Ditto.
3749 (elmo-folder-list-subfolders): Make list for "@/" group.
3751 2003-01-31 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3753 * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
3754 mailbox (e.g. for %~/something).
3756 2003-01-31 TAKAHASHI Kaoru <kaoru@kaisei.org>
3758 * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
3759 Replace nested conditional with guard clauses.
3761 2003-01-30 Yuuichi Teranishi <teranisi@gohome.org>
3763 * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
3766 * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
3769 2003-01-30 TAKAHASHI Kaoru <kaoru@kaisei.org>
3771 * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
3772 Replace nested conditional with guard clauses.
3774 2003-01-29 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3776 * elmo-util.el (elmo-object-save): Bind print-level, print-length.
3777 (elmo-passwd-alist-save): Ditto.
3778 * elmo-database.el (elmo-database-msgid-put): Bind print-length.
3780 2003-01-17 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3782 * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
3783 dir-name only if it is absolute path.
3784 (TODO: distinguish +/something and +something)
3786 2003-01-15 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3788 * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
3789 path for "+~/something".
3791 2003-01-15 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3793 * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
3794 as non-directory, cause error before rename-file.
3795 * elmo-archive.el (elmo-folder-rename-internal): Create directory
3796 apropriately, mimic localdir's one.
3797 Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
3799 2003-01-10 Tsutomu OKADA <okada@furuno.co.jp>
3801 * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
3803 2003-01-06 Yuuichi Teranishi <teranisi@gohome.org>
3805 * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
3807 * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
3809 * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
3810 is included in the global-mark or not.
3812 2002-12-23 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3814 * utf7.el (toplevel): Avoid error when the function
3815 find-coding-system does not exist.
3817 2002-12-20 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3819 * elmo-nntp.el (elmo-folder-search): Body search is to search from
3820 cache even if the folder is plugged.
3821 (elmo-nntp-search-primitive): Do nothing when body search is
3822 invoked (although it is not used by the change above).
3823 * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
3825 2002-12-20 Kenichi OKADA <okada@opaopa.org>
3827 * elmo-version.el (elmo-version): Up to 2.11.1.
3829 2002-12-10 Kenichi OKADA <okada@opaopa.org>
3831 * elmo-archive.el: Specify charset.
3833 2002-12-04 Yuuichi Teranishi <teranisi@gohome.org>
3835 * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
3836 process buffer lives or not.
3838 * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
3839 while flushing queues (It causes infinite loop).
3841 2002-11-26 Yuuichi Teranishi <teranisi@gohome.org>
3843 * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
3845 2002-11-24 Yuuichi Teranishi <teranisi@gohome.org>
3847 * utf7.el (toplevel): Check the ucs features dynamically.
3848 (Advice from Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
3850 * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
3851 folder is creatabe or not if it already exists.
3853 2002-11-21 Yuuichi Teranishi <teranisi@gohome.org>
3855 * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
3857 * elmo-multi.el (elmo-folder-search): Ignore errors while search.
3859 * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
3860 (elmo-imap4-read-response): Take care of garbage response.
3862 2002-11-20 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3864 * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
3865 just return nil instead of error.
3867 2002-11-19 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3869 * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
3870 search-key is "body".
3872 2002-11-19 Yuuichi Teranishi <teranisi@gohome.org>
3874 * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
3875 of elmo-string-matched-assoc to use match-data.
3876 (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
3878 2002-11-17 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3880 * elmo-split.el (elmo-split->): New function.
3881 (elmo-split-<): Ditto.
3883 2002-11-14 Yuuichi Teranishi <teranisi@gohome.org>
3885 * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
3886 workaround for invalid message-id.
3888 2002-11-13 Yuuichi Teranishi <teranisi@gohome.org>
3890 * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
3891 return normal pop3 session or pop3 biff session.
3893 2002-11-08 Yuuichi Teranishi <teranisi@gohome.org>
3895 * elmo-maildir.el (elmo-maildir-update-current): Don't append
3896 info part to the cur files when the new files already have it.
3897 (Adviced by Jared Rhine <jared@wordzoo.com>)
3899 2002-11-06 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3901 * elmo-split.el (elmo-split-default-action): New variable.
3902 (elmo-split-subr): Use it if all other conditions are passed.
3903 Extend `fname' and rename it as `action'. (implemented
3904 Teranishi-san's idea in [wl:10800])
3906 2002-10-29 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3908 * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
3909 * elmo-util.el: Ditto.
3911 2002-10-28 Yuuichi Teranishi <teranisi@gohome.org>
3913 * elmo.el (elmo-message-accessible-p): Renamed from
3914 elmo-message-cached-p and rewritten.
3916 2002-10-27 Yuuichi Teranishi <teranisi@gohome.org>
3918 * elmo.el (elmo-folder-list-flagged): New generic function.
3919 (elmo-folder-list-importants): New implementation.
3920 (elmo-folder-list-answereds): Ditto.
3921 (elmo-folder-search-fast): Use 'flag' instead of 'mark';
3923 (elmo-message-cached-p): New function.
3924 (elmo-message-set-flag): Ditto (no content).
3925 (elmo-message-unset-flag): Ditto.
3926 (elmo-folder-list-messages-mark-match): Abolish.
3928 * elmo-util.el (elmo-regexp-opt): New function.
3930 * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
3931 (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
3933 (elmo-msgdb-list-flagged): New function.
3935 * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
3936 (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
3939 * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
3941 2002-10-26 Yuuichi Teranishi <teranisi@gohome.org>
3943 * elmo-version.el (elmo-version): Up to 2.11.0.
3945 2002-10-24 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3947 * elmo-msgdb.el (elmo-msgdb-set-flag): Use
3948 `elmo-file-cache-exists-p'; use proper mark that depends on
3950 (elmo-msgdb-unset-flag): Ditto.
3951 (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
3953 * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
3954 with 4th argument `use-cache'.
3956 2002-10-18 Yuuichi Teranishi <teranisi@gohome.org>
3958 * elmo.el (elmo-folder-unmark-important): Follow the changes above.
3959 (elmo-folder-mark-as-important): Ditto.
3960 (elmo-folder-unmark-read): Ditto.
3961 (elmo-folder-mark-as-read): Ditto.
3962 (elmo-folder-unmark-answered): Ditto.
3963 (elmo-folder-mark-as-answered): Ditto.
3965 * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
3967 (elmo-msgdb-mark): Likewise.
3968 (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
3969 (elmo-msgdb-unset-flag): Likewise.
3971 * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
3973 2002-10-15 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3975 * elmo-filter.el (elmo-folder-diff): Fixed condition checking
3978 2002-10-12 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
3980 * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
3981 set spool-length to 0.
3983 2002-10-06 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3985 * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
3986 (elmo-dop-queue-flush): Fixed last change.
3988 2002-10-01 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3990 * elmo-filter.el (elmo-folder-list-unreads): Call generic method
3991 if require-msgdb slot is nil.
3992 (elmo-folder-list-importants): Likewise.
3994 2002-09-26 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
3996 * elmo.el (elmo-message-set-cached): Set mark-modified slot if
3999 * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4000 (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4003 2002-09-25 Yuuichi Teranishi <teranisi@gohome.org>
4005 * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4007 2002-09-24 Yuuichi Teranishi <teranisi@gohome.org>
4009 * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4011 * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4013 2002-09-24 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4015 * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4016 (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4018 2002-09-24 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
4020 * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4021 the problem reported by Sean Rima [wl-en:180].
4023 2002-09-19 Yuuichi Teranishi <teranisi@gohome.org>
4025 * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4027 * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4029 * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4031 * elmo-map.el (elmo-folder-unmark-read): Ditto.
4033 * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4035 * elmo-net.el (elmo-folder-unmark-read): Ditto.
4037 * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4039 2002-09-18 Yuuichi Teranishi <teranisi@gohome.org>
4041 * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4044 2002-09-17 Yuuichi Teranishi <teranisi@gohome.org>
4046 * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4047 (elmo-folder-mark-as-read): Follow the API change.
4048 (elmo-message-set-cached): New function.
4050 * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4052 * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4054 * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4055 (elmo-folder-mark-as-important): Ditto.
4056 (elmo-folder-unmark-read): Ditto.
4057 (elmo-folder-mark-as-read): Ditto.
4058 (elmo-folder-unmark-answered): Ditto.
4059 (elmo-folder-mark-as-answered): Ditto.
4061 * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4062 (elmo-folder-unmark-important): Ditto.
4063 (elmo-folder-mark-as-read): Ditto.
4064 (elmo-folder-unmark-read): Ditto.
4065 (elmo-folder-mark-as-answered): Ditto.
4066 (elmo-folder-unmark-answered): Ditto.
4068 * elmo-mark.el (toplevel): Removed some mark method definitions.
4070 * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4071 (elmo-map-folder-mark-as-answered): Ditto.
4072 (elmo-folder-unmark-important): Add :before qualifier.
4073 (elmo-folder-mark-as-important): Ditto.
4074 (elmo-folder-unmark-read): Ditto.
4075 (elmo-folder-mark-as-read): Ditto.
4076 (elmo-folder-unmark-answered): Define.
4077 (elmo-folder-mark-as-answered): Ditto.
4079 * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4080 (elmo-map-folder-unmark-answered): Ditto.
4082 * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4084 * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4085 (elmo-folder-mark-as-important): Ditto.
4086 (elmo-folder-unmark-read): Ditto.
4087 (elmo-folder-mark-as-read): Ditto.
4088 (elmo-folder-unmark-answered): Ditto.
4089 (elmo-folder-mark-as-answered): Ditto.
4091 * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4092 `mark'; evaluate mark condition.
4093 (elmo-msgdb-match-condition-internal): New function.
4094 (elmo-msgdb-match-condition): Call it; changed argument.
4096 * elmo.el (elmo-folder-search): Follow the API change on
4097 `elmo-msgdb-match-condition'.
4099 2002-09-17 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4101 * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4102 original mark is non-nil.
4104 2002-09-17 Yuuichi Teranishi <teranisi@gohome.org>
4106 * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4107 (elmo-map-folder-list-answereds): New method.
4108 (elmo-folder-list-unreads): Add :around qualifier.
4109 (elmo-folder-list-importants): Ditto.
4110 (elmo-folder-list-answereds): Ditto.
4112 2002-09-16 Yuuichi Teranishi <teranisi@gohome.org>
4114 * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4116 * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4117 method if msgdb is not required.
4118 (elmo-filter-folder-list-importants): Don't treat global-mark.
4120 * elmo.el (elmo-folder-list-importants): Ditto.
4122 * elmo-net.el (elmo-folder-list-importants): Ditto.
4124 * elmo-map.el (elmo-folder-list-importants): Ditto.
4126 * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4128 * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4129 (elmo-imap4-folder-list-any-plugged): New function.
4130 (elmo-imap4-search-internal-primitive): Use it.
4132 * elmo-filter.el (elmo-folder-check): Synchronize original folder
4133 only when require-msgdb slot is non-nil.
4134 (elmo-folder-close): Clear target folder's msgdb.
4136 2002-09-13 Yuuichi Teranishi <teranisi@gohome.org>
4138 * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4139 (elmo-pop3-msgdb-create-by-header): Ditto.
4140 (elmo-pop3-msgdb-create-message): Ditto.
4142 * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4144 * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4146 * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4148 * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4149 (elmo-folder-msgdb-create): Ditto.
4150 (elmo-nntp-folder-msgdb-create): Ditto.
4151 (elmo-nntp-msgdb-create-by-header): Ditto.
4152 (elmo-nntp-msgdb-create-message): Ditto.
4153 (elmo-folder-list-unreads): Define.
4155 * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4156 (elmo-folder-append-messages): Ditto.
4157 (elmo-folder-list-unreads): Define.
4158 (elmo-folder-list-importants): Ditto.
4159 (elmo-folder-list-answereds): Ditto.
4161 * elmo-net.el (elmo-folder-list-unreads): Define.
4162 (elmo-folder-list-importants): Ditto.
4163 (elmo-folder-list-answereds): Ditto.
4164 (elmo-folder-list-answereds-plugged): Ditto.
4165 (elmo-folder-msgdb-create): Follow the API change.
4166 (elmo-folder-msgdb-create-unplugged): Ditto.
4167 (elmo-folder-unmark-answered): Define.
4168 (elmo-folder-mark-as-answered-unplugged): Ditto.
4169 (elmo-folder-unmark-answered-unplugged): Ditto.
4171 * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4172 (elmo-msgdb-unread-uncached-mark): Ditto.
4173 (elmo-msgdb-unread-cached-mark): Ditto.
4174 (elmo-msgdb-read-uncached-mark): Ditto.
4175 (elmo-msgdb-answered-cached-mark): Ditto.
4176 (elmo-msgdb-answered-uncached-mark): Ditto.
4177 (elmo-msgdb-important-mark): Ditto.
4178 (elmo-msgdb-set-mark): Rewrite.
4179 (elmo-msgdb-count-marks): Rewrite.
4180 (elmo-msgdb-mark-alist-set): Abolish.
4181 (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4182 (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4184 * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4185 (elmo-folder-close): Define.
4186 (elmo-folder-msgdb-create): Follow the API change.
4187 (elmo-folder-list-unreads): Rewrite.
4188 (elmo-folder-mark-as-important): Ditto.
4189 (elmo-folder-unmark-important): Ditto.
4190 (elmo-folder-mark-as-read): Ditto.
4191 (elmo-folder-unmark-read): Ditto.
4192 (elmo-folder-mark-as-answered): Define.
4193 (elmo-folder-unmark-answered): Ditto.
4195 * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4196 (elmo-folder-append-messages): Ditto.
4198 * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4200 * elmo-map.el (elmo-folder-list-unreads): Ditto.
4201 (elmo-folder-list-importants): Ditto.
4203 * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4204 (elmo-folder-append-messages): Ditto.
4206 * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4208 (elmo-folder-msgdb-create-plugged): Ditto.
4209 (elmo-folder-append-messages): Ditto.
4210 (elmo-folder-list-answereds-plugged): Define.
4211 (elmo-imap4-search-internal-primitive): Add `mark' processing.
4212 (elmo-folder-unmark-answered-plugged): Define.
4213 (elmo-folder-mark-as-answered-plugged): Ditto.
4214 (elmo-folder-search-requires-msgdb-p): Ditto.
4216 * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
4217 (elmo-folder-initialize): Set it.
4218 (elmo-folder-msgdb): Define.
4219 (elmo-folder-check): Call elmo-folder-synchronize.
4220 (elmo-folder-close): Define.
4221 (elmo-folder-commit): Ditto.
4222 (elmo-folder-msgdb-create): Rewrite.
4223 (elmo-folder-list-unreads): Ditto.
4224 (elmo-folder-list-importants): Ditto.
4225 (elmo-folder-mark-as-read): Ditto.
4226 (elmo-folder-unmark-read): Ditto.
4227 (elmo-folder-mark-as-important): Ditto.
4228 (elmo-folder-unmark-important): Ditto.
4229 (elmo-folder-mark-as-answered): Define.
4230 (elmo-folder-unmark-answered): Ditto.
4232 * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4233 elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4234 (elmo-dop-queue-method-name-alist): Likewise.
4235 (elmo-folder-mark-as-answered-dop): New inline function.
4236 (elmo-folder-unmark-answered-dop): Ditto.
4237 (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4239 * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4240 (elmo-folder-msgdb-create): Ditto.
4241 (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4242 (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4243 (elmo-archive-parse-mmdf): Ditto.
4245 * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4246 (elmo-folder-list-unreads-internal): Ditto.
4248 * elmo.el (elmo-folder-msgdb): Define as generic function.
4249 (elmo-folder-list-messages): Added argument `in-msgdb'.
4250 (elmo-folder-list-unreads): Define as generic function.
4251 (elmo-folder-list-importants): Ditto.
4252 (elmo-folder-list-answereds): Ditto.
4253 (elmo-folder-list-messages-with-global-mark): New function.
4254 (elmo-folder-msgdb-create): Removed mark arguments.
4255 (elmo-folder-unmark-answered): New generic function.
4256 (elmo-folder-mark-as-answered): Ditto.
4257 (elmo-folder-append-messages): Removed argunment `unread-marks'
4258 (elmo-folder-list-unreads-internal): Abolish.
4259 (elmo-folder-list-importants-internal): Ditto.
4260 (elmo-folder-search-requires-msgdb-p): New generic function.
4261 (elmo-folder-search-requires-msgdb-p-internal): New function.
4262 (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4264 (elmo-folder-search-fast): Added key 'mark'.
4265 (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4266 instead of unread-marks argument.
4267 (elmo-folder-move-messages): Removed argunment `unread-marks'
4268 (elmo-folder-unmark-important): Define.
4269 (elmo-folder-mark-as-important): Ditto.
4270 (elmo-folder-unmark-read): Ditto.
4271 (elmo-folder-mark-as-read): Ditto.
4272 (elmo-folder-unmark-answered): Ditto.
4273 (elmo-folder-mark-as-answered): Ditto.
4274 (elmo-folder-replace-marks): Abolish.
4275 (elmo-generic-folder-append-msgdb): Append msgdb before checking
4277 (elmo-folder-synchronize): Removed mark arguments;
4278 return crosspost only number.
4280 2002-09-12 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
4282 * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4283 Remove redundunt connectivity check.
4285 2002-09-08 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
4287 * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4288 as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4290 2002-09-03 Yuuichi Teranishi <teranisi@gohome.org>
4292 * pldap.el (ldap-decode-string): Return string as-is if
4293 `ldap-coding-system' is nil.
4294 (ldap-encode-string): Ditto.
4295 (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4296 (ldap-default-host): Fixed docstring.
4298 2002-08-21 Yuuichi Teranishi <teranisi@gohome.org>
4300 * elmo-util.el (elmo-warning): Define as a macro which uses
4301 `display-warning' if it is defined as a function.
4303 * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4304 (elmo-split-equal): Use it.
4305 (elmo-split-match): Ditto.
4306 (elmo-split-message-entity): New buffer-local variable.
4307 (elmo-split-subr): Set it.
4309 * elmo-version.el (elmo-version): Up to 2.9.15.
4311 2002-08-18 Kenichi OKADA <okada@opaopa.org>
4313 * elmo-imap4.el (elmo-network-initialize-session):
4314 Check capability after starttls.
4316 2002-08-06 Yuuichi Teranishi <teranisi@gohome.org>
4318 * elmo-util.el (elmo-list-delete): Added optional argument
4321 * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
4323 * elmo-util.el (elmo-warning): Ignore errors while recenter.
4325 * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
4327 * elmo-imap4.el (elmo-folder-initialize): Don't use
4328 elmo-imap4-default-mailbox.
4330 2002-07-24 TAKAHASHI Kaoru <kaoru@kaisei.org>
4332 * elmo-split.el (toplevel): Use `product-provide'.
4333 (elmo-split): Checkdoc.
4335 2002-07-21 Tetsurou Okazaki <okazaki@be.to>
4337 * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
4338 Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
4339 the function `elmo-imap4-debug-1'.
4341 2002-07-14 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4343 * elmo-split.el (elmo-split): Moved to run hooks and to show
4344 message from elmo-split-subr.
4345 (elmo-split-subr): Follow the change above.
4347 * elmo-split.el (elmo-split-subr): New function (renamed from
4349 (elmo-split): Changed to call elmo-split-subr by element of
4351 (elmo-split-folder): Changed customization type to choice.
4353 2002-07-12 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4355 * elmo-split.el (elmo-split-and): Fixed condition.
4357 2002-07-12 Yuuichi Teranishi <teranisi@gohome.org>
4359 * elmo-split.el: New file.
4360 (elmo-split): Fixed logic.
4361 Display "Test:" instead of "Folder:" when reharsal.
4363 * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
4366 * elmo-version.el (elmo-version): Up to 2.9.14.
4368 * elmo-util.el (elmo-expand-newtext): New function (renamed from
4371 2002-06-10 Kenichi Sato <ksato@sonycom.com>
4373 * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
4374 message with no message-id field.
4376 2002-05-20 Yuuichi Teranishi <teranisi@gohome.org>
4378 * elmo-version.el (elmo-version): Up to 2.9.13.
4380 * elmo-dop.el (elmo-folder-status-dop): Fix.
4382 2002-05-19 Yuuichi Teranishi <teranisi@gohome.org>
4384 * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
4386 * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
4387 changing default value of default-mime-charset.
4388 (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
4390 * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
4392 * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
4393 (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
4394 instead of elmo-dop-queue-method-name-alist to check merging queue.
4395 (elmo-folder-delete-messages-dop): Delete from queue if negative
4397 (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
4398 file is already removed.
4400 2002-05-10 Katsumi Yamaoka <yamaoka@jpl.org>
4402 * elmo-vars.el: Bind colon keywords for old Emacsen.
4404 2002-05-10 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4406 * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
4407 against non-exsisting charset.
4409 2002-05-09 Yuuichi Teranishi <teranisi@gohome.org>
4411 * elmo-util.el (elmo-mime-string): Eliminate needless binding;
4412 Use eword-decode-and-unfold-unstructured-field-body.
4414 * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
4415 (elmo-msgdb-create-overview-from-buffer): Use document charset if
4416 exists to decode raw subject string.
4417 (toplevel): Require 'mime.
4419 * elmo-version.el (elmo-version): Up to 2.9.12.
4421 2002-05-02 Yuuichi Teranishi <teranisi@gohome.org>
4423 * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
4424 (elmo-msgdb-set-mark): Ditto.
4426 * elmo-version.el (elmo-version): Up to 2.9.11.
4428 2002-05-01 Yuuichi Teranishi <teranisi@gohome.org>
4430 * elmo-util.el (elmo-delete-match-files): New function.
4432 * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
4433 instead of elmo-delete-directory.
4435 * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
4436 elmo-hash-minimun-size as 63.
4438 * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
4439 elmo-diff-unread is nil.
4441 * elmo-imap4.el (elmo-folder-open): Fix.
4443 * elmo.el (elmo-message-mark): Rewrite.
4444 (elmo-message-field): Ditto.
4445 (elmo-message-set-mark): Ditto.
4446 (elmo-folder-replace-marks): New function.
4447 (elmo-generic-folder-append-msgdb): Removed third argument for
4449 (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
4450 (elmo-msgdb-load): New implementation.
4452 * elmo-vars.el (elmo-use-overview-hashtb): Removed.
4454 * elmo-util.el (elmo-list-insert): New implementation.
4456 * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
4457 argument for elmo-msgdb-append.
4460 * elmo-msgdb.el (elmo-load-msgdb): New function.
4461 (elmo-make-msgdb): Ditto.
4462 (elmo-msgdb-get-index): New inline function.
4463 (elmo-msgdb-set-index): Ditto.
4464 (elmo-msgdb-get-entity-hashtb): Ditto.
4465 (elmo-msgdb-get-mark-hashtb): Ditto.
4466 (elmo-msgdb-get-mark): Ditto.
4467 (elmo-msgdb-set-mark): Ditto.
4468 (elmo-msgdb-count-marks): Ditto.
4469 (elmo-msgdb-get-number): Ditto.
4470 (elmo-msgdb-get-field): Ditto.
4471 (elmo-msgdb-seen-list): Ditto.
4472 (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
4473 (elmo-msgdb-delete-msgs): Follow the changes above.
4474 (elmo-msgdb-overview-get-entity): Ditto.
4475 (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4476 (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
4478 (elmo-msgdb-make-index): Likewise.
4479 (elmo-msgdb-append): Removed third argument.
4480 (elmo-msgdb-clear): Clear index as nil.
4481 (elmo-folder-set-info-hashtb): Removed.
4482 (elmo-folder-set-info-max-by-numdb): Ditto.
4483 (elmo-folder-info-make-hashtb): Ditto.
4485 * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
4487 * elmo-map.el (elmo-folder-pack-number): Ditto.
4489 2002-04-30 Yuuichi Teranishi <teranisi@gohome.org>
4491 * elmo-version.el (elmo-version): Up to 2.9.10.
4493 * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
4495 * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
4497 2002-04-26 Kenichi OKADA <okada@opaopa.org>
4499 * elmo-utils.el (elmo-make-directory): Add option.
4500 Default file mode is 700.
4502 2002-04-17 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4504 * elmo-shimbun.el (elmo-folder-local-p): Defined.
4506 2002-04-15 Yuuichi Teranishi <teranisi@gohome.org>
4508 * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
4511 * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
4514 2002-04-14 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4516 * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
4517 (elmo-shimbun-folder-entity-hash): New function.
4518 (elmo-shimbun-folder-shimbun-header): Ditto.
4519 (elmo-shimbun-entity-to-header): Ditto.
4520 (elmo-shimbun-msgdb-to-headers): Removed.
4521 (elmo-shimbun-folder-setup): Ditto.
4522 (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
4524 (elmo-shimbun-get-headers): Set new headers only to slot. Don't
4525 call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
4526 Removed useless local bind.
4527 (elmo-folder-open-internal): Don't call
4528 `elmo-shimbun-folder-setup'.
4529 (elmo-folder-close-internal): Clear entity-hash slot.
4530 (elmo-folder-clear): Ditto.
4531 (elmo-shimbun-msgdb-create-entity): Use
4532 `elmo-shimbun-folder-shimbun-header'.
4533 (elmo-map-message-fetch): Ditto.
4534 (elmo-shimbun-update-overview): Use overview entity instead of
4535 shimbun header to lookup id by references.
4536 (elmo-map-folder-list-message-locations): Use not only headers but
4537 also overviews to list locations.
4539 2002-04-09 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4541 * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
4544 * elmo-pop3.el (elmo-folder-exists-p): Ditto.
4546 2002-04-08 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
4548 * elmo-util.el (elmo-read-search-condition-internal): Give default
4551 2002-04-04 Mito <mito@mxa.nes.nec.co.jp>
4553 * elmo-util.el (elmo-condition-parse-search-value): Accept
4554 YYYY-MM-DD format to search.
4555 * elmo-date.el (elmo-date-get-datevec): Likewise.
4557 2002-04-04 Kenichi OKADA <okada@opaopa.org>
4559 * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
4562 2002-04-03 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4564 * elmo.el (elmo-folder-creatable-p): Changed default value to nil
4567 * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
4569 * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
4570 case from `elmo-folder-exists-p'.
4571 (elmo-folder-exists-p): Removed.
4572 (elmo-folder-creatable-p) Ditto.
4574 * elmo-net.el (elmo-folder-create): Defined.
4575 (elmo-folder-create-unplugged): New function.
4576 (elmo-folder-exists-p): Changed default value to nil from t.
4578 * elmo-imap4.el (elmo-folder-creatable-p): Defined.
4579 (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
4581 * elmo-dop.el (elmo-folder-create-dop): Renamed from
4582 `elmo-create-folder-dop' and append queue
4583 'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
4584 (elmo-folder-create-dop-delayed): New function.
4586 * elmo-cache.el (elmo-folder-creatable-p): Ditto.
4588 * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
4590 * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
4591 (elmo-folder-writable-p) : Ditto.
4593 * elmo-version.el (elmo-version): Up to 2.9.9.
4595 2002-03-26 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
4597 * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
4598 `elmo-message-use-cache-p' returns nil.
4599 * elmo-mime.el (elmo-mime-display-as-is): Ditto.
4600 (ignore cache file and refer the substance in local folders)
4602 2002-03-12 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
4604 * elmo-version.el (elmo-version): Up to 2.9.8.
4606 2002-02-19 Yuuichi Teranishi <teranisi@gohome.org>
4608 * elmo-version.el (elmo-version): Up to 2.9.7.
4610 * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
4612 2002-02-18 Daiki Ueno <ueno@unixuser.org>
4614 * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
4616 2002-02-12 Yuuichi Teranishi <teranisi@gohome.org>
4618 * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
4620 (elmo-map-folder-list-message-locations): Reverse location list.
4622 2002-02-01 Kenichi OKADA <okada@opaopa.org>
4624 * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
4626 2002-01-31 Yuuichi Teranishi <teranisi@gohome.org>
4628 * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
4630 (elmo-nntp-folder-list-subfolders): Follow the change above.
4632 2002-01-27 Takaaki MORIYAMA <aka@iris.eonet.ne.jp>
4634 * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
4635 name if authentication type is specified.
4637 2002-01-28 Yuuichi Teranishi <teranisi@gohome.org>
4639 * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
4641 (elmo-default-nntp-stream-type): Ditto.
4642 (elmo-default-pop3-stream-type): Ditto.
4644 2002-01-25 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
4646 * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
4648 2002-01-23 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
4650 * elmo-localnews.el (elmo-localnews-folder-path): Moved from
4652 * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
4654 * elmo-vars.el (elmo-localnews-folder-path): Removed.
4655 (elmo-maildir-folder-path): Ditto.
4656 (elmo-maildir-list): Ditto (abolished).
4658 2002-01-23 Kenichi OKADA <okada@opaopa.org>
4660 * elmo-version.el (elmo-version): Up to 2.9.6.
4662 2002-01-22 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
4664 * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
4665 (elmo-maildir-folder-path): Ditto.
4666 (elmo-msgdb-directory): Ditto.
4667 (elmo-passwd-life-time): Ditto.
4668 (elmo-msgdb-extra-fields): Ditto.
4669 (elmo-enable-disconnected-operation): Ditto.
4671 2002-01-22 Kenichi OKADA <okada@opaopa.org>
4673 * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4675 (elmo-pop3-default-authenticate-type): Ditto.
4677 2002-01-22 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
4679 * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4681 (elmo-pop3-default-authenticate-type): Ditto.
4683 2002-01-22 Kenichi OKADA <okada@opaopa.org>
4685 * elmo-imap4.el (elmo-folder-rename-internal): Change current
4686 mailbox to new-folder.
4688 2002-01-21 Yuuichi Teranishi <teranisi@gohome.org>
4690 * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
4691 less than new, set new as unread.
4693 * elmo-util.el (elmo-string): Don't put text-property if nil.
4695 2002-01-21 Kenichi OKADA <okada@opaopa.org>
4697 * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
4698 * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
4700 2002-01-21 Kenichi OKADA <okada@opaopa.org>
4702 * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
4703 is nil on `completing-read'.
4705 2002-01-20 Yuuichi Teranishi <teranisi@gohome.org>
4707 * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
4709 (elmo-imap4-parse-namespace-subr): Ditto.
4710 (elmo-folder-list-subfolders): Append a delimiter when the specified
4711 folder path is a root with namespace and does not end with delimiter.
4713 2002-01-20 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4715 * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
4718 2002-01-19 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
4720 * elmo-util.el (elmo-save-buffer): The first argument of message
4721 is a format control string.
4723 2002-01-19 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4725 * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
4726 `elmo-folder-diff').
4727 (elmo-diff-unread): Likewise.
4729 2002-01-19 Kenichi OKADA <okada@opaopa.org>
4731 * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
4732 is t on `completing-read'.
4734 2002-01-19 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4736 * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
4737 method of target folder with self mark-alist if MARK-ALIST is nil.
4739 2002-01-19 Kenichi OKADA <okada@opaopa.org>
4741 * elmo-version.el (elmo-version): Up to 2.9.5.
4743 2002-01-17 Kenichi OKADA <okada@opaopa.org>
4745 * elmo-dop.el (elmo-dop-queue-merge): Implement.
4746 (elmo-dop-merge-funcs): Remove.
4748 2002-01-11 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4750 * elmo-util.el (elmo-file-cache-delete): Fixed last change;
4751 Return t if PATH is directory, too.
4752 Use `dolist' instead of while loop.
4754 2002-01-11 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
4756 * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
4759 2002-01-07 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4761 * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
4763 (elmo-folder-list-messages-unplugged): Return t if
4764 elmo-enable-disconnected-operation is nil.
4766 * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
4767 `elmo-folder-list-messages-internal'.
4769 2002-01-07 Kenichi OKADA <okada@opaopa.org>
4771 * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
4772 Change to looking-at `[23][0-9]+'.
4773 (elmo-network-initialize-session): Use 'error-msg'
4774 * elmo-net.el (elmo-network-open-session): Set unplugged
4775 if elmo-network-initialize-session returns 'elmo-open-err.
4777 2002-01-07 Kenichi OKADA <okada@opaopa.org>
4779 * elmo-version.el (elmo-version): Up to 2.9.4.
4781 2002-01-07 Yuuichi Teranishi <teranisi@gohome.org>
4783 * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
4784 `elmo-folder-list-messages-internal'.
4786 2002-01-06 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4788 * elmo.el (elmo-folder-search): Defined. Fixed docstring.
4789 (elmo-message-match-condition): New method.
4790 (elmo-folder-search-fast): New inline function.
4791 (elmo-msgdb-search): Removed.
4793 * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
4794 target folder if it is unplugged.
4795 (elmo-folder-list-messages-internal): Return t if target folder is
4796 unplugged and itself is persistent; In this case, use list be
4799 * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
4800 (elmo-msgdb-search-internal-primitive): Ditto.
4801 (elmo-msgdb-match-condition): New function.
4802 (elmo-msgdb-match-condition-primitive): Ditto.
4804 * elmo-util.el (elmo-filter-condition-p): New macro.
4806 * elmo-cache.el (elmo-folder-search): Removed.
4808 * elmo-localdir.el (elmo-folder-search): Ditto.
4810 * elmo-maildir.el (elmo-folder-search): Ditto.
4812 * elmo-mark.el (elmo-folder-search): Ditto.
4814 * elmo-nmz.el (elmo-folder-search): Ditto.
4816 * elmo-sendlog.el (elmo-folder-search): Ditto.
4818 * elmo-shimbun.el (elmo-folder-search): Ditto.
4820 * elmo-imap4.el (elmo-folder-search): Call method of parent class
4821 if folder is unplugged.
4823 * elmo-nntp.el (elmo-folder-search): Likewise.
4824 (elmo-nntp-search-internal): New function.
4826 * elmo-version.el (elmo-version): Up to 2.9.3.
4828 2001-12-27 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4830 * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
4832 2001-12-27 Tetsurou Okazaki <okazaki@be.to>
4834 * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
4836 2001-12-27 Taiji Can <Taiji.Can@grd.advantest.co.jp>
4838 * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
4840 2001-12-27 Yuuichi Teranishi <teranisi@gohome.org>
4842 * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
4843 (elmo-map-folder-list-message-locations): Do drive letter conversion
4844 on Windows environment.
4845 (elmo-nmz-msgdb-create-entity): Use expand-file-name.
4846 (elmo-map-message-fetch): Ditto.
4848 2001-12-27 Kenichi OKADA <okada@opaopa.org>
4850 * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
4851 (elmo-network-initialize-session): Ditto.
4853 2001-12-26 Yuuichi Teranishi <teranisi@gohome.org>
4855 * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
4857 * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
4859 * elmo-util.el (elmo-progress-clear): Ditto.
4861 * elmo-date.el (elmo-date-get-datevec): Fix timezone of
4862 `DD-Mon-YYYY' type date.
4864 2001-12-26 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4866 * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
4867 `elmo-date-make-sortable-string' instead of
4868 `timezone-make-date-sortable'.
4870 * elmo-date.el (elmo-date-make-sortable-string): Use
4871 `timezone-make-time-string'.
4873 2001-12-26 Yuuichi Teranishi <teranisi@gohome.org>
4875 * elmo.el (elmo-folder-synchronize): Delete important messages too.
4877 * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
4878 `since'; Fix timezone.
4880 * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
4882 * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
4884 2001-12-25 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4886 * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
4888 2001-12-23 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4890 * elmo.el (elmo-generic-folder-append-messages): Make
4891 fetch-strategy with `use-cache' as 'maybe. Check return value of
4892 `elmo-message-fetch'.
4893 (elmo-message-fetch): Return return value of
4894 `elmo-message-fetch-with-cache-process'.
4895 (elmo-message-fetch-with-cache-process): Return non-nil if
4896 fetching was succeed. Load cache when fetching was failed and
4897 fetch-strategy-use-cache is 'maybe.
4899 * elmo-util.el (elmo-file-cache-load): New function.
4901 * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
4904 * elmo-archive.el (elmo-archive-message-fetch-internal): Return
4905 non-nil if fetching was succeed.
4907 * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
4909 * elmo-nmz.el (elmo-map-message-fetch): Likewise.
4911 * elmo-nntp.el (elmo-nntp-read-body): Likewise.
4912 (elmo-message-fetch-with-cache-process): Likwise.
4914 * elmo-pop3.el (elmo-pop3-read-body): Likewise.
4916 * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
4918 * elmo-version.el (elmo-version): Up to 2.9.2.
4920 2001-12-23 Yuuichi Teranishi <teranisi@gohome.org>
4922 * elmo.el (elmo-folder-delete): Delete msgdb path.
4924 * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
4926 * elmo-maildir.el (elmo-folder-delete): Ditto.
4928 * elmo-localdir.el (elmo-folder-delete): Ditto.
4930 * elmo-imap4.el (elmo-folder-delete): Ditto.
4932 2001-12-19 Yuuichi Teranishi <teranisi@gohome.org>
4934 * elmo.el (luna-define-class): Added `biff' slot.
4936 * elmo-pop3.el (elmo-pop3-debug): Split biff log.
4937 (elmo-pop3-debug-inhibit-logging): Abolished.
4938 (elmo-network-close-session): Eliminated needless let.
4939 (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
4940 (elmo-pop3-send-command): Added `no-log' argument.
4941 (elmo-pop3-process-filter): Use `with-current-buffer'.
4942 (elmo-pop3-auth-user): Set `no-log' argument; Delete process
4944 (elmo-pop3-auth-apop): Likewise.
4945 (elmo-network-authenticate-session): Likewise.
4947 * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
4950 * elmo-net.el (elmo-network-session-password-key): Use class symbol
4951 string to determine protocol.
4952 (elmo-network-session-name-prefix): Abolished.
4953 (elmo-network-session-cache-key): Follow the change above.
4954 (elmo-network-open-session): Ditto.
4956 * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
4957 (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
4959 * elmo-version.el (elmo-version): Up to 2.9.1.
4961 * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
4962 unmatch condition checking.
4964 * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
4967 2001-12-17 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
4969 * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
4971 2001-12-17 Yuuichi Teranishi <teranisi@gohome.org>
4973 * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
4974 test for while loop to execute at least one SEARCH command.
4976 2001-12-15 Yuuichi Teranishi <teranisi@gohome.org>
4978 * elmo-version.el (elmo-version): Up to 2.9.0.
4980 2001-12-14 Yuuichi Teranishi <teranisi@gohome.org>
4982 * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
4983 (elmo-archive-folder-path): Define.
4984 (elmo-folder-initialize): Setup `dir-name' slot.
4985 (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
4986 Use `dir-name' as prefix of each subfolders.
4987 (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
4989 2001-12-13 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
4991 * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
4992 (elmo-pipe-folder-list-target-messages): New internal function.
4993 (elmo-pipe-drain): Use new argument `ignore-list' instead of
4995 (elmo-pipe-folder-copied-list-load): New function.
4996 (elmo-pipe-folder-copied-list-save): Ditto.
4997 (elmo-folder-open-internal): Follow the change above.
4998 (elmo-folder-status): Fixed for copy.
5000 2001-12-13 Yuuichi Teranishi <teranisi@gohome.org>
5002 * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5004 2001-12-12 Yuuichi Teranishi <teranisi@gohome.org>
5006 * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5007 elmo-copy-file instead of elmo-add-name-to-file.
5009 * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5011 * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5014 * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5015 of accept-process-output as 1.
5016 (elmo-pop3-read-contents): Ditto.
5017 (elmo-pop3-read-body): Ditto.
5019 2001-12-12 TAKAHASHI Kaoru <kaoru@kaisei.org>
5021 * elmo-version.el (product-version-as-string): Remove define.
5023 2001-12-11 Yuuichi Teranishi <teranisi@gohome.org>
5025 * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5026 (elmo-imap4-copy-messages): Chop number set using
5027 `elmo-imap4-number-set-chop-length'.
5028 (elmo-imap4-set-flag): Ditto.
5029 (elmo-imap4-search-internal-primitive): Ditto.
5031 2001-12-11 TAKAHASHI Kaoru <kaoru@kaisei.org>
5033 * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5034 `elmo-folder-make-temp-dir'
5036 * elmo-vars.el (elmo-cache-directory): New variable.
5037 (elmo-cache-dir): Abolished.
5038 (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5040 * elmo-version.el (elmo-version): Up to 2.7.7.
5042 2001-12-11 Yuuichi Teranishi <teranisi@gohome.org>
5044 * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5045 defcustom; Set default value as t.
5047 2001-12-10 Yuuichi Teranishi <teranisi@gohome.org>
5049 * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5050 (ldap-search-program-arguments): Changed default value.
5051 (ldap-search-basic): Accept exit status 4.
5052 (ldap/field-body): Parse options.
5053 (ldap/collect-field): Ditto.
5054 (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5056 * elmo-imap4.el (elmo-imap4-process-bye): New function.
5057 (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5058 (elmo-imap4-accept-ok): Ditto.
5059 (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5060 'notify-bye, only BYE error is reported.
5061 (elmo-folder-exists-p-plugged): Set no-error argument of
5062 `elmo-imap4-session-select-mailbox' as 'notify-bye.
5064 * elmo.el (elmo-imap4-bye-error): Changed message.
5066 * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5067 (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5068 queues (It causes infinite loop).
5070 2001-12-10 TAKAHASHI Kaoru <kaoru@kaisei.org>
5072 * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5073 (RECENT UNSEEN MESSAGES) extension.
5075 2001-12-07 Mito <mito@mxa.nes.nec.co.jp>
5077 * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5078 Check number of overview fields.
5080 2001-12-08 Yuuichi Teranishi <teranisi@gohome.org>
5082 * elmo.el (elmo-folder-confirm-appends): Changed message.
5083 (elmo-folder-confirm-appends): Ditto.
5085 * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5087 (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5089 2001-12-06 Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
5091 * elmo.el (elmo-folder-confirm-appends): Check whether the value
5092 of elmo-folder-update-threshold is nil, which can be set by
5093 wl-summary-update-confirm-threshold.
5095 2001-12-05 Yuuichi Teranishi <teranisi@gohome.org>
5097 * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5098 (elmo-nmz-index-alias-alist): Ditto.
5099 (elmo-map-folder-list-message-locations): Follow the change above.
5101 2001-12-02 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5103 * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5105 * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5107 * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5109 * elmo-util.el (elmo-read): Ditto.
5110 (elmo-display-error): Ditto.
5112 * elmo-vars.el (elmo-date-match): Ditto.
5114 * pldap.el (ldap-coding-system): Ditto.
5116 * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5117 `elmo-inhibit-number-mapping' as nil.
5119 2001-11-30 Tatsuya Kinoshita <tats@iris.ne.jp>
5121 * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5122 space delimiter for list response.
5124 2001-12-02 Kenichi OKADA <okada@opaopa.org>
5126 * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5128 2001-12-02 Kenichi OKADA <okada@opaopa.org>
5130 * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5131 (elmo-map-message-fetch): Fix.
5132 * elmo-map.el (elmo-folder-status): Fix for killed.
5134 2001-12-02 Kenichi OKADA <okada@opaopa.org>
5136 * elmo-sendlog.el: New file.
5137 * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5139 2001-11-30 Yuuichi Teranishi <teranisi@gohome.org>
5141 * acap.el (acap-logging-out): New buffer local variable.
5142 (acap-close): Set it.
5143 (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5146 2001-11-28 Yuuichi Teranishi <teranisi@gohome.org>
5148 * acap.el (acap-response-bye-p): New function.
5149 (acap-response-bye-message): Ditto.
5150 (acap-wait-for-response): If bye response is received, cause an error.
5151 (acap-parse-response): Make bye response when 'Bye' is received.
5153 2001-11-23 Kenichi OKADA <okada@opaopa.org>
5155 * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5157 2001-11-21 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5159 * elmo-util.el (elmo-copy-file): Added argument
5160 `ok-if-already-exists'.
5161 (elmo-copy-file): Fixed typo.
5163 2001-11-21 Kenichi OKADA <okada@opaopa.org>
5165 * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5167 2001-11-21 Kenichi OKADA <okada@opaopa.org>
5169 * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5171 2001-11-20 Kenichi OKADA <okada@opaopa.org>
5173 * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5176 2001-11-19 Kenichi OKADA <okada@opaopa.org>
5178 * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5179 (elmo-folder-initialize): Fix for `copy'.
5180 (elmo-pipe-drain): Ditto.
5181 (elmo-folder-open-internal): Ditto.
5182 (elmo-folder-newsgroups): Fix.
5184 2001-11-19 Yuuichi Teranishi <teranisi@gohome.org>
5186 * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5189 * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5190 recent value is returned from imap folder.
5192 * elmo.el (elmo-folder-newsgroups): New generic function.
5194 * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5195 (elmo-folder-initialize): Set it.
5196 (elmo-folder-expand-msgdb-path): Use it.
5197 (elmo-folder-newsgroups): Define.
5199 * elmo-filter.el (elmo-folder-newsgroups): Define.
5201 * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5203 * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5205 * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5207 2001-11-10 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5209 * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
5211 (elmo-shimbun-header-extra-field): New inline function.
5212 (elmo-shimbun-header-set-extra-field): Ditto.
5213 (elmo-shimbun-folder-header-hash-setup): Ditto.
5214 (elmo-shimbun-update-overview): Ditto.
5215 (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
5216 (elmo-shimbun-folder-setup): Use
5217 `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
5218 (elmo-shimbun-get-headers): Ditto.
5219 (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
5220 Insert `X-Shimbun-Id:' header if extra field is set.
5221 (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
5222 field's value instead of `shimbun-header-id'.
5224 * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
5226 (elmo-msgdb-overview-entity-set-date): Ditto.
5227 (elmo-msgdb-overview-entity-set-extra-field): Ditto.
5229 2001-11-09 Yuuichi Teranishi <teranisi@gohome.org>
5231 * mmimap.el (mmimap-entity-section): Changed body node number from
5234 2001-11-08 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5236 * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5237 `elmo-folder-delete-messages'.
5239 * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5240 (elmo-folder-initialize): Changed to expand alias into index path.
5242 * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5243 `elmo-mime-insert-header-from-buffer' with 6th arg
5246 2001-11-08 Yuuichi Teranishi <teranisi@gohome.org>
5248 * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5250 * elmo.el (elmo-diff-new): New inline function.
5251 (elmo-diff-unread): Ditto.
5252 (elmo-diff-all): Ditto.
5254 * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5255 value from responseb.
5256 (elmo-imap4-folder-diff-plugged): Ditto.
5257 (elmo-imap4-server-diff-async): Added recent argument.
5258 (elmo-server-diff-async): Ditto.
5259 (elmo-imap4-folder-diff-plugged): Ditto.
5261 * elmo-version.el (elmo-version): Up to 2.7.6.
5263 2001-11-05 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5265 * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5268 2001-11-05 Yuuichi Teranishi <teranisi@gohome.org>
5270 * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5272 * elmo-imap4.el (elmo-folder-initialize): Ditto.
5274 * elmo-nntp.el (elmo-folder-initialize): Ditto.
5276 * elmo-multi.el (elmo-folder-initialize): Ditto.
5278 * elmo-util.el (elmo-parse-token): New function.
5279 (elmo-parse-prefixed-element): Ditto.
5281 2001-11-01 Yuuichi Teranishi <teranisi@gohome.org>
5283 * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5285 (elmo-imap4-accept-ok): Ditto.
5287 2001-10-25 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5289 * mmimap.el (mime-imap-entity-header-string): Don't check first
5290 element of node-id is `0' (Follow last change).
5292 2001-10-24 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5294 * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5295 assigned irregular node-id to nested multipart section.
5296 (initialize-instance): Followed above change.
5298 2001-10-17 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5300 * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5301 `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5302 (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5303 `elmo-shimbun-get-headers');
5304 Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5305 visible article on summary exists in headers).
5306 (elmo-map-message-fetch): Cause an error when folder is unplugged.
5308 2001-10-17 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
5310 * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5313 2001-10-16 Yuuichi Teranishi <teranisi@gohome.org>
5315 * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5317 2001-10-13 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5319 * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
5320 header separator into loop condition.
5322 2001-10-12 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5324 * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
5325 Return duplicate folder if it has subfolder.
5327 2001-10-11 Yuuichi Teranishi <teranisi@gohome.org>
5329 * elmo.el (elmo-make-folder): Add folder name error check.
5331 * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
5332 (elmo-nntp-encode-group-string): New inline function.
5333 (elmo-nntp-decode-group-string): Ditto.
5334 (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
5335 (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
5336 Use `not' instead of `null';
5337 Use elmo-nntp-decode-group-string.
5339 * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
5341 * elmo-version.el (elmo-version): Up to 2.7.5.
5343 2001-10-10 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5345 * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
5346 Hide progress gauge if `elmo-folder-move-messages' exits
5349 2001-10-09 Yuuichi Teranishi <teranisi@gohome.org>
5351 * elmo-imap4.el (elmo-folder-initialize): Use
5352 `elmo-imap4-encode-folder-string' for folder name.
5354 2001-10-08 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5356 * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
5359 2001-10-06 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5361 * elmo-util.el (elmo-progress-counter-alist): New internal
5363 (elmo-progress-counter-value): New macro.
5364 (elmo-progress-counter-all-value): Ditto.
5365 (elmo-progress-counter-format): Ditto.
5366 (elmo-progress-counter-set-value): Ditto.
5367 (elmo-progress-set): New function.
5368 (elmo-progress-clear): Ditto.
5369 (elmo-progress-notify): Ditto.
5371 * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
5374 * elmo.el (elmo-generic-folder-append-messages): Call
5375 `elmo-progress-notify'.
5376 (elmo-folder-move-messages): Don't call `elmo-display-progress'.
5378 * elmo-archive.el (elmo-folder-append-messages): Call
5379 `elmo-progress-notify'.
5381 * elmo-imap4.el (elmo-folder-append-messages): Ditto.
5383 * elmo-localdir.el (elmo-folder-append-messages): Ditto.
5385 * elmo-maildir.el (elmo-folder-append-messages): Ditto.
5387 2001-10-03 Yuuichi Teranishi <teranisi@gohome.org>
5389 * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
5391 (elmo-message-encache-dop): Added argument `read'.
5393 * elmo-shimbun.el (elmo-message-encache): Ditto.
5395 * elmo-net.el (elmo-message-encache): Ditto.
5397 * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
5398 (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
5399 elmo-imap4-seen-messages.
5400 (elmo-folder-msgdb-create-plugged): Initialize
5401 elmo-imap4-seen-messages;
5402 Set seen mark on elmo-imap4-seen-messages.
5404 * elmo-pipe.el (elmo-folder-message-file-p): Define.
5406 * elmo.el (elmo-generic-folder-append-messages): Check return value of
5407 elmo-folder-append-buffer.
5408 (elmo-folder-encache): Added optional argument `read'.
5409 (elmo-message-encache): Ditto.
5411 * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
5413 * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
5415 * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
5416 if append buffer content succeds.
5418 2001-10-02 Yuuichi Teranishi <teranisi@gohome.org>
5420 * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
5421 elmo-display-progress.
5423 * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
5424 Set 4th argument of mime-display-message.
5425 (elmo-mime-display-as-is): Ditto.
5427 2001-10-01 Yuuichi Teranishi <teranisi@gohome.org>
5429 * elmo-nmz.el (toplevel): Require 'mime-edit.
5430 (elmo-nmz-content-type-alist): Abolished.
5431 (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
5432 content is not a message.
5433 (elmo-map-message-fetch): Changed behavior exept for message content;
5434 Detect mime-charset automatically, Use `mime-find-file-type' to detect
5435 content-type, Add From: and Subject: field.
5437 2001-09-29 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5439 * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
5440 (elmo-map-message-fetch): Add `Content-Type' field if contents is
5443 2001-09-20 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5445 * elmo.el (elmo-folder-writable-p): Changed default value to nil.
5446 (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
5448 * elmo-archive.el (elmo-folder-writable-p): Defined.
5450 * elmo-cache.el (elmo-folder-writable-p): Ditto.
5452 * elmo-filter.el (elmo-folder-writable-p): Ditto.
5454 * elmo-imap4.el (elmo-folder-writable-p): Ditto.
5456 * elmo-localdir.el (elmo-folder-writable-p): Ditto.
5458 * elmo-maildir.el (elmo-folder-writable-p): Ditto.
5460 * elmo-mark.el (elmo-folder-writable-p): Ditto.
5462 * elmo-pipe.el (elmo-folder-writable-p): Ditto.
5464 * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
5466 2001-09-20 Yuuichi Teranishi <teranisi@gohome.org>
5468 * elmo-util.el (elmo-address-quote-specials): New function;
5469 Renamed from `wl-address-quote-specials'.
5471 2001-09-18 TAKAHASHI Kaoru <kaoru@kaisei.org>
5473 * elmo-version.el (elmo-version): Up to 2.7.4.
5475 2001-09-14 Yuuichi Teranishi <teranisi@gohome.org>
5477 * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
5479 2001-09-14 Katsumi Yamaoka <yamaoka@jpl.org>
5481 * acap.el (acap-read-passphrase): Always autoload ange-ftp for
5482 both compile-time and run-time to avoid byte-compile warning.
5484 2001-09-13 Kenichi OKADA <okada@opaopa.org>
5486 * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
5488 2001-09-13 Yuuichi Teranishi <teranisi@gohome.org>
5490 * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
5492 (elmo-mime-display-as-is-internal): Use it.
5494 * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
5495 if `read-passwd' is not defined.
5497 2001-09-11 Yuuichi Teranishi <teranisi@gohome.org>
5499 * elmo-pop3.el (elmo-pop3-list-location): Sort locations
5501 (elmo-folder-status): Call `elmo-folder-open-internal';
5502 Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
5503 (elmo-folder-close-internal): Set location-alist as nil.
5504 (elmo-folder-clear): Define.
5505 (elmo-folder-check): Don't set location-alist as nil.
5507 * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
5509 2001-09-10 Yuuichi Teranishi <teranisi@gohome.org>
5511 * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
5512 (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
5514 * mmimap.el (mime-imap-entity::requested): New slot.
5515 (mime-imap-location-fetch-entity-p): New generic function.
5516 (mime-decode-parameters): Define using `defun-maybe'.
5517 (mmimap-make-mime-entity): Use `make-mime-content-type' to make
5518 content-type structure.
5519 (mime-entity-body): Return empty body if
5520 `mime-imap-location-fetch-entity-p' returns nil in the first request.
5522 * elmo.el (elmo-message-displaying): New variable.
5524 * elmo-mime.el (elmo-mime-message-display): Bind
5525 elmo-message-displaying as t.
5527 * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
5529 2001-08-31 Yuuichi Teranishi <teranisi@gohome.org>
5531 * acap.el (acap-open): erase buffer before starting network process.
5532 (acap-store): Rewrite.
5534 2001-08-29 Yuuichi Teranishi <teranisi@gohome.org>
5536 * elmo-imap4.el (elmo-imap4-default-mailbox,
5537 elmo-imap4-default-server
5538 elmo-imap4-default-authenticate-type,
5539 elmo-imap4-default-user,
5540 elmo-imap4-default-port,
5541 elmo-imap4-default-stream-type,
5542 elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
5544 * elmo-pop3.el (elmo-pop3-default-user,
5545 elmo-pop3-default-server,
5546 elmo-pop3-default-authenticate-type,
5547 elmo-pop3-default-port,
5548 elmo-pop3-default-stream-type,
5549 elmo-pop3-stream-type-alist): Ditto.
5551 * elmo-nntp.el (elmo-nntp-default-server,
5552 elmo-nntp-default-user,
5553 elmo-nntp-default-port,
5554 elmo-nntp-default-stream-type,
5555 elmo-nntp-stream-type-alist): Ditto.
5557 * elmo-vars.el: Follow changes above.
5558 (elmo-setting): New custom group; added 'elmo-setting group to
5561 * elmo-version.el (elmo-version): Up to 2.7.3.
5563 * acap.el (acap-parse-response): Don't delete process when BYE
5564 response (It causes hang-up on slow network environment).
5565 (toplevel): Added comment.
5567 2001-08-28 Yuuichi Teranishi <teranisi@gohome.org>
5569 * slp.el (slp-exec-wait): Use `slp-program-arguments'.
5571 * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
5573 (acap-parse-return-metadata): Ditto.
5576 (toplevel): Fixed typo.
5578 * acap.el: New file.
5579 (acap-network-stream-open): Show "Connecting..." message.
5580 (acap-parse-response): Fixed problem for BYE untagged response.
5581 (acap-open): Changed argument (Use `acap-default-user' if user is nil).
5582 (toplevel): Added tiny comments.
5584 2001-08-20 Tatsuya Kinoshita <tats@iris.ne.jp>
5586 * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
5587 space delimiter for uidl response.
5589 2001-08-20 Yuuichi Teranishi <teranisi@gohome.org>
5591 * elmo-vars.el (elmo-use-semi): Eliminated.
5593 * elmo-util.el (elmo-string-assoc-all): New function.
5595 2001-08-16 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5597 * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
5598 property 'mime-preview-situation for `mime-preview-quit'.
5600 2001-08-15 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5602 * elmo.el (elmo-message-fetch-with-cache-process): Call
5603 elmo-message-fetch-internal instead of causing an error when fetch
5604 strategy is 'entire but only 'section cache is available.
5606 2001-08-15 Yuuichi Teranishi <teranisi@gohome.org>
5608 * elmo-version.el (elmo-version): Up to 2.7.2.
5610 * elmo.el (elmo-generic-folder-append-messages): Make
5611 fetch-strategy with `use-cache'.
5613 * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
5614 (elmo-dop-queue-method-name): New macro.
5616 2001-08-03 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5618 * elmo-archive.el (elmo-archive-get-archive-name): Fixed
5619 unbalanced parenthesis.
5621 2001-08-03 YAMASHITA Junji <ysjj@unixuser.org>
5623 * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
5625 2001-08-03 Yuuichi Teranishi <teranisi@gohome.org>
5627 * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
5628 (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
5630 2001-08-02 Yuuichi Teranishi <teranisi@gohome.org>
5632 * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
5635 2001-07-30 Yuuichi Teranishi <teranisi@gohome.org>
5637 * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
5638 (elmo-message-use-cache-p): Define.
5639 (elmo-folder-msgdb-create): Treat cache.
5641 2001-07-28 Kenichi OKADA <okada@opaopa.org>
5643 * elmo-nntp.el (elmo-network-initialize-session): Call
5644 `elmo-nntp-send-mode-reader'.
5645 (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
5647 2001-07-26 Yuuichi Teranishi <teranisi@gohome.org>
5649 * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
5651 (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
5654 * elmo-net.el (elmo-network-get-session): Set stream-type argument
5655 for `elmo-plugged-p'.
5656 (elmo-open-network-stream): Fixed stream-type argument.
5658 2001-07-25 Yuuichi Teranishi <teranisi@gohome.org>
5660 * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
5661 unknown archive type is specified.
5663 2001-07-23 Yuuichi Teranishi <teranisi@gohome.org>
5665 * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
5667 * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
5668 while loading msgdb.
5670 * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
5671 (elmo-folder-open-internal): Rewrite.
5673 2001-07-17 Yuuichi Teranishi <teranisi@gohome.org>
5675 * elmo-mime.el (elmo-mime-display-as-is-internal):
5676 Adjust buffer-multibyte status.
5678 2001-07-13 Yuuichi Teranishi <teranisi@gohome.org>
5680 * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
5681 of elmo-condition-find-key.
5683 * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
5684 (elmo-condition-in-msgdb-p): Ditto.
5685 (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
5688 2001-07-12 Yuuichi Teranishi <teranisi@gohome.org>
5690 * elmo-pipe.el (elmo-folder-pack-numbers): Define.
5692 2001-07-05 Yuuichi Teranishi <teranisi@gohome.org>
5694 * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
5695 label for elmo-display-progress.
5697 2001-07-02 Yuuichi Teranishi <teranisi@gohome.org>
5699 * elmo.el (elmo-folder-clear): New method.
5700 (elmo-folder-clear): Define.
5701 (elmo-folder-synchronize): Call `elmo-folder-clear'.
5703 * elmo-shimbun.el (elmo-folder-check): Rewrite.
5704 (elmo-folder-clear): Define.
5706 * elmo-map.el (elmo-folder-clear): Define.
5708 * elmo-version.el (elmo-version): Up to 2.7.1.
5710 2001-06-26 Yuuichi Teranishi <teranisi@gohome.org>
5712 * elmo.el (elmo-folder-synchronize): Return list of nil when no
5715 2001-06-21 Yuuichi Teranishi <teranisi@gohome.org>
5717 * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
5718 (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
5720 2001-06-20 Yuuichi Teranishi <teranisi@gohome.org>
5722 * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
5724 * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
5727 * elmo-imap4.el (elmo-folder-initialize): Use
5728 elmo-get-network-stream-type.
5730 * elmo-nntp.el (elmo-folder-initialize): Ditto.
5732 * elmo-pop3.el (elmo-folder-initialize): Ditto.
5734 2001-06-19 Yuuichi Teranishi <teranisi@gohome.org>
5736 * elmo.el (elmo-message-encache): Set unread argument for
5739 * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
5741 * elmo.el (elmo-net-port-info): New method.
5743 * elmo-shimbun.el (elmo-net-port-info): Define.
5744 (elmo-message-encache): Ditto.
5746 * elmo-net.el (elmo-net-port-info): Define as method.
5748 * elmo.el (elmo-generic-folder-append-messages): Find cache file in
5749 unplugged status when elmo-enable-disconnected-operation is t.
5751 * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
5752 of spool folder before checking new number.
5754 2001-06-18 Yuuichi Teranishi <teranisi@gohome.org>
5756 * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
5757 (elmo-network-setup-session): Ditto.
5758 (elmo-message-fetch-plugged): Ditto.
5759 (elmo-pop3-send-command): Don't call elmo-pop3-lock.
5760 (elmo-network-initialize-session): Ditto.
5761 (elmo-pop3-read-response): Abolish 3rd argument.
5762 (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
5763 (elmo-pop3-read-contents): Ditto.
5764 (elmo-pop3-read-body): Ditto.
5765 (elmo-folder-status): Call elmo-folder-close.
5766 (elmo-pop3-lock): Abolish.
5767 (elmo-pop3-unlock): Ditto.
5768 (elmo-pop3-locked-p): Ditto.
5769 (elmo-folder-check): Don't call elmo-pop3-locked-p.
5771 2001-06-15 Yuuichi Teranishi <teranisi@gohome.org>
5773 * elmo-version.el (elmo-version): Up to 2.7.0.
5775 * elmo-pop3.el (elmo-pop3-debug): New variable.
5776 (elmo-pop3-debug-inhibit-logging): Ditto.
5777 (elmo-pop3-debug): New function.
5778 (elmo-pop3-send-command): Call elmo-pop3-debug.
5779 (elmo-pop3-read-response): Added keep-lock optional argument;
5780 Don't unlock if keep-lock is non-nil.
5781 (elmo-pop3-process-filter): Call elmo-pop3-debug.
5782 (elmo-network-authenticate-session): Bind
5783 elmo-pop3-debug-inhibit-logging as t.
5784 (elmo-network-setup-session): Call elmo-pop3-read-response with
5786 (elmo-pop3-read-msg): Ditto.
5787 (elmo-pop3-locked-p): Call elmo-pop3-debug.
5788 (elmo-pop3-read-body): Call elmo-pop3-unlock.
5789 (elmo-network-initialize-session): Call elmo-pop3-lock.
5790 (elmo-folder-close-internal): Don't clear location-alist slot.
5791 (elmo-folder-check): Clear location-alist slot.
5793 2001-06-13 Yuuichi Teranishi <teranisi@gohome.org>
5795 * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
5796 (elmo-pop3-send-command): Call elmo-pop3-lock.
5797 (elmo-pop3-read-response): Call elmo-pop3-unlock.
5798 (elmo-pop3-read-contents): Ditto.
5799 (elmo-pop3-lock): New function.
5800 (elmo-pop3-unlock): Ditto.
5801 (elmo-pop3-locked-p): Ditto.
5802 (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
5805 2001-06-11 Yuuichi Teranishi <teranisi@gohome.org>
5807 * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
5809 * elmo-util.el (elmo-file-field-primitive-condition-match):
5810 New inline function (Don't fetch file content if "first" or "last").
5811 (elmo-file-field-condition-match): Use
5812 elmo-file-field-primitive-condition-match.
5814 * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
5817 * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
5818 (elmo-message-fetch-plugged): Fixed.
5820 * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
5822 2001-06-10 Yuuichi Teranishi <teranisi@gohome.org>
5824 * elmo.el (elmo-folder-move-messages): Bind
5825 elmo-inhibit-display-retrieval-progress as t while moving messages.
5827 * elmo-vars.el (elmo-display-retrieval-progress-threshold):
5829 (elmo-inhibit-display-retrieval-progress): Ditto.
5831 * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
5832 for retrieval progress;
5833 Don't display progress when total buffer size is smaller than
5834 elmo-display-retrieval-progress-threshold.
5835 (elmo-message-fetch-plugged): Don't display progress when
5836 elmo-inhibit-display-retrieval-progress is non-nil.
5838 * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
5839 for retrieval progress;
5840 Don't display progress when literal size is smaller than
5841 elmo-display-retrieval-progress-threshold.
5842 (elmo-imap4-message-fetch): Don't display progress when
5843 elmo-inhibit-display-retrieval-progress is non-nil.
5845 2001-06-07 Yuuichi Teranishi <teranisi@gohome.org>
5847 * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
5848 (elmo-imap4-find-next-line): Display progress whille literal fetching.
5849 (elmo-imap4-message-fetch): Likewise.
5851 * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
5852 (elmo-shimbun-index-range-alist): Ditto.
5853 (elmo-shimbun-use-entire-index): Abolish.
5854 (shimbun-mua-use-entire-index): Ditto.
5855 (elmo-shimbun-folder): Added new slot `range'.
5856 (elmo-folder-initialize): Setup slot `range'.
5858 2001-06-06 Yuuichi Teranishi <teranisi@gohome.org>
5860 * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
5861 (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
5862 (elmo-shimbun-get-headers): Use return value of
5863 `shimbun-article-expiration-days'.
5864 (elmo-folder-close-internal): Clean up last-check slot.
5866 * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
5867 (elmo-pop3-total-size): New variable.
5868 (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
5870 * elmo.el (elmo-folder-reserve-status-p): New method.
5872 * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
5873 (elmo-shimbun-use-entire-index): New user option.
5874 (shimbun-elmo-mua): New class.
5875 (shimbun-mua-search-id): Define.
5876 (shimbun-mua-use-entire-index): Ditto.
5877 (elmo-shimbun-folder:last-check): New slot.
5878 (elmo-shimbun-headers-cache-header-list): Abolish.
5879 (elmo-shimbun-headers-cache-set-header-list): Ditto.
5880 (elmo-shimbun-headers-cache-header-hash): Ditto.
5881 (elmo-shimbun-headers-cache-set-header-hash): Ditto.
5882 (elmo-shimbun-headers-cache-last-check): Ditto.
5883 (elmo-shimbun-headers-cache-set-last-check): Ditto.
5884 (elmo-shimbun-headers-check-p): Rewrite.
5885 (elmo-shimbun-msgdb-to-headers): New function.
5886 (elmo-shimbun-get-headers): Rewrite.
5887 (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
5888 (elmo-folder-open-internal): Get headers only if
5889 `elmo-shimbun-headers-check-p' is non-nil.
5890 (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
5892 (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
5893 (elmo-quit): Removed.
5895 * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
5897 (elmo-msgdb-overview-entity-set-extra): Ditto.
5898 (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
5900 * elmo-map.el (elmo-folder-status): Don't call
5901 elmo-folder-close-internal if `elmo-folder-reserve-status-p'
5904 2001-06-05 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5906 * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
5907 of `elmo-msgdb-search-internal-primitive' when condition's car is
5910 2001-05-23 Kenichi OKADA <okada@opaopa.org>
5912 * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
5914 2001-05-22 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5916 * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
5917 call `elmo-pipe-drain'.
5919 2001-05-19 Masahiro MURATA <muse@ba2.so-net.ne.jp>
5921 * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
5922 typo. (elmo-cache-folder -> elmo-mark-folder)
5924 2001-05-11 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5926 * elmo-net.el (elmo-message-fetch-unplugged): Don't call
5927 `elmo-message-fetch'.
5929 2001-05-10 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
5931 * elmo-net.el (elmo-message-encache): Fixed typo.
5932 (elmo-message-fetch-unplugged): Changed call
5933 `elmo-message-fetch-internal' without argument `outbuf'.
5935 2001-05-10 Yuuichi Teranishi <teranisi@gohome.org>
5937 * elmo.el (elmo-message-encache): Define as generic function.
5938 (elmo-message-fetch-field): New generic function.
5939 (elmo-message-fetch-with-cache-process): Cause an error when
5940 fetch strategy is 'entire but only 'section cache is available.
5941 (toplevel): Fixed nmz folder definition.
5943 * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
5944 (elmo-msgdb-resume-list-filename): Ditto.
5945 (elmo-queue-filename): Ditto.
5946 (elmo-enable-disconnected-operation): Changed default value to t.
5948 * elmo-util.el (elmo-cache-path-section-p): New function.
5949 (elmo-file-cache-get): Use it.
5950 (elmo-dop-queue-filename): Moved from elmo-dop.el.
5951 (elmo-dop-queue-load): Moved from elmo-msgdb.el.
5952 (elmo-dop-queue-save): Ditto.
5954 * elmo-net.el (elmo-folder-status-unplugged): Call
5955 elmo-folder-status-dop.
5956 (elmo-folder-list-messages-unplugged): Implemented.
5957 (elmo-folder-delete-messages-unplugged): Define.
5958 (elmo-folder-msgdb-create): Define.
5959 (elmo-folder-msgdb-create-unplugged): Define.
5960 (elmo-folder-mark-as-read-unplugged): Ditto.
5961 (elmo-folder-unmark-read-unplugged): Ditto.
5962 (elmo-folder-mark-as-important-unplugged): Ditto.
5963 (elmo-folder-unmark-important-unplugged): Ditto.
5964 (elmo-message-encache): Ditto.
5966 * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
5967 (elmo-dop-queue-save): Ditto.
5969 * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
5970 `elmo-folder-msgdb-create'.
5971 (elmo-folder-append-buffer): Implemented unplugged operation.
5972 (elmo-folder-append-messages): Call parent method in unplugged status.
5973 (elmo-message-fetch-unplugged): Removed definition.
5974 (elmo-message-fetch-field): Implemented.
5976 * elmo-dop.el (toplevel): Require 'elmo-localdir.
5977 (elmo-dop-folder): Removed variable definition.
5978 (elmo-dop-queue-append): Changed argument `fname' to `folder'.
5979 (elmo-dop-queue-flush): Implemented.
5980 (elmo-dop-queue-merge): Removed definition (TODO).
5981 (elmo-dop-spool-folder): New function.
5982 (elmo-dop-spool-folder-append-buffer): Ditto.
5983 (elmo-dop-spool-folder-list-messages): Ditto.
5984 (elmo-dop-list-deleting-messages): Ditto.
5985 (elmo-folder-append-buffer-dop): Ditto.
5986 (elmo-folder-delete-messages-dop): Ditto.
5987 (elmo-message-encache-dop): New inline function.
5988 (elmo-create-folder-dop): Ditto.
5989 (elmo-folder-mark-as-read-dop): Ditto.
5990 (elmo-folder-unmark-read-dop): Ditto.
5991 (elmo-folder-mark-as-important-dop): Ditto.
5992 (elmo-folder-unmark-important-dop): Ditto.
5993 (elmo-folder-status-dop): Fixed.
5994 (elmo-folder-append-buffer-dop-delayed): New function.
5995 (elmo-folder-delete-messages-dop-delayed): Ditto.
5996 (elmo-dop-msgdb): Ditto.
5998 2001-05-10 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
6000 * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6002 2001-05-10 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
6004 * elmo.el (elmo-folder-move-messages): Fixed problem when
6005 `dst-folder' is 'null.
6007 2001-05-09 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
6009 * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6010 instead of current mark.
6012 * elmo-multi.el (elmo-folder-list-importants-internal): No
6013 operation if importants is not list.
6015 * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6016 Return t if importants is not list.
6018 * elmo-map.el (elmo-map-folder-list-importants): Define.
6019 (elmo-folder-list-importants-internal): Check return value of
6020 `elmo-map-folder-list-importants-internal'.
6022 * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6024 * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6026 * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6028 * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6030 2001-05-08 Yuuichi Teranishi <teranisi@gohome.org>
6032 * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6033 (Patch is provided by <kita@coe.nttdata.co.jp>).
6035 2001-05-08 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
6037 * elmo.el (elmo-folder-synchronize): Don't check important mark in
6040 2001-05-08 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
6042 * elmo.el (elmo-message-fetch): Define.
6043 (elmo-message-fetch-with-cache-process): New generic method.
6044 (elmo-message-fetch-internal): New generic method.
6045 (elmo-folder-synchronize):
6047 * elmo-archive.el (elmo-message-fetch-internal): Define.
6048 (elmo-message-fetch): Eliminated.
6050 * elmo-localdir.el (elmo-message-fetch-internal): Define.
6051 (elmo-message-fetch): Eliminated.
6053 * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6055 (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6057 * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6058 (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6060 * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6061 (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6063 * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6065 * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6067 * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6069 * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6070 (elmo-message-fetch-unplugged): New generic method.
6071 (elmo-message-fetch-internal): Remove cache process (Renamed from
6072 `elmo-message-fetch').
6074 * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6075 (elmo-message-fetch): Eliminated.
6076 (elmo-message-fetch-unplugged): Ditto.
6078 * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6080 2001-05-02 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
6082 * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6083 of `to-be-deleted' from number-alist to number-list.
6085 2001-04-26 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
6087 * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6088 (elmo-folder-mark-as-important): Ditto.
6090 2001-04-26 Yuuichi Teranishi <teranisi@gohome.org>
6092 * elmo.el (elmo-folder): Added process-duplicates slot.
6094 * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6095 (elmo-folder-unmark-read): Ditto.
6096 (elmo-folder-unmark-important): Ditto.
6097 (elmo-folder-mark-as-important): Ditto.
6099 * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6100 duplicated message processing.
6102 * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6104 2001-04-24 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
6106 * elmo-util.el (elmo-list-subdirectories-1): New function.
6107 (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6108 (elmo-mapcar-list-of-list): New function.
6110 * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6111 `elmo-mapcar-list-of-list' instead of `mapcar'.
6113 * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6115 * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6116 `elmo-have-link-count'. Return the fully qualified folder name.
6118 2001-04-23 Yuuichi Teranishi <teranisi@gohome.org>
6120 * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6121 (elmo-shimbun-headers-cache): New internal variable.
6122 (elmo-shimbun-headers-cache-header-list): New inline function.
6123 (elmo-shimbun-headers-cache-set-header-list): Ditto.
6124 (elmo-shimbun-headers-cache-header-hash): Ditto.
6125 (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6126 (elmo-shimbun-headers-cache-last-check): Ditto.
6127 (elmo-shimbun-headers-cache-set-last-check): Ditto.
6128 (elmo-shimbun-lapse-seconds): Ditto.
6129 (elmo-shimbun-headers-cache-check-p): Ditto.
6130 (elmo-shimbun-get-headers): New function.
6131 (elmo-folder-open-internal): Call it.
6132 (elmo-quit): Define (Clear headers-cache).
6134 2001-04-18 Yuuichi Teranishi <teranisi@gohome.org>
6136 * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6138 * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6139 (elmo-msgdb-flist-save): Ditto.
6141 * elmo-shimbun.el (elmo-folder-list-subfolders):
6142 Use `shimbun-groups' instead of `shimbun-groups-internal'.
6143 (elmo-folder-exists-p): Ditto.
6145 * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6146 argument for `shimbun-header-insert'.
6148 2001-04-17 Yuuichi Teranishi <teranisi@gohome.org>
6150 * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6153 * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6154 (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6156 2001-04-16 Yuuichi Teranishi <teranisi@gohome.org>
6158 * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6159 (elmo-folder-plugged-p): Define.
6160 (elmo-folder-set-plugged): Ditto.
6161 (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6162 (elmo-folder-list-messages-internal): Return t if unplugged.
6163 (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6165 * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6166 when elmo-folder-list-messages-internal method of children returns t.
6168 * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6170 (elmo-folder-open-internal): Don't update if unplugged status.
6172 2001-04-13 Yuuichi Teranishi <teranisi@gohome.org>
6174 * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6177 2001-04-12 Yuuichi Teranishi <teranisi@gohome.org>
6179 * elmo-util.el (elmo-file-cache-save): Ignore errors.
6181 * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6184 2001-04-09 Yuuichi Teranishi <teranisi@gohome.org>
6186 * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6188 * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6189 (elmo-folder-open-internal): Set up headers slot.
6190 (elmo-folder-check): Call elmo-folder-close-internal and
6191 elmo-folder-open-internal.
6192 (elmo-folder-close-internal): Clean up headers slot.
6194 2001-04-07 Masahiro MURATA <muse@ba2.so-net.ne.jp>
6196 * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6197 exactly folder list.
6198 (elmo-folder-append-messages): Fixed append archive with prefix.
6200 * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6201 make temp files with start-number.
6203 * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6205 2001-04-05 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
6207 * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
6208 argument `visible-only'.
6209 (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
6212 * elmo-pop3.el (elmo-folder-open-internal): Check
6213 `elmo-inhibit-number-mapping' is non-nil.
6215 * elmo-pipe.el (elmo-folder-status): Fixed.
6217 2001-04-05 Yuuichi Teranishi <teranisi@gohome.org>
6219 * elmo.el (elmo-dop-queue-flush): Added autload setting.
6221 * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
6222 (elmo-folder-open-internal): Setup `header-hash' slot.
6223 (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
6225 (elmo-map-message-fetch): Ditto.
6227 2001-04-04 Yuuichi Teranishi <teranisi@gohome.org>
6229 * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6230 sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6231 sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6232 sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6234 * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6236 2001-04-03 Yuuichi Teranishi <teranisi@gohome.org>
6238 * sb-airs.el: Added footer.
6240 * shimbun.el (shimbun-article): Define as luna-method.
6242 * sb-tcup.el: New file.
6244 * sb-airs.el (toplevel): Require 'sb-mhonarc.
6245 (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6247 2001-04-02 Yuuichi Teranishi <teranisi@gohome.org>
6249 * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6250 (shimbun-get-headers): Ditto.
6252 * elmo.el: Moved obsolete variable definitions from
6253 elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6255 * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6258 * shimbun.el: New file.
6260 * elmo-shimbun.el: New file.
6262 * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6263 sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6264 sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6265 sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6267 2001-03-27 Kenichi OKADA <okada@opaopa.org>
6269 * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6272 2001-03-12 Yuuichi Teranishi <teranisi@gohome.org>
6274 * elmo.el (elmo-folder-msgdb): Define as macro.
6275 (elmo-folder-open): Added argument `load-msgdb'.
6276 (elmo-generic-folder-open): Ditto.
6277 (elmo-folder-encache): New function.
6279 * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6281 * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6283 * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6284 Eliminated argument FOLDER and added argument MSGDB.
6285 (elmo-dop-queue-load): Moved from elmo-dop.el.
6286 (elmo-dop-queue-save): Ditto.
6288 * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6290 * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6292 * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6293 Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6294 (elmo-filter-folder-list-importants-internal): Ditto.
6296 * elmo-map.el (elmo-folder-pack-number): Ditto.
6298 * elmo-mime.el (elmo-mime-message-display): Ditto.
6300 * elmo.el (elmo-generic-folder-commit): Ditto.
6301 (elmo-folder-list-unreads): Ditto.
6302 (elmo-folder-list-importants): Ditto.
6303 (elmo-generic-folder-commit): Ditto.
6304 (elmo-message-set-mark): Ditto.
6305 (elmo-generic-folder-append-msgdb): Ditto.
6306 (elmo-folder-synchronize): Ditto.
6307 (elmo-folder-messages): Ditto.
6308 (elmo-init): Call elmo-dop-queue-load.
6309 (elmo-folder-list-messages): Ditto.
6311 * elmo-nntp.el (elmo-folder-update-number): Ditto.
6312 (elmo-nntp-folder-process-crosspost): Ditto.
6313 (elmo-folder-list-unreads-internal): Ditto.
6315 * elmo-dop.el: Removed old functions.
6317 2001-03-05 Yuuichi Teranishi <teranisi@gohome.org>
6319 * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
6320 `folder' to `msgdb'.
6322 2001-03-01 Yuuichi Teranishi <teranisi@gohome.org>
6324 * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
6325 `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
6327 * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
6330 2001-02-28 Yuuichi Teranishi <teranisi@gohome.org>
6332 * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
6335 * mmimap.el (toplevel): Require 'mime-parse and 'static.
6336 (mmimap-parse-parameters-from-list): Define as alias for
6337 `mime-decode-parameter-plist' if it is defined as function.
6338 (mmimap-make-mime-entity): Added argument `number'.
6339 (initialize-instance): Set `number' argument of mmimap-make-mime-entity
6341 (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
6343 * elmo.el (elmo-folder-have-subfolder-p): New generic function.
6345 * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
6347 * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
6349 2001-02-27 Yuuichi Teranishi <teranisi@gohome.org>
6351 * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
6353 * elmo-imap4.el (elmo-folder-initialize): Fixed problem
6354 when elmo-imap4-default-authenticate-type is nil.
6355 (elmo-folder-list-subfolders): Ditto
6356 (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
6357 (elmo-imap4-fetch-callback-1-subr): Renamed from
6358 `elmo-imap4-fetch-callback-1' and define as inline function.
6359 (elmo-imap4-fetch-callback-1):
6360 Renamed from `elmo-imap4-fetch-callback'.
6361 (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
6363 * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
6364 msgdb path (To keep compatibility with main trunk).
6366 * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
6368 * elmo-util.el (elmo-make-file-cache): Moved position of
6371 * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
6372 (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
6373 instead of `elmo-pop3-inhibit-uidl'.
6374 (elmo-folder-exists-p): Ditto.
6375 (elmo-pop3-folder-list-messages): Ditto.
6377 * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
6378 instead of `elmo-pop3-inhibit-uidl'.
6379 (elmo-folder-status): Ditto.
6381 * elmo-dop.el (elmo-dop-folder): New variable.
6382 (elmo-dop-lock-message): Eliminated.
6383 (elmo-dop-unlock-message): Ditto.
6384 (elmo-dop-lock-list-load): Ditto.
6385 (elmo-dop-lock-list-save): Ditto.
6386 (elmo-dop-delete-folder): Ditto.
6387 (elmo-dop-rename-folder): Ditto.
6389 * elmo.el: Removed incomplete commentary.
6391 2001-02-25 TAKAHASHI Kaoru <kaoru@kaisei.org>
6393 * elmo.el (toplevel): Require 'elmo-version first;
6394 for little `recursive-load-depth' settings.
6395 Fix "ends here" comment.
6397 2001-02-23 Yuuichi Teranishi <teranisi@gohome.org>
6399 * elmo-util.el (toplevel): Require 'poem;
6400 Some functions are moved from elmo-cache.el.
6402 * elmo-net.el (toplevel): Require 'elmo-cache.
6404 * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
6406 * elmo.el (toplevel): Ditto.
6408 * elmo-cache.el: Rewrite with luna;
6409 Some functions are moved to elmo-util.el.
6411 * elmo-internal.el (elmo-internal-folder-list): New variable.
6412 (elmo-internal-folder-initialize): Rewrite.
6413 (elmo-folder-list-subfolders): Ditto.
6415 * elmo-cache.el (elmo-cache-search-all): Eliminated.
6416 (elmo-cache-collect-sub-directories): Ditto.
6418 2001-02-22 Yuuichi Teranishi <teranisi@gohome.org>
6420 * elmo-version.el (elmo-version): Up to 2.5.8.
6422 * elmo.el (elmo-folder-list-messages-mark-match): New function.
6424 * elmo-util.el (elmo-list-insert): New function.
6426 2001-02-21 Yuuichi Teranishi <teranisi@gohome.org>
6428 * elmo.el (elmo-init): New function.
6429 (elmo-quit): Call `elmo-crosspost-message-alist-save'.
6431 * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
6432 (Renamed from `elmo-localdir-header-chop-length').
6434 * elmo-pop3.el (elmo-pop3-use-cache,
6435 elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
6437 * elmo-nntp.el (elmo-message-fetch): Define.
6438 (elmo-message-fetch-unplugged): Ditto.
6439 (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
6440 (elmo-nntp-use-cache): Ditto.
6441 (elmo-nntp-max-number-precedes-list-active): Ditto.
6443 * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
6445 * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
6446 `elmo-msgdb-insert-file-header'.
6447 Use `elmo-msgdb-file-header-chop-length'.
6449 * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
6452 * elmo-cache.el (elmo-cache-insert-header): Eliminated.
6453 (elmo-cache-msgdb-create-overview-entity-from-file): Use
6454 `elmo-msgdb-insert-file-header'.
6456 * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
6458 Define obsolete variables with `elmo-define-obsolete-variable',
6460 * elmo-util.el (elmo-warning-buffer-name): New constant.
6461 (elmo-warning): New function.
6462 (elmo-obsolete-variable-alist): New variable.
6463 (elmo-obsolete-variable-show-warnings): New variable.
6464 (elmo-define-obsolete-variable): New function.
6465 (elmo-resque-obsolete-variable): Ditto.
6466 (elmo-resque-obsolete-variables): Ditto.
6468 2001-02-20 Yuuichi Teranishi <teranisi@gohome.org>
6470 * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
6473 * elmo-pop3.el, elmo-nntp.el: Use custom.
6475 2000-02-20 Kenichi OKADA <okada@opaopa.org>
6477 * elmo-imap4.el (elmo-network-authenticate-session): Fix.
6478 * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
6480 2001-02-20 Yuuichi Teranishi <teranisi@gohome.org>
6482 * Luna-fy Kenichi OKADA's following changes.
6483 * elmo.el (elmo-folder-list-messages-internal): Added optional argument
6485 (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
6487 2001-02-21 OKAZAKI Tetsurou <okazaki@be.to>
6489 * elmo-util.el (elmo-display-progress): Prefer
6490 `progress-feedback-with-label' to `lprogress-display'.
6492 2000-02-20 Kenichi OKADA <okada@opaopa.org>
6494 * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
6496 2000-02-19 Kenichi OKADA <okada@opaopa.org>
6498 * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
6499 * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
6500 * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6501 * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6502 * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
6503 * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
6504 * elmo-archive.el (elmo-archive-list-folder): Ditto.
6505 * elmo-filter.el (elmo-filter-list-folder): Ditto.
6506 * elmo-internal.el (elmo-internal-list-folder): Ditto.
6507 * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6508 * elmo-multi.el (elmo-multi-list-folder): Ditto.
6509 * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6510 * elmo-dop.el (elmo-dop-list-folder): Ditto.
6512 2000-02-17 Kenichi OKADA <okada@opaopa.org>
6514 * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
6515 * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
6517 2001-02-20 Yuuichi Teranishi <teranisi@gohome.org>
6519 * elmo.el (elmo-folder-process-crosspost): New generic method.
6520 (elmo-folder-writable-p): Ditto.
6521 (elmo-folder-message-appendable-p): Eliminated.
6522 (elmo-generic-folder-append-msgdb): Rewrite.
6523 (elmo-newsgroups-hashtb): New internal variable.
6524 (elmo-crosspost-message-set): Eliminated.
6525 (elmo-crosspost-message-delete): Ditto.
6526 (elmo-setup-subscribed-newsgroups): New function.
6527 (elmo-crosspost-message-alist-modified): New internal variable.
6528 (elmo-crosspost-message-alist-load): New function (Renamed from
6529 `wl-crosspost-alist-load').
6530 (elmo-crosspost-message-alist-save): Ditto (Renamed from
6531 `wl-crosspost-alist-save').
6533 * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
6535 * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
6537 (elmo-nntp-groups-hashtb): Eliminated (Renamed to
6538 elmo-newsgroups-hashtb).
6539 (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
6540 `elmo-nntp-folder-update-crosspost-message-alist'.
6541 (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
6542 `elmo-nntp-groups-hashtb'.
6543 (elmo-nntp-make-groups-hashtb): Eliminated.
6544 (elmo-nntp-parse-newsgroups): New function (Renamed from
6545 `wl-parse-newsgroups').
6546 (elmo-folder-creatable-p, elmo-folder-writable-p,
6547 elmo-folder-close-internal, elmo-folder-mark-as-read,
6548 elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
6550 (elmo-nntp-folder-update-crosspost-message-alist): New function.
6552 * elmo-net.el (elmo-message-fetch): Check buffer size.
6554 * elmo-multi.el (elmo-multi-split-number-alist): New function.
6556 * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
6558 * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
6559 before `close' command.
6561 * elmo.el (elmo-folder-list-unreads-internal): Added argument
6562 `mark-alist' (All other related portions are changed).
6564 2001-02-13 Yuuichi Teranishi <teranisi@gohome.org>
6566 * elmo-util.el (elmo-create-hash-size): Eliminated.
6567 (elmo-make-hash) Make a hash with `one less than a power of two'
6570 * elmo-vars.el (elmo-hash-minimum-size): New variable.
6571 (elmo-hash-maximum-size): Changed value.
6573 2001-02-09 Yuuichi Teranishi <teranisi@gohome.org>
6575 * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
6576 (elmo-mime-message-display-as-is): Ditto.
6578 2001-02-07 Yuuichi Teranishi <teranisi@gohome.org>
6580 * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
6581 Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
6583 2001-02-06 Yuuichi Teranishi <teranisi@gohome.org>
6585 * elmo-mark.el: New file.
6587 * elmo-internal.el: Rewrite (Almost empty).
6589 2001-02-05 Yuuichi Teranishi <teranisi@gohome.org>
6591 * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
6592 (mime-imap-entity-header-string): Ditto.
6593 (mmimap-entity-section): Rewrite.
6595 2001-01-30 Yuuichi Teranishi <teranisi@gohome.org>
6597 * elmo-nmz.el: New file.
6599 * elmo-pipe.el: Rewrite with luna.
6601 2001-01-29 Yuuichi Teranishi <teranisi@gohome.org>
6603 * elmo-archive.el: Rewrite with luna.
6605 * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
6606 (elmo-folder-list-importants-internal): Ditto.
6608 2001-01-24 Yuuichi Teranishi <teranisi@gohome.org>
6610 * elmo-archive.el (elmo-archive-version): Abolish.
6611 (toplevel) Removed `boso' comment.
6613 2001-01-23 Yuuichi Teranishi <teranisi@gohome.org>
6615 * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
6616 elmo-msgdb-add-msgs-to-seen-list-subr;
6617 Changed argument seen-marks to unread-marks.
6619 * elmo-nntp.el: Rewrite with luna.
6621 2001-01-22 Yuuichi Teranishi <teranisi@gohome.org>
6623 * elmo-filter.el: Rewrite with luna.
6625 2001-01-18 Yuuichi Teranishi <teranisi@gohome.org>
6627 * elmo-pop3.el: Rewrite with luna.
6629 2001-01-17 Yuuichi Teranishi <teranisi@gohome.org>
6631 * elmo-multi.el: Rewrite with luna.
6633 * elmo-vars.el (elmo-use-killed-list): Abolish.
6634 All other related portions are changed.
6635 (elmo-filename-replace-string-alist): Renamed from
6636 elmo-msgid-replace-string-alist.
6638 2001-01-16 Yuuichi Teranishi <teranisi@gohome.org>
6640 * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
6642 * elmo-map.el: New file.
6643 * elmo-maildir.el: Rewrite with luna.
6645 2001-01-14 Yuuichi Teranishi <teranisi@gohome.org>
6647 * elmo.el: Changed meaning of `elmo-folder-commit'.
6648 * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
6650 2001-01-07 Yuuichi Teranishi <teranisi@gohome.org>
6652 * elmo.el (elmo-folder-append-buffer): New function.
6653 (Renamed from `elmo-append-msg')
6655 2000-12-18 Yuuichi Teranishi <teranisi@gohome.org>
6657 * elmo-mime.el: New file.
6659 2000-12-14 Yuuichi Teranishi <teranisi@gohome.org>
6661 * elmo-cache.el: Rewrite.
6663 2000-02-17 Kenichi OKADA <okada@opaopa.org>
6665 * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
6667 2000-12-08 Yuuichi Teranishi <teranisi@gohome.org>
6669 * elmo-vars.el (elmo): New group.
6670 (elmo-strict-diff-folder-regexp): New variable.
6672 * elmo-util.el (elmo-call-func): Abolish.
6673 (elmo-folder-get-type): Ditto.
6674 (elmo-*-get-spec): Ditto.
6675 (elmo-*-spec-*): Ditto.
6676 (elmo-imap4-identical-name-space-p): Ditto.
6677 (elmo-folder-identical-system-p): Ditto.
6678 (elmo-folder-direct-copy-alist): Ditto.
6679 (elmo-folder-direct-copy-p): Ditto.
6681 * elmo-pipe.el (elmo-pipe-folder): New luna class.
6682 (elmo-folder-initialize): Define.
6683 (elmo-folder-get-primitive-list): Ditto.
6685 * elmo-nntp.el (elmo-nntp-folder): New luna class.
6686 (elmo-folder-initialize): Define.
6687 Renamed `elmo-network-session-host-internal' to
6688 `elmo-network-session-server-internal'.
6690 * elmo-multi.el (elmo-multi-folder): New luna class.
6691 (elmo-folder-initialize): Define.
6692 (elmo-folder-get-primitive-list): Ditto.
6693 (elmo-folder-contains-type): Ditto.
6694 (elmo-message-use-cache-p): Ditto.
6696 * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
6697 Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
6699 * elmo-maildir.el (elmo-maildir-folder): New luna class.
6700 (elmo-folder-initialize): Define.
6702 * elmo-filter.el (elmo-filter-folder): New luna class.
6703 (elmo-folder-initialize): Define.
6704 (elmo-folder-get-primitive-list): Ditto.
6705 (elmo-folder-contains-type): Ditto.
6707 2000-12-06 Yuuichi Teranishi <teranisi@gohome.org>
6709 * elmo-imap4.el: Rewrite with luna.
6711 * mmimap.el: New file.
6713 * mmelmo.el, mmelmo-imap4.el: Removed.
6715 * elmo-net.el: Ditto.
6717 * elmo-pop3.el (elmo-pop3-folder): New luna class.
6718 (elmo-folder-initialize): Define.
6720 * elmo-archive.el (elmo-archive-folder): New luna class.
6721 (elmo-folder-initialize): Define.
6723 * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
6724 `elmo-folder-msgdb-path'.
6725 (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
6728 2000-12-06 Yuuichi Teranishi <teranisi@gohome.org>
6730 * elmo.el: New file.
6732 * elmo2.el: Renamed to elmo.el.
6735 2001-02-01 OKAZAKI Tetsurou <okazaki@be.to>
6737 * elmo-cache.el (elmo-cache-expire-by-size): Count
6738 a disk usage for a cache file entry in KB even when
6739 its kind is a directory.
6741 2001-02-01 Yuuichi Teranishi <teranisi@gohome.org>
6743 * elmo-version.el (elmo-version): Up to 2.5.7.
6745 2001-01-23 TAKAHASHI Kaoru <kaoru@kaisei.org>
6747 * elmo-version.el (elmo-version): Up to 2.5.6.
6749 2001-01-18 Yuuichi Teranishi <teranisi@gohome.org>
6751 * elmo-version.el (elmo-version): Up to 2.5.5.
6753 2000-12-22 Yuuichi Teranishi <teranisi@gohome.org>
6755 * elmo-imap4.el (elmo-network-authenticate-session):
6756 Fixed a logic for response checking.
6758 2000-12-15 Daiki Ueno <ueno@unixuser.org>
6760 * elmo-net.el: Add autoload settings for `starttls-negotiate',
6761 `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
6762 `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
6765 * elmo-imap4.el: Don't require `sasl'; remove autoload settings
6766 for `starttls-open-stream' and `starttls-negotiate'.
6768 * elmo-nntp.el: Remove autoload settings for
6769 `starttls-open-stream' and `starttls-negotiate'.
6771 * elmo-pop3.el: Don't require `sasl'; remove autoload settings
6772 for `starttls-open-stream' and `starttls-negotiate'; don't enclose
6773 `luna-define-class' with `eval-and-compile'.
6775 2000-12-01 Kenichi OKADA <okada@opaopa.org>
6777 * elmo-util.el (elmo-read-search-condition-internal):
6778 Require an element of table for searching field.
6780 2000-11-30 Yuuichi Teranishi <teranisi@gohome.org>
6782 * elmo-version.el (elmo-version): Up to 2.5.4.
6784 2000-11-26 Kenichi OKADA <okada@opaopa.org>
6786 * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
6788 2000-11-24 Kenichi OKADA <okada@opaopa.org>
6790 * elmo-nntp.el (elmo-network-initialize-session): omitted.
6792 2000-11-22 Kenichi OKADA <okada@opaopa.org>
6794 * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
6797 2000-11-28 Yuuichi Teranishi <teranisi@gohome.org>
6799 * elmo-imap4.el (elmo-imap4-delete-folder):
6800 Send "close" before "delete" (Use commented out line).
6801 (elmo-imap4-rename-folder): Ditto.
6803 * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
6804 folder string itself.
6805 (elmo-dop-list-deleted): New function.
6806 (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
6809 * elmo-util.el (elmo-string-rassoc-all): New function.
6811 2000-11-22 Yuuichi Teranishi <teranisi@gohome.org>
6813 * elmo-version.el (elmo-version): Up to 2.5.3.
6815 * elmo-net.el (elmo-network-get-session): Changed logic for
6816 checking process status.
6818 * elmo-pop3.el (elmo-network-close-session): Do nothing if session
6820 Changed logic for checking process status.
6822 2000-11-20 Yuuichi Teranishi <teranisi@gohome.org>
6824 * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
6826 (elmo-network-setup-session): Set UIDL hash size according to
6827 the length of list response.
6828 (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
6829 according to the length of list response;
6830 Return the length of list response.
6831 (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
6833 2000-11-21 Kenichi OKADA <okada@opaopa.org>
6835 * elmo-imap4.el (toplevel): Require 'ssl.
6836 Add autoload 'starttls.
6837 * elmo-pop3.el (toplevel): Ditto.
6838 * elmo-nntp.el (toplevel): Ditto.
6840 2000-11-20 Kenichi OKADA <okada@opaopa.org>
6842 * elmo-imap4.el (toplevel): defun at compile time.
6843 sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
6844 sasl-next-step, sasl-step-data, sasl-step-set-data.
6845 * elmo-pop3.el (toplevel): Ditto.
6847 2000-11-20 Kenichi OKADA <okada@opaopa.org>
6849 * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
6851 2000-11-20 Kenichi OKADA <okada@opaopa.org>
6853 * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
6855 (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
6856 and `elmo-pop-auth-apop'.
6858 2000-11-20 Kenichi OKADA <okada@opaopa.org>
6860 * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
6862 2000-11-20 Kenichi OKADA <okada@opaopa.org>
6864 * elmo-pop3.el (elmo-network-authenticate-session): Split
6865 encoded response value.
6867 2000-11-20 Kenichi OKADA <okada@opaopa.org>
6869 * elmo-pop3.el (elmo-network-authenticate-session): Abolish
6870 `elmo-pop3-force-login'.
6871 Redefine `sasl-mechanisms'.
6872 * elmo-vars.el (elmo-pop3-force-login): Ditto.
6874 2000-11-20 Kenichi OKADA <okada@opaopa.org>
6876 * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
6877 Delete `elmo-imap4-authenticator-alist'.
6878 (elmo-imap4-auth-cram-md5): Delete.
6879 (elmo-imap4-auth-digest-md5): Delete.
6881 2000-11-20 Kenichi OKADA <okada@opaopa.org>
6883 * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
6884 (elmo-pop3-auth-scram-md5): Ditto.
6885 (elmo-pop3-auth-cram-md5): Ditto.
6887 2000-11-19 Kenichi OKADA <okada@opaopa.org>
6889 * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
6890 Delete `elmo-pop3-authenticator-alist'.
6892 2000-11-19 Kenichi OKADA <okada@opaopa.org>
6894 * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
6896 * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
6898 2001-01-30 Yuuichi Teranishi <teranisi@gohome.org>
6900 * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
6902 2001-01-19 Yuuichi Teranishi <teranisi@gohome.org>
6904 * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
6905 Fixed problem when `elmo-pop3-use-uidl' is nil.
6906 (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
6908 2000-11-19 Kenichi OKADA <okada@opaopa.org>
6910 * elmo-version.el (elmo-version): Up to 2.5.2.
6912 2001-01-16 Yuuichi Teranishi <teranisi@gohome.org>
6914 * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
6916 (elmo-pop3-sort-msgdb-by-original-number): Ditto.
6917 (elmo-pop3-msgdb-create-as-numlist): Use it.
6919 * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
6920 (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
6922 * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
6923 (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
6925 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
6927 * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
6928 when elmo-mark-as-read is called with second argument nil.
6930 2001-01-12 Yuuichi Teranishi <teranisi@gohome.org>
6932 * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
6933 Moved to elmo-util.el.
6935 * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
6936 Moved from elmo-pipe.el
6938 * elmo-archive.el (elmo-archive-call-process): Enclose with
6941 * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
6942 "RFC822" (because RFC822.PEEK is obsolete).
6943 (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
6945 2001-01-10 Katsumi Yamaoka <yamaoka@jpl.org>
6947 * elmo-archive.el (elmo-archive-call-process): Don't check for
6948 the exit status when Nemacs is running.
6950 2001-01-09 Yuuichi Teranishi <teranisi@gohome.org>
6952 * elmo-net.el (elmo-network-session-password-key): Don't set default to
6955 * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
6956 (elmo-pop3-get-spec): Set default of auth to 'user.
6958 * elmo-imap4.el (elmo-imap4-session-check):
6959 Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
6960 (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
6961 (elmo-imap4-auth-login): New function; Revival.
6962 (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
6963 `elmo-imap4-auth-login'.
6965 2000-12-29 TAKAHASHI Kaoru <kaoru@kaisei.org>
6967 * elmo2.el (toplevel): Move `product-provide' declare.
6968 * mmelmo.el (toplevel): Ditto.
6970 2000-12-26 Yuuichi Teranishi <teranisi@gohome.org>
6972 * elmo-util.el (elmo-folder-get-store-type): Rewrite.
6974 2000-12-26 OKAZAKI Tetsurou <okazaki@be.to>
6976 * elmo-util.el (elmo-folder-get-store-type): New function.
6977 (elmo-folder-direct-copy-p): Use it.
6979 2000-12-26 Yuuichi Teranishi <teranisi@gohome.org>
6981 * elmo-imap4.el (elmo-imap4-msgdb-create): Set
6982 `elmo-imap4-fetch-callback-data' as a cons cell of `args'
6983 and result of `elmo-imap4-use-flag-p'.
6984 (elmo-imap4-fetch-callback-1): Set mark according to
6985 the result of `elmo-imap4-use-flag-p'.
6987 2000-12-22 Yuuichi Teranishi <teranisi@gohome.org>
6989 * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
6990 (elmo-generic-list-folder-unread): Ditto.
6991 (elmo-folder-get-info): Ditto.
6992 (elmo-folder-set-info-max-by-numdb): Ditto.
6993 (elmo-folder-get-info-max): Ditto.
6994 (elmo-folder-get-info-length): Ditto.
6995 (elmo-folder-get-info-unread): Ditto.
6996 (elmo-folder-info-make-hashtb): Ditto.
6998 * elmo2.el: Removed above functions.
7000 2000-11-21 Kenichi OKADA <okada@opaopa.org>
7002 * elmo-imap4.el (toplevel): Require 'ssl.
7003 Add autoload 'starttls.
7004 * elmo-pop3.el (toplevel): Ditto.
7005 * elmo-nntp.el (toplevel): Ditto.
7007 2000-11-20 Kenichi OKADA <okada@opaopa.org>
7009 * elmo-imap4.el (toplevel): defun at compile time.
7010 sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7011 sasl-next-step, sasl-step-data, sasl-step-set-data.
7012 * elmo-pop3.el (toplevel): Ditto.
7014 2000-11-20 Kenichi OKADA <okada@opaopa.org>
7016 * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7018 2000-11-20 Kenichi OKADA <okada@opaopa.org>
7020 * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7022 (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7023 and `elmo-pop-auth-apop'.
7025 2000-11-20 Kenichi OKADA <okada@opaopa.org>
7027 * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7029 2000-11-20 Kenichi OKADA <okada@opaopa.org>
7031 * elmo-pop3.el (elmo-network-authenticate-session): Split
7032 encoded response value.
7034 2000-11-20 Kenichi OKADA <okada@opaopa.org>
7036 * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7037 `elmo-pop3-force-login'.
7038 Redefine `sasl-mechanisms'.
7039 * elmo-vars.el (elmo-pop3-force-login): Ditto.
7041 2000-11-20 Kenichi OKADA <okada@opaopa.org>
7043 * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7044 Delete `elmo-imap4-authenticator-alist'.
7045 (elmo-imap4-auth-cram-md5): Delete.
7046 (elmo-imap4-auth-digest-md5): Delete.
7048 2000-11-20 Kenichi OKADA <okada@opaopa.org>
7050 * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7051 (elmo-pop3-auth-scram-md5): Ditto.
7052 (elmo-pop3-auth-cram-md5): Ditto.
7054 2000-11-19 Kenichi OKADA <okada@opaopa.org>
7056 * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7057 Delete `elmo-pop3-authenticator-alist'.
7059 2000-11-19 Kenichi OKADA <okada@opaopa.org>
7061 * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7063 * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7066 2000-12-18 Yuuichi Teranishi <teranisi@gohome.org>
7068 * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7070 2000-12-01 Yuuichi Teranishi <teranisi@gohome.org>
7072 * elmo-nntp.el (elmo-nntp-get-folders-info):
7073 Fixed problem when '\' character is contained in user-id.
7074 (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7077 2000-11-28 Yuuichi Teranishi <teranisi@gohome.org>
7079 * elmo-imap4.el (elmo-imap4-delete-folder):
7080 Send "close" before "delete" (Use commented out line).
7081 (elmo-imap4-rename-folder): Ditto.
7083 * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7084 folder string itself.
7085 (elmo-dop-list-deleted): New function.
7086 (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7089 * elmo-util.el (elmo-string-rassoc-all): New function.
7091 * elmo-version.el (elmo-version): Up to 2.5.1.
7093 2000-11-13 Yuuichi Teranishi <teranisi@gohome.org>
7095 * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7097 * elmo-internal.el (elmo-internal-search): Fix last change.
7099 2000-11-08 Yuuichi Teranishi <teranisi@gohome.org>
7101 * elmo-internal.el (elmo-internal-search): Rewrite.
7102 (Fixed problem which is pointed out by Akihiro MOTOKI
7103 <motoki@da.jp.nec.com>)
7105 * elmo-version.el (elmo-version): Up to 2.5.0.
7107 2000-11-06 Kenichi OKADA <okada@opaopa.org>
7109 * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7111 2000-11-06 Kenichi OKADA <okada@opaopa.org>
7113 * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7114 non-nil, make hierarchy.
7116 2000-11-05 OKAZAKI Tetsurou <okazaki@be.to>
7118 * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7119 `elmo-pop3-use-uidl' must be bound to nil.
7120 (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7122 2000-11-02 Yuuichi Teranishi <teranisi@gohome.org>
7124 * elmo-util.el (elmo-copy-file): Don't cause an error after
7125 `add-name-to-file' failed.
7127 * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7128 (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7130 2000-11-01 TAKAHASHI Kaoru <kaoru@kaisei.org>
7132 * elmo-version.el (elmo-version): Up to 2.3.93.
7134 2000-11-01 Yuuichi Teranishi <teranisi@gohome.org>
7136 * elmo-util.el (elmo-flatten): New function.
7138 2000-10-31 TAKAHASHI Kaoru <kaoru@kaisei.org>
7140 * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7142 * elmo-cache.el (toplevel): Ditto.
7143 * elmo-database.el (toplevel): Ditto.
7144 * elmo-date.el (toplevel): Ditto.
7145 * elmo-dop.el (toplevel): Ditto.
7146 * elmo-filter.el (toplevel): Ditto.
7147 * elmo-imap4.el (toplevel): Ditto.
7148 * elmo-internal.el (toplevel): Ditto.
7149 * elmo-localdir.el (toplevel): Ditto.
7150 * elmo-localnews.el (toplevel): Ditto.
7151 * elmo-maildir.el (toplevel): Ditto.
7152 * elmo-msgdb.el (toplevel): Ditto.
7153 * elmo-multi.el (toplevel): Ditto.
7154 * elmo-net.el (toplevel): Ditto.
7155 * elmo-nntp.el (toplevel): Ditto.
7156 * elmo-pipe.el (toplevel): Ditto.
7157 * elmo-pop3.el (toplevel): Ditto.
7158 * elmo-util.el (toplevel): Ditto.
7159 * elmo-vars.el (toplevel): Ditto.
7160 * elmo2.el (toplevel): Ditto.
7161 * mmelmo-imap4.el (toplevel): Ditto.
7162 * mmelmo.el (toplevel): Ditto.
7164 * elmo-version.el (elmo-version): Move to top.
7166 * elmo-cache.el (toplevel): Fixed multiple Author header format.
7167 * elmo-imap4.el (toplevel): Ditto.
7168 * elmo-localdir.el (toplevel): Ditto.
7169 * elmo-msgdb.el (toplevel): Ditto.
7170 * elmo-nntp.el (toplevel): Ditto.
7171 * elmo-pop3.el (toplevel): Ditto.
7172 * elmo-version.el (toplevel): Ditto.
7174 * elmo-localnews.el (toplevel): Added Keyword header.
7176 2000-10-31 Yuuichi Teranishi <teranisi@gohome.org>
7178 * elmo-version.el (product-version-as-string): Defined using
7182 * elmo-localdir.el (toplevel): Updated copyright notice.
7183 * elmo-version.el (toplevel): Ditto.
7184 * elmo-msgdb.el (toplevel): Ditto.
7185 * elmo-imap4.el (toplevel): Ditto.
7186 * elmo-nntp.el (toplevel): Ditto.
7187 * elmo-pop3.el (toplevel): Ditto.
7189 2000-10-30 Yuuichi Teranishi <teranisi@gohome.org>
7191 * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7194 * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7195 parameter value (It sometimes contains raw kanji).
7197 2000-10-28 Kenichi OKADA <okada@opaopa.org>
7199 * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7200 * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7202 2000-10-28 Kenichi OKADA <okada@opaopa.org>
7204 * elmo-imap4.el (elmo-network-initialize-session): Fix.
7206 2000-10-28 Kenichi OKADA <okada@opaopa.org>
7208 * elmo-imap4.el (elmo-network-initialize-session): Change error message.
7209 * elmo-pop3.el (elmo-network-initialize-session): Change error message.
7211 2000-10-27 Yuuichi Teranishi <teranisi@gohome.org>
7213 * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
7214 value if selecting folder succceeded.
7215 (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
7217 2000-10-26 TAKAHASHI Kaoru <kaoru@kaisei.org>
7219 * elmo-util.el (elmo-make-directory): Fixed permission lateral
7222 * elmo-util.el (elmo-string-matched-member): New function.
7224 2000-10-26 Yuuichi Teranishi <teranisi@gohome.org>
7226 * elmo-util.el (elmo-unintern): New macro.
7227 (elmo-number-set-member): Fixed docstring.
7229 * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7232 2000-10-25 OKAZAKI Tetsurou <okazaki@be.to>
7234 * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7235 of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7237 2000-10-24 Yuuichi Teranishi <teranisi@gohome.org>
7239 * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7242 Return non-nil if selecting folder succeeded.
7243 (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7245 2000-10-23 Yuuichi Teranishi <teranisi@gohome.org>
7247 * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7248 `file-name-completion' returns t.
7249 (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7250 (elmo-maildir-set-mark): Put `info' part to the files in the cur
7251 directory if it does not exist.
7252 (elmo-maildir-update-current): Use `while' instead of `mapcar'
7255 2000-10-20 Yuuichi Teranishi <teranisi@gohome.org>
7257 * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7258 enclosure (It's harmful in unplugged status).
7260 * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7262 * mmelmo-1.el: Removed.
7264 * mmelmo-2.el: Ditto.
7266 * mmelmo-imap4-1.el: Ditto.
7268 * mmelmo-imap4-2.el: Ditto.
7270 * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7272 * mmelmo.el: Merged mmelmo-2.el.
7274 * elmo-version.el (elmo-version): Up to 2.3.92.
7276 2000-10-19 TAKAHASHI Kaoru <kaoru@kaisei.org>
7278 * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7279 elmo-update-number): Remove last period in "...done." message.
7280 * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7282 * elmo-cache.el (elmo-cache-expire-by-size,
7283 elmo-cache-get-sorted-cache-file-list,
7284 elmo-cache-msgdb-create-as-numlist): Ditto.
7285 * elmo-dop.el (elmo-dop-save-pending-messages,
7286 (elmo-dop-flush-pending-append-operations): Ditto.
7287 * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7288 * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7289 * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7290 (elmo-localdir-pack-number): Ditto.
7291 * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7292 * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7293 * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7294 mime-write-entity-content): Ditto.
7295 * pldap.el (ldap-search-basic): Ditto.
7297 2000-10-18 Yuuichi Teranishi <teranisi@gohome.org>
7299 * elmo-version.el (elmo-version): Up to 2.3.91.
7301 * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7302 Only when filter is 'last'.
7304 * elmo-util.el (elmo-condition-atom-regexp): New constant.
7305 (elmo-condition-parse-search-value): Use it.
7306 (elmo-read-search-condition-internal): Quote value only when
7309 2000-10-18 Kenichi OKADA <okada@opaopa.org>
7311 * elmo2.el (elmo-generic-folder-diff): Fix.
7313 2000-10-17 Kenichi OKADA <okada@opaopa.org>
7315 * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7316 * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7317 * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7318 * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7319 * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
7320 * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
7322 2000-10-17 Akihiro MOTOKI <motoki@da.jp.nec.com>
7324 * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
7327 2000-10-17 Yuuichi Teranishi <teranisi@gohome.org>
7329 * elmo-version.el (elmo-version): Up to 2.3.90.
7331 * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
7332 (elmo-imap4-list-folder-important): Ditto.
7334 2000-10-16 Kenichi OKADA <okada@opaopa.org>
7336 * elmo-nntp.el (elmo-network-initialize-session): Fix.
7338 2000-10-16 Kenichi OKADA <okada@opaopa.org>
7340 * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
7342 2000-10-15 Kenichi OKADA <okada@opaopa.org>
7344 * elmo-nntp.el (elmo-network-initialize-session):
7345 Add starttls negotiation.
7347 2000-10-15 Masahiro MURATA <muse@ba2.so-net.ne.jp>
7349 * elmo-nntp.el (elmo-network-initialize-session): Read greeting
7351 (elmo-network-setup-session): Define.
7352 Call `elmo-nntp-send-mode-reader' when session opened.
7354 2000-10-13 Yuuichi Teranishi <teranisi@gohome.org>
7356 * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
7358 2000-10-13 OKAZAKI Tetsurou <okazaki@be.to>
7360 * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
7361 an invalid SPACE character ahead of `SEARCH' command. Move
7362 a valid SPACE character following `SEARCH' from conditional
7363 `format' arguments to control-strings.
7365 2000-10-13 Yuuichi Teranishi <teranisi@gohome.org>
7367 * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
7370 * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
7372 2000-10-12 Yuuichi Teranishi <teranisi@gohome.org>
7374 * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
7375 `w32-get-true-file-link-count' as t.
7377 * elmo-imap4.el (elmo-imap4-read): Abolished.
7378 (Renamed to `elmo-read' and moved to elmo-util.el)
7379 All other related portions are changed.
7381 * elmo-util.el (elmo-read): New function.
7382 (elmo-condition-parse-search-value): Use it.
7384 2000-10-11 Yuuichi Teranishi <teranisi@gohome.org>
7386 * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
7388 * elmo-nntp.el (elmo-nntp-session): Define.
7389 (elmo-nntp-setting): Abolished.
7390 All other related portions are changed.
7391 (elmo-nntp-get-server-command): Changed argument.
7392 (elmo-nntp-set-server-command): Ditto.
7393 (elmo-nntp-xover-p): Ditto.
7394 (elmo-nntp-set-xover): Ditto.
7395 (elmo-nntp-listgroup-p): Ditto.
7396 (elmo-nntp-set-listgroup): Ditto.
7397 (elmo-nntp-list-active-p): Ditto.
7398 (elmo-nntp-set-list-active): Ditto.
7399 (elmo-nntp-xhdr-p): Ditto.
7400 (elmo-nntp-set-xhdr): Ditto.
7401 (elmo-nntp-flush-connection): Abolished.
7402 (elmo-nntp-get-connection): Abolished.
7403 (elmo-nntp-get-session): New function.
7404 (elmo-network-initialize-session): Defined.
7405 (elmo-network-authenticate-session): Ditto.
7406 (elmo-nntp-send-mode-reader): Changed argument.
7407 (elmo-nntp-send-command): Changed argument.
7408 All other related portions are changed.
7409 (elmo-nntp-read-response): Ditto.
7410 (elmo-nntp-read-raw-response): Ditto.
7411 (elmo-nntp-read-contents): Ditto.
7412 (elmo-nntp-read-body): Ditto.
7413 (elmo-nntp-goto-folder): Abolished.
7414 (elmo-nntp-select-group): New function.
7415 All other related portions are changed.
7416 (This function substitutes `elmo-nntp-goto-folder')
7417 (elmo-nntp-msgdb-create-by-header): Rewrite.
7418 (elmo-nntp-get-overview): Eliminated.
7419 (elmo-nntp-get-message): Ditto.
7420 (elmo-nntp-open-connection) Abolished.
7421 (elmo-nntp-read-msg): Rewrite.
7422 (elmo-nntp-post): Ditto.
7423 (elmo-nntp-send-data): Abolished.
7424 (elmo-nntp-send-buffer): New function.
7425 (elmo-nntp-send-data-line): Define as inline function.
7426 (elmo-nntp-get-folders-info-prepare): Use session as key.
7427 (elmo-nntp-groups-read-response): Changed argument.
7428 (elmo-nntp-retrieve-headers): Ditto.
7429 (elmo-nntp-msgdb-create-message): Ditto.
7431 * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
7432 when searching by 'since' or 'before'.
7434 2000-10-11 TAKAHASHI Kaoru <kaoru@kaisei.org>
7436 * elmo-version.el (toplevel): Use product-version-as-string for set
7437 verstion-string, if defined.
7439 2000-10-11 OKAZAKI Tetsurou <okazaki@be.to>
7441 * elmo-util.el: Doc fixes.
7443 2000-10-10 TAKAHASHI Kaoru <kaoru@kaisei.org>
7445 * elmo-archive.el (toplevel): Use product-provide.
7446 * elmo-cache.el (toplevel): Ditto.
7447 * elmo-database.el (toplevel): Ditto.
7448 * elmo-date.el (toplevel): Ditto.
7449 * elmo-dop.el (toplevel): Ditto.
7450 * elmo-filter.el (toplevel): Ditto.
7451 * elmo-imap4.el (toplevel): Ditto.
7452 * elmo-internal.el (toplevel): Ditto.
7453 * elmo-localdir.el (toplevel): Ditto.
7454 * elmo-localnews.el (toplevel): Ditto.
7455 * elmo-maildir.el (toplevel): Ditto.
7456 * elmo-msgdb.el (toplevel): Ditto.
7457 * elmo-multi.el (toplevel): Ditto.
7458 * elmo-net.el (toplevel): Ditto.
7459 * elmo-nntp.el (toplevel): Ditto.
7460 * elmo-pipe.el (toplevel): Ditto.
7461 * elmo-pop3.el (toplevel): Ditto.
7462 * elmo-util.el (toplevel): Ditto.
7463 * elmo-vars.el (toplevel): Ditto.
7464 * elmo2.el (toplevel): Ditto.
7465 * mmelmo-1.el (toplevel): Ditto.
7466 * mmelmo-2.el (toplevel): Ditto.
7467 * mmelmo-imap4-1.el (toplevel): Ditto.
7468 * mmelmo-imap4-2.el (toplevel): Ditto.
7469 * mmelmo-imap4.el (toplevel): Ditto.
7470 * mmelmo.el (toplevel): Ditto.
7472 2000-10-10 Kenichi OKADA <okada@opaopa.org>
7474 * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
7475 (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
7477 2000-10-10 Yuuichi Teranishi <teranisi@gohome.org>
7479 * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
7481 (elmo-multi-split-number-alist): Ditto.
7483 2000-10-10 TAKAHASHI Kaoru <kaoru@kaisei.org>
7485 * elmo-version.el: New file. Use product.el.
7486 * elmo2.el: Add (require 'elmo-version).
7487 * elmo-vars.el (elmo-appname, elmo-version): Move to
7490 2000-10-09 Yuuichi Teranishi <teranisi@gohome.org>
7492 * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
7493 `elmo-msgdb-expand-path'.
7494 (elmo-msgdb-load): Ditto.
7495 Abolished 2nd argument. If 1st argument is not string, treat as spec.
7496 (elmo-generic-list-folder-unread): Rewrite.
7497 (elmo-generic-list-folder-important): Changed argument.
7498 (elmo-list-folder-unread): Ditto.
7499 (elmo-list-folder-important): Ditto.
7500 (elmo-folder-diff): Rewrite.
7501 (elmo-generic-folder-diff): New function.
7502 (elmo-multi-get-number-alist-list): Abolished
7503 (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
7504 (elmo-multi-folder-diff): Moved to elmo-multi.el
7505 (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
7507 * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
7508 `elmo-msgdb-expand-path'.
7509 (elmo-pop3-msgdb-create-as-numlist): Ditto.
7510 (elmo-pop3-read-msg): Ditto.
7511 (elmo-pop3-delete-msgs): Ditto.
7512 (elmo-pop3-folder-diff): New alias.
7514 * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
7515 `elmo-msgdb-expand-path'.
7516 (elmo-pipe-list-folder-unread): Changed arguments.
7517 (elmo-pipe-list-folder-important): Ditto.
7518 (elmo-pipe-folder-diff): New alias.
7520 * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
7521 `elmo-msgdb-expand-path'.
7522 (elmo-nntp-max-of-folder): Ditto.
7523 (elmo-nntp-msgdb-create): Ditto.
7524 (elmo-nntp-delete-msgs): Ditto.
7525 (elmo-nntp-folder-diff): New alias.
7527 * elmo-multi.el (elmo-multi-folder-diff): New function.
7528 (elmo-multi-split-mark-alist): Ditto.
7529 (elmo-multi-split-number-alist): Ditto.
7530 (elmo-multi-mark-alist-list): Abolished (Renamed to
7531 elmo-multi-split-mark-alist).
7532 (elmo-multi-list-folder-unread): Rewrite.
7533 (elmo-multi-list-folder-important): Ditto.
7534 (elmo-multi-list-folder): Set `spec' as 1st argument for
7535 `elmo-msgdb-expand-path'.
7536 (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
7537 instead of `elmo-multi-get-number-alist-list'.
7539 * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
7540 If 1st argument is not string, treat as spec.
7541 (elmo-list-folder-by-location): Set `spec' as 1st argument for
7542 `elmo-msgdb-expand-path'.
7543 (elmo-msgdb-flist-load): Ditto.
7544 (elmo-msgdb-flist-save): Ditto.
7545 (elmo-msgdb-delete-path): Ditto.
7546 (elmo-msgdb-rename-path): Ditto.
7548 * elmo-maildir.el (elmo-maildir-set-mark-msgs):
7549 Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7550 (elmo-maildir-delete-mark-msgs): Ditto.
7551 (elmo-maildir-msgdb-create): Ditto.
7552 (elmo-maildir-read-msg): Ditto.
7553 (elmo-maildir-delete-msgs): Ditto.
7554 (elmo-maildir-list-folder-subr): Ditto.
7555 (elmo-maildir-search): Ditto.
7556 (elmo-maildir-get-msg-filename): Ditto.
7557 (elmo-maildir-pack-number): Ditto.
7558 (elmo-maildir-folder-diff): New alias.
7560 * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
7562 * elmo-localdir.el (elmo-localdir-list-folder-subr):
7563 Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7564 (elmo-localdir-folder-diff): New alias.
7566 * elmo-internal.el (elmo-internal-list-folder-subr):
7567 Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7568 (elmo-internal-list-folder-by-location): Ditto.
7569 (elmo-internal-msgdb-create): Ditto.
7570 (elmo-internal-delete-msgs): Ditto.
7571 (elmo-internal-read-msg): Ditto.
7572 (elmo-internal-folder-diff): New alias.
7574 * elmo-imap4.el (elmo-imap4-folder-diff): New function.
7575 (elmo-imap4-list-folder): Set `spec' as 1st argument for
7576 `elmo-msgdb-expand-path'.
7577 (elmo-imap4-list-folder-unread): Changed arguments.
7578 (elmo-imap4-list-folder-important): Ditto.
7580 * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
7581 (elmo-filter-list-folder-important): Ditto.
7582 (elmo-filter-folder-diff): New function.
7584 * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
7586 * elmo-cache.el (elmo-cache-list-folder):
7587 Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7588 (elmo-cache-copy-msgs): Ditto.
7589 (elmo-cache-folder-diff): New alias.
7591 * elmo-archive.el (elmo-archive-list-folder-subr):
7592 Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7593 (elmo-archive-get-archive-name): Ditto.
7594 (elmo-archive-create-file): Ditto.
7595 (elmo-archive-append-msg): Ditto.
7596 (elmo-archive-copy-msgs): Ditto.
7597 (elmo-archive-copy-msgs-froms): Ditto.
7598 (elmo-archive-get-msg-filename): Ditto.
7599 (elmo-archive-folder-diff): New alias.
7601 2000-10-06 Daiki Ueno <ueno@unixuser.org>
7603 * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
7604 (elmo-pop3-stream-type-alist): New variable.
7605 (elmo-nntp-stream-type-alist): New variable.
7607 * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
7608 (elmo-kill-buffer): Ditto.
7609 (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
7610 (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
7611 (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
7612 (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
7613 (elmo-imap4-get-spec): Take into account
7614 `elmo-imap4-stream-type-alist'.
7616 2000-10-06 Kenichi OKADA <okada@opaopa.org>
7618 * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
7619 (elmo-nntp-list-folders-get-cache): Ditto.
7621 2000-10-05 Yuuichi Teranishi <teranisi@gohome.org>
7623 * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
7624 character before 'uid'.
7626 2000-10-04 Yuuichi Teranishi <teranisi@gohome.org>
7628 * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
7630 * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
7632 * elmo-util.el (elmo-number-set-member): New function.
7633 (elmo-number-set-append-list): Ditto.
7634 (elmo-number-set-append): Ditto.
7636 * elmo-msgdb.el (elmo-msgdb-killed-message-p):
7637 Use `elmo-number-set-member'.
7638 (elmo-living-messages): Ditto.
7639 (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
7640 (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
7642 * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
7643 (elmo-imap4-add-to-cont-list): Abolished.
7644 (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
7645 instead of elmo-imap4-add-to-cont-list.
7647 * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
7648 (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
7650 * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
7652 2000-10-03 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
7654 * elmo-util.el (elmo-condition-parse-search-value):
7657 2000-10-03 Yuuichi Teranishi <teranisi@gohome.org>
7659 * elmo-util.el (elmo-condition-find-key-internal): New function.
7660 (elmo-condition-find-key): Ditto.
7662 * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
7663 (elmo-msgdb-search-internal): Ditto.
7664 (elmo-msgdb-search): Ditto.
7666 2000-10-02 Yuuichi Teranishi <teranisi@gohome.org>
7668 * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
7669 (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
7671 * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
7672 (elmo-nntp-search-primitive): Fixed problem when condition is
7675 * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
7677 * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
7678 (elmo-nntp-xhdr-p): New macro.
7679 (elmo-nntp-set-xhdr): Ditto.
7680 (elmo-nntp-parse-xhdr-response): New function.
7681 (elmo-nntp-retrieve-field): Ditto.
7682 (elmo-nntp-search-primitive): Ditto.
7683 (elmo-nntp-search): Implemented.
7685 * elmo-date.el (elmo-date-make-sortable-string): New macro.
7687 * elmo-archive.el (elmo-archive-search): Set all number list to
7688 `elmo-archive-field-condition-match'
7690 * elmo-localdir.el (elmo-localdir-search): Likewise.
7692 * elmo-maildir.el (elmo-maildir-search): Likewise.
7694 2000-10-01 OKAZAKI Tetsurou <okazaki@be.to>
7696 * elmo-msgdb.el (elmo-living-messages): New function.
7697 * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
7698 * elmo-cache.el (elmo-cache-list-folder): Ditto.
7699 * elmo-dop.el (elmo-dop-list-folder): Ditto.
7700 * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
7701 * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
7702 * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
7703 * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
7704 * elmo-multi.el (elmo-multi-list-folder): Ditto.
7705 * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7706 * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7707 * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7709 2000-09-29 Yuuichi Teranishi <teranisi@gohome.org>
7711 * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
7713 * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
7715 * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
7717 * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
7718 arguments for `SEARCH' command.
7719 (elmo-imap4-parse-string): Set `POS' argument for char-after.
7720 All other related portions are changed.
7722 * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
7724 * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
7725 (elmo-list-folder-unread): Rewrite.
7726 (elmo-list-folder-important): Ditto.
7728 * elmo-util.el (elmo-filter-get-spec): Rewrite.
7729 (elmo-condition-parse-error): New inline function.
7730 (elmo-read-search-condition): New function.
7731 (elmo-read-search-condition-internal): Ditto.
7732 (elmo-parse-search-condition): Rewrite.
7733 (elmo-condition-parse): New function.
7734 (elmo-condition-parse-or-expr): Ditto.
7735 (elmo-condition-parse-and-expr): Ditto.
7736 (elmo-condition-parse-primitive): Ditto.
7737 (elmo-condition-parse-search-value): Ditto.
7738 (elmo-buffer-field-primitive-condition-match): Ditto.
7739 (elmo-buffer-field-condition-match): Rewrite.
7740 (elmo-file-field-condition-match): Ditto.
7742 * elmo-msgdb.el (elmo-msgdb-expand-path): Use
7743 `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
7745 * elmo-internal.el (elmo-internal-search): Set `number' and
7746 `number-list' argument of `elmo-file-field-condition-match'.
7748 * elmo-maildir.el (elmo-maildir-search): Ditto.
7750 * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
7751 `msgdb' as argument instead of `mark-alist'.
7752 (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
7755 * elmo-multi.el: Likewise.
7757 * elmo-pipe.el: Likewise.
7759 * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
7760 (elmo-imap4-search-internal): Rewrite.
7761 (elmo-imap4-search): Ditto.
7763 * elmo-filter.el (elmo-filter-list-folder): Rewrite.
7764 (elmo-filter-list-folder-unread): Ditto.
7765 (elmo-filter-list-folder-important): Ditto.
7766 (elmo-filter-search): Rewrite.
7768 * elmo-cache.el (elmo-cache-search-all): Set `number' and
7769 `number-list' argument of `elmo-file-field-condition-match'.
7770 (elmo-cache-search): Ditto.
7772 * elmo-localdir.el: Likewise.
7774 * elmo-archive.el (elmo-archive-field-condition-match): Added argument
7775 number-list and pass it to `elmo-buffer-field-condition-match'.
7776 (elmo-archive-field-condition-match): Pass `number-list' to
7777 `elmo-archive-field-condition-match'
7779 2000-09-25 Yuuichi Teranishi <teranisi@gohome.org>
7781 * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
7784 * elmo2.el (elmo-folder-diff-async-callback): New variable.
7785 (elmo-folder-diff-async-callback-data): Ditto.
7786 (elmo-folder-diff-async): New function.
7788 * elmo-net.el (elmo-network-session-name-prefix): New variable.
7789 (elmo-network-session-cache-key): Use it as a prefix of the session
7791 (elmo-network-open-session): Ditto.
7793 * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
7794 (elmo-imap4-status-callback-data): Ditto.
7795 (elmo-imap4-server-diff-async-callback): New variable.
7796 (elmo-imap4-server-diff-async-callback-data): Ditto.
7797 (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
7798 `elmo-imap4-status-callback-data'.
7799 (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
7800 `elmo-imap4-status-callback-data' as nil.
7801 (elmo-imap4-server-diff): Ditto.
7802 (elmo-imap4-server-diff-async-callback-1): New function.
7803 (elmo-imap4-server-diff-async): Ditto.
7804 (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
7806 2000-09-24 OKAZAKI Tetsurou <okazaki@be.to>
7808 * elmo-util.el (elmo-list-delete): Doc fix.
7809 (elmo-delete-lists): Abolish.
7810 * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
7811 instead of `elmo-delete-lists'.
7813 2000-09-19 Yuuichi Teranishi <teranisi@gohome.org>
7815 * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
7818 2000-09-18 OKAZAKI Tetsurou <okazaki@be.to>
7820 * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
7821 `elmo-imap4-literal-subr'.
7822 (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
7823 (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
7825 2000-09-15 Kenichi OKADA <okada@opaopa.org>
7827 * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7828 (elmo-archive-list-folder): Fix.
7829 (elmo-archive-max-of-folder): Fix.
7831 2000-09-15 Kenichi OKADA <okada@opaopa.org>
7833 * elmo-localdir.el (elmo-localdir-copy-msgs): Use
7834 `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
7835 (elmo-localdir-append-msg): Ditto.
7836 (elmo-localdir-list-folder): Fix for `nonsort'.
7837 (elmo-localdir-list-folder-subr): Fix for `killed'.
7838 * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7839 (elmo-maildir-list-folder-subr): Ditto.
7840 * elmo-archive.el (elmo-archive-list-folder): Ditto.
7841 (elmo-archive-list-folder-subr): Ditto.
7842 * elmo-internal.el (elmo-internal-list-folder): Ditto.
7843 (elmo-internal-list-folder-subr): Ditto.
7845 2000-09-13 Yuuichi Teranishi <teranisi@gohome.org>
7847 * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
7849 2000-09-12 Katsumi Yamaoka <yamaoka@jpl.org>
7851 * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
7853 2000-09-11 Yuuichi Teranishi <teranisi@gohome.org>
7855 * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
7856 Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7858 * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
7860 (elmo-imap4-read-part): Use "body.peek" to fetch part.
7861 Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7863 2000-09-06 Yuuichi Teranishi <teranisi@gohome.org>
7865 * mmelmo-imap4-2.el (mime-entity-children): Defined.
7867 * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
7868 Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
7869 before STORE command.
7871 2000-09-04 Yuuichi Teranishi <teranisi@gohome.org>
7873 * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
7875 * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
7876 (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
7878 (elmo-imap4-list-folders): Removed unused local variable.
7879 (elmo-network-initialize-session): Ditto.
7880 (elmo-imap4-delete-msg-by-id): Ditto.
7881 (elmo-imap4-parse-fetch): Ditto.
7882 (elmo-imap4-copy-msgs): Ditto.
7883 Use `dst-spec' instead of `dst-folder'.
7884 (elmo-network-authenticate-session): Check authenticate type `plain'.
7886 2000-09-01 Yuuichi Teranishi <teranisi@gohome.org>
7888 * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
7890 (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
7891 `elmo-imap4-response-value'.
7892 (elmo-imap4-parse-response): Return value of `EXPUNGE'.
7894 2000-08-31 Yuuichi Teranishi <teranisi@gohome.org>
7896 * elmo-imap4.el (elmo-imap4-send-command):
7897 Cause elmo-imap4-bye-error when current response is BYE.
7898 (elmo-imap4-arrival-filter): Changed greeting response value.
7900 * elmo2.el (elmo-imap4-bye-error): Define.
7902 * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
7903 (elmo-imap4-server-diff): Ditto.
7904 (elmo-imap4-response-bye-p): New macro.
7905 (elmo-imap4-response-error-text): Get text from BYE response.
7906 (elmo-imap4-read-response): Return if BYE response.
7907 (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
7908 (elmo-imap4-folder-exists-p): Ditto.
7909 (elmo-imap4-commit): Do nothing when different mailbox is selected.
7910 (elmo-imap4-parse-bye): New function.
7911 (elmo-imap4-parse-response): Remove needless let.
7912 Call `elmo-imap4-parse-bye'.
7914 2000-08-30 Yuuichi Teranishi <teranisi@gohome.org>
7916 * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
7917 the mailbox does not exist.
7918 (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
7920 2000-08-30 OKAZAKI Tetsurou <okazaki@be.to>
7922 * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
7924 2000-08-29 Yuuichi Teranishi <teranisi@gohome.org>
7926 * elmo-vars.el (elmo-search-mime-charset): Abolished.
7928 * elmo-pop3.el (elmo-pop3-local-variables): New variable.
7929 (elmo-network-initialize-session-buffer): Defined.
7931 * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
7933 (mmelmo-imap4-get-mime-entity): Rewrite.
7935 * elmo2.el (elmo-error): Capitalize error message.
7937 * elmo-net.el (elmo-network-initialize-session-buffer): New method.
7938 (elmo-network-session-buffer): New macro.
7939 (elmo-network-open-session): Use it.
7941 * elmo-imap4.el: Rewrite.
7943 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
7945 * elmo-nntp.el (Toplevel): Require 'elmo-net.
7947 2000-08-27 Daiki Ueno <ueno@unixuser.org>
7949 * elmo-imap4.el (elmo-imap4-make-address): Abolish.
7950 (elmo-imap4-msgdb-create): Don't request ENVELOPE.
7951 (elmo-imap4-create-msgdb-from-overview-string): Use
7952 `elmo-msgdb-create-overview-from-buffer'.
7954 2000-08-26 Daiki Ueno <ueno@unixuser.org>
7956 * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
7957 (elmo-imap4-default-hierarchy-delimiter): New variable.
7958 (elmo-imap4-list-folders): Use it.
7960 2000-08-23 Yuuichi Teranishi <teranisi@gohome.org>
7962 * elmo-net.el (elmo-network-open-session): Add user and
7963 stream-type for process-buffer name.
7965 * elmo-pop3.el (elmo-network-initialize-session): Call
7966 buffer-disable-undo.
7968 * elmo-imap4.el (elmo-network-initialize-session):
7969 Set current-buffer as an argument for `buffer-disable-undo'.
7971 * elmo-pop3.el (elmo-network-close-session): Don't use
7974 * elmo-vars.el (elmo-default-pop3-authenticate-type):
7975 Set default as 'user.
7977 * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
7979 * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
7980 and `elmo-imap4-flush-connection'.
7982 * elmo-util.el (toplevel): Removed workaround for timezone y2k.
7983 (elmo-pop3-get-spec): Assume auth as symbol.
7984 (elmo-open-network-stream): Moved to `elmo-net'.
7986 * elmo-pop3.el (toplevel): Require 'elmo-net.
7987 Define `sasl-cram-md5' to silence byte compilier.
7988 (elmo-pop3-connection-cache) Abolished.
7989 (elmo-pop3-authenticator-alist) New variable.
7990 (elmo-pop3-session): Define.
7991 (elmo-pop3-connection-get-process): Abolished.
7992 (elmo-pop3-connection-get-buffer): Ditto.
7993 (elmo-pop3-close-connection): Ditto.
7994 (elmo-pop3-flush-connection): Ditto.
7995 (elmo-pop3-get-connection): Ditto.
7996 (elmo-pop3-get-session): New function.
7997 (Replacement for `elmo-pop3-get-connection').
7998 All other related modules are changed.
7999 (elmo-network-close-session): Define.
8000 (elmo-pop3-send-command): Abolished argument `buffer'.
8001 All other related modules are changed.
8002 (elmo-pop3-read-response): Likewise.
8003 (elmo-pop3-open-connection): Abolished.
8004 (elmo-pop3-auth-user): New function.
8005 (elmo-pop3-auth-apop): Ditto.
8006 (elmo-pop3-auth-cram-md5): Ditto.
8007 (elmo-pop3-auth-scram-md5): Ditto.
8008 (elmo-pop3-auth-digest-md5): Ditto.
8009 (elmo-network-initialize-session): Define.
8010 (elmo-network-authenticate-session): Ditto.
8011 (elmo-network-setup-session): Ditto.
8013 * elmo-imap4.el (toplevel): Require 'elmo-net.
8014 (elmo-imap4-session): Define.
8015 (elmo-imap4-connection-cache): Abolished.
8016 (elmo-imap4-password-key): Ditto.
8017 (elmo-imap4-flush-connection): Ditto.
8018 (elmo-imap4-get-connection): Ditto.
8019 All other related modules are changed.
8020 (elmo-imap4-get-session): New function
8021 (Replacement for `elmo-imap4-get-connection').
8022 (elmo-imap4-read-response): Abolished argument `buffer'.
8023 All other related modules are changed.
8024 (elmo-imap4-send-command): Likewise.
8025 (elmo-imap4-select-folder): Abolished.
8026 All other related modules are changed.
8027 (elmo-imap4-select-mailbox): New function.
8028 (Replacement for `elmo-imap4-select-folder').
8029 (elmo-imap4-auth-login): Simplify.
8030 (Assume current buffer as process buffer)
8031 (elmo-imap4-auth-cram-md5): Ditto.
8032 (elmo-imap4-auth-digest-md5): Ditto.
8033 (elmo-imap4-login): Ditto.
8034 (elmo-imap4-open-connection): Abolished.
8035 (elmo-imap4-open-connection-1): Abolished.
8036 (elmo-network-initialize-sessoin): Define.
8037 (elmo-network-authenticate-session): Ditto.
8038 (elmo-network-setup-session): Ditto.
8040 * elmo-net.el: New module.
8042 2000-08-22 Daiki Ueno <ueno@unixuser.org>
8044 * elmo-util.el (elmo-define-error): New function.
8046 * elmo2.el (elmo-error): Define.
8047 (elmo-open-error): Define.
8048 (elmo-authenticate-error): Define.
8050 * elmo-imap4.el (elmo-imap4-error): Abolish.
8051 (elmo-imap4-error-type): Abolish.
8052 (elmo-imap4-error-process): Abolish.
8053 (elmo-imap4-error-message): Abolish
8054 (elmo-imap4-list-folders): Don't quote lambda.
8055 (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8056 (elmo-imap4-parse-namespace): Ditto.
8057 (elmo-imap4-open-connection): Rewrite.
8058 (elmo-imap4-open-connection-1): Simplified (authenticate only).
8059 (elmo-imap4-get-connection): Abolish local variable `result'.
8061 2000-08-21 Kaoru Takahashi <kaoru@kaisei.org>
8063 * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8064 wrong-type-argument error when auth is nil.
8066 2000-08-21 Yuuichi Teranishi <teranisi@gohome.org>
8068 * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8069 (elmo-default-nntp-stream-type): Ditto.
8070 (elmo-default-pop3-stream-type): Ditto.
8071 (elmo-network-stream-type-alist): Ditto.
8072 (elmo-default-imap4-ssl): Abolished.
8073 (elmo-default-nntp-ssl): Ditto.
8074 (elmo-default-pop3-ssl): Ditto.
8076 * elmo-util.el: (toplevel): Removed needless requires.
8077 (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8078 (elmo-open-network-stream): Open network stream according to
8079 the value of `elmo-network-stream-type-alist'.
8080 (elmo-get-network-stream-type): New function.
8081 (elmo-network-stream-type-spec-string): New macro.
8082 (elmo-network-stream-type-symbol): Ditto.
8083 (elmo-network-stream-type-function): Ditto.
8085 * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8086 network-stream-type. All other related portions are changed.
8087 (elmo-pop3-open-connection): Ditto.
8089 * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8090 network-stream-type. All other related portions are changed.
8092 * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8093 network-stream-type.All other related portions are changed.
8094 (elmo-imap4-error): New macro.
8095 (elmo-imap4-error-type): Ditto.
8096 (elmo-imap4-error-process): Ditto.
8097 (elmo-imap4-error-message): Ditto.
8098 (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8099 (elmo-imap4-auth-cram-md5): Ditto.
8100 (elmo-imap4-auth-digest-md5): Ditto.
8101 (elmo-imap4-login): Ditto.
8102 (elmo-imap4-open-connection): Remove password entry if authentication
8104 (elmo-imap4-user-at-host): Abolished.
8105 (elmo-imap4-password-key): New buffer local variable.
8106 (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8107 using protocol, port, auth and stream-type.
8109 * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8111 2000-08-13 Daiki Ueno <ueno@unixuser.org>
8113 * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8115 * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8117 * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8118 (elmo-imap4-authenticator-alist): New variable.
8119 (elmo-imap4-open-connection-1): Rename from
8120 elmo-imap4-open-connection.
8121 (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8122 only wraps elmo-imap4-open-connection-1.
8123 (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8125 (elmo-imap4-auth-login): New function.
8126 (elmo-imap4-auth-cram-md5): New function.
8127 (elmo-imap4-auth-digest-md5): New function.
8128 (elmo-imap4-login): New function.
8130 2000-08-12 Kenichi OKADA <okada@opaopa.org>
8132 * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8135 2000-08-12 Kenichi OKADA <okada@opaopa.org>
8137 * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8139 2000-08-08 Yuuichi Teranishi <teranisi@gohome.org>
8141 * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8143 2000-08-06 OKAZAKI Tetsurou <okazaki@be.to>
8145 * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8146 for server responses, quote `*' regardless of where it appears.
8148 2000-08-03 Kenichi OKADA <okada@opaopa.org>
8150 * elmo-maildir.el (elmo-maildir-commit): New alias.
8152 2000-08-03 Kenichi OKADA <okada@opaopa.org>
8154 * elmo-util.el (elmo-display-progress):
8155 Use `progress-feedback-with-label'.
8157 2000-08-02 OKAZAKI Tetsurou <okazaki@be.to>
8159 * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8160 (elmo-imap4-non-atom-char-regex): Ditto.
8161 (elmo-imap4-non-text-char-regex): Ditto.
8162 (elmo-imap4-literal-threshold): Ditto.
8163 (elmo-imap4-atom-p): New function.
8164 (elmo-imap4-quotable-p): Ditto.
8165 (elmo-imap4-nil): Ditto.
8166 (elmo-imap4-atom): Ditto.
8167 (elmo-imap4-quoted): Ditto.
8168 (elmo-imap4-literal-subr): Ditto.
8169 (elmo-imap4-literal): Ditto.
8170 (elmo-imap4-buffer-literal): Ditto.
8171 (elmo-imap4-string-subr): Ditto.
8172 (elmo-imap4-string): Ditto.
8173 (elmo-imap4-buffer-string): Ditto.
8174 (elmo-imap4-astring-subr): Ditto.
8175 (elmo-imap4-astring): Ditto.
8176 (elmo-imap4-buffer-astring): Ditto.
8177 (elmo-imap4-nstring): Ditto.
8178 (elmo-imap4-buffer-nstring): Ditto.
8179 (elmo-imap4-mailbox): New alias.
8180 (elmo-imap4-field-body): Ditto.
8181 (elmo-imap4-userid): Ditto.
8182 (elmo-imap4-password): Ditto.
8183 (elmo-imap4-format-quoted): New function.
8184 (elmo-imap4-send-command): Rewritten. Accept a list of command
8185 arguments and handle "atom", "quoted" and "literal" string here.
8186 (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8187 `elmo-imap4-send-command'.
8188 (elmo-imap4-folder-exists-p): Likewise.
8189 (elmo-imap4-create-folder): Likewise.
8190 (elmo-imap4-delete-folder): Likewise.
8191 (elmo-imap4-rename-folder): Likewise.
8192 (elmo-imap4-max-of-folder): Likewise.
8193 (elmo-imap4-check-validity): Likewise.
8194 (elmo-imap4-sync-validity): Likewise.
8195 (elmo-imap4-server-diff): Likewise.
8196 (elmo-imap4-select-folder): Likewise.
8197 (elmo-imap4-copy-msgs): Likewise.
8198 (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8199 (elmo-imap4-mark-set-on-msgs): Likewise.
8200 (elmo-imap4-read-part): Likewise.
8201 (elmo-imap4-read-msg): Likewise.
8202 (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8203 `elmo-imap4-password' for `elmo-imap4-send-command'.
8204 (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8205 (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8206 `elmo-imap4-buffer-literal'.
8207 (elmo-imap4-append-msg): Likewise.
8209 * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
8210 `delete' for removing dead connection from the connection cache.
8211 Move deletion of the process buffer after that.
8212 (elmo-imap4-list): Change `defsubst' to `defun'.
8213 (elmo-imap4-commit): Make error message verbose.
8214 (elmo-imap4-search): Ditto.
8215 (elmo-imap4-list): Ditto.
8216 (elmo-imap4-select-folder): Ditto.
8217 (elmo-imap4-copy-msgs): Ditto.
8218 (elmo-imap4-delete-msg-by-id): Ditto.
8219 (elmo-imap4-append-msg-by-id): Ditto.
8220 (elmo-imap4-append-msg): Ditto.
8222 2000-07-26 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
8224 * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
8225 when dired is used on XEmacs.
8227 2000-07-25 OKAZAKI Tetsurou <okazaki@be.to>
8229 * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8230 instead of `append'.
8231 (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8232 `elmo-plugged-p' directly.
8233 * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8234 of `elmo-plugged-p' directly.
8236 * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8237 Eliminate unused variable. Use `memq' for checking a process status.
8238 Use `cons' instead of `append' for updating the connection cache.
8239 * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8240 * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8242 2000-07-22 OKAZAKI Tetsurou <okazaki@be.to>
8244 * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8245 `elmo-imap4-read-point' exactly.
8247 * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8248 the local variable `folder' to `mailbox'.
8249 Rename the argument `fld' to `folder'.
8251 2000-07-20 Kenichi OKADA <okada@opaopa.org>
8253 * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8254 * elmo-imap4.el (elmo-imap4-commit): Ditto.
8256 2000-07-18 Yuuichi Teranishi <teranisi@gohome.org>
8258 * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8259 (elmo-pop3-number-uidl-hash): New buffer-local variable.
8260 (elmo-pop3-uidl-number-hash): Ditto.
8261 (elmo-pop3-size-hash): Ditto.
8262 (elmo-pop3-uidl-done): Ditto.
8263 (elmo-pop3-list-done): Ditto.
8264 (elmo-pop3-connection-get-process): New defmacro.
8265 (elmo-pop3-connection-get-buffer): Ditto.
8266 (elmo-pop3-close-connection): Delete buffer and process.
8267 (elmo-pop3-flush-connection): Don't delete buffer and process.
8268 (elmo-pop3-get-connection): Added optional argument `if-exists'.
8269 Setup UIDL and size hash.
8270 (elmo-pop3-send-command-no-erase): Deleted
8271 (elmo-pop3-send-command): Added optional argument `no-erase'.
8272 (elmo-pop3-parse-uidl-response): New function.
8273 (elmo-pop3-parse-list-response): Set size hash.
8274 (elmo-pop3-list-location): New function.
8275 (elmo-pop3-list-by-uidl-subr): Ditto.
8276 (elmo-pop3-list-by-list): Ditto.
8277 (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8278 Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8279 (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8280 Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8281 (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8283 (elmo-pop3-uidl-to-number): New function.
8284 (elmo-pop3-number-to-uidl): Ditto.
8285 (elmo-pop3-number-to-size): Ditto.
8286 (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8287 Set number by use of uidl.
8288 (elmo-pop3-msgdb-create-message): Likewise.
8289 Set size, loc-alist in msgdb.
8290 (elmo-pop3-read-msg): Set number by use of uidl.
8291 Added optional argument `msgdb'.
8292 (elmo-pop3-delete-msg): Ditto.
8293 (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8294 (elmo-pop3-commit): Close connection.
8296 * elmo-pipe.el (elmo-pipe-max-of-folder):
8297 Bind `elmo-pop3-use-uidl' as nil.
8298 (elmo-pipe-drain): Ditto.
8301 * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8302 (elmo-msgdb-overview-entity-set-size): New defsubst.
8304 2000-07-17 Yuuichi Teranishi <teranisi@gohome.org>
8306 * elmo-vars.el (elmo-use-killed-list): New variable
8307 (Renamed from `elmo-nntp-use-killed-list').
8308 (elmo-nntp-use-killed-list): Eliminated.
8310 * elmo-msgdb.el (elmo-msgdb-expand-path):
8311 Changed expanding msgdb path for elmo-multi.
8313 * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8314 elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8315 elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8316 elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8317 elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8318 mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
8319 (toplevel): Deleted time-stamp line.
8321 * elmo2.el (elmo-clear-killed ): Defined as function
8322 (Abolished defining as a backend function).
8323 All other related modules are changed.
8325 2000-07-14 Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
8327 * elmo-cache.el (elmo-cache-clear-killed): Fixed.
8329 2000-07-13 Yuuichi Teranishi <teranisi@gohome.org>
8331 * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
8333 2000-07-12 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
8335 * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
8337 2000-07-11 Yuuichi Teranishi <teranisi@gohome.org>
8339 * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
8340 asynchronous folder check.
8342 * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
8344 * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
8345 `elmo-nntp-use-killed-list'.
8346 (elmo-nntp-list-folder): Use killed list.
8347 (elmo-nntp-max-of-folder): Ditto.
8348 (elmo-nntp-msgdb-create): Set killed list.
8350 * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
8352 * elmo2.el (elmo-clear-killed): New backend function.
8353 All other related modules are changed.
8355 2000-07-07 OKAZAKI Tetsurou <okazaki@be.to>
8357 * elmo-util.el (elmo-imap4-spec-folder): Use
8358 `elmo-imap4-spec-mailbox'; Mark as obsolete.
8359 All callers changed.
8361 2000-06-22 Yuuichi Teranishi <teranisi@gohome.org>
8363 * mmelmo-2.el (initialize-instance):
8364 Use `mime-buffer-entity-buffer-internal' instead of
8365 `mime-entity-buffer'.
8367 * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
8368 (mime-entity-body): Implemented.
8369 (mime-goto-header-start-point): Deleted.
8370 (mime-goto-body-end-point): Ditto.
8371 (mime-entity-point-min): Ditto.
8372 (mime-entity-point-max): Ditto.
8373 (mime-entity-children): Ditto.
8374 (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
8375 instead of `mime-entity-buffer'.
8376 (mime-entity-header-buffer): Ditto.
8377 (mime-entity-body-buffer): Ditto.
8378 (mime-write-entity-content): Ditto.
8380 * pldap.el (ldap-static-if): New macro.
8381 (toplevel): Use it instead of `static-if'.
8383 2000-06-19 Yuuichi Teranishi <teranisi@gohome.org>
8385 * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
8386 included in `attrs' argument.
8388 2000-06-16 Yuuichi Teranishi <teranisi@gohome.org>
8390 * elmo-util.el (elmo-get-passwd): Use old backquote style.
8392 * pldap.el (ldap-ldif-safe-char-regexp): New constant.
8393 (ldap-ldif-safe-init-char-regexp): Ditto.
8394 (ldap-ldif-safe-string-regexp): Ditto.
8395 (ldap/ldif-safe-string-p): New macro.
8396 (ldap/ldif-insert-field): Ditto.
8397 (ldap-modify): Use it.
8399 (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
8400 (ldap-decode-attribute): Decode only when `attr' is consp.
8401 (ldap-delete): Bind `ret'.
8402 (toplevel): Require 'cl at compile time.
8403 Removed (require 'poe) and (require 'std11).
8404 (pldap-version): Eliminated.
8405 (ldap-search-basic): Removed auth and dn binding.
8406 (ldap-ldif-field-name-regexp): New constant.
8407 (ldap-ldif-field-head-regexp): Ditto.
8408 (ldap-ldif-next-field-head-regexp): Ditto.
8409 (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
8410 (ldap/field-end): New function.
8411 (ldap/field-body): Use it.
8412 (ldap/collect-field): Ditto.
8413 (ldap-search-basic): Use `ldap/field-body'.
8415 2000-06-15 Yuuichi Teranishi <teranisi@gohome.org>
8417 * pldap.el (ldap-default-attribute-encoder): New user option.
8418 (ldap/field-body): Decode base64 string.
8419 (ldap/collect-field): Ditto.
8420 (ldap-encode-attribute): New function.
8421 (ldap-add-entries): Use it.
8422 (ldap-modify-entries): Ditto.
8423 (ldap-search-entries): Enclosed decoding function with
8424 `with-temp-buffer' and set as unibyte.
8425 (ldap-search-basic): Set process buffer as unibyte.
8427 * elmo-util.el (elmo-folder-identical-system-p):
8428 Eliminated name space checking.
8430 * pldap.el: New module.
8431 toplevel: Changed condition to detect built-in ldap feature.
8432 (ldap-delete): Enclosed call-process with `with-temp-buffer'.
8433 (ldap-add): Added error handling.
8434 (ldap-modify): Ditto.
8435 (ldap-delete): Ditto.
8437 2000-06-03 OKAZAKI Tetsurou <okazaki@be.to>
8439 * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
8440 Initialize local variables with `let'. Inline a temporary
8441 variable for the progress percentage. Sort `setq' to reduce
8442 function call in the while-loop.
8444 * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
8445 into the conditional branch.
8447 2000-05-30 OKAZAKI Tetsurou <okazaki@be.to>
8449 * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
8450 Move a conditional out of the while-loop.
8452 2000-05-27 Masahiro MURATA <muse@ba2.so-net.ne.jp>
8454 * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
8455 elmo-msgdb-overview-get-entity-by-number.
8456 (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
8459 2000-05-26 OKAZAKI Tetsurou <okazaki@be.to>
8461 * elmo-localdir.el (elmo-localdir-pack-number): Renamed
8462 the local variable for a packed number self descriptively.
8464 2000-05-21 Masahiro MURATA <muse@ba2.so-net.ne.jp>
8466 * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
8467 * elmo-localdir.el (elmo-localdir-pack-number): Use
8468 `elmo-msgdb-overview-get-entity' instead of
8469 `elmo-msgdb-overview-get-entity-by-number'.
8470 * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
8471 (elmo-msgdb-search-overview-entity): Removed.
8472 (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
8473 by message-id or number.
8474 (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
8475 instead of `elmo-msgdb-overview-get-entity-by-number'.
8477 2000-05-20 Masahiro MURATA <muse@ba2.so-net.ne.jp>
8479 * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
8480 non-nil, use hash table for overview.
8481 (elmo-hash-maximum-size): New variable.
8482 * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
8483 (elmo-msgdb-make-overview-hashtb): New function.
8484 (elmo-msgdb-clear-overview-hashtb): New function.
8485 (elmo-clear-hash-val): New macro.
8486 All other related modules are changed.
8488 2000-05-18 Yuuichi Teranishi <teranisi@gohome.org>
8490 * elmo2.el (elmo-move-msgs): If there's other message with
8491 same message-id, don't use cache.
8493 2000-05-18 Nishimoto Masaki <nishimoto@gaju.org>
8495 * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
8496 number is already packed.
8498 2000-05-15 OKAZAKI Tetsurou <okazaki@be.to>
8500 * elmo-vars.el: Doc fixes. Trim trailing whitespace.
8502 2000-05-12 Masahiro MURATA <muse@ba2.so-net.ne.jp>
8504 * elmo-vars.el (elmo-display-progress-threshold): New variable.
8505 All other related modules are changed.
8507 2000-05-11 Yuuichi Teranishi <teranisi@gohome.org>
8509 * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
8510 of refiling failure on Maildir.
8512 2000-05-10 Masahiro MURATA <muse@ba2.so-net.ne.jp>
8514 * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
8515 decoded mime-charset with cache.
8516 (elmo-msgdb-overview-entity-get-from): Ditto.
8517 (elmo-msgdb-overview-entity-get-subject): Ditto.
8518 * elmo-vars.el (elmo-use-decoded-cache): New variable.
8520 2000-05-10 Kenichi OKADA <okada@opaopa.org>
8522 * elmo-utils.el (elmo-get-passwd): Set timeout of password.
8523 (elmo-remove-passwd): Fill password with 0 before erase.
8524 * elmo-vars.el (elmo-passwd-life-time): New variable.
8527 2000-05-10 Yuuichi Teranishi <teranisi@gohome.org>
8529 * elmo-cache.el (elmo-buffer-cache-add):
8530 Set message cache buffer as unibyte.
8532 2000-05-07 Masahiro MURATA <muse@ba2.so-net.ne.jp>
8534 * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
8537 2000-04-28 Yuuichi Teranishi <teranisi@gohome.org>
8539 * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
8540 when display is finished.
8541 (elmo-nntp-msgdb-create): Ditto.
8542 (elmo-nntp-groups-read-response): Ditto.
8543 (elmo-nntp-retrieve-headers): Ditto.
8544 (elmo-nntp-msgdb-create-message): Ditto.
8545 * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
8546 (elmo-pop3-msgdb-create-message): Ditto.
8548 2000-04-24 Yuuichi Teranishi <teranisi@elmo.dq.isl.ntt.co.jp>
8550 * elmo-maildir.el (elmo-maildir-msgdb-create):
8551 Use `elmo-msgdb-sort-by-date'.
8553 2000-04-20 Yuuichi Teranishi <teranisi@gohome.org>
8555 * elmo2.el (elmo-read-msg-no-cache):
8556 Eliminated arguments after `outbuf'.
8557 Don't use cache even if it exists.
8558 (elmo-read-msg): Don't pass arguments after `outbuf' to
8559 `elmo-read-msg-no-cache'.
8561 2000-04-15 Yuuichi Teranishi <teranisi@elmo.dq.isl.ntt.co.jp>
8563 * elmo-archive.el (elmo-archive-list-folders):
8564 Use `file-name-directory' if base folder does not exist.
8566 2000-04-14 Nishimoto Masaki <nishimoto@gaju.org>
8568 * elmo-archive.el (elmo-archive-list-folders): Don't use
8569 `file-name-directory'.
8571 2000-04-07 Yuuichi Teranishi <teranisi@gohome.org>
8573 * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
8574 If `force' is non-nil, try flushing all operation queues.
8576 2000-04-03 Yuuichi Teranishi <teranisi@gohome.org>
8578 * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
8581 2000-03-29 Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8583 * elmo-util.el (elmo-display-progress): Fixed.
8585 2000-03-27 Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8587 * elmo-util.el (elmo-display-progress): New function.
8588 All other related modules are changed.