From e559842188f541b884abff2ffad4d2d3e1b841a6 Mon Sep 17 00:00:00 2001 From: Robert Nagy Date: Sun, 5 Jan 2020 18:41:31 +0100 Subject: [PATCH] stream: make readable & writable computed This makes readable and writable automatically computed based on the stream state. Effectivly deprecating/discouraging manual management of this. Makes the properties more consistent and easier to reason about. Fixes: https://github.com/nodejs/node/issues/29377 PR-URL: https://github.com/nodejs/node/pull/31197 Refs: https://github.com/nodejs/node/issues/29377 Reviewed-By: Ruben Bridgewater Reviewed-By: Anna Henningsen Reviewed-By: Luigi Pinca Reviewed-By: Matteo Collina Reviewed-By: Rich Trott --- doc/api/stream.md | 6 ++- lib/_http_incoming.js | 2 - lib/_stream_duplex.js | 2 + lib/_stream_readable.js | 19 +++++-- lib/_stream_writable.js | 19 +++++-- test/parallel/test-http2-socket-proxy.js | 12 +++-- .../parallel/test-stream-readable-readable.js | 45 +++++++++++++++++ .../parallel/test-stream-writable-writable.js | 49 +++++++++++++++++++ 8 files changed, 139 insertions(+), 15 deletions(-) create mode 100644 test/parallel/test-stream-readable-readable.js create mode 100644 test/parallel/test-stream-writable-writable.js diff --git a/doc/api/stream.md b/doc/api/stream.md index 82cf99b4332000..cf3ecd461c13ed 100644 --- a/doc/api/stream.md +++ b/doc/api/stream.md @@ -495,7 +495,8 @@ added: v11.4.0 * {boolean} -Is `true` if it is safe to call [`writable.write()`][stream-write]. +Is `true` if it is safe to call [`writable.write()`][stream-write], which means +the stream has not been destroyed, errored or ended. ##### `writable.writableEnded`