Posted On: Mar 2, 2020

Starting today, you can now use Node.js 12.x and Python 3.8 to develop functions in Lambda@Edge. Both these runtimes come in addition to the currently supported Node.js 10.x and Python 3.7.

Node.js 12.x, the current Long Term Support (LTS) version of Node.js, uses the new V8 7.4 engine and provides better performance than the previous LTS version 10.x. In addition, Node.js 12.x supports new features such as private classes and enhanced stack tracing. For more information about Node.js 12.x’s benefits and new features, read AWS’ Node.js 12.x blog post.

Python 3.8 is the newest major release of the Python language and contains new features such as assignment expressions, positional-only arguments, and typing improvements. For more information about Python 3.8’s benefits and new features, read AWS’ Python 3.8 blog post.

To get started with these new runtimes, upload your Node.js or Python code as an AWS Lambda function through the AWS CLI or Lambda console, and select either Node.js 12.x or Python 3.8. If you already have existing Node.js or Python functions in Lambda, you can switch to the new runtime by making any required code changes to ensure compatibility with the new runtime and editing the function configuration to set the runtime to Node.js 12.x or Python 3.8.

To learn more about Lambda@Edge, visit the product page. For more information on Lambda’s Node.js programming model, read AWS’ Node.js documentation. For more information on Lambda’s Python programming model, refer to AWS’ Python documentation.