dotnet / dotnet/msbuild

Move/Refactor errors related code from Traits

Open
#8,871 0 comments 0 reactions 0 assignees View on GitHub
internal-team-onboarding Refactoring triaged
Dominant language
C#
Stars
5.5k
Forks
1.5k
Avg merge
1d 13h
Merged PRs (30d)
133

Description

### Background
There is a code overlap/duplication between `Traits` and `ErrorUtilities`: https://github.com/dotnet/msbuild/blob/main/src/Framework/Traits.cs#L471-L493 vs https://github.com/dotnet/msbuild/blob/df97a4b69224643b4af407f41b33f8c9762af3c0/src/Framework/ErrorUtilities.cs

and newly as well between `Traits` and `ResourceUtilities`:
https://github.com/dotnet/msbuild/blob/main/src/Shared/ResourceUtilities.cs#L214-L255 vs
https://github.com/dotnet/msbuild/pull/8779/files/80e0df6fc0cdabb876ecffa37028db3e6c601673#diff-248a4d8f08fe76eb35f1020d07a8d4300f623e28dba2706090517c8d48692dcaR496-R555

### Goal
Unify the error handling code in `ErrorUtilities`

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by comparing the referenced sections of src/Framework/Traits.cs, src/Framework/ErrorUtilities.cs, and src/Shared/ResourceUtilities.cs to map the duplicated error-handling code. Review the related changes in pull request 8779 before determining the refactoring boundaries. Done means the overlapping error handling is unified in ErrorUtilities without changing its behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
build-system
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.