AWS Developer Tools Blog

Announcing the end of support for Node.js 14.x in the AWS SDK for JavaScript (v3)

This blog post is about AWS SDK for JavaScript (v3) announcing the end of support for Node.js 14.x, and not AWS Lambda, which is planning their Node.js 14.x deprecation (phase 1) on Nov 27, 2023.

Starting May 1, 2024, the AWS SDK for JavaScript (v3) will no longer actively support Node.js 14.x, which reached end-of-life on April 30, 2023.

We encourage you to upgrade to a Node.js Active Long Term Support (LTS) version, which as of October 2023 is Node.js 20.x.

Why are we doing it?

The JavaScript community is dropping support for Node.js 14.x since it has reached end-of-life. To make sure we are providing up-to-date and secure libraries, we are joining this migration. There will be no further bug fixes or security updates in Node.js 14.x. To ensure that your applications and services remain secure, please upgrade to an actively supported version of Node.js, such as 20.x.

What is going to happen?

If you are using the AWS SDK for JavaScript (v3) in Node.js 14.x or lower, the following message will be shown when you create an instance of any client:

// test.mjs

import { DynamoDB } from "@aws-sdk/client-dynamodb";

const client = new DynamoDB({});
$ node --version

v14.21.3

$ node test.mjs

NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will
no longer support Node.js 14.x on May 1, 2024.

To continue receiving updates to AWS services, bug fixes, and security
updates please upgrade to an active Node.js LTS version.

More information can be found at: https://a.co/dzr2AJd

On May 1, 2024, the GitHub and NPM releases for the AWS SDK for JavaScript (v3) will contain release notes stating the end of support for Node.js 14.x. The exact SDK version will be included in the same release notes. If you are using Node.js 14.x, installing the later versions of the SDK will cause an engine deprecation warning to appear, or if you have set engine-strict=true, an NPM installation error with code ENOTSUP will occur. For example:

$ node --version

v14.17.3

$ npm install @aws-sdk/client-s3

...

npm ERR! code ENOTSUPnpm ERR! notsup Unsupported engine for
@aws-sdk/client-s3@<version>: wanted: {"node":">=16.0.0"} 
(current: {"node":"14.17.3","npm":"6.14.18"})

The AWS SDK for JavaScript (v3) versions released without Node.js 14.x support on or after May 1, 2024 may continue to work on Node.js 14.x. This does not imply a continuation of support. You can continue to use older versions of the AWS SDK for JavaScript (v3) released before May 1, 2024 with Node.js 14.x.

Maintenance policies

Node.js

Please see the Node.js release schedule for a complete list of Node.js versions and their maintenance status.

AWS SDKs and Tools

For more information regarding maintenance and deprecation for AWS SDKs, please see the AWS SDKs and Tools Maintenance Policy. Our policy is to continue supporting SDK dependencies for at least 6 months after the community or vendor ends support for the dependency.

Feedback

Your feedback is greatly appreciated. You can engage with the AWS SDK for JavaScript team directly by opening a discussion or issue on our GitHub repository at aws/aws-sdk-js-v3.

About the author:

George Fu

George Fu

George is a software development engineer at AWS, working on the AWS SDK for JavaScript team.