From 8962639aa9e78004535b963518df4aee1909f774 Mon Sep 17 00:00:00 2001 From: aws-sdk-dotnet-automation Date: Thu, 2 Jul 2026 02:23:43 +0000 Subject: [PATCH 1/3] release_2026-07-02 --- .../Amazon.Lambda.Annotations.SourceGenerator.csproj | 2 +- .../Amazon.Lambda.Annotations.csproj | 2 +- .../Amazon.Lambda.DurableExecution.Analyzers.csproj | 2 +- .../Amazon.Lambda.DurableExecution.Testing.csproj | 2 +- .../Amazon.Lambda.DurableExecution.csproj | 11 +++-------- 5 files changed, 7 insertions(+), 12 deletions(-) diff --git a/Libraries/src/Amazon.Lambda.Annotations.SourceGenerator/Amazon.Lambda.Annotations.SourceGenerator.csproj b/Libraries/src/Amazon.Lambda.Annotations.SourceGenerator/Amazon.Lambda.Annotations.SourceGenerator.csproj index 8a3c0aa75..e825d63a2 100644 --- a/Libraries/src/Amazon.Lambda.Annotations.SourceGenerator/Amazon.Lambda.Annotations.SourceGenerator.csproj +++ b/Libraries/src/Amazon.Lambda.Annotations.SourceGenerator/Amazon.Lambda.Annotations.SourceGenerator.csproj @@ -21,7 +21,7 @@ true false - 2.1.0 + 2.2.0 true diff --git a/Libraries/src/Amazon.Lambda.Annotations/Amazon.Lambda.Annotations.csproj b/Libraries/src/Amazon.Lambda.Annotations/Amazon.Lambda.Annotations.csproj index 8bc477e89..4be877f90 100644 --- a/Libraries/src/Amazon.Lambda.Annotations/Amazon.Lambda.Annotations.csproj +++ b/Libraries/src/Amazon.Lambda.Annotations/Amazon.Lambda.Annotations.csproj @@ -17,7 +17,7 @@ ..\..\..\buildtools\public.snk true - 2.1.0 + 2.2.0 true diff --git a/Libraries/src/Amazon.Lambda.DurableExecution.Analyzers/Amazon.Lambda.DurableExecution.Analyzers.csproj b/Libraries/src/Amazon.Lambda.DurableExecution.Analyzers/Amazon.Lambda.DurableExecution.Analyzers.csproj index 197580130..2b79c7049 100644 --- a/Libraries/src/Amazon.Lambda.DurableExecution.Analyzers/Amazon.Lambda.DurableExecution.Analyzers.csproj +++ b/Libraries/src/Amazon.Lambda.DurableExecution.Analyzers/Amazon.Lambda.DurableExecution.Analyzers.csproj @@ -7,7 +7,7 @@ enable disable - 0.1.2-preview + 0.2.0-preview Roslyn analyzers and code fixes for Amazon.Lambda.DurableExecution — catches durable-execution determinism and authoring mistakes (DE001-DE004) at build time. Amazon.Lambda.DurableExecution.Analyzers Amazon.Lambda.DurableExecution.Analyzers diff --git a/Libraries/src/Amazon.Lambda.DurableExecution.Testing/Amazon.Lambda.DurableExecution.Testing.csproj b/Libraries/src/Amazon.Lambda.DurableExecution.Testing/Amazon.Lambda.DurableExecution.Testing.csproj index ba6fd25c4..47dc01892 100644 --- a/Libraries/src/Amazon.Lambda.DurableExecution.Testing/Amazon.Lambda.DurableExecution.Testing.csproj +++ b/Libraries/src/Amazon.Lambda.DurableExecution.Testing/Amazon.Lambda.DurableExecution.Testing.csproj @@ -6,7 +6,7 @@ $(DefaultPackageTargets) Testing utilities for Amazon Lambda Durable Execution - test durable workflows locally without deploying to AWS. Amazon.Lambda.DurableExecution.Testing - 0.0.1-preview + 0.1.0-preview Amazon.Lambda.DurableExecution.Testing Amazon.Lambda.DurableExecution.Testing AWS;Amazon;Lambda;Durable;Workflow;Testing diff --git a/Libraries/src/Amazon.Lambda.DurableExecution/Amazon.Lambda.DurableExecution.csproj b/Libraries/src/Amazon.Lambda.DurableExecution/Amazon.Lambda.DurableExecution.csproj index 391c5fddc..96501c699 100644 --- a/Libraries/src/Amazon.Lambda.DurableExecution/Amazon.Lambda.DurableExecution.csproj +++ b/Libraries/src/Amazon.Lambda.DurableExecution/Amazon.Lambda.DurableExecution.csproj @@ -6,7 +6,7 @@ $(DefaultPackageTargets) Amazon Lambda .NET SDK for Durable Execution - write multi-step workflows that persist state automatically. Amazon.Lambda.DurableExecution - 0.1.2-preview + 0.2.0-preview Amazon.Lambda.DurableExecution Amazon.Lambda.DurableExecution AWS;Amazon;Lambda;Durable;Workflow @@ -46,13 +46,8 @@ - - + + From 95b053e1bf5f06cca7249a4d916f8116e73a09b4 Mon Sep 17 00:00:00 2001 From: aws-sdk-dotnet-automation Date: Thu, 2 Jul 2026 02:25:00 +0000 Subject: [PATCH 2/3] Update test app CloudFormation templates --- Libraries/test/TestCustomAuthorizerApp/serverless.template | 2 +- Libraries/test/TestDurableServerlessApp/serverless.template | 2 +- Libraries/test/TestExecutableServerlessApp/serverless.template | 2 +- Libraries/test/TestServerlessApp.ALB/serverless.template | 2 +- Libraries/test/TestServerlessApp.NET8/serverless.template | 2 +- Libraries/test/TestServerlessApp/serverless.template | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Libraries/test/TestCustomAuthorizerApp/serverless.template b/Libraries/test/TestCustomAuthorizerApp/serverless.template index de85be513..72c6851b8 100644 --- a/Libraries/test/TestCustomAuthorizerApp/serverless.template +++ b/Libraries/test/TestCustomAuthorizerApp/serverless.template @@ -1,7 +1,7 @@ { "AWSTemplateFormatVersion": "2010-09-09", "Transform": "AWS::Serverless-2016-10-31", - "Description": "This template is partially managed by Amazon.Lambda.Annotations (v2.1.0.0).", + "Description": "This template is partially managed by Amazon.Lambda.Annotations (v2.2.0.0).", "Resources": { "AnnotationsHttpApi": { "Type": "AWS::Serverless::HttpApi", diff --git a/Libraries/test/TestDurableServerlessApp/serverless.template b/Libraries/test/TestDurableServerlessApp/serverless.template index a6b971e23..8e5558921 100644 --- a/Libraries/test/TestDurableServerlessApp/serverless.template +++ b/Libraries/test/TestDurableServerlessApp/serverless.template @@ -1,7 +1,7 @@ { "AWSTemplateFormatVersion": "2010-09-09", "Transform": "AWS::Serverless-2016-10-31", - "Description": "An AWS Serverless Application with a durable execution function, deployed via CloudFormation for integration testing. This template is partially managed by Amazon.Lambda.Annotations (v2.1.0.0).", + "Description": "An AWS Serverless Application with a durable execution function, deployed via CloudFormation for integration testing. This template is partially managed by Amazon.Lambda.Annotations (v2.2.0.0).", "Resources": { "TestDurableServerlessAppFunctionWorkflowGenerated": { "Type": "AWS::Serverless::Function", diff --git a/Libraries/test/TestExecutableServerlessApp/serverless.template b/Libraries/test/TestExecutableServerlessApp/serverless.template index 084351d20..43b8f05ce 100644 --- a/Libraries/test/TestExecutableServerlessApp/serverless.template +++ b/Libraries/test/TestExecutableServerlessApp/serverless.template @@ -1,7 +1,7 @@ { "AWSTemplateFormatVersion": "2010-09-09", "Transform": "AWS::Serverless-2016-10-31", - "Description": "An AWS Serverless Application. This template is partially managed by Amazon.Lambda.Annotations (v2.1.0.0).", + "Description": "An AWS Serverless Application. This template is partially managed by Amazon.Lambda.Annotations (v2.2.0.0).", "Parameters": { "ArchitectureTypeParameter": { "Type": "String", diff --git a/Libraries/test/TestServerlessApp.ALB/serverless.template b/Libraries/test/TestServerlessApp.ALB/serverless.template index 5a225c3b6..501eea86c 100644 --- a/Libraries/test/TestServerlessApp.ALB/serverless.template +++ b/Libraries/test/TestServerlessApp.ALB/serverless.template @@ -1,7 +1,7 @@ { "AWSTemplateFormatVersion": "2010-09-09", "Transform": "AWS::Serverless-2016-10-31", - "Description": "ALB Integration Test Stack - VPC and ALB infrastructure for testing Lambda ALB annotations This template is partially managed by Amazon.Lambda.Annotations (v2.1.0.0).", + "Description": "ALB Integration Test Stack - VPC and ALB infrastructure for testing Lambda ALB annotations This template is partially managed by Amazon.Lambda.Annotations (v2.2.0.0).", "Resources": { "ALBTestVPC": { "Type": "AWS::EC2::VPC", diff --git a/Libraries/test/TestServerlessApp.NET8/serverless.template b/Libraries/test/TestServerlessApp.NET8/serverless.template index b829ef481..41e8e646c 100644 --- a/Libraries/test/TestServerlessApp.NET8/serverless.template +++ b/Libraries/test/TestServerlessApp.NET8/serverless.template @@ -1,7 +1,7 @@ { "AWSTemplateFormatVersion": "2010-09-09", "Transform": "AWS::Serverless-2016-10-31", - "Description": "This template is partially managed by Amazon.Lambda.Annotations (v2.1.0.0).", + "Description": "This template is partially managed by Amazon.Lambda.Annotations (v2.2.0.0).", "Resources": { "TestServerlessAppNET8FunctionsToUpperGenerated": { "Type": "AWS::Serverless::Function", diff --git a/Libraries/test/TestServerlessApp/serverless.template b/Libraries/test/TestServerlessApp/serverless.template index 096337e31..e4821770b 100644 --- a/Libraries/test/TestServerlessApp/serverless.template +++ b/Libraries/test/TestServerlessApp/serverless.template @@ -1,7 +1,7 @@ { "AWSTemplateFormatVersion": "2010-09-09", "Transform": "AWS::Serverless-2016-10-31", - "Description": "This template is partially managed by Amazon.Lambda.Annotations (v2.1.0.0).", + "Description": "This template is partially managed by Amazon.Lambda.Annotations (v2.2.0.0).", "Parameters": { "ArchitectureTypeParameter": { "Type": "String", From a13061c2a7001e9e0a7e7b5887a2fdb6fadff309 Mon Sep 17 00:00:00 2001 From: aws-sdk-dotnet-automation Date: Thu, 2 Jul 2026 02:25:01 +0000 Subject: [PATCH 3/3] Updated changelog --- .autover/changes/durable-execution-analyzers.json | 11 ----------- .../changes/durable-execution-required-timeout.json | 11 ----------- ...urable-execution-testing-cloud-runner-history.json | 11 ----------- .../durable-execution-testing-runner-fixes.json | 11 ----------- CHANGELOG.md | 10 ++++++++++ 5 files changed, 10 insertions(+), 44 deletions(-) delete mode 100644 .autover/changes/durable-execution-analyzers.json delete mode 100644 .autover/changes/durable-execution-required-timeout.json delete mode 100644 .autover/changes/durable-execution-testing-cloud-runner-history.json delete mode 100644 .autover/changes/durable-execution-testing-runner-fixes.json diff --git a/.autover/changes/durable-execution-analyzers.json b/.autover/changes/durable-execution-analyzers.json deleted file mode 100644 index 4689a8839..000000000 --- a/.autover/changes/durable-execution-analyzers.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "Projects": [ - { - "Name": "Amazon.Lambda.DurableExecution", - "Type": "Minor", - "ChangelogMessages": [ - "Add Roslyn analyzers (DE001-DE004) that catch common durable-execution authoring mistakes at build time, bundled in the package so they activate automatically for consumers. DE001 (Warning) flags non-deterministic APIs (DateTime.Now, Guid.NewGuid(), Random, Stopwatch, Environment.TickCount, crypto RNG) used in workflow code outside a step. DE002 (Warning) flags a durable operation invoked inside a step body via the captured outer IDurableContext. DE003 (Warning) flags mutation of a captured outer-scope variable inside a durable-operation delegate. DE004 (Info) suggests ParallelAsync/MapAsync over Task.WhenAll/Task.WhenAny for durable tasks. DE001 and DE004 include code fixes. Preview." - ] - } - ] -} diff --git a/.autover/changes/durable-execution-required-timeout.json b/.autover/changes/durable-execution-required-timeout.json deleted file mode 100644 index 6ab06753c..000000000 --- a/.autover/changes/durable-execution-required-timeout.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "Projects": [ - { - "Name": "Amazon.Lambda.Annotations", - "Type": "Minor", - "ChangelogMessages": [ - "Breaking Change: Make ExecutionTimeout a required constructor argument on [DurableExecution]. The Lambda service rejects a durable function whose DurableConfig has no ExecutionTimeout, so the source generator now always emits it and never produces an empty DurableConfig block that would fail deployment. RetentionPeriodInDays remains an optional named property." - ] - } - ] -} diff --git a/.autover/changes/durable-execution-testing-cloud-runner-history.json b/.autover/changes/durable-execution-testing-cloud-runner-history.json deleted file mode 100644 index 11ec90a8e..000000000 --- a/.autover/changes/durable-execution-testing-cloud-runner-history.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "Projects": [ - { - "Name": "Amazon.Lambda.DurableExecution.Testing", - "Type": "Minor", - "ChangelogMessages": [ - "Add Amazon.Lambda.DurableExecution.Testing package" - ] - } - ] -} diff --git a/.autover/changes/durable-execution-testing-runner-fixes.json b/.autover/changes/durable-execution-testing-runner-fixes.json deleted file mode 100644 index 7fd8b9e0f..000000000 --- a/.autover/changes/durable-execution-testing-runner-fixes.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "Projects": [ - { - "Name": "Amazon.Lambda.DurableExecution.Testing", - "Type": "Patch", - "ChangelogMessages": [ - "Fix local test runner spinning on real timers/retry backoffs when SkipTime is disabled by delaying until the next scheduled resume time, and throw an actionable error when WaitForResultAsync is called without a prior StartAsync" - ] - } - ] -} diff --git a/CHANGELOG.md b/CHANGELOG.md index a95470214..51f46bc64 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,13 @@ +## Release 2026-07-02 + +### Amazon.Lambda.DurableExecution (0.2.0-preview) +* Add Roslyn analyzers (DE001-DE004) that catch common durable-execution authoring mistakes at build time, bundled in the package so they activate automatically for consumers. DE001 (Warning) flags non-deterministic APIs (DateTime.Now, Guid.NewGuid(), Random, Stopwatch, Environment.TickCount, crypto RNG) used in workflow code outside a step. DE002 (Warning) flags a durable operation invoked inside a step body via the captured outer IDurableContext. DE003 (Warning) flags mutation of a captured outer-scope variable inside a durable-operation delegate. DE004 (Info) suggests ParallelAsync/MapAsync over Task.WhenAll/Task.WhenAny for durable tasks. DE001 and DE004 include code fixes. Preview. +### Amazon.Lambda.Annotations (2.2.0) +* Breaking Change: Make ExecutionTimeout a required constructor argument on [DurableExecution]. The Lambda service rejects a durable function whose DurableConfig has no ExecutionTimeout, so the source generator now always emits it and never produces an empty DurableConfig block that would fail deployment. RetentionPeriodInDays remains an optional named property. +### Amazon.Lambda.DurableExecution.Testing (0.1.0-preview) +* Add Amazon.Lambda.DurableExecution.Testing package +* Fix local test runner spinning on real timers/retry backoffs when SkipTime is disabled by delaying until the next scheduled resume time, and throw an actionable error when WaitForResultAsync is called without a prior StartAsync + ## Release 2026-06-26 ### Amazon.Lambda.DurableExecution (0.1.2-preview)