Skip to content

Instantly share code, notes, and snippets.

@guitarrapc
Last active January 20, 2025 03:52
Show Gist options
  • Save guitarrapc/28184725cde9d59f51dc655bf84642f9 to your computer and use it in GitHub Desktop.
Save guitarrapc/28184725cde9d59f51dc655bf84642f9 to your computer and use it in GitHub Desktop.
Export NuGet Packages referenced in C# Solution, then list Licenses.

Output NuGet Packages referenced in Solution.

dotnet list package --include-transitive --format json > output.json

Then run Program.cs

dotnet run

It shows result in Markdown. (see RESULT.md)

{
"version": 1,
"parameters": "--include-transitive",
"problems": [
{
"level": "warning",
"text": "(A) : Auto-referenced package."
}
],
"projects": [
{
"path": "D:/github/guitarrapc/csharp-lab/src/LinuxBuild/ClassLibrary/ClassLibrary.csproj",
"frameworks": [
{
"framework": "net9.0"
}
]
},
{
"path": "D:/github/guitarrapc/csharp-lab/src/LinuxBuild/ConsoleApp/ConsoleApp.csproj",
"frameworks": [
{
"framework": "net9.0"
}
]
},
{
"path": "D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj",
"frameworks": [
{
"framework": "net9.0",
"topLevelPackages": [
{
"id": "Grpc.AspNetCore",
"requestedVersion": "2.67.0",
"resolvedVersion": "2.67.0"
}
],
"transitivePackages": [
{
"id": "Google.Protobuf",
"resolvedVersion": "3.27.0"
},
{
"id": "Grpc.AspNetCore.Server",
"resolvedVersion": "2.67.0"
},
{
"id": "Grpc.AspNetCore.Server.ClientFactory",
"resolvedVersion": "2.67.0"
},
{
"id": "Grpc.Core.Api",
"resolvedVersion": "2.67.0"
},
{
"id": "Grpc.Net.Client",
"resolvedVersion": "2.67.0"
},
{
"id": "Grpc.Net.ClientFactory",
"resolvedVersion": "2.67.0"
},
{
"id": "Grpc.Net.Common",
"resolvedVersion": "2.67.0"
},
{
"id": "Grpc.Tools",
"resolvedVersion": "2.67.0"
},
{
"id": "Microsoft.Extensions.DependencyInjection",
"resolvedVersion": "6.0.0"
},
{
"id": "Microsoft.Extensions.DependencyInjection.Abstractions",
"resolvedVersion": "6.0.0"
},
{
"id": "Microsoft.Extensions.Http",
"resolvedVersion": "6.0.0"
},
{
"id": "Microsoft.Extensions.Logging",
"resolvedVersion": "6.0.0"
},
{
"id": "Microsoft.Extensions.Logging.Abstractions",
"resolvedVersion": "6.0.0"
},
{
"id": "Microsoft.Extensions.Options",
"resolvedVersion": "6.0.0"
},
{
"id": "Microsoft.Extensions.Primitives",
"resolvedVersion": "6.0.0"
},
{
"id": "System.Diagnostics.DiagnosticSource",
"resolvedVersion": "6.0.0"
},
{
"id": "System.Runtime.CompilerServices.Unsafe",
"resolvedVersion": "6.0.0"
}
]
}
]
},
{
"path": "D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorServerApp/BlazorServerApp.csproj",
"frameworks": [
{
"framework": "net9.0"
}
]
},
{
"path": "D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj",
"frameworks": [
{
"framework": "net9.0",
"topLevelPackages": [
{
"id": "Microsoft.AspNetCore.Components.WebAssembly",
"requestedVersion": "9.0.0",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.AspNetCore.Components.WebAssembly.DevServer",
"requestedVersion": "9.0.0",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.NET.ILLink.Tasks",
"requestedVersion": "[9.0.0, )",
"resolvedVersion": "9.0.0",
"autoReferenced": "true"
},
{
"id": "Microsoft.NET.Sdk.WebAssembly.Pack",
"requestedVersion": "[9.0.0, )",
"resolvedVersion": "9.0.0",
"autoReferenced": "true"
}
],
"transitivePackages": [
{
"id": "Microsoft.AspNetCore.Authorization",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.AspNetCore.Components",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.AspNetCore.Components.Analyzers",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.AspNetCore.Components.Forms",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.AspNetCore.Components.Web",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.AspNetCore.Metadata",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.Extensions.Configuration",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.Extensions.Configuration.Abstractions",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.Extensions.Configuration.Binder",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.Extensions.Configuration.FileExtensions",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.Extensions.Configuration.Json",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.Extensions.DependencyInjection",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.Extensions.DependencyInjection.Abstractions",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.Extensions.FileProviders.Abstractions",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.Extensions.FileProviders.Physical",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.Extensions.FileSystemGlobbing",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.Extensions.Logging",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.Extensions.Logging.Abstractions",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.Extensions.Options",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.Extensions.Primitives",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.JSInterop",
"resolvedVersion": "9.0.0"
},
{
"id": "Microsoft.JSInterop.WebAssembly",
"resolvedVersion": "9.0.0"
}
]
}
]
},
{
"path": "D:/github/guitarrapc/csharp-lab/src/LinuxBuild/ClassLibrary.Windows/ClassLibrary.Windows.csproj",
"frameworks": [
{
"framework": "net9.0-windows7.0"
}
]
},
{
"path": "D:/github/guitarrapc/csharp-lab/src/Blazor/BlazorServerApp/BlazorServerApp.csproj",
"frameworks": [
{
"framework": "net9.0",
"topLevelPackages": [
{
"id": "Microsoft.VisualStudio.Azure.Containers.Tools.Targets",
"requestedVersion": "1.21.0",
"resolvedVersion": "1.21.0"
}
]
}
]
},
{
"path": "D:/github/guitarrapc/csharp-lab/src/Blazor/BlazorServerIPBlockApp/BlazorServerIPBlockApp.csproj",
"frameworks": [
{
"framework": "net9.0",
"topLevelPackages": [
{
"id": "IPNetwork2",
"requestedVersion": "3.0.667",
"resolvedVersion": "3.0.667"
},
{
"id": "Microsoft.VisualStudio.Azure.Containers.Tools.Targets",
"requestedVersion": "1.21.0",
"resolvedVersion": "1.21.0"
}
]
}
]
},
{
"path": "D:/github/guitarrapc/csharp-lab/src/Logger/LoggerBlazorApp/LoggerBlazorApp.csproj",
"frameworks": [
{
"framework": "net9.0",
"topLevelPackages": [
{
"id": "Microsoft.VisualStudio.Azure.Containers.Tools.Targets",
"requestedVersion": "1.21.0",
"resolvedVersion": "1.21.0"
},
{
"id": "ZLogger",
"requestedVersion": "2.5.9",
"resolvedVersion": "2.5.9"
}
],
"transitivePackages": [
{
"id": "Microsoft.Extensions.DependencyInjection",
"resolvedVersion": "8.0.0"
},
{
"id": "Microsoft.Extensions.DependencyInjection.Abstractions",
"resolvedVersion": "8.0.0"
},
{
"id": "Microsoft.Extensions.Logging",
"resolvedVersion": "8.0.0"
},
{
"id": "Microsoft.Extensions.Logging.Abstractions",
"resolvedVersion": "8.0.0"
},
{
"id": "Microsoft.Extensions.Options",
"resolvedVersion": "8.0.0"
},
{
"id": "Microsoft.Extensions.Primitives",
"resolvedVersion": "8.0.0"
},
{
"id": "System.IO.Hashing",
"resolvedVersion": "8.0.0"
},
{
"id": "System.Threading.Channels",
"resolvedVersion": "8.0.0"
},
{
"id": "Utf8StringInterpolation",
"resolvedVersion": "1.3.1"
}
]
}
]
},
{
"path": "D:/github/guitarrapc/csharp-lab/src/SourceGenerator/SourceGeneratorBasic/SourceGeneratorBasic.csproj",
"frameworks": [
{
"framework": "netstandard2.0",
"topLevelPackages": [
{
"id": "Microsoft.CodeAnalysis.Analyzers",
"requestedVersion": "3.3.4",
"resolvedVersion": "3.3.4"
},
{
"id": "Microsoft.CodeAnalysis.CSharp",
"requestedVersion": "4.11.0",
"resolvedVersion": "4.11.0"
},
{
"id": "NETStandard.Library",
"requestedVersion": "[2.0.3, )",
"resolvedVersion": "2.0.3",
"autoReferenced": "true"
}
],
"transitivePackages": [
{
"id": "Microsoft.CodeAnalysis.Common",
"resolvedVersion": "4.11.0"
},
{
"id": "Microsoft.NETCore.Platforms",
"resolvedVersion": "1.1.0"
},
{
"id": "System.Buffers",
"resolvedVersion": "4.5.1"
},
{
"id": "System.Collections.Immutable",
"resolvedVersion": "8.0.0"
},
{
"id": "System.Memory",
"resolvedVersion": "4.5.5"
},
{
"id": "System.Numerics.Vectors",
"resolvedVersion": "4.5.0"
},
{
"id": "System.Reflection.Metadata",
"resolvedVersion": "8.0.0"
},
{
"id": "System.Runtime.CompilerServices.Unsafe",
"resolvedVersion": "6.0.0"
},
{
"id": "System.Text.Encoding.CodePages",
"resolvedVersion": "7.0.0"
},
{
"id": "System.Threading.Tasks.Extensions",
"resolvedVersion": "4.5.4"
}
]
}
]
}
]
}
using System.Collections.Concurrent;
using System.Text.Json;
using System.Text.Json.Serialization;
using System.Xml.Linq;
var path = @"output.json";
var bytes = File.ReadAllText(path);
var packages = JsonSerializer.Deserialize<DotnetCliListPackages>(bytes);
ArgumentNullException.ThrowIfNull(packages);
var licenses = new ConcurrentBag<DotnetLicense>();
var nugetLicense = new NuGetLicense();
foreach (var project in packages.Projects)
{
var Name = project.Path;
foreach (var framework in project.Frameworks)
{
if (framework.TopLevelPackages is not null)
{
foreach (var x in framework.TopLevelPackages)
{
var licenseInfo = new DotnetLicense
{
Path = Name,
LicenseInfo = new PackageInfo
{
Id = x.Id,
Version = x.ResolvedVersion,
License = await nugetLicense.GetNuGetLicenseAsync(x.Id, x.ResolvedVersion),
IsTransitivePackage = false,
}
};
licenses.Add(licenseInfo);
}
}
if (framework.TransitivePackages is not null)
{
await Parallel.ForEachAsync(framework.TransitivePackages, new ParallelOptions { MaxDegreeOfParallelism = 3 }, async (x, _) =>
{
var licenseInfo = new DotnetLicense
{
Path = Name,
LicenseInfo = new PackageInfo
{
Id = x.Id,
Version = x.ResolvedVersion,
License = await nugetLicense.GetNuGetLicenseAsync(x.Id, x.ResolvedVersion),
IsTransitivePackage = true,
}
};
// debugger checker
if (licenseInfo.LicenseInfo.License == "")
{
var debuggerLine = "";
}
licenses.Add(licenseInfo);
});
}
}
}
Console.WriteLine("# Show all NuGet Packages with Project Path");
// licenses.Dump();
OutputMarkdown(licenses);
Console.WriteLine("");
Console.WriteLine("# Show only NuGet Packages");
var licenseOnly = licenses
.Select(x => x.LicenseInfo)
.DistinctBy(x => x.Id + x.Version)
.OrderBy(x => x.Id);
OutputMarkdown2(licenseOnly);
static void OutputMarkdown(IEnumerable<DotnetLicense> licenses)
{
Console.WriteLine($"""
| Path | Id | Version | License | IsTransitive |
| --- | --- | --- | --- | --- |
""");
foreach (var license in licenses)
{
Console.WriteLine($"| {license.Path} | {license.LicenseInfo.Id} | {license.LicenseInfo.Version} | {license.LicenseInfo.License} | {license.LicenseInfo.IsTransitivePackage} |");
}
}
static void OutputMarkdown2(IEnumerable<PackageInfo> licenses)
{
Console.WriteLine($"""
| Id | Version | License |
| --- | --- | --- |
""");
foreach (var license in licenses)
{
Console.WriteLine($"| {license.Id} | {license.Version} | {license.License} |");
}
}
// var result = await NuGetLicense.GetNuGetLicenseAsync("Grpc.AspNetCore", "2.67.0");
//result.Dump();
public class NuGetLicense
{
private readonly HttpClient httpClient = new HttpClient();
private readonly XNamespace ns2013 = "http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd";
private readonly XNamespace ns2012 = "http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd";
private readonly XNamespace ns2011 = "http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd";
private readonly Cache cache = new ();
public async Task<string> GetNuGetLicenseAsync(string packageId, string version)
{
var cacheKey = packageId + "-" + version;
if (cache.TryGetValue(cacheKey, out var license))
{
// Console.WriteLine($"{cacheKey}: use cache");
return license;
}
// Console.WriteLine($"{cacheKey}: no cache");
// NuGet API Format
// https://api.nuget.org/v3-flatcontainer/{package-id}/{version}/{package-id}.nuspec
var response = await httpClient.GetStringAsync($"https://api.nuget.org/v3-flatcontainer/{packageId}/{version}/{packageId}.nuspec");
var doc = XDocument.Parse(response);
//doc.Dump(); // for debug
var licenseValue = doc.Descendants(ns2013 + "metadata")
.Select(x => x?.Element(ns2013 + "license")?.Value)
.FirstOrDefault()
?? doc.Descendants(ns2012 + "metadata")
.Select(x => x?.Element(ns2012 + "license")?.Value)
.FirstOrDefault()
?? doc.Descendants(ns2011 + "metadata")
.Select(x => x?.Element(ns2011 + "license")?.Value)
.FirstOrDefault();
if (licenseValue is null)
{
var licenseUrl = doc.Descendants(ns2013 + "metadata")
.Select(x => x?.Element(ns2013 + "licenseUrl")?.Value)
.FirstOrDefault()
?? doc.Descendants(ns2012 + "metadata")
.Select(x => x?.Element(ns2012 + "licenseUrl")?.Value)
.FirstOrDefault()
?? doc.Descendants(ns2011 + "metadata")
.Select(x => x?.Element(ns2011 + "licenseUrl")?.Value)
.FirstOrDefault();
licenseValue = licenseUrl ?? "";
}
var value = licenseValue ?? "";
cache.TryAdd(cacheKey, value);
return value;
}
private class Cache()
{
private readonly ConcurrentDictionary<string, string> cache = new();
public bool TryGetValue(string key, out string value)
{
// TODO: Add Get from offline-cache
return cache.TryGetValue(key, out value!);
}
public bool TryAdd(string key, string value)
{
// TODO: Add Save to offline-cache
return cache.TryAdd(key, value);
}
}
}
public record DotnetLicense
{
public required string Path { get; init; }
public required PackageInfo LicenseInfo { get; init; }
}
public record PackageInfo
{
public required string Id { get; init; }
public required string Version { get; init; }
public required string License { get; init; }
public required bool IsTransitivePackage { get; init; }
}
public record DotnetCliListPackages
{
[JsonPropertyName("projects")]
public required DotnetCliProjects[] Projects { get; init; }
}
public record DotnetCliProjects
{
[JsonPropertyName("path")]
public required string Path { get; init; }
[JsonPropertyName("frameworks")]
public required DotnetCliFrameworks[] Frameworks { get; init; }
}
public record DotnetCliFrameworks
{
[JsonPropertyName("topLevelPackages")]
public DotnetCliPackageInfo[]? TopLevelPackages { get; init; }
[JsonPropertyName("transitivePackages")]
public DotnetCliPackageInfo[]? TransitivePackages { get; init; }
}
public record DotnetCliPackageInfo
{
[JsonPropertyName("id")]
public required string Id { get; init; }
[JsonPropertyName("resolvedVersion")]
public required string ResolvedVersion { get; init; }
}

Show all NuGet Packages with Project Path

Path Id Version License IsTransitive
D:/github/guitarrapc/csharp-lab/src/SourceGenerator/SourceGeneratorBasic/SourceGeneratorBasic.csproj NETStandard.Library 2.0.3 https://github.com/dotnet/standard/blob/master/LICENSE.TXT False
D:/github/guitarrapc/csharp-lab/src/Logger/LoggerBlazorApp/LoggerBlazorApp.csproj Microsoft.Extensions.DependencyInjection.Abstractions 8.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/Logger/LoggerBlazorApp/LoggerBlazorApp.csproj Microsoft.Extensions.DependencyInjection 8.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/Logger/LoggerBlazorApp/LoggerBlazorApp.csproj Microsoft.Extensions.Logging 8.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/SourceGenerator/SourceGeneratorBasic/SourceGeneratorBasic.csproj Microsoft.CodeAnalysis.Common 4.11.0 MIT True
D:/github/guitarrapc/csharp-lab/src/SourceGenerator/SourceGeneratorBasic/SourceGeneratorBasic.csproj System.Threading.Tasks.Extensions 4.5.4 https://github.com/dotnet/corefx/blob/master/LICENSE.TXT True
D:/github/guitarrapc/csharp-lab/src/SourceGenerator/SourceGeneratorBasic/SourceGeneratorBasic.csproj System.Text.Encoding.CodePages 7.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/SourceGenerator/SourceGeneratorBasic/SourceGeneratorBasic.csproj System.Reflection.Metadata 8.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/SourceGenerator/SourceGeneratorBasic/SourceGeneratorBasic.csproj System.Runtime.CompilerServices.Unsafe 6.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/SourceGenerator/SourceGeneratorBasic/SourceGeneratorBasic.csproj System.Numerics.Vectors 4.5.0 https://github.com/dotnet/corefx/blob/master/LICENSE.TXT True
D:/github/guitarrapc/csharp-lab/src/SourceGenerator/SourceGeneratorBasic/SourceGeneratorBasic.csproj System.Memory 4.5.5 https://github.com/dotnet/corefx/blob/master/LICENSE.TXT True
D:/github/guitarrapc/csharp-lab/src/SourceGenerator/SourceGeneratorBasic/SourceGeneratorBasic.csproj System.Collections.Immutable 8.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/SourceGenerator/SourceGeneratorBasic/SourceGeneratorBasic.csproj System.Buffers 4.5.1 https://github.com/dotnet/corefx/blob/master/LICENSE.TXT True
D:/github/guitarrapc/csharp-lab/src/SourceGenerator/SourceGeneratorBasic/SourceGeneratorBasic.csproj Microsoft.NETCore.Platforms 1.1.0 http://go.microsoft.com/fwlink/?LinkId=329770 True
D:/github/guitarrapc/csharp-lab/src/SourceGenerator/SourceGeneratorBasic/SourceGeneratorBasic.csproj Microsoft.CodeAnalysis.CSharp 4.11.0 MIT False
D:/github/guitarrapc/csharp-lab/src/SourceGenerator/SourceGeneratorBasic/SourceGeneratorBasic.csproj Microsoft.CodeAnalysis.Analyzers 3.3.4 http://go.microsoft.com/fwlink/?LinkId=329770 False
D:/github/guitarrapc/csharp-lab/src/Logger/LoggerBlazorApp/LoggerBlazorApp.csproj Utf8StringInterpolation 1.3.1 MIT True
D:/github/guitarrapc/csharp-lab/src/Logger/LoggerBlazorApp/LoggerBlazorApp.csproj System.IO.Hashing 8.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/Logger/LoggerBlazorApp/LoggerBlazorApp.csproj System.Threading.Channels 8.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/Logger/LoggerBlazorApp/LoggerBlazorApp.csproj Microsoft.Extensions.Options 8.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/Logger/LoggerBlazorApp/LoggerBlazorApp.csproj Microsoft.Extensions.Logging.Abstractions 8.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/Logger/LoggerBlazorApp/LoggerBlazorApp.csproj Microsoft.Extensions.Primitives 8.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/Logger/LoggerBlazorApp/LoggerBlazorApp.csproj ZLogger 2.5.9 MIT False
D:/github/guitarrapc/csharp-lab/src/Logger/LoggerBlazorApp/LoggerBlazorApp.csproj Microsoft.VisualStudio.Azure.Containers.Tools.Targets 1.21.0 EULA.md False
D:/github/guitarrapc/csharp-lab/src/Blazor/BlazorServerIPBlockApp/BlazorServerIPBlockApp.csproj Microsoft.VisualStudio.Azure.Containers.Tools.Targets 1.21.0 EULA.md False
D:/github/guitarrapc/csharp-lab/src/Blazor/BlazorServerIPBlockApp/BlazorServerIPBlockApp.csproj IPNetwork2 3.0.667 https://github.com/lduchosal/ipnetwork/blob/master/LICENSE False
D:/github/guitarrapc/csharp-lab/src/Blazor/BlazorServerApp/BlazorServerApp.csproj Microsoft.VisualStudio.Azure.Containers.Tools.Targets 1.21.0 EULA.md False
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.JSInterop 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.JSInterop.WebAssembly 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.Extensions.Options 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.Extensions.Logging.Abstractions 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.Extensions.Primitives 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.Extensions.FileSystemGlobbing 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.Extensions.Logging 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.Extensions.DependencyInjection 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.Extensions.Configuration.FileExtensions 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.Extensions.Configuration.Abstractions 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.Extensions.Configuration 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.Extensions.Configuration.Binder 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.AspNetCore.Metadata 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.AspNetCore.Components.Web 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.AspNetCore.Components.Forms 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.AspNetCore.Components 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.AspNetCore.Authorization 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.AspNetCore.Components.Analyzers 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.NET.Sdk.WebAssembly.Pack 9.0.0 http://go.microsoft.com/fwlink/?LinkId=329770 False
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.NET.ILLink.Tasks 9.0.0 MIT False
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.AspNetCore.Components.WebAssembly.DevServer 9.0.0 MIT False
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.Extensions.FileProviders.Physical 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.Extensions.DependencyInjection.Abstractions 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.Extensions.FileProviders.Abstractions 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.Extensions.Configuration.Json 9.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/BlazorWasmApp/BlazorWasmApp.csproj Microsoft.AspNetCore.Components.WebAssembly 9.0.0 MIT False
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj System.Runtime.CompilerServices.Unsafe 6.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Microsoft.Extensions.Logging.Abstractions 6.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj System.Diagnostics.DiagnosticSource 6.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Microsoft.Extensions.Primitives 6.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Microsoft.Extensions.Options 6.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Microsoft.Extensions.Logging 6.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Microsoft.Extensions.Http 6.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Microsoft.Extensions.DependencyInjection.Abstractions 6.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Microsoft.Extensions.DependencyInjection 6.0.0 MIT True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Grpc.Net.Common 2.67.0 Apache-2.0 True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Grpc.Tools 2.67.0 Apache-2.0 True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Grpc.Net.ClientFactory 2.67.0 Apache-2.0 True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Grpc.Net.Client 2.67.0 Apache-2.0 True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Grpc.Core.Api 2.67.0 Apache-2.0 True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Grpc.AspNetCore.Server 2.67.0 Apache-2.0 True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Google.Protobuf 3.27.0 BSD-3-Clause True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Grpc.AspNetCore.Server.ClientFactory 2.67.0 Apache-2.0 True
D:/github/guitarrapc/csharp-lab/src/LinuxBuild/GrpcService/GrpcService.csproj Grpc.AspNetCore 2.67.0 Apache-2.0 False

Show only NuGet Packages

Id Version License
Google.Protobuf 3.27.0 BSD-3-Clause
Grpc.AspNetCore 2.67.0 Apache-2.0
Grpc.AspNetCore.Server 2.67.0 Apache-2.0
Grpc.AspNetCore.Server.ClientFactory 2.67.0 Apache-2.0
Grpc.Core.Api 2.67.0 Apache-2.0
Grpc.Net.Client 2.67.0 Apache-2.0
Grpc.Net.ClientFactory 2.67.0 Apache-2.0
Grpc.Net.Common 2.67.0 Apache-2.0
Grpc.Tools 2.67.0 Apache-2.0
IPNetwork2 3.0.667 https://github.com/lduchosal/ipnetwork/blob/master/LICENSE
Microsoft.AspNetCore.Authorization 9.0.0 MIT
Microsoft.AspNetCore.Components 9.0.0 MIT
Microsoft.AspNetCore.Components.Analyzers 9.0.0 MIT
Microsoft.AspNetCore.Components.Forms 9.0.0 MIT
Microsoft.AspNetCore.Components.Web 9.0.0 MIT
Microsoft.AspNetCore.Components.WebAssembly 9.0.0 MIT
Microsoft.AspNetCore.Components.WebAssembly.DevServer 9.0.0 MIT
Microsoft.AspNetCore.Metadata 9.0.0 MIT
Microsoft.CodeAnalysis.Analyzers 3.3.4 http://go.microsoft.com/fwlink/?LinkId=329770
Microsoft.CodeAnalysis.Common 4.11.0 MIT
Microsoft.CodeAnalysis.CSharp 4.11.0 MIT
Microsoft.Extensions.Configuration 9.0.0 MIT
Microsoft.Extensions.Configuration.Abstractions 9.0.0 MIT
Microsoft.Extensions.Configuration.Binder 9.0.0 MIT
Microsoft.Extensions.Configuration.FileExtensions 9.0.0 MIT
Microsoft.Extensions.Configuration.Json 9.0.0 MIT
Microsoft.Extensions.DependencyInjection 8.0.0 MIT
Microsoft.Extensions.DependencyInjection 9.0.0 MIT
Microsoft.Extensions.DependencyInjection 6.0.0 MIT
Microsoft.Extensions.DependencyInjection.Abstractions 8.0.0 MIT
Microsoft.Extensions.DependencyInjection.Abstractions 9.0.0 MIT
Microsoft.Extensions.DependencyInjection.Abstractions 6.0.0 MIT
Microsoft.Extensions.FileProviders.Abstractions 9.0.0 MIT
Microsoft.Extensions.FileProviders.Physical 9.0.0 MIT
Microsoft.Extensions.FileSystemGlobbing 9.0.0 MIT
Microsoft.Extensions.Http 6.0.0 MIT
Microsoft.Extensions.Logging 8.0.0 MIT
Microsoft.Extensions.Logging 9.0.0 MIT
Microsoft.Extensions.Logging 6.0.0 MIT
Microsoft.Extensions.Logging.Abstractions 8.0.0 MIT
Microsoft.Extensions.Logging.Abstractions 9.0.0 MIT
Microsoft.Extensions.Logging.Abstractions 6.0.0 MIT
Microsoft.Extensions.Options 8.0.0 MIT
Microsoft.Extensions.Options 9.0.0 MIT
Microsoft.Extensions.Options 6.0.0 MIT
Microsoft.Extensions.Primitives 8.0.0 MIT
Microsoft.Extensions.Primitives 9.0.0 MIT
Microsoft.Extensions.Primitives 6.0.0 MIT
Microsoft.JSInterop 9.0.0 MIT
Microsoft.JSInterop.WebAssembly 9.0.0 MIT
Microsoft.NET.ILLink.Tasks 9.0.0 MIT
Microsoft.NET.Sdk.WebAssembly.Pack 9.0.0 http://go.microsoft.com/fwlink/?LinkId=329770
Microsoft.NETCore.Platforms 1.1.0 http://go.microsoft.com/fwlink/?LinkId=329770
Microsoft.VisualStudio.Azure.Containers.Tools.Targets 1.21.0 EULA.md
NETStandard.Library 2.0.3 https://github.com/dotnet/standard/blob/master/LICENSE.TXT
System.Buffers 4.5.1 https://github.com/dotnet/corefx/blob/master/LICENSE.TXT
System.Collections.Immutable 8.0.0 MIT
System.Diagnostics.DiagnosticSource 6.0.0 MIT
System.IO.Hashing 8.0.0 MIT
System.Memory 4.5.5 https://github.com/dotnet/corefx/blob/master/LICENSE.TXT
System.Numerics.Vectors 4.5.0 https://github.com/dotnet/corefx/blob/master/LICENSE.TXT
System.Reflection.Metadata 8.0.0 MIT
System.Runtime.CompilerServices.Unsafe 6.0.0 MIT
System.Text.Encoding.CodePages 7.0.0 MIT
System.Threading.Channels 8.0.0 MIT
System.Threading.Tasks.Extensions 4.5.4 https://github.com/dotnet/corefx/blob/master/LICENSE.TXT
Utf8StringInterpolation 1.3.1 MIT
ZLogger 2.5.9 MIT
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment