I want to use the latest version of System.ValueTuple which comes with .NetFramework 4.8 as far as I know. However, I have a dependency to System.Text.Json 8.0.1 referencing an older version (>= 4.3.0) of System.ValueTuple. NuGet will automatically restore transitive dependencies and therefore I cannot define a never version of System.ValueTuple myself for NuGet restore, because it is not inside a NuGet package. It is delivered with .NetFramework 4.8. I can also not use transitivePinning and CPM, because again, the latest System.ValueTuple is not a nuget package.
What have I tried?
I created a small console application only referencing System.Text.Json 8.0.1 and there is indeed an old version (4.6.XX) of System.ValueTuple in my binary folder. I found this old answer stating that the old version might be referencing the new one. Can anyone verify that? I couldn't find any documentation by Microsoft confirming or denying that. I also double checked the file version of System.ValueTuple in my .NetFramework folder which is indeed higher (4.8.XX).
I assume there is no issue, because the method signatures probably didn't change. However, it looks a bit risky to me to build against an old version and not ship the .dll to customers.