Key Changes
Core Architecture:
- Migrated to TypeScript with ESM-first environment
- Targets Node.js 22+ exclusively
- Implements two-dimensional multi-concurrency model for Lambda Managed Instance (Multiconcurrency) compatibility
- Replaced Make/shell scripts with npm-based build system
Handler & Context Updates:
- Removed callback-based handler support (promise-based only)
- Eliminated legacy
context.succeed/fail/donemethods - Removed legacy
callbackWaitsForEmptyEventLoopgetters/setters
Developer Experience:
- Native RIE testing support with single build command
- Introduced InvokeStore package for trace ID propagation via AsyncLocalStorage
Runtime Behavior:
- No BeforeExit event loop waiting (pure runtime loop)
- Worker thread count defaults to logical CPU count
- Configurable via AWS_LAMBDA_NODEJS_WORKER_COUNT
Read More:
- https://aws.amazon.com/blogs/compute/node-js-24-runtime-now-available-in-aws-lambda/
- https://aws.amazon.com/blogs/aws/introducing-aws-lambda-managed-instances-serverless-simplicity-with-ec2-flexibility/
Change Log
- Deleting integration tests by @fabisev in #143
- Merge pull request #143 from aws/fabisev/integration-test-deletion by @fabisev in #147
- Bump actions/checkout from 4 to 5 by @dependabot[bot] in #146
- Adding warning callback handlers and isAsync detection by @fabisev in #144
- Update copyright header by @fabisev in #148
- Fix security vulnerabilities in dependencies by @rarepolz in #157
- feat: Prepare for Node.js 24 + Lambda Managed Instances RIC Launch by @godcrampy in #161
- minor: Update contents of packaged artifact + run npm audit fix by @godcrampy in #169
New Contributors
Full Changelog: v3.3.0...v4.0.0