this change ensures we will not trigger a timeout caused by a slow
stream pipeline if the stream has already ended. this subtly shifts the
meaning of the timeout from "the response has been fully consumed" to
"the socket behind the response has finished" which i feel maintains the
spirit of the timeout while also not needlessly throwing errors when
we're not using the socket any more.
this change ensures we will not trigger a timeout caused by a slow stream pipeline if the stream has already ended. this subtly shifts the meaning of the timeout from "the response has been fully consumed" to "the socket behind the response has finished" which i feel maintains the spirit of the timeout while also not needlessly throwing errors when we're not using the socket any more.
fixes npm/cli#3078