The SimpleRequestHandler (in lib/impl.dart) doesn't close its stream after it receives a server response. Otherwise, the stream (and any listeners subscribed to it) will hang around indefinitely.
An example of the correct behavior is in ProxyClient (lib/runtime/proxy.dart). Notice that it calls c.close() both on success and error.
The SimpleRequestHandler (in lib/impl.dart) doesn't close its stream after it receives a server response. Otherwise, the stream (and any listeners subscribed to it) will hang around indefinitely.
An example of the correct behavior is in ProxyClient (lib/runtime/proxy.dart). Notice that it calls c.close() both on success and error.