powertools-lambda-typescript icon indicating copy to clipboard operation
powertools-lambda-typescript copied to clipboard

feat(maintenance): drop support for Node.js 16.x

Open dreamorosi opened this issue 1 year ago • 1 comments

Summary

Changes

Please provide a summary of what's being changed

This PR drops support for Node.js 16 for Powertools for AWS Lambda (TypeScript). As discussed in the linked issue, Node.js 16 has reached EOL and its corresponding AWS Lambda managed runtime has been marked as deprecated.

Below a list of changes included in the PR:

  • Remove Node.js 16 from test matrixes, test harnesses, scripts, etc.
  • Remove deprecated version from docs, comments, issue/PR templates
  • Removed deprecation banner from docs, replaced with v1 EOL
  • Raised baseline for Layer canary stack to Node.js 18
  • Removed nodejs16x from compatible runtimes in Lambda layer
  • Replaced usage of Object(someObject).hasOwnProperty(someProperty) with Object.hasOwn(someObject, someProperty) (MDN docs)
  • Removed polyfill for Error.cause (MDN docs) and
  • updated ParseError in Parser utility to use it, as well as every envelope
  • updated Logger log formatter to assume the option can exist
  • Removed conditional behavior around fetch in e2e tests since now it's present in all supported runtimes

Please add the issue number below, if no issue is present the PR might get blocked and not be reviewed

Issue number: closes #2223


By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Disclaimer: We value your time and bandwidth. As such, any pull requests created on non-triaged issues might not be successful.

dreamorosi avatar Jul 01 '24 10:07 dreamorosi

Integration tests on this branch are passing: https://github.com/aws-powertools/powertools-lambda-typescript/actions/runs/9757062917

dreamorosi avatar Jul 02 '24 08:07 dreamorosi