[mew-dist 21409] 嗚呼 IMAP

Kazu Yamamoto ( 山本和彦 ) kazu at example.com
2002年 8月 13日 (火) 16:33:57 JST


IIJ 技術研究所で議論された IMAP メモです。

間違いの指摘、項目の追加、歓迎。

--かず

IMAP がダメダメな N つの理由

(1) メールを扱う単位がバイト数

	- UA は read() できると仮定している。入力ライブラリによって、
          行末が変換されることなんて考えてない
	- 文字コードには状態がないと仮定

(2) メールの MOVE がない (COPY + Delete[STORE + EXPUNGE] である)

	- COPY が失敗しても、間違って Delete しちゃうかも
	- ディスクの残りの容量が少ないと、COPY + Delete できない

(3) メールをリンクできない

	- 複数のメールボックスへ COPY すると実体が複数できてしまう

(4) UID がメールボックスに一意 (サーバで一意ではない)

	- メールのキャッシュを前提としているのに、オリジナルがメールボッ
          クスを移動すると、UID は無意味になりキャッシュが無効になる

(5) メールボックスの名前空間が曖昧

	- メールボックスの区切り文字が自由
	- メールボックス名の長さの規定がない
		* ある UA で長い名前のメールボックスを作ると、別の UA 
                  で扱えないかも
	- INBOX は、名前空間のどこに位置するのか曖昧

(6) いくつかのコマンドは、複数のメールを指定可能なのに、応答は OK か NG 
    しかない。

	- それぞれのメールに対して、成功なのか失敗なのかよく分らない

(7) サーバは、非同期に "*" で始まる応答を返せる

	- なんでも返すことが可能なので、ある応答を仮定した UA を作りた
          くなっちゃう。よって、このサーバにはこの UA を使えといった依
          存関係が生まれる。

(8) どうせ、非同期コマンドなんて使えないのに、使えるふりをしている


疑問:

* select しているメールボックスは rename できるの?



Mew-dist メーリングリストの案内