diff --git a/lib/remote.js b/lib/remote.js index 7e4ed24..52eeec9 100644 --- a/lib/remote.js +++ b/lib/remote.js @@ -1,5 +1,4 @@ const Minipass = require('minipass') -const MinipassPipeline = require('minipass-pipeline') const fetch = require('minipass-fetch') const promiseRetry = require('promise-retry') const ssri = require('ssri') @@ -51,7 +50,11 @@ const remoteFetch = (request, options) => { // we got a 200 response and the user has specified an expected // integrity value, so wrap the response in an ssri stream to verify it const integrityStream = ssri.integrityStream({ integrity: _opts.integrity }) - res = new fetch.Response(new MinipassPipeline(res.body, integrityStream), res) + + res.body.pipe(integrityStream) + res.body.on('error', err => integrityStream.emit('error', err)) + + res = new fetch.Response(integrityStream, res) } res.headers.set('x-fetch-attempts', attemptNum)