LocalStack 3.3 is here with a host of new features and enhancements. This release includes support for running ECS tasks on Kubernetes, improved performance for DynamoDB Streams and Kinesis, and a new experimental web server implementation for high-throughput scenarios.
We have also shipped for a new experimental web server implementation that has improved performance for high-throughput scenarios. You can activate it using GATEWAY_SERVER=twisted
.
You can get started with LocalStack 3.3 using the localstack
CLI:
localstack update docker-images
Community Release
The release features new enhancements and additions to support our community-edition users.
New Step Functions features & enhancements
We have shipped several new features & enhancements to our Step Functions provider, to support better parity with AWS. These include:
- Support for ECS Optimized Service.
- Support for StepFunctions Activities.
- Monitoring for state size quota limits and handling of
States.DataLimitExceeded
errors - Support for
MaxItem
andMaxItemPath
. - Validations for API actions (
InvalidArn
,StateMachineDoesNotExist
,ExecutionDoesNotExist
) - Improved Map states, resolving issues with
ItemSelector
andParameters
definitions in Iteration Components, and introducing distributed mode for legacy Iterator declarations. - Enhanced JsonPath extraction for accurate SecondsPath retrieval, now raising runtime errors on invalid inputs.
Performance improvements for DynamoDB & Kinesis streams
We have shipped several performance improvements for DynamoDB & Kinesis streams. Through this re-work, we have achieved nearly 15x more throughput for BatchWriteItem
API. You can refer to the table below for a more comprehensive benchmark:
DynamoDB Streams | 3.2 | 3.3 |
---|---|---|
PutItem throughput item/s | 123.14 | 233.97 |
TransactWriteItems (25) throughput item/s | 82.77 | 2746 |
BatchWriteItem (25) throughput item/s | 171.77 | 4574.19 |
Kinesis Streams | 3.2 | 3.3 |
---|---|---|
PutItem throughput item/s | 122.19 | 237.03 |
TransactWriteItems (25) throughput item/s | 85.54 | 3251.62 |
BatchWriteItem (25) throughput item/s | 171.51 | 5116.76 |
Other changes and enhancements
- Lambda now supports the new Dotnet8 runtime.
- Support for wildcards in CORS config (eg:
http://*.example.com
) is now available in the S3 service. - ARM-based Lambda functions now feature improved test coverage covering all AWS-supported Lambda runtimes.
Pro Release
The Pro release features a lot of new enhancements and additions to support our licensed users.
Kubernetes support for Elastic Container Service
ECS tasks can now be run when LocalStack is deployed on Kubernetes. To enable this feature you must be part of our Enterprise plan, and set ECS_TASK_EXECUTOR=kubernetes
. Tasks can be added to ELB load balancer target groups. This is part of our ongoing initiative to expand our support to Kubernetes.
New ECR endpoint strategy
The default endpoint returned by ECR has been changed to include the account id and region, for compatibility & better parity. This can be configured using the new configuration variable: ECR_ENDPOINT_STRATEGY
. You can set it to domain
for the new default, or off
for the old format.
Filters for Service Discovery
Filters for list operations and parameters for discover operations is now available in ECS service discovery. Filters can be used to narrow down the results of a list operation in Service Discovery. Filters are now supported for the following operations:
Know more about them on our docs.
Other changes and enhancements
- Multi-label support is now available for Neptune service.
- GraphQL APIs created locally by CloudFormation can now be created with tags.
- Support for routing of CloudFront aliases to the correct CloudFront distribution is now available.
- Support for using external SAML providers (e.g., Auth0) as an identity pool IdP in the Cognito service.
- LocalStack now stops and removes underlying EC2 containers while shutting down. You can opt to skip the removal by setting the
EC2_REMOVE_CONTAINERS
flag. - IoT Device Shadow Service now supports
DeleteThingShadow
API. - MWAA Airflow runners now come with Java Corretto pre-installed.
- Significant performance improvements when sending large
INSERT
orCOPY
queries for PostgreSQL database in the RDS service.
SaaS Release
The LocalStack Web Application features new components and improvements to manage your LocalStack subscriptions and local AWS resources via our intuitive user-interface.
New Resource Browser for CodeCommit
The LocalStack Web Application now provides a Resource Browser for managing CodeCommit repositories.
You can access the Resource Browser by opening the LocalStack Web Application in your browser, navigating to the Resource Browser section, and then clicking on CodeCommit under the Developer Tools section.
The Resource Browser allows you to perform the following actions:
- Create Repository: Create a new CodeCommit repository by specifying the repository name and description, along with optional tags and KMS key ID.
- View Repository: View the details of a CodeCommit repository, including the repository name, description, ARN, and clone URLs.
- Delete Repository: Delete a CodeCommit repository by selecting the repository from the list and clicking the Actions dropdown menu followed by Delete.
Deprecations
-
Deprecated six Lambda runtimes including :
python3.7
nodejs14.x
ruby2.7
provided
go1.x
java8
LocalStack prints a deprecation warning but you can still use deprecated runtime