runtime: SourceLink not working

I downloaded latest bits from core-setup – these have a hash of 281aba0f2cfcf9e8198145cbda73d8fc9dc2c45e within System.Runtime.dll which is from Wed Dec 5 01:08:52 2018 +0100 and would include my fix 24db8490eb6bdeeb2c4353d5b7f9b786546cfa2b from Nov 28. I got matching symbols both in the VS debugger and also downloading the symbols package.

Apparently https://github.com/dotnet/corefx/pull/33721 did not fix it. There are two problems

  1. Some pdb’s still have the internal path eg
c:\bak\sym>\t\strings Microsoft.CSharp.pdb | find /i "git"
{"documents":{"E:\\A\\_work\\7\\s\\corefx\\*":"https://devdiv.visualstudio.com/DevDiv/_apis/git/repositories/DotNet-CoreFx-Trusted/items?api-version=1.0&versionType=commit&version=281aba0f2cfcf9e8198145cbda73d8fc9dc2c45e&path=/*"}}
  1. Some pdb’s do not have sourcelink at all - I did not notice this before. Perhaps CCI is removing the sourcelink. Example: System.Runtime.pdb. It may be the ones where CCI has to inject type forwards.

There are presumably different causes and it may be that (2) has existed for some time. (1) is the priority.

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 29 (29 by maintainers)

Most upvoted comments

I verified sourcelink with the latest sdk pdbs(preview 5) and it is working fine

This is in progress. Please make sure to check for sourcelink info in official builds once the genfacades work is done.

As we are not the only ones that ship assemblies with source link support, would it makes to streamline such a validation and move it to arcade instead? I believe such a validation would be nice but definitely not high-prio in comparison to other things that are on the plate right now.

We should use this to make sure that once https://github.com/dotnet/arcade/issues/1584 is fixed that all shipping implementation assemblies have matching symbols with source-link enabled. Maybe it should even add validation to our build to ensure that’s true. For example here: https://github.com/dotnet/corefx/blob/master/pkg/frameworkPackage.targets#L109