aws / aws/aws-lambda-dotnet

Amazon.Lambda.Core is not deterministic

Open
#2,181 2 comments 0 reactions 0 assignees View on GitHub
feature-request module/lambda-client-lib p2 queued
Dominant language
C#
Stars
1.7k
Forks
503
Avg merge
1d 5h
Merged PRs (30d)
18

Description

### Describe the bug

Viewing [Amazon.Lambda.Core 2.8.0 in NuGet Package Explorer](https://nuget.info/packages/Amazon.Lambda.Core/2.8.0) shows various warnings about the build of the package with respect to Source Link and determinism:

Image

The NuGet packages should be built with `ContinuousIntegrationBuild=true` and `Deterministic=true` to resolve this.

.NET global tools such as `dotnet-validate` and `meziantou.framework.nugetpackagevalidation.tool` can be used to verify this.

For Amazon.Lambda.Core at least, this doesn't appear to be a regression and these have never been enabled.

### Regression Issue

- [ ] Select this option if this issue appears to be a regression.

### Expected Behavior

Packages should be deterministic, e.g. [OpenTelemetry.Instrumentation.AWSLambda@1.13.0](https://nuget.info/packages/OpenTelemetry.Instrumentation.AWSLambda/1.13.0):

Image

### Current Behavior

NuGet package is not deterministic:

Image

### Reproduction Steps

View the NuGet package in [NuGet Package Explorer](https://nuget.info/packages/Amazon.Lambda.Core/2.8.0).

### Possible Solution

Set `ContinuousIntegrationBuild=true` and `Deterministic=true` MSBuild properties when building the NuGet packages for publishing to NuGet.org.

### Additional Information/Context

_No response_

### AWS .NET SDK and/or Package version used

Amazon.Lambda.Core 2.8.0

### Targeted .NET Platform

All

### Operating System and version

All

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.