- Added a .NET 8 target with support for Trimming
- Updated package description to remove "preview" text
- Fixed null pointer exception when enabling debug mode with LAMBDA_NET_SERIALIZER_DEBUG environment variable and function response is null.
- Fixed null pointer exception when enabling debug mode with LAMBDA_NET_SERIALIZER_DEBUG environment variable and function response is null.
- Removed reference to global variable $Name when packaging PowerShell script as Lambda function.
- Update default version of Microsoft.PowerShell.SDK to 7.4.5
- Update PowerShell Lambda blueprints to reference the latest Amazon.Lambda.PowerShellHost and Amazon.Lambda.Core packages.
- Fixed issue with handling unicode characters when converting FromBody parameters from JSON to .NET type.
- Added a 127 character limit on the Lambda function handler when the package type is set to zip.
- Fixed an issue where Write-Debug doesn't log debug messages to CloudWatch for a Lambda PowerShell function.
- Add support for structured logging. Access to structured logging is pending a deployment of Amazon.Lambda.RuntimeSupport to the managed runtime. Follow GitHub issue aws#1747 for status updates on deployment.
- Add preview parameterized logging APIs to the ILogger interface. The API will be in preview till the completion of Amazon.Lambda.RuntimeSupport being deployed to the managed runtime.
- Add application/wasm to list of content types that should be base 64 encoded.
- Updated reference of Amazon.Lambda.AspNetCoreServer to 9.0.1
- Breaking Change Corrected the data type for ClaimsToAddOrOverride property in IdTokenGeneration and AccessTokenGeneration classes for CognitoPreTokenGenerationV2Event.
- Fixed an issue in
JsonSerializer
whereJsonSerializerSettings.NullValueHandling
was being set toNullValueHandling.Ignore
after custom settings were applied. - Added new
JsonIncludeNullValueSerializer
derived fromJsonSerializer
that includes null values in serialized JSON.
- Fixed
AwsResolver.CreateProperties()
to use logicalOR
condition when checking forAmazon.Lambda.CloudWatchEvents.CloudWatchEvent
type. - Initialized
JsonSerializerSettings.NullValueHandling
toNullValueHandling.Ignore
forJsonSerializer
.
- Added support for
Condition
element inAPIGatewayCustomAuthorizerPolicy.IAMPolicyStatement
.
- Updated Amazon.Lambda.Annotations dependency to 1.5.0 in the Message Processing Framework template. Added the
SQSEvent
attribute to set up SQS event source mapping for the message handler Lambda function.
- Added new .NET attribute to create SQS event source mapping for Lambda functions.
- Updated the source generator to add documentation on public members in the generated files.
- Added the "<auto-generated/>" top-level comment on the generated files to skip them from being processed by analyzers.
- Use the
ILambdaSerializer
to serialize the response body when returning anIHttpResult
.- BREAKING CHANGE: Removed the
JsonContext
property in theHttpResultSerializationOptions
class and replaced it with anILambdaSerializer
- BREAKING CHANGE: Removed the
- Update User-Agent string
- Update User-Agent string
- Update User-Agent string
- Pull Request #1736 Update ByteArrayConverter to support base64 deserialization of byte[]. Thanks brendonparker
- Update templates to use Amazon.Lambda.Annotations v1.3.0
- Update default memory size from 256 MB to 512 MB.
- Use JSON serializer extracted from the DI container to serialize error responses.
- Correctly handle Lambda events with dates set as Unix epoch in milliseconds.
- Correctly handle Lambda events with dates set as Unix epoch in milliseconds.
- Add new template using the AWS Message Processing Framework for .NET
- Update versions of AWS.Lambda.Powertools dependencies in relevant templates
- Better handle empty
AttributeValue
objects when serializingDynamoDBEvent
objects to JSON.
- Added
ToJson
which can be used to convertDynamoDBEvent
objects to the higher-level document and object persistence classes in the AWS SDK.
- Updated templates to target .NET 8
- Updated the serverless Native AOT template to use Amazon.Lambda.Anotations
- Updated the DynamoDB blueprint for changes with the new major version bump of Amazon.Lambda.DynamoDBEvents
- Updated all AWS dependencies in templates
- Updated to target the .NET 8 Lambda runtime
- Updated to target .NET 8
- Added support for detecting TargetFramework is .NET 8 and configuring the runtime to dotnet8.
- Breaking Change: Removed support for .NET Core 3.1.
- Breaking Change: Removed AbstractAspNetCoreFunction.CreateWebHostBuilder method that was overloaded for .NET Core 3.1 and earlier functions for configuring IWebHostBuilder.
- Added .NET 8 target.
- Addressed trim warnings and marked assembly as trimmable for Native AOT Lambda functions;
- Update version of Amazon.Lambda.AspNetCoreServer to 9.0.0.
- Added new AddAWSLambdaHosting overload that has a parameter for SourceGeneratorLambdaJsonSerializer to force source generator serialization.
- Addressed trim warnings and marked assembly as trimmable for Native AOT Lambda functions.
- Marked SourceGeneratorLambdaJsonSerializer constructor that took in an instance of JsonSerializerContext as Obsolete. This was due to the JsonSerializerContext instance unlikely to have the correct JsonSerializerOptions for Lambda serialization.
- Pull Request #1656 Add contracts for cognito pre token generation v2. Thanks Ernest Folch
- Pull Request #1646 Fixed the JSON deserialization error in Cognito triggered. Thanks Ankush Jain
- Removed
AWSSDK.DynamoDBv2
dependency fromDynamoDBEvent
and related classes.
- Updated contract resolvers to be compatible with the latest version of the
Amazon.Lambda.DynamoDBEvents
package.
- Update Powertools dependencies in relevant Lambda templates.
- Fixed issue with getting a 404 for "_framework/blazor.server.js" when the UI started up for .NET 6 and 7.
- Released .NET 8 version as NuGet package Amazon.Lambda.TestTool-8.0
- Pull Request #1598 Add width to .main to prevent window overflow. Thanks mleziva
- Deprecated the .NET Core 3.1 and .NET 5 version. No new versions targeting those frameworks will be released.
- Added support for deploying as an executable assembly and targeting provided.al2 and provided.al2023. This allows support for deploying .NET 8 AOT Lambda functions.
- Addressed AOT trim warnings.
- Pull Request #1599 adding
application/x-protobuf
to list of content types that should be base 64 encoded. Thanks yuriygavriluk
- Updated dependency Amazon.Lambda.AspNetCoreServer to 8.1.1
- Update custom runtime templates to use provided.al2023 and .NET 8
- Marked as trimmable for .NET 8
- Applied the
RequiresUnreferencedCode
attribute to areas that caused trim warnings. These code paths are used by the managed runtime when running .NET Lambda functions from a class library. Code paths for an executable assembly Lambda function, used for Native AOT, will not trigger trim warnings with this release.
- Marked as trimmable for .NET 8
- For trimmed Lambda functions the
SourceGeneratorLambdaJsonSerializer
must be used. The other serializers have been marked with theRequiresUnreferencedCode
attribute. - Added new constructor for
SourceGeneratorLambdaJsonSerializer
that takes in theJsonSerializerContext
as a parameter to remove the reflection call to create the isntance.
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Due to a dependency on the AWSSDK.DynamoDBv2 package the
DynamoDBEvent
event class is marked with the RequiresUnreferencedCode making it not safe for trimming.
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Marked as trimmable for .NET 8
- Added
AWS_LAMBDA_DOTNET_DISABLE_MEMORY_LIMIT_CHECK
environment variable that if set totrue
disables the logic to configure the max heap memory size for the .NET runtime.
- Added .NET 8 target for the package.
- Pull Request #1578 using new .NET 8 APIs to inform the .NET runtime how much memory the Lambda environment is configured for. This helps the GC understand when nearing the memory limit and when it should be more aggressive collecting memory.
- Added support for DynamoDBTimeWindowEvent.
- Added support for KinesisTimeWindowEvent.
- Added new StreamsEventResponse class for reporting batch item failures when processing streams for KinesisEvent.
- Fixes an issue where using SSO profile was giving error while monitoring DLQ in Lambda Test Tool.
- Breaking Change: Corrected the date type of RabbitMQMessage.BasicProperties.Priority to Nullable int in RabbitMQEvent class.
- Add new --disable-logs switch used with --no-ui to ensure the console does not include logs just the function's response.
- Set default values on the ILambdaContext for
FunctionName
,InvokedFunctionArn
andAwsRequestId
. - Fixed issue when a Lambda function build directory contains multiple
*.runtimeconfig.json
file causing the tool to pick the wrong file. - Pull Request #1556 add null check when traversing parent folders. Thanks joshuA Seither.
- Pull Request #1558 fix casing issue with integ test. Thanks joshuA Seither.
- Update Annotations template to use 1.0.0 of Amazon.Lambda.Annotations, and convert the Lambda Empty Serverless and Lambda Empty Serverless (.NET 7 Container Image) templates to use Annotations.
- Update to version 1.0.0
- Diagnostic errors are now thrown when invalid attribute names are specified for
FromQuery
,FromRoute
, andFromHeader
- Fixed error thrown when template includes a CloudFormation short-hand intrinsic function
- Fixed issue null pointer exception when parsing events for types with MemoryStream.
- Add diagnostic error message when using complex types mapped to query string parameters.
- Fixed issue with failing to report uncaught exceptions that have non-ascii characters from Lambda functions.
- Pull Request #1523 fixed incorrect modeling of the
ChallengeAnswer
property. Thanks JP Grusling
- Fixed issues parsing environment variables from
aws-lambda-tools-defaults.json
that were quoted.
- Renamed Powertools for AWS Lambda blueprint and updated dependencies to Powertools for AWS Lambda.
- Pull Request #1504 Add Http Status Code property on IHttpResult. Thanks Paulo Serra
- Fixed issue mapping to HTTP headers using different casing
- Fixed issue using nullable parameter types for mapped HTTP elements
- Added dependency to Amazon.Lambda.Core to make sure core interfaces are always available when adding Amazon.Lambda.Annotations to a project
- Added compile error if no
LambdaSerailizerAttribute
is set for the assembly - Added compile error if missing a reference to
Amazon.Lambda.APIGatewayEvents
when using the API Gateway attributes
- Fixed typo in documentation for S3ObjectLambdaEvent
- Fixed issue with diagnostics message not being correctly formatted.
- Update blueprints to latest versions of AWS dependencies.
- Pull request #1491 Fix issue with running native aot executables in root folder. Thanks Richard Davison
- Update blueprints to latest versions of AWS dependencies.
- Update Lambda Annotations blueprint to use
FrameworkReference
to take advantage of the ASP.NET Core assemblies already available in the Lambda environment.
- Breaking Change: Corrected the data type for Headers to use signed bytes.
- Fixed issue with code generation errors not being reported correctly as diagnostic errors.
- Added support for setting environment variables configured in CloudFormation template or config file before invoking function.
- Fixed issue getting ObjectDisposedException writing to Console.Out after Console.Out had been unintendedly disposed.
- Pull request #1463 add support for IHttpRequestFeature.RawTarget. Thanks Kevin Stapleton
- Update to Amazon.Lambda.AspNetCoreServer dependency version to 8.1.0
- Update blueprints to latest versions of AWS dependencies.
- Update user agent string when running as Native AOT
- Pull request #1447 adds events for Translate Parallel Data State Change and Translate Text Translation Job State Change. Thanks Bryan Hogan
- Breaking Change: Renamed
LambdaFunctionAttribute
propertyName
toResourceName
to clarify this property is used for setting the CloudFormation resource name. - Add diagnostic error message if the value for
ResourceName
is invalid for a CloudFormation resource name.
- Fixed
FUNCTION_ERROR_INIT_FAILURE
error when using provisioned concurrency with Native AOT
- Pull request #1445 add Transcribe event object. Thanks Bryan Hogan
- Update dependency of Amazon.Lambda.Runtime to version 1.8.4
- Update dependency of Amazon.Lambda.AspNetCoreServer to version 8.0.0
- Add new blueprints for Amazon Lambda Powertools
- Update Annotations blueprint to use version 0.12.0 of Amazon.Lambda.Annotations.
- Pull request #1432 add common 5xx status codes to HttpResults. Thanks Ryan Cormack
- Pull request #1066 add V2 API Gateway customer authrorizer. Thanks Oleksandr Liakhevych
- Breaking change Pull request #899 make adding exception detail to http response opt-in using new
IncludeUnhandledExceptionDetailInResponse
property. Thanks duncanbrown - Pull request #1403 add support for resource path variable substitution. Thanks christostatitzikidis
- Pull request #1073 add CloudWatch Events/EventBridge event types for S3 object events. Thanks Richard P. Field III
- Support customizng HTTP responses including status code and headers using the new IHttpResult and HttpResults types. Read more information here.
- Fix issue with incorrect code being generated from methods that return a
Task
but does not use theasync
keyword.
- Pull request #1382 Make Amazon.Lambda.Serialization.SystemTextJson compatible with trimming. Thanks Beau Gosse
- Pull request #1346 adding partition key metadata for response object. Thanks Chris Smith
- Add timestamp when making API calls to the Lambda service runtime's logging API. This timestamp is not visible to end users but is instead used by the Lambda service to make sure the log statements are properly orderd.
- Corrected the type of the ContainerOverride.Environment property.
- Pull request #1311 add ability to configure the ILambdaSerializer when calling AddAWSLambdaHosting. Thanks James Eastham.
- Added support for
dynamic
return types and parameters - Added a message to the CloudFormation template description when managed by Lambda Annotations with an opt-out flag
- Update AWS package dependencies in blueprints.
- Pull request #1350, implement IHttpActivityFeature for plumbing diagnostic activities. Thanks Brendon Parker
- Pull request #1350, implement IHttpActivityFeature for plumbing diagnostic activities. Thanks Brendon Parker
- Fixed S3 Lambda blueprint using inconsistent name between the class name and the function handler value.
- Pull request #1374, fixed typo in Native AOT blueprint. Thanks Pieter Germishuys
- Update container based blueprints to use .NET 7 base image.
- Fixed issue with .NET 7 version looking in build output folder for .NET 6.
- Add Native AOT .NET 7 blueprints.
- Update packagereferences for Amazon NuGet packages to latest versions.
- Update Custom Runtime blueprint to target .NET 7.
- Miscellaneous style and documentation clean up in S3 event, Annotations and ASP.NET Core Web API blueprints.
- Release NuGet package Amazon.Lambda.TestTool-7.0 for .NET 7.
- Fixed issue with incorrectly syncing CloudFormation template when there are build errors.
- Updated Javascript Dependencies in ASPNetCoreWeb App template to latest versions
- Fixed issue with Lambda Functions using source generator serializer and returning a non-generic Task.
- Fixed issue #1124 with Lambda Functions using source generator serializer.
- Fixed issue with using templates with .NET 7 RC is installed.
- Add third party licenses
- Correctly populate the role property in CloudFormation template
- Copy XML documentation for Amazon.Lambda.Annotations into nupkg to drive IntelliSense
- Add more detail to the Lambda Annotations README.md
- Pull request #1308 fixing serialization of messages while monitoring dead letter queue. Thanks William Keller
- Add support for syncing YAML based CloudFormation templates
- Fix code generation bug for non API Gateway based Lambda functions returning a Task with no value
- Updated PackageReferences of AWS packages referenced in the templates.
- Breaking Change: API Gataway attributes have been moved to the Amazon.Lambda.Annotations.APIGateway namespace.
- Fix issue with incorrect code being generated when Lambda function return void.
- Fix issue with CloudFormation template not being sync when all LambdaFunction attributes are removed from code.
- Remove dependency from the AWSDK.S3. This reduces deployment bundle size and fixes serialization issues with the SDK enum like classes. This is a small breaking change due to class having different namespaces.
- Fixed the type of LexV2Interpretation.NluConfidence to double.
- Bump Newtonsoft.Json to 13.0.1
- Bump Newtonsoft.Json to 13.0.1
- Bump Newtonsoft.Json to 13.0.1
- Bump Newtonsoft.Json to 13.0.1
- Bump Newtonsoft.Json to 13.0.1
- Bump Newtonsoft.Json to 13.0.1
- Bump Newtonsoft.Json to 13.0.1
- Bump Newtonsoft.Json to 13.0.1
- Fixed issue with large log messages triggering an extra empty CloudWatch Log record being created.
- Fixed issue when log messages were larger then 1K they would be broken up over multiple CloudWatch Log records.
- Updated dependency on Amazon.Lambda.RuntimeSupport to version 1.8.1
- New package that contains classes that can be used as input and response types for Lambda functions that process Amazon Lex V2 event.
- Set the HttpContext.TraceIdentifier to the trace id for the Lambda invocation
- Updated dependency on Amazon.Lambda.AspNetCoreServer to version 7.2.0
- Logging messages with newlines will now be a single CloudWatch Log record instead of a record for each line. Note, container based Lambda functions will continue to have a separate record per line.
- Updated dependency on Amazon.Lambda.RuntimeSupport to version 1.8.0
- Corrected the return type of Partition property in KafkaEventRecord.
- Corrected the return type of partition property for Kafka event.
- Added test request for Application Load Balancer.
- Corrected the return type of partition property for Kafka event.
- Added test request for Application Load Balancer.
- Corrected the return type of partition property for Kafka event.
- Added test request for Application Load Balancer.
- Pull Request #1101 Error message for missing Amazon.Lambda.APIGatewayEvents package.
- Fixed bug with Amazon.Lambda.Annotations not correctly using assembly name for computing function handler string.
- Fix issue with naming collisions for request and context with Amazon.Lambda.Annotations.
- New package that contains classes that can be used as input types for Lambda functions that process Amazon ActiveMQ and RabbitMQ events.
- [Breaking Change] Corrected property name ConnectionAt to ConnectedAt in APIGatewayProxyRequest.ProxyRequestContext class.
- Update AWSSDK.DynamoDBv2 reference to version 3.7.3.24.
- Update blueprint definitions to reference new Amazon.Lambda.DynamoDBEvents version 2.1.1 and AWSSDK.DynamoDBv2 version 3.7.3.24.
- Pull Request #1096 Fix error message when .NET SDK found that is below .NET 6 requirement. Thanks Lachlan Blake
- Updated PackageReferences of AWS packages referenced in the templates.
- Change SourceGeneratorLambdaJsonSerializer to use the same JsonSerializerOptions as DefaultLambdaJsonSerializer
- Allow SourceGeneratorLambdaJsonSerializer to be extended with a custom Action to customize the JsonSerializerOptions
- Fix issue with ASP.NET Core Minimal API not binding HTTP request body to complex types
- Pull Request #1099 Logging improvements. Thanks Martin Costello
- Pull Request #1103 Support image/x-icon as base64. Thanks Martin Costello
- Pull Request #1103 Switch to TryGetValue for minor perf improvement. Thanks Martin Costello
- Updated dependency on Amazon.Lambda.AspNetCoreServer to 7.1.0
- Fix issue with sending large function input events being truncated.
- Pull Request #1098 Add HTTP API sample request. Thanks Martin Costello
- Fix issue with sending large function input events being truncated.
- Pull Request #1098 Add HTTP API sample request. Thanks Martin Costello
- Fix issue with sending large function input events being truncated.
- Pull Request #1098 Add HTTP API sample request. Thanks Martin Costello
- Add new page for testing executable assemblies. Useful for testing Lambda functions using top-level statements or function deployed as a custom runtime.
- Add new page for testing executable assemblies. Useful for testing Lambda functions using top-level statements or function deployed as a custom runtime.
- Add new page for testing executable assemblies. Useful for testing Lambda functions using top-level statements or function deployed as a custom runtime.
- Switch publishing to target the .NET 6 Lambda runtime
- Update Lambda templates to target .NET 6.
- Pull Request #1063 Minor performance improvements particular when targeting .NET 6.
- Pull Request #1039 Add new
SQSBatchResponse
type to indicate which messages failed and need to be retried. Thanks jon-armen
- Pull Request #1041 Updating README files explaining how to use ARM64. Thanks Bryan J Hogan
- First preview release of the Lambda Annotation framework
- Updated container image based templates to use .NET 6
- Updated PackageReferences to latest version for Amazon packages
- Fixed issue of duplicate log messages written to CloudWatch Logs
- Write unhandled exceptions from Lambda function to CloudWatch Logs
- Add exception information into X-Ray trace
- Port .NET Core 3.1 managed runtime functionality for AWS_LAMBDA_DOTNET_PREJIT environment variable
- Switch JSON parsing to System.Text.Json
- Fixed incorrect JSON parsing for Lambda context Cognito fields
- Fixed deadlock issue when using both Console.WriteX and ILambdaLogger with multiple threads
- Updated to latest version of Amazon.Lambda.Core (2.1.0)
- Updated to latest version of Amazon.Lambda.Core (2.1.0)
- Updated to latest version of Amazon.Lambda.Core (2.1.0)
- [Breaking Change] Removed support for .NET Core 2.1
- Added new environment variable
AWS_LAMBDA_HANDLER_LOG_FORMAT
to configure logging format. Supported values areDefault
andUnformatted
.
- Updated custom runtime templates to use .NET 6.
- Added .NET 6 support for test tool support to help with custom runtime .NET 6 functions.
- New package to make easy to configure ASP.NET Core project using minimal api style as Lambda functions.
- Changes to support the new Amazon.Lambda.AspNetCoreServer.Hosting packages
- Add new Log level APIs for .NET 6
- Add new source generator based serializers for .NET 6
- Added new LambdaBootstrapBuilder class to build the LambdaBootstrap
- Implemented the new Amazon.Lambda.Core logging APIs for .NET 6
- [Breaking Change] Moved NameValue class from Amazon.Lambda.CloudWatchEvents.ECSEvents to Amazon.Lambda.CloudWatchEvents namespace for reusability.
- [Breaking Change] Updated the model definitions for BatchJobStateChangeEvent.
- Added ability to set AWS credentials explicilty using
-AWSAccessKeyId
,-AWSSecretKey
, and-AWSSessionToken
- Added
-Architecture
parameter to configure the Lambda function to use ARM64 architecture
- Updated PackageReference versions for AWS SDK for .NET
- Updated container image blueprints to use .NET version independent publish path.
- Updated custom runtime blueprints to use provided.al2 Lambda runtime
- Fixed issue with project name not correctly replacing all instances of BlueprintBaseName
- Added support for reporting batch item failures when processing streams for DynamoDBEvent.
- Fixed issue with internal server errors not returning as HTTP status code 500
- Added support for Amazon Connect ContactFlow event.
- [Breaking Change] Updated the model definitions for ECSTaskStateChangeEvent.
- Added missing System.Text.Json.Serialization.JsonPropertyName attribute for some properties in KinesisAnalyticsFirehoseInputPreprocessingEvent and KinesisAnalyticsStreamsInputPreprocessingEvent classes.
- Added OriginalValue field to SlotDetail class for LexEvent.
- [Breaking Change] Changed data type of LexCurrentIntent.NluIntentConfidenceScore to Nullable<double> for LexEvent.
- Fixed issue with HTTP Status Code not being initialized to 200.
- Pull Request #726 the default version of PowerShell Core to 6.1.1. Thanks Ben Gelens
- Set HOME environment variable for PowerShell Lambda (work around for PowerShell/PowerShell#13189)
- Fixed permission issue in DynamoDB Blog blueprint
- Updated dependencies on AWS libraries
- Remove unnecessary log message that was cluttering the attached CloudWatch Log stream
- Fixed issue with testing ASP.NET Core based Lambda functions and services registered in the IServiceCollection not resolving.
- Fixed issue with testing ASP.NET Core based Lambda functions and services registered in the IServiceCollection not resolving.
- Fixed issue with testing ASP.NET Core based Lambda functions and services registered in the IServiceCollection not resolving.
- [Breaking Change] Pull request #721. Fixes double encoding issue with query string parameters. Thanks Peter Liljenberg
- Fixed bug with deserializing XAmzRequestId property of S3ObjectLambdaEvent.
- Netstandard 1.3 support removed
- Netstandard 1.3 support removed
- Netstandard 1.3 support removed
- Netstandard 1.3 support removed
- Netstandard 1.3 support removed
- Netstandard 1.3 support removed
- Netstandard 1.3 support removed
- Netstandard 1.3 support removed
- Netstandard 1.3 support removed
- Netstandard 1.3 support removed
- Netstandard 1.3 support removed
- Netstandard 1.3 support removed
- Added event object for S3 Object Lambda.
- Pull request #834. Fixed issue invoking Lambda function in test tool with no payload. Thanks #russau.
- Pull request #834. Fixed issue invoking Lambda function in test tool with no payload. Thanks #russau.
- Pull request #834. Fixed issue invoking Lambda function in test tool with no payload. Thanks #russau.
- Pull request #815. Fix for when the certificate PEM string contains a trailing new line ('\n'). Thanks Damian Hickey
- Pull request #787. Add support for ITlsConnectionFeature and marshall the APIGW client cert to HttpContext. Thanks Damian Hickey
- Pull request #777. Add DMARC verdict. Thanks Lu�s Sousa.
- Fixed issue with incorrectly parsing ImageUri from the serverless.template.
- Fixed issue with incorrectly parsing ImageUri from the serverless.template.
- Update all references to the deprecated AWSLambdaFullAccess managed policy to AWSLambda_FullAccess
- Pull request #755. Added Support for Binary Media Types in AspNetCoreWebApp Blueprint. Thanks Carlos Santos.
- Add Lambda and IAM authorizer fields to APIGatewayHttpApiV2ProxyRequest
- This version is the implementation for Lambda Runtime Interface Client used in the .NET 5 base container image
public.ecr.aws/lambda/dotnet:5.0
- Added support to load user's .NET function based on function handler string.
- Added templates targeting .NET 5 as container images.
- Fixed .NET 5 Custom Runtime template to use
DefaultLambdaJsonSerializer
- Added support for reading container image configuration information from
aws-lambda-tools-defaults.json
or the CloudFormation template.
- Added support for reading container image configuration information from
aws-lambda-tools-defaults.json
or the CloudFormation template.
- New version of the test tool to support .NET 5.0. Feature set and codebase is same as the .NET Core 3.1 just retargeted to .NET 5.0.
- Added the LambdaRuntimeDockerfiles directory to this repository which contains the Dockerfile used to build AWS Lambda .NET 5 base image.
- Updated custom runtime templates to target .NET 5.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Pull request #751 Return cookies through proxy response message to support multiple cookies. Thanks Peter Liljenberg
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Updated to latest version of AWSSDK.DynamoDBv2.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Updated to latest version of AWSSDK.Kinesis.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Updated to latest version of AWSSDK.S3.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Update code signing certificate for signing the assembly.
- Added new properties for API Gateway's mutual tls feature.
- Updated to version 2.2.0 of Amazon.Lambda.APIGatewayEvents
- Added default JsonWriterOptions to change serialization of quotation marks from ascii representation to an escaped quote
- Updated to version 2.0.2 of Amazon.Lambda.Serialization.SystemTextJson
- Pull request #729 Added code to load cookies from HTTPv2 request. Thanks Andy Hopper
- Fixed issue with dead locking getting triggered Lambda function being executed blocks on async calls.
- Set the HOME environment variable before executing PowerShell script. This is a work around to the following PowerShell issue: PowerShell/PowerShell/issues/13189
- Pull request #672 Improve error handling when marshalling API Gateway request. Thanks Grahame Horner
- Pull request #683 Fixed issue with using internal NullScope type. Thanks Zdenek Havlin
- Updated to use latest Amazon.Lambda.Logging.AspNetCore dependency.
- Fixed issue with response not being written to log when LAMBDA_NET_SERIALIZER_DEBUG is set to true.
- Updated to version 2.0.1 of Amazon.Lambda.Serialization.SystemTextJson
- Updated blueprints to use latest versions of AWS packages
- Added new
DefaultLambdaJsonSerializer
class to replaceLambdaJsonSerializer
has inconsistent casing issues with the JSON serialized from .NET objects. - DefaultLambdaJsonSerializer addresses with with LambdaJsonSerializer not honoring the JsonSerializerOptions when LAMBDA_NET_SERIALIZER_DEBUG environment variable set.
- Added
CamelCaseLambdaJsonSerializer
for use cases where the JSON serialized from .NET object need camelCase. - Obsoleted
LambdaJsonSerializer
due to issues with inconsistent JSON casing. Users should update toDefaultLambdaJsonSerializer
.
- When targeting .NET Core 3.1 bootstrapping switched to
IHostBuilder
. - Updated README explaining how bootstrapping works for Lambda.
- Add
PathParameters
toAPIGatewayHttpApiV2ProxyRequest
- Updated Application LoadBalancer response objects to have
JsonPropertyName
on the properties to make sure the casing matched what the Application LoadBalancer expected.
- Updated Kinesis Analytics response objects to have
JsonPropertyName
on the properties to make sure the casing matched what Kinesis Analytics expected.
- Updated Lex response objects to have
JsonPropertyName
on the properties to make sure the casing matched what Lex expected.
- Updated blueprints to use latest versions of AWS packages
- Updated ASP.NET Core 3.1 blueprints to use
IHostBuilder
- Fixed issue with not correctly loading assemblies for the selected project in the custom AssemblyLoadContext.
- Pull Request #611 Fixes issue with RemainingTime from the LambdaContext returning negative values. Thanks Martin Costello
- New JSON serializer based on System.Text.Json
- Added support for API Gateway HTTP API using the new
APIGatewayHttpApiV2ProxyFunction
base class - Fixed issue with HttpContext.RequestServices returning null
- Use new Amazon.Lambda.Serialization.SystemTextJson for JSON serialization when targeting .NET Core 3.1
- Added support for API Gateway HTTP API support using
APIGatewayHttpApiV2ProxyRequest
andAPIGatewayHttpApiV2ProxyResponse
classes
- Load Lambda code in separate AssemblyLoadContext to avoid assembly collisions
- Added new switch
--no-ui
to start debugging code immediately with using the web interface. More info can be found here
- New test tool for .NET Core 3.1 Lambda functions
- Uses same class library for loading and executing Lambda code
- Has separate UI built using Server Side Blazor framework
- Updated templates to target .NET Core 3.1
- Added WebSocket API template
- Pull Request #558 Add support for response compression. Thanks Justin Dearing
- Fixed NPE bug when using the new API Gateway HTTP API support.
- Fixed issue with request content-length header not being set.
- Added OperationName, Error, IntegrationLatency, MessageDirection, RequestTime, RequestTimeEpoch, Status, ApiKeyId and AccessKey fields.
- Pull Request #540 Improve testability of for LambdaBootstrap. Thanks Martin Costello
- Added support for ASP.NET Core 3.0 which can be used with Lambda Custom Runtime.
- Added PostMarshallHttpAuthenticationFeature. Allows subclasses to customize the ClaimsPrincipal for the incoming request.
- Added PostMarshallItemsFeatureFeature. Allows subclasses to customize what is added to the Items collection of the HttpContext for the incoming request.
- Breaking changes to support ASP.NET Core 3.0
- Removed PostCreateContext.
- Items collection on HttpContext has been changed to return null when attempting to get a value that does not exist. This was done to match the behavior of ASP.NET Core requests coming from Kestrel.
- Pull Request #520 Match type namespace prefix as well when building
LogLevels
. Thanks Zdenek Havlin - Pull Request #522 Adjust handling of
Default
log category, adjusting it to .NET. Thanks Zdenek Havlin
- Pull Request #525 add naming strategy option to JsonSerializer. Thanks Maxime Beaudry
- Pull Request #518 performance improvement reusing Contract resolvers. Thanks Daniel Marbach
- Pull Request #496 Split out SimpleEmailEventsReceiptAction into different action types. Thanks Craig Brett
- Added ASP.NET Core 3.0 Custom Runtime template.
- Updated lambda.CustomRuntimeFunction template to .NET Core 3.0
- Updated AWS SDK for.NET and Amazon Lambda package references in all of the templates.
- Pull Request #503 add constructor that allows changing the serializer settings. Thanks Maxime Beaudry
- Updated AWS SDK for.NET and Amazon Lambda package references in all of the templates.
- Explicily reference the latest version of Newtonsoft.Json (12.0.2). This allows Lambda functions that are using a newer then what ASP.NET Core uses by default to have issues loading Newtonsoft.Json.
- Pull Request #471 added support for logging scopes. Thanks Piotr Karpala
- Updated to use version 2.3.0 of Amazon.Lambda.Logging.AspNetCore
- Pull Request #459 add warning when using incorrect base type. Thanks Hans van Bakel
- Pull Request #457 added Simple Notification Service template. Thanks Nathan Westfall
- Remove version number for Microsoft.AspNetCore.App in ASP.NET Core templates. The validation check is no longer needed in current versions of .NET Core and has been removed from AWS .NET Tooling.
- Updated AWS SDK for.NET and Amazon Lambda package references in all of the templates.
- Pull Request #449 fixing routing with escape characters in resource path. Thanks Chris/0
- Fixed url encoding issue with query string values when called by API Gateway. #451
- Fixed issue handling ELB Health Checks when Lambda function placed behind an Application Load Balancer. #452
- Updated dependencies for AWS SDK for .NET and the Amazon Lambda packages to the latest version.
- Fixed issue loading dependent assemblies when the name differs from the NuGet package.
- New package to support running custom .NET Core Lambda runtimes like .NET Core 2.2. Read the following blog for more information. https://aws.amazon.com/blogs/developer/announcing-amazon-lambda-runtimesupport/
- New Custom Runtime blueprint for both C# and F#
- Amazon.Lambda.Templates (3.7.0) released with latest blueprints.
- Pull Request #409 allowing claims from custom authorizer to be passed into ASP.NET Core. Thanks Lukas Sinkus
- Fixed bug with Amazon.Lambda.Logging.AspNetCoreServer not reading logging settings from configuration like appsettings.json.
- Added PostCreateWebHost virtual method to run code after the IWebHost has been created but not started.
- Pull Request #401 adds ability to log EventId and Exception. Thanks Piotr Karpala
- Pull Request #403 added
--path
command line argument. Thanks Aidan Ryan - Fixed bug when searching for default config files during startup.
- Updated logging section in appsettings.json to Informational to match before the logging fix in Amazon.Lambda.AspNetCoreServer
- Updated NuGet dependencies.
- Amazon.Lambda.Templates (3.6.0) released with latest blueprints.
- Fixed issue with content-type being incorrectly set by API Gateway when ASP.NET Core does not return a content-type.
- ASP.NET Core based templates updated to use 3.0.1 of Amazon.Lambda.AspNetCoreServer.
- Amazon.Lambda.Templates (3.5.1) released with latest blueprints.
- Pull Request #364 added support for parsing YAML CloudFormation template. Thanks Samuele Resca
- Pull Request #382 added "ConnectionId" and "DomainName" to APIGatewayProxyRequest. Thanks FranciscoJCLus
- Added support for multi value headers and query string parameters.
- Added netstandard2.0 target framework.
- New package for AWS Lambda request and response types when Lambda function is integrated with an ELB Application Load Balancer.
- Support for Application load Balancer via new ApplicationLoadBalancerFunction base class.
- Switch to use multi value headers and query string parameters support from Amazon.Lambda.APIGatewayEvents.
- Fixed issue with url decoded resource parameters
- Fixed issue incorrectly url encoding query string parameters
- New package for AWS Lambda event types for CloudWatch Events.
- Pull Request #329 added support for Schedule events. Thanks Kalarrs Topham
- Pull Request #328 added support for Batch events. Thanks Kalarrs Topham
- Pull Request #327 added support for ECS events. Thanks Kalarrs Topham
- Added netstandard2.0 target framework.
- Added netstandard2.0 target framework.
- Added netstandard2.0 target framework.
- Added netstandard2.0 target framework.
- Added netstandard2.0 target framework.
- Updated dependency on AWSSDK.DynamoDBv2 to 3.3.17.5
- Added netstandard2.0 target framework.
- Added netstandard2.0 target framework.
- Added netstandard2.0 target framework.
- Added netstandard2.0 target framework.
- Updated to use 1.1.0 of Amazon.Lambda.Core to take advantage of the new .netstandard2.0 version.
- Added netstandard2.0 target framework.
- Updated dependency on AWSSDK.S3 to 3.3.31.15
- Added netstandard2.0 target framework.
- Added netstandard2.0 target framework.
- Added netstandard2.0 target framework.
- Added netstandard2.0 target framework.
- Added netstandard2.0 target framework.
- Pull Request #372 the default version of PowerShell Core to 6.1.1. Thanks Andrew Pearce
- Pull Request #380 added SQS blueprints. Thanks Andrew Pearce
- Pull Request #381 added S3 blueprints. Thanks Andrew Pearce
- New Application Load Balancer blueprint.
- Updated Amazon Lambda and AWS SDK for .NET package dependencies to latest version.
- Updated ASP.NET Core test projects for the switch to multi value headers.
- Amazon.Lambda.Templates (3.5.0) released with latest blueprints.
- Initial release of the new AWS .NET Mock Lambda Test Tool. Checkout the README.md for more details.
- Updated the default version of PowerShell Core to 6.1.0. This can be adjusted using the
PowerShellSdkVersions
parameter. - Pull Request #322 added CloudFormation custom resource template. Thanks Nate Ferrell
- Added more informative error message when unable to serialize JSON request and responses.
- Pull Request #308 added typed startup class. Thanks Chris/0
- Pull Request #304 switched to use ASP.NET Core Logging allowing consumers to filter the logging messages. Thanks Albert Szilvasy
- Pull Request #315 added image/jpg to list of binary encoding types. Thanks Khaja Nizamuddin
- Pull Request #324 fixed issue with SQS template not including the
<AWSProjectType>Lambda</AWSProjectType>
element. Thanks Greg Hartshorne in the project file. - Updated all templates to version 1.1.0 Amazon.Lambda.Serialization.Json.
- Amazon.Lambda.Templates (3.4.0) released with latest blueprints.
- New NuGet package that hosts the PowerShell Core runtime within a Lambda function. When the Lambda function is invoked it will execute a provided PowerShell script.
- New PowerShell module for authoring and publishing PowerShell based Lambda functions. For further details view the PowerShell Lambda Readme.
- Remove DotNetCliToolReference reference to Amazon.Lambda.Tools now that Amazon.Lambda.Tools has been converted to a Global Tool. Check out the announcement blog for further details.
- Amazon.Lambda.Templates (3.3.0) released with latest blueprints.
- Updated blueprints to use the new .NET Core 2.1 Lambda runtime.
- Pull request #291. Improving F# blueprints. Thanks to sharptom
- Amazon.Lambda.Templates (3.2.0) released with latest blueprints.
- New package for AWS Lambda event types for Amazon Simple Queue Service (SQS).
- Updated to handle the base 64 encoded strings coming from SQS events into .NET System.IO.MemoryStream objects.
- New Amazon SQS blueprint.
- Amazon.Lambda.Templates (3.1.0) released with latest blueprints.
- Pull request #277. Fixed issue with calculating PathBase for URLs with trailing slashes.
- Pull request #267. Provide ability to delay initializing the ASP.NET Core framework till first request.
- Fixed issue with ASP.NET Core not returning a content-type header and API Gateway incorrectly converting content-type to
application/json
.
- Add missing property
UsageIdentifierKey
toAPIGatewayCustomAuthorizerResponse
- Add work around for returning multiple cookies. API Gateway only allows returning one value per header. Cookies are returned by the SET-COOKIE header. To get around the limitation the SET-COOKIE header is returned with difference casing for each cookie.
- Change how ASP.NET Core Lambda functions choose how to configure logging by checking for the existence of the LAMBDA_TASK_ROOT environment variable instead of the ASPNETCORE_ENVIRONMENT environment variable being set to Development.
- Add F# based project templates including a new Giraffe based project template. To create an F# based Lambda project pass in the -lang F# command line switch.
dotnet new serverless.Giraffe -lang F# --region us-west-2 --profile default -o MyFSharpLambdaProject
- Change shortname prefix for Serverless based projects to serverless from lambda. Serverless projects are deployed with CloudFormation with any other required AWS resources defined in the CloudFormation template.
- Add Serverless version of DetectImageLabels and S3 templates which also create the S3 bucket and configure the notification as part of deployment.
- Fixed issues when creating projects with '.' and '-' in the project name.
- Fixed issue with encoding HTTP request resource path
- Pull request #234. Added constructor to allow passing in custom converters. This was needed to support F# specific converters. Thanks to rfrerebe.
- Moved this package to the AWS Extensons for .NET CLI repository along with the Amazon Elastic Container Service and AWS Elastic Beanstalk CLI extensions.
- Pull request #232. New event package for Kinesis Analytics.
- Implemented the OnStarting and OnCompleted callbacks for an HttpResponse.
- Fixed marshalling issue with API Gateway request to ASP.NET Core request.
- Add dependency to AWSSDK.SecurityToken to support profiles that use assume role features of Security Token Service.
- Amazon.Lambda.Templates (2.0.3) released with updated NuGet dependencies for the blueprints.
- APIGatewayCustomAuthorizerRequest updated to have the parameters for a request type custom authorizer.
- APIGatewayCustomAuthorizerContextOutput Updated to support custom return fields.
- Add new tracing-mode switch for AWS X-Ray support
- Add new tags switch to set tags on deployed functions
- Add new msbuild-parameters switch to pass in additional arguments to the dotnet publish command.
Also any arguments passed in on the commandline starting with /p: are assumed to be parameters to be passed to dotnet publish.
For example
dotnet lambda deploy-function TestFunc /p:Version=2.0.0
- Fixed issue with .NET Core 2.0 version requiring .NET Core 1.0 runtime being installed
- Amazon.Lambda.Templates (2.0.1) released with Amazon.Lambda.Tools reference bumped to 2.0.1 in blueprints.
- Added support for .NET Core 2.0 runtime in AWS Lambda.
- Add Validation if project is using a newer version of Microsoft.AspNetCore.All than is currently available in Lambda.
- Ignore, with warning, passed-in template parameters that are not declared in serverless.template.
- Fixed issue with --function-publish switch not working during function update.
- Deserialize incoming claims and custom authorizer properties to APIGatewayCustomAuthorizerContext
- Add missing Path property on ProxyRequestContext
- Updated target framework to .NET Standard 2.0 and ASP.NET Core 2.0
- If Cognito claims are found on an incoming API Gateway request create a ClaimsPrincipal with the claims for the HttpContext.User.
- Added virtual methods PostMarshallRequestFeature, PostMarshallConnectionFeature, PostMarshallResponseFeature and PostCreateContext to allow derived classes a chance to alter how requests and responses are marshalled.
- Mimic WebHost.CreateDefaultBuilder when creating the IWebHostBuilder and replace Kestrel registration with API Gateway.
- When not in development switch out the Console logger with Amazon.Lambda.Logger.AspNetCore to make sure application logging goes to the associated CloudWatch Logs without ANSI Console colors syntax.
- Fixed issue with not setting PathBase when marshalling request.
- Updated implementation of Microsoft.AspNetCore.Hosting.Server.IServer to match ASP.NET Core 2.0 declaration.
- Updated target framework to .NET Standard 2.0 and ASP.NET Core 2.0.
- Added registration extension methods to Microsoft.Extensions.Logging.ILoggingBuilder.
- New blueprint for an ASP.NET Core Web Application with Razor Pages.
- Amazon.Lambda.Templates (2.0.0) released with latest .NET Core 2.0 blueprints.
- Updated to use latest AWSSDK.S3 to fix issue with comparing EventName property to the SDK EventType constants.
- Update S3 blueprint to use latest Amazon.Lambda.S3Events.
- Amazon.Lambda.Templates (1.4.5) released with latest blueprints.
- Pull request #188. New event package for CloudWatch Logs. Thanks to Toshinori Sugita.
- Added new --apply-defaults switch. If set to true from either the command line or aws-lambda-tools-defaults.json, values from the aws-lambda-tools-defaults.json file will be applied when updating an existing function. By default function configuration values from aws-lambda-tools-defaults.json are ignored when updating an existing function to avoid unattended changes to production functions.
- Update dependency reference for Amazon.Lambda.Tools to 1.9.0
- Amazon.Lambda.Templates (1.4.4) released with latest blueprints.
- Add slot details and request attributes to LexEvent.
- Update dependency reference for Amazon.Lambda.LexEvents
- Amazon.Lambda.Templates (1.4.3) released with latest blueprints.
- Pull request #184, fixing issue with InputTranscript property on the wrong class. Thanks to jmeijon.
- Update dependency reference for Amazon.Lambda.LexEvents
- Amazon.Lambda.Templates (1.4.2) released with latest blueprints.
- Fixed issue deploying to AWS Lambda in the US GovCloud region.
- Add support using YAML formatted CloudFormation templates.
- Update dependency reference for Amazon.Lambda.Tools
- Amazon.Lambda.Templates (1.4.1) released with latest blueprints.
- Fixed error message when missing required parameters.
- Improved logic for searching for the current dotnet CLI
- Added --disable-version-check switch for users that want to try running with libraries that declare .NET Core 1.1 dependencies.
- Note, running with these libraries can have unforeseen side effects so only recommended for advanced cases with lots of testing done on the functions.
- Added new AWS Step Function Hello World blueprint.
- Amazon.Lambda.Templates (1.4.0) released with latest blueprints.
- Add --disable-interactive switch for use in CI systems to prevent the tooling from blocking waiting missing required parameters.
- Fixed issue with serverless deployment that was not returning a failed exit code when the CloudFormation stack failed to be created.
- Update dependency reference for Amazon.Lambda.Tools
- Amazon.Lambda.Templates (1.3.1) released with latest blueprints.
- Fixed issue computing resource path for custom domains.
- Fixed issue with resource path not being URL decoded.
- Add new package-ci command to use for deployment with AWS CodePipeline. This is the .NET Core Lambda equivalent of the AWS CLI command aws cloudformation package.
- Add --template-substitutions option to deploy-serverless and package-ci commands allowing parts of the serverless-template to be defined in separate files.
- Fixed issue with dead letter queue configuration getting cleared out during redeploy.
- Pull request #117, displaying tool version number. Thanks to Corey Coto.
- Add error check when deploying from Linux and the
zip
command line utility is not found. Thezip
tool is required on Linux to maintain file permissions.
- Pull request #110, adding support for log category wildcards. Thanks to Cris Barbero.
- Update dependency reference for Amazon.Lambda.Tools and Amazon.Lambda.Logging.AspNetCore
- Amazon.Lambda.Templates (1.2.0) released with latest blueprints.
- Fixed issue with not registering the JSON serializer.
- Updated ASP.NET Core WebAPI blueprints to use version Amazon.Lambda.AspNetCoreServer (0.10.1-preview1).
- Amazon.Lambda.Templates (1.2.1) released with latest blueprints.
- New package for AWS Lambda event types for Amazon Kinesis Firehose.
- New Amazon Kinesis Firehose blueprint.
- Amazon.Lambda.Templates (1.2.0) released with latest blueprints.
- Added validation to stop deploying .NET Core 1.0 AWS Lambda functions if the project includes .NET Core 1.1 dependencies.
- New package for AWS Lambda event types for Amazon Lex
- Added serialization logging which can be enabled by setting the environment variable LAMBDA_NET_SERIALIZER_DEBUG = true
- Pull request #75, adding binary support. Check the README.md for details. Thanks to Eugene Bekker.
- Pull request #89, populate RemoteIpAddress and RemotePort on HttpContext.Connection. Thanks to Marcus Lum.
- Added the APIGatewayProxyRequest and ILambdaContext to the HttpContext.Items collection with the collection keys APIGatewayRequest and LambdaContext.
- Removed request and response logging and rely on the new logging available in Amazon.Lambda.Serialization.Json. This allowed the method signature to be changed back to directly use the Amazon.Lambda.APIGatewayEvents class.
- Added IsBase64Encoded property to APIGatewayProxyResponse as part of the binary support for Amazon.Lambda.AspNetCoreServer.
- New Amazon Lex blueprint for the Lex Book Trip getting started sample.
- Updated all blueprints to latest version of the Amazon NuGet packages.
- Amazon.Lambda.Templates (1.1.0) released with latest blueprints.
- Update to latest AWSSDK.Core to pull in latest AWS SDK for .NET credential enhancments
- Promote to GA release
- Update to latest version of AWS SDK for .NET
- Update to latest version of AWS SDK for .NET
- Update to latest version of AWS SDK for .NET
- New NuGet package adding the Lambda blueprints to the dotnet CLI
- To install: dotnet new -i Amazon.Lambda.Templates::*
- Updated dependencies to latest AWS SDK for .NET dependencies and Amazon.Lambda.* dependencies.
- Fixed issue with AspNetCoreWebAPI not correctly checking if the BucketName property was set.
- Migrate blueprints to new msbuild project system.
- Projects all migrated Visual Studio 2017
- Flatten the publish runtime folder to help the Lambda runtime resolve platform specific dependencies. This also reduces the size of the Lambda package bundle by only including the dependencies needed for the Lambda environment.
- Updated all blueprints to version 1.3.0-preview1 of Amazon.Lambda.Tools
- Pull request #60, fixing issue with subnet ids in aws-lambda-tools-defaults.json . Thanks to Scott Brady for the pull request.
- Updated all blueprints to version 1.2.1-preview1 of Amazon.Lambda.Tools
- Reworked how the AWS region is determined. New logic follows the following pattern:
- Use region specified on command line
- Use region specified in aws-lambda-tools-defaults.json
- Determine region using the AWS SDK for .NET default region lookup
- Ask user for region
- Added --cloudformation-role commandline switch for the deploy-serverless command to specify an IAM role for CloudFormation to assume when creating or updating CloudFormation stacks.
- Changed deploy-serverless command to upload CloudFormation template directly to CloudFormation instead of S3 if the template size was less then 50,000 bytes. This was done to help users that were running into issues with the presigned URL to the template being too long for CloudFormation.
- Add EnableRequestLogging and EnableResponseLogging properties to APIGatewayProxyFunction. If set to true the request and/or response will be logged to the associated CloudWatchLogs. This required the method signature for FunctionHandlerAsync to be changed to use Streams so the raw request data could be captured. An extension method was added in the Amazon.Lambda.TestUtilities namespace with the previous signature to help testing.
- Pull request #42, adding custom authorizer support. Thanks to Justin Yancey for the pull request.
- Pull request #44, improve error handling.
- Updated dependency of Amazon.Lambda.APIGatewayEvents to version 1.0.2.
- Fixed issue with accessing a closed response stream.
- Added a preview ASP.NET Core Web API blueprint
- Pull request #33, fixing issue with returning error HTTP status codes. Thanks to Travis Gosselin for the pull request.
- Pull request #32, refactoring base Lambda function to allow sub types to customize the function invoke handling. Thanks to Justin Yancey for the pull request.
- New package for AWS Lambda event types for Amazon Simple Email Service. Thanks to Tom Winzig for the pull request.
- Added command line switches --config-file and --persist-config-file allowing use of alternative default config files and persisting the current values to the config file.
- Added --package switch to deploy-function and deploy-serverless commands to use a precompiled application package that skips building the project.
- Fixed issue with dotnet lambda package when output file was not a full file path.
- Updated all blueprints to version 1.1.0-preview1 of Amazon.Lambda.Tools
- Fixed issue with zipping application bundles from paths that contain spaces
- Added IsBase64Encoded property to APIGatewayProxyRequest
- Added support for marshaling request body
- Updated EmptyServerless and DynamoDBBlogAPI to 1.0.1 of Amazon.Lambda.APIGatewayEvents
- Updated all blueprints to version 1.0.4-preview1 of Amazon.Lambda.Tools
- Fixed issue with quoted strings in users path while searching for the dotnet CLI
- DynamoDBBlogAPI: Change content-type to text/plain for AddBlogAsync which returns the ID of the new blog
- Updated all blueprints to version 1.0.3-preview1 of Amazon.Lambda.Tools
- Add CAPABILITY_NAMED_IAM capability when performing serverless deployment
- Add ability to disable capabilities for serverless deployment using the switch --disable-capabilities
- Updated DynamoDBBlogAPI to map GetBlogAsync in serverless.template
- Updated all blueprints to version 1.0.2-preview1 of Amazon.Lambda.Tools
- Added PowerUserAccess as a managed policy used to create new IAM roles
- Added support for setting dead letter target with new switch --dead-letter-target-arn
- Added new "Detect Label Images" blueprint