dotnet / dotnet/source-build

Minimize differences between different builds of .NET

Open
#4,010 7 comments 0 reactions 0 assignees View on GitHub
area-product-experience
Dominant language
No language data
Stars
287
Forks
145
Avg merge
1d 22h
Merged PRs (30d)
10

Description

A .NET SDK produced by different vendors can be very different.

A few years ago, a source-build .NET was built using a completely different process than a Microsoft-built SDK. It was possible that different versions/commits of repos were used to build source-build, in a very different configuration than a Microsoft-built SDK.

We know that Microsoft intends to move to using the VMR for .NET and later releases. We would like to see everyone building out of one repo/commit/tag as much as possible and minimize the differences in sources between the sources used for various builds of .NET.

There is also a difference between the contents of the generated SDK, such as which files are in the SDK (see [the baseline diff](https://github.com/dotnet/dotnet/blob/main/test/Microsoft.DotNet.SourceBuild.Tests/assets/SdkContentTests/MsftToSbSdkFiles.diff)) as well as contents of the files (eg, optimization levels, or the .NET TFMs they are targeting).

We would like to minimize - as much as possible - the differences between the repo/commit/sources used to build .NET, and how .NET is built.

This doesn't change that fact that people may choose to build in different configurations (eg, link against system libraries), but it should be possible to build source-build (and a Microsoft-build) such that the results are nearly identical.

Issues that can't be attached as sub-issues here:

- https://github.com/dotnet/aspnetcore/issues/63782
- https://github.com/dotnet/aspnetcore/issues/65461

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.