SourceLinkExtract 1.0.3

dotnet tool install --global SourceLinkExtract --version 1.0.3
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest # if you are setting up this repo
dotnet tool install --local SourceLinkExtract --version 1.0.3
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=SourceLinkExtract&version=1.0.3
nuke :add-package SourceLinkExtract --version 1.0.3

SourceLinkExtract

NuGet here

A tool to extract source files using sourcelink metadata.

extract ./test.dll ./test-meta/

If you for some reason have to use Windows, convert your compilation to portable pdb https://github.com/dotnet/symreader-converter

Argument 1

The input filepath can be a pdb, or compilation (exe/dll/...).

./test.dll
./test.pdb
./test.exe

Argument 2

Filepath of the metadata dump, in the following format:

{
  "link": {
    "documents": {
      "/_/*": "https://raw.githubusercontent.com/ProphetLamb/Surreal.Net/9050c906117c795ca385fd52b75062771a2a8816/*"
    }
  },
  "docs": [
    {
      "name": "src/Abstractions/Database.cs",
      "lang": "3f5162f8-07c6-11d3-9053-00c04fa302a1",
      "algo": "8829d00f-11b8-4213-878b-770e8597ac16",
      "hash": "sksvYzgtjDMO34efmUFUzcmtYiT/TuXUrURrbf9dNwk="
    },
    [...]
  ]
}

Argument 3

Output directorypath of extracted sourcecode.

./meta/src/Abstractions/Database.cs
[...]

Argument 4

Build path. The base path at which the assembly was build. This prefix is removed from the directory name to ensure a relative path is used when generating the symbols.

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last updated
1.0.3 222 8/1/2023
1.0.2 489 9/25/2022
1.0.1 443 9/23/2022
1.0.0 393 9/23/2022