@aws-sdk/client-s3 (@aws-sdk/signature-v4-crt) 3.29.0 introduces aws-crt and deprecated dependencies · Issue #2750 · aws/aws-sdk-js-v3 (original) (raw)

Describe the bug

When updating to 3.29.0, @aws-sdk/client-s3 and @aws-sdk/s3-request-presigner now have @aws-sdk/signature-v4-crt as a dependency, which has aws-crt as a dependency, which is both very large (over 200MB) and has several deprecated dependencies. Notably: har-validator@5.1.5, uuid@3.4.0, and request@2.88.2. The total number of dependencies for @aws-sdk/client-s3 also more than triples from 85 to 273.

Your environment

SDK version number

@aws-sdk/client-s3@3.29.0
@aws-sdk/s3-request-presigner@3.29.0
@aws-sdk/signature-v4-crt@3.29.0

Is the issue in the browser/Node.js/ReactNative?

Node.js

Details of the browser/Node.js/ReactNative version

Node v14.17.6

Steps to reproduce

% npm i @aws-sdk/client-s3@3.29.0
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142

added 273 packages, and audited 274 packages in 9s

found 0 vulnerabilities

% du -sh node_modules
244M    node_modules

% npm why har-validator
har-validator@5.1.5
node_modules/har-validator
  har-validator@"~5.1.3" from request@2.88.2
  node_modules/request
    request@"^2.54.0" from cmake-js@6.1.0
    node_modules/cmake-js
      cmake-js@"6.1.0" from aws-crt@1.9.0
      node_modules/aws-crt
        aws-crt@"^1.9.0" from @aws-sdk/signature-v4-crt@3.29.0
        node_modules/@aws-sdk/signature-v4-crt
          @aws-sdk/signature-v4-crt@"3.29.0" from @aws-sdk/middleware-sdk-s3@3.29.0
          node_modules/@aws-sdk/middleware-sdk-s3
            @aws-sdk/middleware-sdk-s3@"3.29.0" from @aws-sdk/client-s3@3.29.0
            node_modules/@aws-sdk/client-s3
              @aws-sdk/client-s3@"^3.29.0" from the root project
% npm i @aws-sdk/client-s3@3.28.0

added 85 packages, and audited 86 packages in 4s

found 0 vulnerabilities

% du -sh node_modules
28M     node_modules

Observed behavior

Warnings about deprecated packages are printed when updating. Very large node_modules directory.

Expected behavior

No deprecated or overly large packages are installed when updating.