Skip to content

LocalStack

v4.5.0 Feature

This release adds 4 notable features for engineering teams evaluating rollout.

Published 0y Cloud Management
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

aws cloud ci-cd developer-tools localstack python
+1 more
testing

Summary

AI summary

LocalStack now supports AWS CodeBuild, CodePipeline, and CodeDeploy; adds PostgreSQL 17 support with default version 17.5.

Full changelog

Summary

LocalStack 4.5 introduces support for the AWS Developer Tools suite (CodePipeline, CodeBuild, and CodeDeploy), enhanced AppSync WebSocket behavior, and advanced features for API Gateway REST APIs, including Canary Deployments and VTL improvements. This release also brings deeper parity in core services like RDS, EC2, EKS, EventBridge, CloudFormation, and more, continuing our mission to enable high-fidelity local development with production-like AWS behavior.

AWS Features

  • LocalStack now supports AWS CodeBuild, enabling you to build and test applications locally with a build process that mirrors real AWS environments. Refer to our documentation to learn more. (🌟 pro)
  • LocalStack now supports AWS CodePipeline, enabling you to emulate end-to-end CI/CD workflows locally using real AWS-style declarations and resources. Refer to our documentation to learn more. (🌟 pro)
  • LocalStack now supports AWS CodeDeploy, allowing you to mock deployment flows to targets like EC2, Lambda, and ECS locally. Refer to our documentation to learn more. (🌟 pro)
  • PostgreSQL 17 is now supported in LocalStack's RDS provider, with the default engine version updated to 17.5. (🌟 pro)
  • LocalStack's RDS provider now supports DB Proxy Endpoints, allowing you to create, describe, and delete DB proxy endpoints with our mock operations. (🌟 pro)

Enhancements

  • AppSync’s WebSocket behavior has been enhanced to better align with AWS. This includes: (🌟 pro)
    • Full support for AWS-style payload shapes
    • Improved lifecycle handling of GraphQL subscriptions
  • LocalStack’s API Gateway provider now includes the following enhancements for REST APIs:
    • Emulation of Canary Deployments, allowing staged traffic shifting strategies for safer releases and A/B testing.
    • Support for Response Overrides from Request Templates, enabling more flexible response handling.
    • Improved VTL (Velocity Template Language) support, including bracketed expressions and variable assignments in #set operations, increasing compatibility with complex mapping templates.
  • LocalStack’s RDS provider now includes the following enhancements: (🌟 pro)
    • Support for the ManageMasterPassword API, enabling automated credential management and secure DB credential flows.
    • Engine Parameter Introspection using DescribeEngineDefaultParameters and DescribeEngineDefaultClusterParameters, allowing you to examine default settings for supported RDS engines.
    • Introduction of RDS_PG_MAX_CONNECTIONS environment variable to control the maximum number of connections for PostgreSQL instances.
  • LocalStack’s EC2 provider now includes the following enhancements:
    • Support for the GetSecurityGroupsForVpc API, allowing you to retrieve security groups associated with a specific VPC.
    • Improved filtering behavior in EC2's DescribeAvailabilityZones, aligning more closely with AWS behavior.
  • Partial support for the UpdatePipe API is now available in EventBridge Pipes. Currently, only source parameters of an existing pipe can be updated. (🌟 pro)
  • DynamoDB Streams now properly redirects requests for global table replicas to the original region, ensuring consistent stream behavior across all replicas.
  • EKS provider now integrates with autoscaling and security groups, allowing you to emulate Kubernetes clusters with more realistic networking and scaling behavior. (🌟 pro)
  • CloudFormation resource AWS::Lambda::Version now supports the ProvisionedConcurrencyConfig property to enable emulation of cold start mitigation strategies.
  • Enhanced Lambda GetFunction API parity by returning the reserved_concurrent_executions parameter in responses, allowing you to inspect and manage reserved concurrency settings for Lambda functions.
  • Support for the ListRuleNamesByTarget API in EventBridge, allowing you to inspect which rules are targeting a given resource.
  • Support for pagination and filtering parameters when listing S3 buckets, improving performance and aligning with AWS behavior in larger S3 environments.
  • Support for DeleteDistribution API in CloudFront Lambda@Edge to achieve better parity with AWS. (🌟 pro)
  • Support for DescribeCapacityReservation API in Elastic Load Balancing, allowing you to inspect capacity reservations for load balancers. (🌟 pro)
  • Support for selecting the Scala-based Kinesis mock engine via the KINESIS_MOCK_PROVIDER_ENGINE environment variable (node or scala) for improved performance with large or high-throughput requests.

LocalStack Features

  • LocalStack Replicator now supports cross-account VPC replication scenarios using AWS Resource Access Manager (RAM), enabling more realistic testing of multi-account network setups. (🌟 Ultimate)

What's Changed

Exciting New Features 🎉

  • CloudFormation v2 Engine: Batch of Parity Improvements by @MEPalma in https://github.com/localstack/localstack/pull/12589
  • [Kinesis] add Scala kinesis-mock build behind feature flag by @gregfurman in https://github.com/localstack/localstack/pull/12559
  • Apigw/add support for response override in request by @cloutierMat in https://github.com/localstack/localstack/pull/12628
  • CloudFormation V2 Engine: Support for Pseudo Parameter References by @MEPalma in https://github.com/localstack/localstack/pull/12595
  • Feature: implement list rule names by target by @etiago in https://github.com/localstack/localstack/pull/12632
  • Add EC2 support for GetSecurityGroupsForVpc API operation (#12602) by @iamramtin in https://github.com/localstack/localstack/pull/12615
  • ffmpeg: Update build source to use BtbN GitHub Releases by @sannya-singal in https://github.com/localstack/localstack/pull/12634
  • CloudFormation V2 Engine: Support for DependsOn Blocks by @MEPalma in https://github.com/localstack/localstack/pull/12644
  • Bump moto-ext to 5.1.4.post2 by @viren-nadkarni in https://github.com/localstack/localstack/pull/12652
  • Record validated tests duration by @tiurin in https://github.com/localstack/localstack/pull/12638
  • Introduce LOG_LEVEL_OVERRIDES config var by @simonrw in https://github.com/localstack/localstack/pull/10808
  • fix(esm/kinesis): Always store NextShardIterator from GetRecords by @gregfurman in https://github.com/localstack/localstack/pull/12677
  • Bump moto-ext to 5.1.5.post1 by @viren-nadkarni in https://github.com/localstack/localstack/pull/12684
  • ESM/Pipes stream pollers: add shards to init params by @tiurin in https://github.com/localstack/localstack/pull/12659
  • Add stack option for CLI start command by @gtsiolis in https://github.com/localstack/localstack/pull/12675
  • CloudFormation V2 Engine: Support for Fn::Sub by @MEPalma in https://github.com/localstack/localstack/pull/12650
  • CloudFormation v2 Engine: V1 Test Porting and Annotations and Batch of Parity Improvements by @MEPalma in https://github.com/localstack/localstack/pull/12660
  • CloudFormation v2 Engine: Base Support for Fn::Transform by @MEPalma in https://github.com/localstack/localstack/pull/12662
  • CloudFormation v2 Engine: Base Support for AWS::NoValue and Migration to Nothing Types by @MEPalma in https://github.com/localstack/localstack/pull/12668
  • CloudFormation v2 Engine: Support for Fn::Select by @MEPalma in https://github.com/localstack/localstack/pull/12679
  • APIGW: add Canary Deployment logic in invocation layer by @bentsku in https://github.com/localstack/localstack/pull/12695
  • refactor(counter analytics): enforce (namespace,name) pair uniqueness [DAT-145] by @vittoriopolverino in https://github.com/localstack/localstack/pull/12687
  • CloudFormation v2 Engine: Base Support for Fn::Split by @MEPalma in https://github.com/localstack/localstack/pull/12698
  • CloudFormation v2 Engine: Base Support for Fn::GetAZs by @MEPalma in https://github.com/localstack/localstack/pull/12699
  • CloudFormation v2 Engine: Base Support for Fn::Base64 by @MEPalma in https://github.com/localstack/localstack/pull/12700

Other Changes

  • Add CloudFormation Lambda Version Provisioned Concurrency by @joe4dev in https://github.com/localstack/localstack/pull/12594
  • CFn v2: Skip media type assertion by @simonrw in https://github.com/localstack/localstack/pull/12597
  • Update README.md with 4.4 release by @tiurin in https://github.com/localstack/localstack/pull/12596
  • ASF: Ignore optional-ness when comparing argument types by @bblommers in https://github.com/localstack/localstack/pull/12605
  • CFn v2: better handle deploy errors by @simonrw in https://github.com/localstack/localstack/pull/12601
  • Improve security group fixture for EC2 by @giograno in https://github.com/localstack/localstack/pull/12607
  • fix put-metric-alarm test failure rate by @pinzon in https://github.com/localstack/localstack/pull/12598
  • ASF: Mark optional params as such (X | None) by @bblommers in https://github.com/localstack/localstack/pull/12614
  • Added pagination and filtering for s3 list buckets operation by @bryansan-local in https://github.com/localstack/localstack/pull/12609
  • Add Github Action job to publish test results to coveralls and uploading test results to artifacts by @k-a-il in https://github.com/localstack/localstack/pull/12608
  • DDB Global Tables: add failing test to expose the missing stream on replicas by @giograno in https://github.com/localstack/localstack/pull/12622
  • S3: fix IfMatch/IfNoneMatch in pre-signed URLs by @bentsku in https://github.com/localstack/localstack/pull/12624
  • Add reporting to Tinybird for new GitHub Actions pipelines by @silv-io in https://github.com/localstack/localstack/pull/12610
  • Restrict tinybird reporting to master branch only by @silv-io in https://github.com/localstack/localstack/pull/12627
  • Disable/fix docker tests failing after migration to GH Actions by @k-a-il in https://github.com/localstack/localstack/pull/12625
  • GithubActions: skip tinybird, docker push and docker login in forks by @k-a-il in https://github.com/localstack/localstack/pull/12639
  • Core: Add type hints to aws/core.py by @bblommers in https://github.com/localstack/localstack/pull/12617
  • Add Workflow Summaries by @silv-io in https://github.com/localstack/localstack/pull/12619
  • Fix names of steps for workflow summary publishing by @silv-io in https://github.com/localstack/localstack/pull/12646
  • Fix acceptance test workflow name for Tinybird workflow push by @silv-io in https://github.com/localstack/localstack/pull/12647
  • Added retries to the container state check in TestDocker by @k-a-il in https://github.com/localstack/localstack/pull/12640
  • Activate new GHA pipeline on PRs by @silv-io in https://github.com/localstack/localstack/pull/12648
  • Include reserved_concurrent_executions in get_function response by @k-a-il in https://github.com/localstack/localstack/pull/12654
  • APIGW: add SQS X-Amz-JSON test by @bentsku in https://github.com/localstack/localstack/pull/12649
  • DDB Global table: add logic for streams by @giograno in https://github.com/localstack/localstack/pull/12641
  • EC2: fix describe-availability-zones filtering by @anisaoshafi in https://github.com/localstack/localstack/pull/12661
  • Fix MA/MR pipeline for EC2 tests by @anisaoshafi in https://github.com/localstack/localstack/pull/12672
  • fix CloudFormation SNS Subscribe with Region parameter by @bentsku in https://github.com/localstack/localstack/pull/12676
  • test(esm/sqs): Skip resource intensive flaky SQS message override test by @gregfurman in https://github.com/localstack/localstack/pull/12681
  • GH Actions: fix order of path filters for push and pull-request events by @k-a-il in https://github.com/localstack/localstack/pull/12686
  • GithubActions: update CFn v2 test name by @simonrw in https://github.com/localstack/localstack/pull/12683
  • GitHub Actions: correct test durations handling for integration tests & update test durations file by @k-a-il in https://github.com/localstack/localstack/pull/12682
  • Stop handling help parsing with argparse by @silv-io in https://github.com/localstack/localstack/pull/12691
  • SNS: validate cross-region behavior by @bentsku in https://github.com/localstack/localstack/pull/12673
  • APIGW: implement Canary Deployments CRUD logic by @bentsku in https://github.com/localstack/localstack/pull/12694
  • Resolve non-subdomain host prefixes to LocalStack by @joe4dev in https://github.com/localstack/localstack/pull/12653
  • Change cleanup job condition in main pipeline in Github Actions by @k-a-il in https://github.com/localstack/localstack/pull/12693
  • refactor: reduce max number of allowed labels in counters from 8 to 6 [DAT-146] by @vittoriopolverino in https://github.com/localstack/localstack/pull/12704
  • Add missing switch for forcing ARM tests on workflow dispatch by @silv-io in https://github.com/localstack/localstack/pull/12709
  • re-introduce eager service loading by @bentsku in https://github.com/localstack/localstack/pull/12657
  • test(esm/sqs): Skip flaky test_report_batch_item_failures test by @gregfurman in https://github.com/localstack/localstack/pull/12713

New Contributors

  • @bryansan-local made their first contribution in https://github.com/localstack/localstack/pull/12609
  • @etiago made their first contribution in https://github.com/localstack/localstack/pull/12632
  • @iamramtin made their first contribution in https://github.com/localstack/localstack/pull/12615

Full Changelog: https://github.com/localstack/localstack/compare/v4.4.0...v4.5.0

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track LocalStack

Get notified when new releases ship.

Sign up free

About LocalStack

LocalStack is a fully functional local AWS cloud stack. This includes Lambda for serverless computation.

All releases →

Related context

Beta — feedback welcome: [email protected]