Hi axios maintainers,

I'm the maintainer of follow-redirects. According to npm numbers (https://www.npmjs.com/package/axios, https://www.npmjs.com/package/follow-redirects), more than half of follow-redirects usage goes via axios. That is also apparent from several [bug reports](https://github.com/follow-redirects/follow-redirects/issues?q=axios) I received (and which I'm very happy about).

So if there are issues such as https://github.com/axios/axios/pull/1993 or https://github.com/axios/axios/pull/2689, it's probably best to ping us about it at https://github.com/follow-redirects/follow-redirects/issues/new. I'm very happy to fix. Pinning to an old version of follow-redirects will just expose you to bugs.

Please let me know how I can help.

CC: @grumblerchester @emilyemorehouse @realityking @chinesedfan
lib/adapters/http.js
var responseBuffer = [];
        stream.on('data', function handleStreamData(chunk) {
          responseBuffer.push(chunk);
          
          if (config.maxContentLength > -1 && Buffer.concat(responseBuffer).length > config.maxContentLength) {
            stream.destroy();
            reject(createError('maxContentLength size of ' + config.maxContentLength + ' exceeded',
              config, null, lastRequest));
          }
        });
        stream.on('error', function handleStreamError(err) {
          if (req.aborted) return;
          reject(enhanceError(err, config, null, lastRequest));
        });
        stream.on('end', function handleStreamEnd() {
          var responseData = Buffer.concat(responseBuffer);
          if (config.responseType !== 'arraybuffer') {
            responseData = responseData.toString(config.responseEncoding);
          }
          response.data = responseData;
          settle(resolve, reject, response);
        });
      }
    });
    
    req.on('error', function handleRequestError(err) {
      if (req.aborted) return;
      reject(enhanceError(err, config, null, req));
    });