Releases: cythral/lambdajection
v0.8.0-beta1
Enhancements:
- Added cancellationToken parameter to IAwsFactory.
- No longer packaging AWSSDK.Core in the Lambdajection.Generator package - this is restored and resolved from the RestorePackagesPath at build time, along with other generator-specific dependencies.
Dependency Updates:
v0.7.0
New Features:
- Create Lambda-backed Custom Resource Providers using Lambdajection! See the README and example for info.
- Add validation attributes to your request properties, and they will be automatically evaluated. To accomplish this, Lambdajection will generate a method called 'Validate' and add it to your Handler class.
Enhancements:
- The Generator no longer packages its own version of Lambdajection.Core, instead it will load the one used in the project from your restore directory. You may need to run a clean after upgrading due to this.
- Various 3rd party dependency upgrades, including Roslyn to v3.9.0.
- Now building with .NET SDK 5.0.200.
Prerelease Links:
https://github.com/cythral/lambdajection/releases/tag/v0.7.0-beta1
https://github.com/cythral/lambdajection/releases/tag/v0.7.0-beta2
https://github.com/cythral/lambdajection/releases/tag/v0.7.0-beta3
https://github.com/cythral/lambdajection/releases/tag/v0.7.0-beta4
Whats next?
Please look forward to v0.8.0 in May, which will introduce CloudFormation template generation and minimum IAM permissions collection.
v0.7.0-beta4
New Features:
- For Custom Resources, use the UpdateRequiresReplacementAttribute to denote resource properties that, when updated, should create a new resource rather than updating the existing one. CloudFormation will automatically call delete on the old resource when this happens.
New Packages:
- Lambdajection.Framework - we moved the framework-specific attributes here (LambdaHostAttribute, LambdaInterfaceAttribute). This will be specifically for attributes that tell the Generator what and how to generate a Lambda.
- Lambdajection.Framework.BuildTime - used by build-time only packages that extend the functionality of the Lambda Generator, such as Lambdajection.CustomResource.BuildTime
- Lambdajection.CustomResource.BuildTime - contains a generator for the RequiresReplacement method on the ICustomResourceProvider interface.
Enhancements:
- Lambdajection.Generator no longer includes its own copy of Lambdajection.Core in its NuGet package - we've done some work to dynamically load assemblies in the Generator from outside its package. You may need to run a clean after upgrading due to these changes.
- Various 3rd-party dependency upgrades throughout the project.
- Added documentation to the custom resource example.
v0.7.0-beta3
Bug Fixes:
- Fixed an issue where the generator would attempt to generate validations for collection types, which would result in a stack overflow. The validations generator no longer recurses into these types, or any type that lives in an assembly that starts with "System"
- Fixed an issue where validations were being generated for private and protected properties.
v0.7.0-beta2
Bug Fixes:
- Fixes an issue where error messages were being suppressed by a different message ('Invalid PhysicalResourceId') after responding to CloudFormation.
New Features:
- Breaking Change: Data Annotations on all request properties are now validated at runtime for each invocation. A Validate method is automatically generated on your Lambda at compile-time to help accomplish this.
Updates for Contributors:
- Dependency updates are now automated via Nukeeper
- AWSSDK.Core is no longer a direct dependency of Lambdajection.Generator, but it will still get added to the nuget package so it can be loaded during generation if needed.
- Now Building with .NET 5.0.103
Runtime Dependency updates:
- AWSSDK.KeyManagementService to 3.5.2.12
- AWSSDK.Core to 3.5.3.1
- Amazon.Lambda.ApplicationLoadBalancerEvents to 2.1.0
v0.7.0-beta1
This release introduces the following:
- Now building with .NET SDK v5.0.102.
- Custom Resources are in preview! See the Custom Resource example for usage details.
v0.6.0
New in v0.6.0:
- Upgraded Cythral.CloudFormation.BuildTasks to v0.4.2 for increased end-to-end test stability (these sometimes failed before due to base64 keys containing characters that are not safe for URLs).
- Upgraded AWSSDK.Core to 3.5.1.57
- Upgraded AWSSDK.KeyManagementService to 3.5.1
- Upgraded Microsoft.Extensions.DependencyInjection to 5.0.1
- Upgraded Amazon.Lambda.RuntimeSupport to 1.3.0
Also includes everything from the first 4 betas:
- Removed the ILambdaContext parameter. This is now accessible via constructor dependency injection instead.
- Adds a CancellationToken parameter to coordinate cancellation of child tasks. Forward this to any awaited calls in your Handle function.
- The "Run" method name can now be customized.
- A Lambda Layer containing Lambdajection and all its dependencies is now available! See the README for usage.
Prerelease Links
https://github.com/cythral/lambdajection/releases/tag/v0.6.0-beta1
https://github.com/cythral/lambdajection/releases/tag/v0.6.0-beta2
https://github.com/cythral/lambdajection/releases/tag/v0.6.0-beta3
https://github.com/cythral/lambdajection/releases/tag/v0.6.0-beta4
Whats next?
Please look forward to v0.7.0 in March, which will introduce functionality for Lambdajection-backed Custom Resources!
v0.6.0-beta4
This release introduces the following:
- Breaking Change: Lambdas now take a CancellationToken as a second argument and will gracefully stop execution when cancellation is requested.
- Unit tests have been refactored to use AutoFixture where applicable to conform to best practices regarding generation of test data and setup.
v0.6.0-beta3
This release includes patches to the Lambda Layer, including:
- Addition of third party notices.
- Inclusion of our License in the Layer.
- Inclusion of our Readme in the Layer.
- Adds the Layer ARN as a CloudFormation template output.
v0.6.0-beta2
This release introduces the following:
- You can now shrink package sizes by utilizing the new Lambdajection Layer! For the time being, this is only available for those also using the Lambdajection Custom Runtime. Support for aws-hosted dotnetcore3.1 may be added in a future release.
- The "Run" method name can now be customized using the RunnerMethod property in the Lambda Attribute.