diff --git a/lambda-events/CHANGELOG.md b/lambda-events/CHANGELOG.md new file mode 100644 index 000000000..f0be5d12d --- /dev/null +++ b/lambda-events/CHANGELOG.md @@ -0,0 +1,32 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +## [1.1.1](https://github.com/aws/aws-lambda-rust-runtime/compare/aws_lambda_events-v1.0.3...aws_lambda_events-v1.1.1) - 2026-03-11 + +### Added + +- *(lambda-events)* support X509 custom authorizer in IoT events ([#1114](https://github.com/aws/aws-lambda-rust-runtime/pull/1114)) +- *(lambda-events)* add Control Tower lifecycle events module ([#1107](https://github.com/aws/aws-lambda-rust-runtime/pull/1107)) +- *(lambda-events)* add VPC Lattice event structures ([#1036](https://github.com/aws/aws-lambda-rust-runtime/pull/1036)) +- Add builder pattern support for event response types ([#1090](https://github.com/aws/aws-lambda-rust-runtime/pull/1090)) + +### Fixed + +- *(sns)* support SubscriptionConfirmation and UnsubscribeConfirmation message types ([#1102](https://github.com/aws/aws-lambda-rust-runtime/pull/1102)) +- *(lambda-events)* `claims_to_add_or_override` type in `CognitoEventUserPoolsPreTokenGenV2` ([#1100](https://github.com/aws/aws-lambda-rust-runtime/pull/1100)) + +### Other + +- *(lambda-events)* deprecate authorizer-specific fields in `ApiGatewayV2httpRequest` ([#1089](https://github.com/aws/aws-lambda-rust-runtime/pull/1089)) + +## [1.0.3](https://github.com/aws/aws-lambda-rust-runtime/compare/aws_lambda_events-v1.0.2...aws_lambda_events-v1.0.3) - 2026-01-06 + +### Changed + +- MSRV updated from 1.82.0 to 1.84.0, enabled MSRV-aware resolver ([#1078](https://github.com/aws/aws-lambda-rust-runtime/pull/1078)) diff --git a/lambda-events/Cargo.toml b/lambda-events/Cargo.toml index 41885e524..934f72f4c 100644 --- a/lambda-events/Cargo.toml +++ b/lambda-events/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "aws_lambda_events" -version = "1.1.0" +version = "1.1.1" rust-version = "1.84.0" description = "AWS Lambda event definitions" authors = [ @@ -137,4 +137,4 @@ builders = ["bon"] all-features = true [dev-dependencies] -lambda_runtime = { version = "1.1.0-rc1", path = "../lambda-runtime" } +lambda_runtime = { version = "1.1.1", path = "../lambda-runtime" } diff --git a/lambda-extension/CHANGELOG.md b/lambda-extension/CHANGELOG.md new file mode 100644 index 000000000..d0796f035 --- /dev/null +++ b/lambda-extension/CHANGELOG.md @@ -0,0 +1,14 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +## [1.0.3](https://github.com/aws/aws-lambda-rust-runtime/compare/lambda-extension-v1.0.2...lambda-extension-v1.0.3) - 2026-03-12 + +### Added + +- Make Telemetry API log record type generic ([#1098](https://github.com/aws/aws-lambda-rust-runtime/pull/1098)) diff --git a/lambda-extension/Cargo.toml b/lambda-extension/Cargo.toml index 9bb6a09d2..3fc1065ba 100644 --- a/lambda-extension/Cargo.toml +++ b/lambda-extension/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "lambda-extension" -version = "1.0.2" +version = "1.0.3" edition = "2021" rust-version = "1.84.0" authors = [ diff --git a/lambda-http/CHANGELOG.md b/lambda-http/CHANGELOG.md new file mode 100644 index 000000000..780d93e30 --- /dev/null +++ b/lambda-http/CHANGELOG.md @@ -0,0 +1,38 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +## [1.1.1](https://github.com/aws/aws-lambda-rust-runtime/compare/v1.0.2...lambda_http-v1.1.1) - 2026-03-11 + +### Added + +- *(lambda-managed-instances)* Lambda Managed Instances support via `concurrency-tokio` feature flag with `run_concurrent()` and `BoxCloneService` for concurrent streaming responses ([#1067](https://github.com/aws/aws-lambda-rust-runtime/pull/1067)) +- Add builder pattern support for event response types ([#1090](https://github.com/aws/aws-lambda-rust-runtime/pull/1090)) + +### Changed + +- MSRV updated from 1.82.0 to 1.84.0, enabled MSRV-aware resolver ([#1078](https://github.com/aws/aws-lambda-rust-runtime/pull/1078)) + +### Other + +- *(lambda-managed-instances)* add `tokio_unstable` to known cfgs to avoid linter warns ([#1095](https://github.com/aws/aws-lambda-rust-runtime/pull/1095)) +- *(lambda-managed-instances)* warn on `run()` with `AWS_LAMBDA_MAX_CONCURRENCY`, rename feature `experimental-concurrency` to `concurrency-tokio` ([#1095](https://github.com/aws/aws-lambda-rust-runtime/pull/1095)) +- *(lambda-managed-instances)* verify request-ID isolation in concurrent exec ([#1086](https://github.com/aws/aws-lambda-rust-runtime/pull/1086)) +- Introducing Harness Testing ([#1103](https://github.com/aws/aws-lambda-rust-runtime/pull/1103)) +- disable default features of lambda-runtime ([#1093](https://github.com/aws/aws-lambda-rust-runtime/pull/1093)) +- *(deps)* update axum-extra requirement from 0.10.2 to 0.12.5 ([#1079](https://github.com/aws/aws-lambda-rust-runtime/pull/1079)) + +## [1.1.0-rc1](https://github.com/aws/aws-lambda-rust-runtime/compare/v1.0.2...lambda_http-v1.1.0-rc1) - 2026-02-04 + +### Added + +- *(lambda-managed-instances)* Lambda Managed Instances support via `concurrency-tokio` feature flag with `run_concurrent()` and `BoxCloneService` for concurrent streaming responses ([#1067](https://github.com/aws/aws-lambda-rust-runtime/pull/1067)) + +### Changed + +- MSRV updated from 1.82.0 to 1.84.0, enabled MSRV-aware resolver ([#1078](https://github.com/aws/aws-lambda-rust-runtime/pull/1078)) diff --git a/lambda-http/Cargo.toml b/lambda-http/Cargo.toml index 8f3f94a25..0964a894e 100644 --- a/lambda-http/Cargo.toml +++ b/lambda-http/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "lambda_http" -version = "1.1.0-rc1" +version = "1.1.1" authors = [ "David Calavera ", "Harold Sun ", @@ -39,7 +39,7 @@ http = { workspace = true } http-body = { workspace = true } http-body-util = { workspace = true } hyper = { workspace = true } -lambda_runtime = { version = "1.1.0-rc1", path = "../lambda-runtime", default-features = false} +lambda_runtime = { version = "1.1.1", path = "../lambda-runtime", default-features = false} mime = "0.3" percent-encoding = "2.2" pin-project-lite = { workspace = true } @@ -51,7 +51,7 @@ url = "2.2" [dependencies.aws_lambda_events] path = "../lambda-events" -version = "1.0" +version = "1.1" default-features = false features = ["alb", "apigw"] diff --git a/lambda-runtime-api-client/CHANGELOG.md b/lambda-runtime-api-client/CHANGELOG.md new file mode 100644 index 000000000..0cf900514 --- /dev/null +++ b/lambda-runtime-api-client/CHANGELOG.md @@ -0,0 +1,18 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +## [1.0.2](https://github.com/aws/aws-lambda-rust-runtime/compare/v1.0.2...lambda_runtime_api_client-v1.0.2) - 2026-01-06 + +### Added + +- *(lambda-managed-instances)* API client connection pooling for concurrent requests ([#1067](https://github.com/aws/aws-lambda-rust-runtime/pull/1067)) + +### Changed + +- MSRV updated from 1.82.0 to 1.84.0, enabled MSRV-aware resolver ([#1078](https://github.com/aws/aws-lambda-rust-runtime/pull/1078)) diff --git a/lambda-runtime/CHANGELOG.md b/lambda-runtime/CHANGELOG.md new file mode 100644 index 000000000..cdfc39f12 --- /dev/null +++ b/lambda-runtime/CHANGELOG.md @@ -0,0 +1,63 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +## [1.1.1](https://github.com/aws/aws-lambda-rust-runtime/compare/v1.0.2...lambda_runtime-v1.1.1) - 2026-03-11 + +Thank you to all the contributors who helped make this release possible. We appreciate your time, effort, and passion for the Rust Lambda community. ❤️ + +### Lambda Managed Instances + +The runtime now supports Lambda Managed Instances via the `concurrency-tokio` feature flag (previously `experimental-concurrency`). Lambda Managed Instances allow multiple concurrent requests to be processed within a single execution environment. When `AWS_LAMBDA_MAX_CONCURRENCY` is set, the runtime spawns multiple independent long-poll workers to handle concurrent invocations. If the env var is unset or <= 1, it falls back to sequential behavior automatically — so the same handler works on both classic Lambda and Lambda Managed Instances. ([#1067](https://github.com/aws/aws-lambda-rust-runtime/pull/1067)) + +```toml +[dependencies] +lambda_runtime = { version = "1.1", features = ["concurrency-tokio"] } +``` + +```rust +lambda_runtime::run_concurrent(service_fn(my_handler)).await?; +``` + +For a complete working example, see [examples/basic-lambda-concurrent](https://github.com/aws/aws-lambda-rust-runtime/tree/main/examples/basic-lambda-concurrent). For detailed guidance on building functions for multi-concurrency, including shared state patterns and database connection pools, see the [Rust runtime for Lambda Managed Instances](https://docs.aws.amazon.com/lambda/latest/dg/lambda-managed-instances-rust.html) documentation. + +We would like also to involve the community in a broader discussion about improving our approach on multiconcurrency. You can find the discussion in ([#1120](https://github.com/aws/aws-lambda-rust-runtime/issues/1120)) + +### Added + +- *(lambda-managed-instances)* log non-2xx Lambda Runtime API responses with status and body ([#1109](https://github.com/aws/aws-lambda-rust-runtime/pull/1109)) +- tenant ID propagation for multi-tenant Lambda use cases. The `tenant_id` is available in the `context.tenant_id` field (`Option`) and is automatically extracted from the `lambda-runtime-aws-tenant-id` header when present ([#1082](https://github.com/aws/aws-lambda-rust-runtime/pull/1082)) +- Add builder pattern support for event response types ([#1090](https://github.com/aws/aws-lambda-rust-runtime/pull/1090)) + +### Fixed + +- *(test)* fix test_concurrent_structured_logging_isolation ([#1121](https://github.com/aws/aws-lambda-rust-runtime/pull/1121)) + +### Changed + +- MSRV updated from 1.82.0 to 1.84.0, enabled MSRV-aware resolver ([#1078](https://github.com/aws/aws-lambda-rust-runtime/pull/1078)) +- X-Ray trace ID now sourced from `Context` instead of environment variables ([#1067](https://github.com/aws/aws-lambda-rust-runtime/pull/1067)) + +### Other + +- *(lambda-managed-instances)* add `tokio_unstable` to known cfgs to avoid linter warns ([#1095](https://github.com/aws/aws-lambda-rust-runtime/pull/1095)) +- *(lambda-managed-instances)* verify request-ID isolation in concurrent exec ([#1086](https://github.com/aws/aws-lambda-rust-runtime/pull/1086)) +- *(lambda-managed-instances)* warn on `run()` with `AWS_LAMBDA_MAX_CONCURRENCY`, rename feature `experimental-concurrency` to `concurrency-tokio` ([#1095](https://github.com/aws/aws-lambda-rust-runtime/pull/1095)) +- Introducing Harness Testing ([#1103](https://github.com/aws/aws-lambda-rust-runtime/pull/1103)) + +## [1.1.0-rc1](https://github.com/aws/aws-lambda-rust-runtime/compare/v1.0.2...lambda_runtime-v1.1.0-rc1) - 2026-02-04 + +### Added + +- *(lambda-managed-instances)* Lambda Managed Instances support via `concurrency-tokio` feature flag ([#1067](https://github.com/aws/aws-lambda-rust-runtime/pull/1067)) +- *(lambda-managed-instances)* tenant ID propagation for multi-tenant Lambda use cases ([#1082](https://github.com/aws/aws-lambda-rust-runtime/pull/1082)) + +### Changed + +- MSRV updated from 1.82.0 to 1.84.0, enabled MSRV-aware resolver ([#1078](https://github.com/aws/aws-lambda-rust-runtime/pull/1078)) +- X-Ray trace ID now sourced from `Context` instead of environment variables ([#1067](https://github.com/aws/aws-lambda-rust-runtime/pull/1067)) diff --git a/lambda-runtime/Cargo.toml b/lambda-runtime/Cargo.toml index 442c9c61c..9b7596d44 100644 --- a/lambda-runtime/Cargo.toml +++ b/lambda-runtime/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "lambda_runtime" -version = "1.1.0-rc1" +version = "1.1.1" authors = [ "David Calavera ", "Harold Sun ", diff --git a/release-plz.toml b/release-plz.toml index df3dff1fc..67e95dca5 100644 --- a/release-plz.toml +++ b/release-plz.toml @@ -2,6 +2,12 @@ semver_check = true git_release_enable = false +[[package]] +name = "lambda_runtime" +git_release_enable = true +git_release_name = "v{{ version }}" +changelog_include = ["lambda_http", "lambda_runtime_api_client", "lambda-extension", "aws_lambda_events"] + [[package]] name = "lambda-integration-tests" publish = false