LocalStack LogoLocalStack Icon

Announcing the LocalStack for AWS 4.6 Release

LocalStack 4.6 is now available! This release introduces AWS CodeArtifact support for package management, Kubernetes execution for Glue jobs, dramatically improved AppSync JavaScript resolver performance, API Gateway HTTP API SQS integrations, and enhancements across S3, CloudFront, CodeBuild, and EventBridge Pipes providers.

Announcing the LocalStack for AWS 4.6 Release

Introduction

LocalStack 4.6 is here, delivering another powerful set of enhancements that bring you even closer to production-grade AWS development on your local machine. This release introduces support for AWS CodeArtifact and adds Kubernetes execution support for AWS Glue jobs. Additionally, AppSync JavaScript resolver performance has been significantly improved by replacing the Docker-based implementation with a lightweight Node.js runtime.

The release includes expanded API Gateway HTTP API support for SQS first-class integrations, new S3 MetricsConfiguration APIs for CloudWatch request metrics, and enhanced EventBridge Pipes UpdatePipe functionality. Additional improvements span CloudFront custom distribution IDs, enhanced CodeBuild buildspec handling, improved S3 Object Lock compliance, and configurable Kubernetes wait timeouts for better cluster compatibility.

Get your free LocalStack account to access the latest features and enhancements in LocalStack for AWS 4.6!

How to upgrade?

To upgrade to LocalStack for AWS 4.6 using the LocalStack CLI, run:

Terminal window
localstack update all

If using Docker CLI or Docker Compose, update the Docker image:

Terminal window
docker pull localstack/localstack:4.6.0 # Community Edition
docker pull localstack/localstack-pro:4.6.0 # Pro Edition

Pin version 4.6.0 in your Docker configuration to ensure reproducibility.

What’s new in LocalStack for AWS 4.6?

New CodeArtifact Provider

LocalStack now includes support for AWS CodeArtifact, a fully managed artifact repository service that makes it easy to securely store, publish, and share software packages used in your development process. With CodeArtifact, you can create domains and repositories, configure upstream repositories, and manage package publishing workflows on your local machine for development and testing.

LocalStack supports mocking the main CodeArtifact API operations such as creating domains, repositories, external connections, and authorization tokens. The provider offers comprehensive support for NPM repositories, enabling you to publish and install packages locally.

Features include domain and repository management, upstream repository configuration, external connections to public registries like NPM, and comprehensive NPM integration with both automatic and manual configuration options.

Learn more about LocalStack’s CodeArtifact provider in the documentation.

Kubernetes Support for AWS Glue Jobs

LocalStack now includes Kubernetes support for AWS Glue job execution, enabling you to run them as pods in your Kubernetes cluster. This enhancement allows for developers to execute Glue jobs within Kubernetes clusters, eliminating the need for separate Docker-based job execution and providing consistent behavior across both local and cluster environments.

The new Kubernetes executor integrates seamlessly with LocalStack’s existing Glue infrastructure. To activate the Kubernetes executor, set the GLUE_JOB_EXECUTOR_PROVIDER environment variable to v2, and set the CONTAINER_RUNTIME environment variable to kubernetes.

Users can also use custom images for Glue jobs by configuring their custom image repository using the environment variable DOCKER_GLOBAL_IMAGE_PREFIX.

Learn more about LocalStack’s Glue provider in the documentation.

Support for API Gateway HTTP API SQS first-class integration

LocalStack’s API Gateway HTTP API provider now includes support for AWS_PROXY SQS subtypes (first-class integrations), enabling direct SQS operations through HTTP API endpoints. The supported operations include:

This provides native SQS integration capabilities with proper request parameter validation and variable substitution support. The implementation handles the unique aspects of SQS AWS_PROXY subtypes, including XML response formatting and specialized validation rules that differ from regular RequestParameters.

Learn more about LocalStack’s API Gateway provider in the documentation.

Support for S3 MetricsConfiguration APIs

LocalStack now includes support for AWS S3 MetricsConfiguration APIs, enabling management of CloudWatch request metrics configurations for S3 buckets. The supported operations include:

These APIs are currently mocked and only provide a way to configure request metrics monitoring for S3 buckets locally. You can have up to 1,000 configurations per bucket.

Learn more about LocalStack’s S3 provider in the documentation.

Enhanced AppSync JavaScript Resolver Performance

LocalStack has significantly improved the performance and capabilities of AWS AppSync JavaScript resolvers. The JavaScript resolver executor has been overhauled to replace the previous Docker container-based implementation with a lightweight Node.js runtime package, reducing execution time from over 1 second to single-digit milliseconds.

This enhancement also addresses critical performance bottlenecks, particularly for WebSocket connections that depend on the JavaScript executor. The new implementation eliminates the overhead of Docker container startup and package installation that could cause connection flakes for users.

Additionally, the update introduces support for console.log statements in resolver code, with output directed to LocalStack logs for improved debugging capabilities.

Learn more about LocalStack’s AppSync provider in the documentation.

Enhanced EventBridge Pipes UpdatePipe Support

LocalStack’s EventBridge Pipes provider now supports comprehensive pipe configuration updates through the UpdatePipe operation. You can now modify pipe targets, target parameters, and enrichment configurations in addition to the previously supported source parameters, enabling full pipeline reconfiguration without recreating pipes.

Learn more about LocalStack’s EventBridge Pipes provider in the documentation.

Enhanced Support for API Gateway WebSockets Route and Integration Management

LocalStack’s API Gateway provider now supports CRUD operations for WebSockets route and integration request parameters through enhanced CreateRoute and CreateIntegration validation logic. The provider also introduces support for the previously missing DeleteRouteRequestParameter operation, enabling complete lifecycle management of WebSocket route configurations and proper parameter handling in the invocation layer.

Learn more about LocalStack’s API Gateway provider in the documentation.

Support for CloudFront Custom Distribution ID

LocalStack’s CloudFront provider now supports custom distribution IDs through the _custom_id_ tag, enabling predictable distribution URLs.

You can set custom distribution IDs using the CreateDistributionWithTags API by including the _custom_id_ tag in your distribution configuration:

Terminal window
awslocal cloudfront create-distribution-with-tags \
--distribution-config file://distribution-config.json \
--tags '{"_custom_id_":"my-custom-subdomain"}'

This provides the same custom ID functionality available for other LocalStack resources like API Gateway & Lambda, making CloudFront distributions more manageable in local development.

Learn more about LocalStack’s CloudFront provider in the documentation.

New enhancements in the CodeBuild provider

LocalStack’s CodeBuild provider now includes the following enhancements:

  • Improved buildspec override handling with proper precedence order implementation, ensuring buildspecs provided via CreateProject and StartBuild operations now take precedence over buildspecs in the build source code, plus support for buildspec overrides from CodePipeline actions forwarded to CodeBuild StartBuild operations.
  • Complete CRUD support for source credentials through implementation of ImportSourceCredentials, ListSourceCredentials, and DeleteSourceCredentials operations, enabling CodeBuild to directly fetch source code from source version control systems without requiring CodePipeline and CodeConnections.
  • Custom Docker image support via the new CODEBUILD_ENABLE_CUSTOM_IMAGES environment variable, allowing users to specify arbitrary build images beyond the default Amazon Linux 2023 containers, with support for AWS CodeBuild’s official curated Docker images from their GitHub repository.
  • Enhanced environment variable management with support for Secrets Manager and SSM parameter retrieval alongside plaintext variables, proper variable precedence handling (StartBuild > CreateProject > buildspec), and correct parameter override behavior instead of complete replacement during build execution.

New enhancements in the S3 provider

LocalStack’s S3 provider now includes the following enhancements:

  • Enhanced DeleteObject precondition validation for regular buckets, adding proper error handling for IfMatch headers that are only supported in Directory Buckets (S3 Express One Zone), with informative logging to guide users.
  • Improved Object Lock compliance handling with proper validation for Retention Mode values and correct enforcement of COMPLIANCE mode restrictions when updating object retention via PutObjectRetention.
  • Fixed checksum handling in UploadPartCopy operations, resolving issues where checksums were not properly calculated and returned during multipart upload part copying, eliminating InternalError exceptions in ListParts.
  • Complete ObjectParts implementation in GetObjectAttributes, supporting both COMPOSITE and FULL_OBJECT checksum behaviors for multipart uploads, with proper part metadata storage and retrieval functionality.

New enhancements in the API Gateway REST API provider

LocalStack’s API Gateway REST API provider now includes the following enhancements:

  • Support for the UpdateMethodResponse API.
  • Improved VTL $input.path and $input.json handling, fixing edge cases for empty request bodies, non-existent JSONPath values, non-JSON content, and string body fallback behavior for better parity with AWS.

New enhancements in the AppSync provider

LocalStack’s AppSync provider now includes the following enhancements:

  • Adding support for attributeExists conditions in the RDS statement where clause logic.
  • Enhanced JavaScript resolver utility functions, including support for util.error and util.unauthorized methods, with improved util.appendError functionality.

New enhancements in the EFS provider

LocalStack’s EFS provider now supports the following new API operations:

New LocalStack header for AWS service responses

LocalStack now includes x-localstack header in all AWS service responses to help distinguish between LocalStack and AWS origins during development and testing. This feature is enabled by default but can be disabled by setting the LOCALSTACK_RESPONSE_HEADER_ENABLED environment variable to false.

Configurable Kubernetes Wait Timeouts

LocalStack now provides configurable timeout settings for Kubernetes resource readiness checks, addressing scenarios where larger container images or slower cluster environments require extended startup times.

The default 30-second timeout can now be customized through environment variables, such as:

  • K8S_WAIT_FOR_POD_READY_TIMEOUT: Sets the wait time for Kubernetes pod startup
  • K8S_WAIT_FOR_DEPLOYMENT_READY_TIMEOUT: Sets the wait time for Kubernetes deployment rollout
  • K8S_WAIT_FOR_SERVICE_READY_TIMEOUT: Sets the wait time for Kubernetes service readiness

Learn more about LocalStack’s support for Kubernetes deployments in the documentation.

Miscellaneous

  • Support for Airflow version 2.10.3 in the MWAA environment.
  • Timestream provider now supports tagging for databases and tables.
  • Improved RDS statement where clause logic to handle nested and/or operators.
  • KMS provider now supports the ReEncrypt operation.
  • EKS provider now supports the DescribeClusterVersions operation.
  • DocumentDB provider now supports MongoDB transactions by starting clusters in single-node replica mode to enhance parity with transactional operations on AWS.
  • CloudTrail provider now populates the imageId parameter in requestParameters for ec2.ModifyImageAttribute API calls.
  • Route53 provider now supports alias records targeting dualstack ELB domains (e.g., dualstack.<elb-id>.elb.amazonaws.com).
  • RDS provider now allows using postgres as a username when creating PostgreSQL databases, in parity with AWS.
  • SQS provider now automatically propagates X-Amzn-Trace-Id headers from incoming requests to the AWSTraceHeader message attribute, enabling X-Ray tracing integration for SQS messages.
  • Cognito provider now properly includes the nonce parameter from authorization requests as a claim in generated OIDC tokens.
  • LocalStack’s state export functionality now supports efficient transfer of large state files up to 1GB with improved connection stability.
  • Step Functions provider now supports mocking for the StartSyncExecution operation to enable consistent testing across both Standard and Express state machines.
  • ELBv2 provider now supports the ForwardConfig configuration block in listener rules, enabling compatibility with AWS Load Balancer Controller for Kubernetes by properly handling target group configurations.

Conclusion

LocalStack 4.6 represents a significant step forward in AWS service emulation, which combined with several enhancements and miscellaneous improvements, reinforces LocalStack’s position as the leading platform for local AWS development. The release is a pivotal step in our journey toward complete AWS service parity, delivering enterprise-grade capabilities that fundamentally transform how developers approach cloud-native development and remove the barriers between local development and production environments.

Upgrade to LocalStack 4.6 today to iterate faster, test more comprehensively, and deploy with greater confidence, bringing the full power of AWS to every developer’s local environment.


Harsh Mishra
Harsh Mishra
Engineer at LocalStack
Harsh Mishra is an Engineer at LocalStack and AWS Community Builder. Harsh has previously worked at HackerRank, Red Hat, and Quansight, and specialized in DevOps, Platform Engineering, and CI/CD pipelines.