Problem
We currently are relying on the fact of target framework and its implemented .NET standard version when building projects with dependencies and the TFMs of the projects don't match.
This can introduce conflicts in some situations, for example, #4460 (comment)
While exploring different alternatives (#4580 (comment)) to bring in AOT attributes to the repo, I notice currently there is no clear guideline on how to decide the TFM of a project.
Proposal
Make TFMs consistent across different projects; for example, #4370. Retire the TFM when it's out of support across all projects. The engineering overhead I foresee to achieve the goal is insignificant (mainly in maintaining public API docs.)
Problem
We currently are relying on the fact of target framework and its implemented .NET standard version when building projects with dependencies and the TFMs of the projects don't match.
This can introduce conflicts in some situations, for example, #4460 (comment)
While exploring different alternatives (#4580 (comment)) to bring in AOT attributes to the repo, I notice currently there is no clear guideline on how to decide the TFM of a project.
Proposal
Make TFMs consistent across different projects; for example, #4370. Retire the TFM when it's out of support across all projects. The engineering overhead I foresee to achieve the goal is insignificant (mainly in maintaining public API docs.)