きしもとです

PTY についてですが、さらにいくつか気になったので、中間まとめを作ります。

・(るりま)1.9.2 で protect_signal が削除されたことに対応していない
・(るりま)1.9.2 (?) で SIGCHLD の捕捉をおこなわなくなったことに
 対応していない
・PTY.check を第二引数 raise=true で実行すると、子プロセスが実行中でも
 PTY::ChildExited が発生する(これは別件でバグ?)

「テストがたまに fail」の原因は、ktrace してみると read の時点で読めて
ない、ということ以外、皆目掴めないのですが、PTY.open と Kernel#spawn
を組み合わせて同じことをやった場合は問題が出ないようですし、Kernel#spawn
の新しい機能を使えば PTY#getpty(PTY#spawn)と同じことは PTY.open と
組み合わせて簡単にできるので、PTY#getpty は deprecated として、
2.0(か 1.9.5 ?)で削除してしまう、ことを提案します。