-
Notifications
You must be signed in to change notification settings - Fork 598
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Get licenses for NuGet packages #1227
Comments
Thanks so much for the issue @fg-j! I also added the good first issue label since the write-up you did was so good. If we have the bandwidth in the coming week/s we'll try and get this in, but also anyone who comes across this issue consider this fair game to attempt as a contribution. Feel free to tag me in a draft PR if you do and I can always help with testing or cleanup! |
I have the exact same issue but with Rust Crates. Here is an example output of the Toml files:
They do include the license. Is it planned to also output them for Rust packages? |
Really interested in seeing license info added for NuGet packages as well. Our organization is evaluating syft to integrate into our CI/CD processes to generate SBOM's that can be imported into Dependency-Track for analysis. Having this license data for NuGet packages would be 😎👌 |
I'll give it a shot, if I may... |
I'd like to know when @HeyeOpenSource's PR will be merged. It seems latest comment was 2nd of november. We are eagerly awaiting this in Syft. For now we'll fallback on dotnet cyclonedx. But I'd rather like Syft. Thanks! |
The only thing holding up getting the PR merged is that it requires shelling out to the dotnet CLI. If there was a way to implement this without requiring shelling out here, it would probably be much closer to getting merged, but it sounds like it's difficult to get the same information by just reading files on the filesystem. Before we can merge this, we need to agree as a team how to identify and enable/disable enrichment that requires certain binaries to be available, we have avoided shelling out to tools intentionally to this point (with one notable exception of cosign that has a lot of history I won't get into). |
Thank you for the explanation @kzantow. NuGet config can be available on 3 locations: Project-specific nuget.config: A nuget.config file located in the current directory or any parent directory of the project. There you should be able to get the sources of the nuget packages in XML format without the use of the dotnet cli. I'm no go developer so for me it would be difficult to add this to Syft unfortunately, else I would be glad to do it! I hope someone else is more capable than me to do this. Thanks for the work in Syft though! |
What would you like to be added:
#726 brought initial support for generating SBOMs for NuGet packages 🎉 . One significant gap in the metadata in those SBOMs is license information. It'd be awesome if licenses for NuGet packages were included.
Why is this needed:
License information is a key value proposition for compliance-minded users who are building .NET apps with NuGet dependencies.
Additional context:
The file that
project.assets.json
that Syft scans for SBOM info doesn't include license information, but I wonder if it's possible to get it from somewhere else.Here's a snippet of a SPDX SBOM generated with syft for a NuGet package:
the corresponding NuGet package, Humanizer.Core uses the MIT license.
The text was updated successfully, but these errors were encountered: