dotnet / dotnet/msbuild

msbuild should pass TFM for classic csproj project to GetReferenceNearestTargetFrameworkTask

Open
#3,546 3 comments 0 reactions 0 assignees View on GitHub
triaged
Dominant language
C#
Stars
5.5k
Forks
1.5k
Avg merge
1d 13h
Merged PRs (30d)
133

Description

after talking with @rainersigwald, we realized that when msbuild invokes NuGet's `GetReferenceNearestTargetFrameworkTask`, it does not pass the tfm from a referenced project if it is a classic csproj.

code in question- https://github.com/Microsoft/msbuild/blob/51f53ebf530612beede45d13c535152785e23bdd/src/Tasks/Microsoft.Common.CurrentVersion.targets#L1700-L1713

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in src/Tasks/Microsoft.Common.CurrentVersion.targets at the linked lines around the GetReferenceNearestTargetFrameworkTask invocation. Trace how the referenced project’s target framework is available for classic csproj projects. Done means that invocation passes the referenced project’s TFM when applicable.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
build-system
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.