Skip to content

Prebuilt report should detect "downloadDependencies" in project.assets.json #1811

@dagood

Description

@dagood

For example, this (PackageDownload):

        "downloadDependencies": [
          {
            "name": "Microsoft.AspNetCore.App.Runtime.linux-musl-x64",
            "version": "[5.0.0-preview.8.20414.8, 5.0.0-preview.8.20414.8]"
          },
          {
            "name": "Microsoft.AspNetCore.App.Runtime.linux-x64",
            "version": "[5.0.0-preview.8.20414.8, 5.0.0-preview.8.20414.8]"
          },
...
          {
            "name": "Microsoft.NETCore.App.Runtime.linux-x64",
            "version": "[5.0.0-preview.8.20407.11, 5.0.0-preview.8.20407.11]"
          },
          {
            "name": "Microsoft.NETCore.App.Runtime.win-x64",
            "version": "[5.0.0-preview.8.20407.11, 5.0.0-preview.8.20407.11]"
          }
        ],

Doesn't show up here:

  <AnnotatedUsage Id="Microsoft.NETCore.App.Runtime.linux-musl-x64" Version="5.0.0-preview.8.20407.11" />
  <AnnotatedUsage Id="Microsoft.NETCore.App.Runtime.win-x64" Version="5.0.0-preview.8.20407.11" />
  <AnnotatedUsage Id="Microsoft.NETCore.App.Runtime.win-x86" Version="5.0.0-preview.8.20407.11" />

grepping for Microsoft.NETCore.App.Runtime.win-x64/5.0.0-preview.8.20407.11 doesn't quite work to find these, because they're not using the usual format. It's also not trivial to write a working grep because it's across multiple lines and uses a version range format rather than what was actually restored.

Something like grep -i 'Microsoft.NETCore.App.Runtime.win-x64/5.0.0-preview.8.20407.11' -r src does find you project.nuget.cache files, though, and you can open the sibling project.assets.json file to find the downloadDependencies node:

src/runtime.bf456654f9a4f9a86c15d9d50095ff29cde5f0a4/artifacts/obj/coreclr/crossgen2/project.nuget.cache:    "/work/packages/restored/microsoft.netcore.app.runtime.win-x64/5.0.0-preview.8.20407.11/microsoft.netcore.app.runtime.win-x64.5.0.0-preview.8.20407.11.nupkg.sha512",

The prebuilt report should really include these.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-infraSource-build infrastructure and reportingarea-prebuiltsReducing the number of prebuilt packages in the tarball

    Type

    No type

    Projects

    Status

    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions