-
Notifications
You must be signed in to change notification settings - Fork 105
Add TargetFramework awareness to NuGet detector #1266
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
Conversation
Static field order is not predictable (metadata order) whereas static- classes are ordered by invocation order and will honor the DAG set up by our "nearest" references.
… into NuGetDetectorFramework
src/Microsoft.ComponentDetection.Detectors/nuget/FrameworkPackages/FrameworkPackages.net9.0.cs
Outdated
Show resolved
Hide resolved
src/Microsoft.ComponentDetection.Detectors/nuget/NuGetPackagesConfigDetector.cs
Outdated
Show resolved
Hide resolved
src/Microsoft.ComponentDetection.Detectors/nuget/FrameworkPackages/FrameworkPackages.cs
Show resolved
Hide resolved
...osoft.ComponentDetection.Detectors/nuget/NuGetProjectModelProjectCentricComponentDetector.cs
Show resolved
Hide resolved
...osoft.ComponentDetection.Detectors/nuget/NuGetProjectModelProjectCentricComponentDetector.cs
Outdated
Show resolved
Hide resolved
...osoft.ComponentDetection.Detectors/nuget/NuGetProjectModelProjectCentricComponentDetector.cs
Outdated
Show resolved
Hide resolved
...osoft.ComponentDetection.Detectors/nuget/NuGetProjectModelProjectCentricComponentDetector.cs
Show resolved
Hide resolved
… into NuGetDetectorFramework
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1266 +/- ##
=======================================
- Coverage 89.1% 89.0% -0.1%
=======================================
Files 361 374 +13
Lines 27742 28042 +300
Branches 1757 1758 +1
=======================================
+ Hits 24720 24983 +263
- Misses 2643 2678 +35
- Partials 379 381 +2 ☔ View full report in Codecov by Sentry. |
Closing this one as it's out of date. Will open up a new PR that promotes the experiment to the main detector. |
This PR does 3 things.
TargetFramework
to NuGet package references. This can be useful when querying component data to understand if components are used in a place where a vulnerability applies.ExcludeAssets="Runtime"
usage as a Development Dependencies.A couple notes:
Microsoft.NETCore.App
- the default shared framework. We could consider doing the same forMicrosoft.ASPNETCore.App
andMicrosoft.WindowsDesktop.App
but we'd need to plumb the reference information out of the assets file - currently that's not read and I'm not aware of a supported NuGet API for reading it (though it is present underproject/frameworks/<framework>/frameworkReferences/<name>
targetFramework
information added to thecomponent
in the ScanManifest. I noticed that development dependencies are labeled as such if all references to the component are development dependencies. If any reference is not a development dependency then the component is not labeled as a development dependency.findLastPackage
that I used to generate the sources for the framework lists - but this is just for reference. I don't intend to check this tool in.