Issue #1177 has been updated by Akira Tanaka.

Status changed from Feedback to Rejected

I found server and client code in redmine.

You cannot check EOF until server close the socket or send some data.

Your server, test_tcp_server.rb, doesn't close the socket until the client closes the socket.
The server never send data.

So eof? need to block because the server may close the socket in future.
It is not a bug.
----------------------------------------
http://redmine.ruby-lang.org/issues/show/1177

----------------------------------------
http://redmine.ruby-lang.org