Backported to use readable-stream instead of streams2