dotnet / dotnet/msbuild

Refactor ExecuteInstantiatedTask exception handling

Open
#790 1 comment 1 reaction 1 assignee Assigned to @Copilot View on GitHub
Area: Debuggability help wanted triaged
Dominant language
C#
Stars
5.5k
Forks
1.5k
Avg merge
1d 13h
Merged PRs (30d)
133

Description

There's a great deal of logic in `ExecuteInstantiatedTask` designed to handle exceptions thrown by tasks: https://github.com/Microsoft/msbuild/blob/4b30fac51ab58dadfffedb2a57e83b8398e3a5e1/src/XMakeBuildEngine/BackEnd/Components/RequestBuilder/TaskBuilder.cs#L720

Included in a lot of that logic is "rethrow wrapped to preserve stack", which was required in C# before C# 6. But now we have exception filters, which could simplify this logic and preserve stacks for free.

This is an important part of failure handling, so we'd need to make sure the right behavior from the existing logic is preserved.

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.