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

Use the dependencies Zip file for bootstrapping in SandboxTest #188360

Closed
wants to merge 2 commits into from

Conversation

Trenly
Copy link
Contributor

@Trenly Trenly commented Nov 3, 2024

cc @ItzLevvie / @stephengillie / @SpecterShell / @denelon / @OfficialEsco / @ImJoakim

Checklist for Pull Requests

Description

With the latest release of WinGet, the minimum VCLibs UWP version has been bumped up. The VCLibs team is no longer publishing the new versions to the aka.ms URL, causing the Sandbox Test script to always fall back on the PowerShell Module and Repair-WinGetPackageManager, which takes significantly longer than caching the dependencies on the user filesystem and mapping them into the sandbox.

This PR addresses a few issues with SandboxTest and how it manages dependencies

1. Adds the new Dependencies Zip file

Since the new versions of VCLibs UWP does not have a publicly available download, the CLI team has started publishing a Zip file containing the dependencies with the CLI releases. This PR adds this zip file as a dependency and updates the install script inside the sandbox so that it extracts the APPX files from the ZIP and installs them. This ensures that the install does not fall back to using the PowerShell Module.

2. Adds Version-Based Dependency Management

Because the dependency on Microsoft.UI.Xaml was bumped from 2.7 to 2.8, instead of installing whichever one was needed, the script would simply copy and install both inside the sandbox. In this PR, the behavior is changed so that only the required dependencies are installed.

3. Known Issue - New Dependency on DesktopAppInstaller_Dependencies.zip

With the new dependency, if any newer releases of the WinGet CLI do not include the zip file, then it won't be able to be installed. This should fall back to using the PowerShell Module still, but is an untested edge case


Thanks to @mdanish-kh for helping test and finding bugs in my initial implementation!

Microsoft Reviewers: Open in CodeFlow

@Trenly Trenly requested review from denelon and a team as code owners November 3, 2024 16:00
@wingetbot
Copy link
Collaborator

Service Badge  Service Badge  

@microsoft-github-policy-service microsoft-github-policy-service bot added the Needs-Attention This work item needs to be reviewed by a member of the core team. label Nov 3, 2024
@microsoft-github-policy-service microsoft-github-policy-service bot added the Moderator-Approved One of the Moderators has reviewed and approved this PR label Nov 3, 2024
@denelon
Copy link
Contributor

denelon commented Nov 3, 2024

I added the SHA256 in a .txt file in the latest release.

@Trenly
Copy link
Contributor Author

Trenly commented Nov 4, 2024

I'll have to update the PR to get the content from the hash file then, and remove the "If no hash" logic. I've got some other changes I want to test out too

@Trenly Trenly marked this pull request as draft November 4, 2024 05:02
@Trenly Trenly mentioned this pull request Nov 4, 2024
2 tasks
@Trenly Trenly closed this Nov 5, 2024
@microsoft-github-policy-service microsoft-github-policy-service bot removed the Needs-Attention This work item needs to be reviewed by a member of the core team. label Nov 5, 2024
@Trenly Trenly deleted the Sandbox branch November 22, 2024 21:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Moderator-Approved One of the Moderators has reviewed and approved this PR Project-File
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants