Skip to content
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

vsdownload: Filter packages based on their arch information #149

Merged
merged 1 commit into from
Oct 9, 2024

Conversation

huangqinjin
Copy link
Contributor

@huangqinjin huangqinjin commented Oct 6, 2024

Depends on #148.

Match host arch with chip, machineArch and productArch.

PR #148

Selected 475 packages, for a total download size of 2.7 GB, install size of 8.5 GB

PR #149 matching host arch exactly

Selected 449 packages, for a total download size of 2.5 GB, install size of 8.2 GB

EDIT: We go matching host arch exactly.

PR #149

Selected 463 packages, for a total download size of 2.6 GB, install size of 8.3 GB

Current implementation apply the knownledge that

  1. x64 host can run x86 binaries
  2. arm64 host can run x86/x64 binaries

Otherwise some packages will be incomplete. E.g. package Microsoft.VisualStudio.Debugger.Remote on ARM64:

./vsdownload.py --accept-license --host-arch arm64 --print-deps-tree Microsoft.VisualStudio.Debugger.Remote

Microsoft.VisualStudio.Debugger.Remote
  Microsoft.VisualStudio.Debugger.Remote.Resources (chip.x64)
    Microsoft.VisualStudio.Debugger.Remote.Resources (chip.x86)
  Microsoft.VisualStudio.Debugger.Remote (chip.x86)
    Microsoft.VisualStudio.Debugger.Remote.Resources (chip.x86)
    Microsoft.VisualStudio.Debugger.Concord.Remote (chip.x86)
      Microsoft.VisualStudio.Debugger.Concord.Remote.Resources (chip.x86)
    Microsoft.VisualStudio.Debugger.Remote.DbgHelp.Win8 (chip.x86)
    Microsoft.VisualStudio.Debugger.Remote.ARM64
      Microsoft.VisualStudio.Debugger.Remote.Resources.ARM64
      Microsoft.VisualStudio.Debugger.Remote.ARM (machineArch.ARM64)
        Microsoft.VisualStudio.Debugger.Remote.Resources.ARM
        Microsoft.VisualStudio.Debugger.Concord.Remote.ARM (machineArch.ARM64)
          Microsoft.VisualStudio.Debugger.Concord.Remote.Resources.ARM
      Microsoft.VisualStudio.Debugger.Concord.Remote.ARM64 (machineArch.ARM64)
        Microsoft.VisualStudio.Debugger.Concord.Remote.Resources.ARM64
  Microsoft.VisualStudio.Debugger.Remote.DbgHelp.Win8 (chip.x64)
  Microsoft.VisualStudio.Debugger.Concord.Remote (chip.x64)
    Microsoft.VisualStudio.Debugger.Concord.Remote.Resources

But I think matching host arch exactly is also acceptable, and user need to specify Microsoft.VisualStudio.Debugger.Remote.ARM64 instead of Microsoft.VisualStudio.Debugger.Remote.

@huangqinjin
Copy link
Contributor Author

The example in the description is actually not correct. Microsoft.VisualStudio.Debugger.Remote on ARM64 have the properties

			"chip": "x64",
			"productArch": "neutral",
			"machineArch": "arm64",

So this package is not for pure ARM64. So anyway Microsoft.VisualStudio.Debugger.Remote.ARM64 is needed for a complete ARM64 Remote Debugger.

So I am going the implement the filter matching host arch exactly.

@huangqinjin
Copy link
Contributor Author

huangqinjin commented Oct 8, 2024

matching host arch exactly

Selected 450 packages, for a total download size of 2.5 GB, install size of 8.2 GB

Copy link
Owner

@mstorsjo mstorsjo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The changes look good overall, except for the cosmetic issue

Copy link
Owner

@mstorsjo mstorsjo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@mstorsjo mstorsjo merged commit b777c11 into mstorsjo:master Oct 9, 2024
4 checks passed
@huangqinjin huangqinjin deleted the filter-on-arch branch October 9, 2024 23:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants