dotnet / dotnet/arcade-services
Patch `dotnet symbol-tool` to check completeness & availability of symbols
- Dominant language
- C#
- Stars
- 86
- Forks
- 86
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 35
Description
After some review / discussions about these issues: dotnet/arcade#167, dotnet/arcade#173, dotnet/arcade#1874 it was clear that issue dotnet/arcade#1874 encompasses both dotnet/arcade#167 and dotnet/arcade#173. Moreover, it was decided that we would use [symbol-tool](https://github.com/dotnet/symstore/tree/master/src/dotnet-symbol) to perform validation and availability check of symbols.
A temporary solution for both of these problems was provided in this PR: https://github.com/dotnet/arcade/pull/2492 . However, there are a few things that the script in that PR intentionally doesn't do and that we should make sure `symbol tool` does. Moreover, there are a few things we should implement in `symbol tool` as well:
- Receive the path to two local NuGet packages and perform symbol completeness check.
- Receive the path to a regular NuGet package and check if symbols for that package are available in **both** MSDL & SymWeb.
- No need for downloading files when performing availability. Just checking the symbol file is available is probably sufficient.
- The tool should be able to handle "extension-less" files, like Linux executables.
- Make the tool available as an MSBuild task/target ?
For the record:
- **Symbol availability:** check that for every module in a .nupkg there is a symbol file in MSDL ~or~*and* SymWeb.
- **Symbol completeness:** given a .nupkg and a .symbols.nupkg (or .snupkg) we need to check that for each module in the .nupkg there is a symbol file in the symbol package.
/cc @mikem8361 @dagood @tmat @leculver
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.