tkapin / test1

Test repo 1
0 stars 0 forks source link

[DRAFT] .NET Unified Build (Theme) #9

Closed tkapin closed 10 months ago

tkapin commented 10 months ago

Context and Motivation

Currently, the .NET product is organized in multi-repository fashion, with each of its components (runtime, roslyn, SDK, …) living in dedicated git repositories. While this code organization simplifies development of the individual components, construction of the final product requires complex orchestration to flow binary dependencies between the individual product repos, as well as human effort to get a coherent product build. This way of building the .NET product is called Microsoft’s official build.

Source-build, yet another way of building the .NET product, is used by our Linux partners (Red Hat, Canonical) to build and ship .NET in their distros, satisfying strict requirements of building the product without binary dependencies. Maintaining both these methodologies is expensive.

The Unified Build project aims to reduce the costs of the .NET servicing releases as well as the release time by providing a single (virtual) repository that with all the code and assets needed to build the entire product. Focusing on the source-build philosophy (aggregate code base is the source-of-truth) as the way that the community and Microsoft produce the product will drastically improve development operations, servicing, and community interaction.

.NET Unified Build is a theme for the Germanium semester.

Details can be found in the "Unified Build (Theme)" document. The scenarios listed below are pulled from this document and will be represented as linked work items in this project.

Scenarios

Areas

Source-Build

// I'm talking about unified build rather just than about source-build as the source-build methodology efficiently becomes the unified build (without considering using binary artifacts during the build)

Product Validation

Product Construction

Release Infra

tkapin commented 10 months ago

Issue created in arcade-services, closing.