fsprojects / FAKE

FAKE - F# Make
https://fake.build
Other
1.28k stars 582 forks source link

Use RollForward project property #2733

Closed amis92 closed 1 year ago

amis92 commented 1 year ago

Description

Use project property documented here: https://learn.microsoft.com/en-us/dotnet/core/project-sdk/msbuild-props#rollforward

The rollForwardOnNoCandidateFx in runtimeconfig.template.json is the old way. Since .NET Core 3.0, it was merged into RollForward: https://github.com/dotnet/runtime/issues/43492

rollForwardOnNoCandidateFx is no longer documented on microsoft docs. Controlling behavior suggests RollForward project property: https://learn.microsoft.com/en-us/dotnet/core/versions/selection#control-roll-forward-behavior

The mapping from rollForwardOnNoCandidateFx=2 to Major is based on: https://github.com/dotnet/runtime/issues/43492 (and the design document linked in last comment there).

yazeedobaid commented 1 year ago

@amis92 thanks for the PR. Can you please describe the effect of this change and what it addresses?

amis92 commented 1 year ago

The effect of this change is just using modern and documented solution, but the behavior stays exactly the same, as the current value of rollForwardOnNoCandidateFx=2 is currently mapped to the RollForward=Major by the SDK anyway.

So this PR addresses tech debt, by removing usage of a legacy, undocumented solution, and replacing it with a current, documented one.

yazeedobaid commented 1 year ago

Thanks