dotnet / dotnet/msbuild

Remove shared source files

Open
#11,494 0 comments 0 reactions 0 assignees View on GitHub
backlog triaged
Dominant language
C#
Stars
5.5k
Forks
1.5k
Avg merge
1d 8h
Merged PRs (30d)
141

Description

MSBuild repo historically uses source files shared across several projects. This is causing increased NGEN/JIT time, increased assembly size and mainly we are not able to factor our code in the right way due to type full name conflicts.

This problem could be resolved by several sequential steps/PRs:

- [ ] Identify and resolve all resource duplicates in our projects
- [ ] Merge all resources to a single resource file inside `Microsoft.Build.Framework` project. Move `ResourceUtilities` and `ErrorUtilities` to the `Microsoft.Build.Framework` and add `AssemblyResources` to make ResourceUtilities work as intended. Remove `AssemblyResources` files from projects with removed resources. Share the new resource file with `MSBuildTaskHost` and fix links to `ResourceUtilities` and `ErrorUtilities`.'
- [ ] Remove shared files in the `MSBuild` project. This will unlock enablement of `Microsoft.Build` internal types visibility and allow us to move some logic from ``MSBuild` assembly to `Microsoft.Build`.
- [ ] Incrementally remove rest of the shared sources (move them to the `Framework` project)

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.