[mew-dist 20571] IMAP message cache
Kazu Yamamoto ( 山本和彦 )
kazu at example.com
2002年 3月 8日 (金) 17:56:12 JST
浜名湖のほとりでワインを片手に議論された IMAP キャッシュ問題の結論です。
(0) %inbox で "x" を押すと、ローカルのキャッシュは消去され、IMAP サー
バ側ではリファイルされるが基本。(リファイル先は、%foo とする)
%foo で "s" + "update" する際は、必ず IMAP サーバのフォルダからメー
ルをコピーする。こうすれば、キャッシュの不整合は起きない。(ネット
ワークをメールは 2 回流れてしまうけど。)
(1) ネットワークにつながってないときに、%inbox で "x" を押すとどうなる
べきか?
以下の 3 つから選択できるようにする。
(a) ネットワークにつながってないと警告し、何もしない
(b) invisible する。処理するのは、ネットワークにつながっている状
態で次に "x" を押したとき
(c) (0) の基本を守らない。すなわち、ローカルの %inbox からはな
くなり、ローカルの %foo へ移動。IMAP サーバ側の処理は次に
ネットワークにつながって、IMAP サーバに接続したとき。
つまりこのモードだと、ローカルの %foo でメールが読める。
(2) (c) では、勝手に %foo をいじくっているので、不整合が起きる。(他の
MUA が、先に何かをリファイルしているかも。) どうする?
ローカルでリファイルした「キャッシュメッセージ」には、何か印を付け
ておく。"s" + "update" すると、それらを消して、差分を IMAP サーバ
からコピーしてくればよい。
--かず
Mew-dist メーリングリストの案内