-
Notifications
You must be signed in to change notification settings - Fork 831
Description
There is a lot of usage of hardcoded TFM values throughout the repo. This causes issues when migrating to newer major versions of .NET. For example, now that .NET 9 development is in process, the source in the fsharp repo really needs to be targeting net9.0 in order to work with source build. Today, this is done in a patch. But patches are not very sustainable because any changes in this repo surrounding the edits in the patch cause conflicts, which have happened multiple times so far for fsharp in the .NET 9 timeframe.
To avoid patches, or at least to help reduce the amount of edits in a patch, this repo can be updated to make use of Arcade's NetCurrent property. This allows the TFM to be dynamically updated via Arcade over time and avoids constant source changes for each release. Often times there is pushback from repos not wanting to be on the latest TFM (which is currently net9.0) because it may be a hinderance on the dev experience. In that case, following the pattern that Roslyn has done is a good option. They hardcode the desired TFM they want to use for normal dev scenarios, but when running in the context of source build, they use NetCurrent.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status