finch-0.9.2 の body と bodyOption のバグ

finagle の finch を触っています。

現時点での最新版は0.9.2なのですが、0.9.2には RequestReaders.bodyOption: RequestReader[Option[String]] とこれを使っている RequestReaders.body: RequestReader[String] にバグがあります。0.9.3-SNAPSHOT では直っています (自分が直したわけではない)。

finch-test を使っているときに、正しいはずの json のパーズに失敗する (expected whitespace or EOF but got \u0000 的なエラー) ので追っていったところ見つけました。でも普通にサーバとして起動するとなぜか起こらないです。finagle か netty がよしなにやってくれるんでしょうか。

↓再現コード

gist.github.com

↓バグレポート

github.com

↓修正PR

github.com

↓バグっていたところ

finch/RequestReaders.scala at 0.9.2 · finagle/finch · GitHub

割りと致命的なバグっぽいのでPRを送ってやろうと思っていたのですが先を越されてすこし残念でした。

はじめは master ブランチでバグっている箇所を探していたので見つかるはずもなく、v0.9.2 のタグに切り替えたところすぐ見つかったというあれなかんじでした。