Announcing the LocalStack 3.8 release!
LocalStack 3.8 is now available! This release brings a new API Gateway provider, enhanced Lambda Event Source Mapping, and several new features across services, focusing on improved AWS parity, developer experience, and local cloud tooling.
LocalStack 3.8 is here! This release introduces a brand-new API Gateway provider for REST and HTTP APIs, enhanced Lambda Event Source Mapping, and the ability to access LocalStack developer endpoints via Swagger UI. In addition, you can now use the preview Elemental MediaConvert provider, manage SMS Channel operations in Pinpoint, and explore new features in the Step Functions and MWAA providers. Other notable updates include support for Resource Access Manager invitations and new functionality in the Lambda Resource Browser.
How to upgrade?
To upgrade to LocalStack 3.8 using the LocalStack CLI, run the following command to update both the LocalStack Docker image and CLI to the latest version:
$ localstack update all
If using LocalStack with Docker CLI or Docker Compose, update the Docker image by running:
$ docker pull localstack/localstack:3.8.0 # Community Edition
$ docker pull localstack/localstack-pro:3.8.0 # Pro Edition
Pin the LocalStack version in your docker run
command or Docker Compose file to 3.8.0
.
What’s new in LocalStack 3.8?
- New API Gateway Provider
- New Elemental MediaConvert provider (Preview)
- New Default Lambda Event Source Mapping Implementation
- Access LocalStack Developer Endpoints via Swagger UI
- New Features in the Step Functions Provider
- Support for Resource Access Manager (RAM) Invitation Mechanism (Starter, Teams & Enterprise)
- Support for SMS Channel Operations in Pinpoint (Starter, Teams & Enterprise)
- New Features in the MWAA Provider (Starter, Teams & Enterprise)
- New Features in the Lambda Resource Browser
- Miscellaneous
New API Gateway provider
LocalStack now supports a new API Gateway provider for both API Gateway v1 (REST API) and v2 (HTTP API). This implementation enhances parity with AWS across various functionalities:
REST APIs:
- Implements request and response data mappings comprehensively.
- Achieves better fidelity in VTL template rendering for Mapping Templates across
AWS
,HTTP
, andMOCK
integrations. - Supports Mapping Templates overrides.
- Provides improved handling of
AWS_PROXY
integration payloads. - Includes out-of-the-box support for most
AWS
integrations. - Supports Gateway Responses, currently limited to overriding the Status Code and returning appropriate exceptions.
HTTP APIs:
- Ensures better validation and parity for API operations.
- Properly applies request and response Parameter Mappings.
- Fully implements the
AWS_PROXY
Lambda integration andREQUEST
Lambda Authorizer to match AWS standards. - Improves routing and CORS handling, particularly automatic
OPTIONS
responses. - Supports automatic deployments of stages.
General Improvements for REST and HTTP APIs:
- Supports stages and deployments, enabling different stages (e.g.,
dev
,production
) to point to distinct deployments with specific settings and stage variables. - Enhances logging for various steps in LocalStack logs.
Note: WebSockets APIs are still using the default implementation.
To activate the new API Gateway provider, set PROVIDER_OVERRIDE_APIGATEWAY=next_gen
. To match the AWS standards, for both REST and HTTP APIs in LocalStack, it’s now required to create a deployment for your API to be reachable. This allows you to set up different stages, such as dev
and production
, each pointing to distinct deployments with their own settings and stage variables, all reflected within LocalStack.
Learn more in our documentation.
New Elemental MediaConvert provider (Starter, Teams & Enterprise)
LocalStack now supports Elemental MediaConvert, an AWS service that converts media files into various formats for delivery to different devices and platforms. Currently, the service mocks the submission of encoding jobs to either the default queue or a custom-created queue. While actual transcoding is not performed, job completion is emulated.
Job status progresses after a brief wait, and EventBridge events are emitted when the job state changes, allowing users to determine if a job has finished. This delay can be disabled by setting MEDIACONVERT_DISABLE_JOB_DURATION=1
, which causes processing jobs to complete almost instantly.
The Elemental MediaConvert provider is in preview. Learn more in our documentation.
New default Lambda Event Source Mapping implementation
LocalStack switched the default implementation for Lambda Event Source Mapping (ESM) offering improved reliability, performance, and AWS parity.
The improvements of the new default implementation over ESM v1 include:
- Improved reliability through internal retries and separation of concern such that single exceptions or timeouts don’t affect other event source mappings.
- Improved performance by enabling concurrent event source mappings rather than having a single thread handling everything.
- Improved AWS parity, such as filtering, SQS polling, and (partial) batch failure handling.
- Improved Kafka support for Amazon MSK and Self-Managed Kafka.
Create a GitHub issue or reach out to LocalStack support if you experience any challenges. You can temporarily switch back to the old implementation using the configuration LAMBDA_EVENT_SOURCE_MAPPING=v1
. The old implementation won’t be available in the next major release.
Learn more in our documentation.
Access LocalStack Developer endpoints via Swagger UI
LocalStack now provides an OpenAPI specification for various LocalStack packages, detailing all internal developer endpoints served by the LocalStack container. To explore these endpoints, navigate to http://localhost.localstack.cloud:4566/_localstack/swagger
in your browser. This will allow you to access the Swagger UI, where you can visualize and interact with all the APIs implemented in LocalStack.
New features in the Step Functions provider
LocalStack has introduced new features in the Step Functions provider:
- Added support for the ResultWriter field in distributed Map states.
- Enabled support for parameters as inputs in parallel states.
- Support was introduced for accessing the Context Object outside payload templates.
Support for Resource Access Manager (RAM) invitation mechanism (Starter, Teams & Enterprise)
LocalStack now offers CRUD support for the Resource Access Manager invitation mechanism. The following operations have been implemented:
LocalStack also now emulates AWS RAM, enabling the sharing of EC2 Subnets with other account IDs to provide basic resource-sharing functionality.
Support for SMS Channel operations in Pinpoint (Starter, Teams & Enterprise)
LocalStack now provides CRUD support for SMS Channels operations within the Pinpoint provider. The implemented operations include:
New features in the MWAA provider (Starter, Teams & Enterprise)
LocalStack has introduced new features in the MWAA provider:
- Integration to allows access to LocalStack resources directly from within Airflow environments.
- Support for Airflow version 2.9.2 in the MWAA environment.
New features in the Lambda Resource Browser
The LocalStack Web Application features a Resource Browser for managing Lambda resources. To access it, open the LocalStack Web Application, go to the Resources section, and select Lambda under the Compute category. The Lambda Resource Browser now includes new features:
- Invoke Lambda Function: Navigate to the Invoke tab, add a payload, and invoke the function to view the status code and Lambda log result.
- View Lambda Tags: Click on an individual Lambda function to display its associated tags. These tags are for functions deployed locally.
Miscellaneous
- Support for the
RevokeToken
operation in the Cognito provider is now available. - CRUD support for the AWS Lambda Recursive Loop Detection API is now available in LocalStack.
- Support for the API Gateway target for the new LocalStack-native EventBridge v2 implementation.
Conclusion
This release underscores our continued commitment to delivering a powerful and feature-rich local cloud environment that closely mirrors AWS functionality. With enhanced API support, new developer tools, and several new features across key services like Lambda, API Gateway, and Step Functions, LocalStack 3.8 is packed with updates to streamline your development workflows. Additionally, this is the last release before our major 4.0 version, which promises even more groundbreaking features and improvements. Upgrade to LocalStack 3.8 today to take full advantage of these updates and prepare for what’s to come!