aws / aws/aws-dotnet-distributed-cache-provider

Enable deterministic builds and Source Link for produced NuGet packages

Open
#130 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
47
Forks
3
Avg merge
1d 11h
Merged PRs (30d)
6

Description

### Summary

The NuGet packages produced by this repository are not built deterministically and ship without [Source Link](https://learn.microsoft.com/dotnet/standard/library-guidance/sourcelink). As a result, package output is not reproducible and consumers cannot step into the shipped libraries from source-control metadata while debugging.

### Requested change

Enable deterministic builds and Source Link in the shared build configuration (e.g. `buildtools/common.props` / `Directory.Build.props`), matching the pattern already adopted across other AWS .NET libraries:

```xml

true

true
true
true

```

(The exact `Cicd`/CI gating condition should follow whatever this repo already uses to detect CI builds.)

### Why

- **Reproducible builds** — identical inputs produce identical package output.
- **Source Link** — debuggers can fetch the exact matching source from GitHub for the shipped packages.

### References

Same change applied in sibling repos:
- aws/aws-lambda-dotnet#2181
- aws/integrations-on-dotnet-aspire-for-aws#245
- Source Link enablement across the aws-dotnet-devex-pipelines libraries

Contributor guide

Open the contributing guide

Research direction

Start by reading buildtools/common.props and Directory.Build.props, then identify how this repository detects CI builds. Compare the shared configuration with the referenced sibling repositories and inspect the package build flow. Done means produced NuGet packages have deterministic metadata and Source Link enabled without changing local-build behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
build-system, release
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
72/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.