diff --git a/changelog/change_no_buffer_server_stdout.md b/changelog/change_no_buffer_server_stdout.md new file mode 100644 index 00000000000..f15392bb711 --- /dev/null +++ b/changelog/change_no_buffer_server_stdout.md @@ -0,0 +1 @@ +* [#10814](https://github.com/rubocop/rubocop/pull/10814): Avoid buffering stdout when running in server mode. ([@ccutrer][]) diff --git a/lib/rubocop/server/client_command/base.rb b/lib/rubocop/server/client_command/base.rb index 6c8f87dc010..e8f768f40fa 100644 --- a/lib/rubocop/server/client_command/base.rb +++ b/lib/rubocop/server/client_command/base.rb @@ -29,7 +29,7 @@ def send_request(command:, args: [], body: '') socket.puts [Cache.token_path.read, Dir.pwd, command, *args].shelljoin socket.write body socket.close_write - $stdout.write socket.read(4096) until socket.eof? + $stdout.write socket.readpartial(4096) until socket.eof? end end