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

Enable AOT build for windows-arm64 #2286

Merged
merged 5 commits into from
Jul 24, 2024
Merged

Enable AOT build for windows-arm64 #2286

merged 5 commits into from
Jul 24, 2024

Conversation

ntkme
Copy link
Contributor

@ntkme ntkme commented Jul 23, 2024

This PR is another attempt to enable AOT snapshot for windows-arm64. It turns out the TLS issue we're seeing is likely not a windows runner bug but a windows feature and a dart bug: dart-lang/sdk#52266

In summary, the problem is that windows would lazily initialize some trusted certificates, but dart does not support this lazy initialization. The x86_64 windows runner image likely already have the missing root certificates initialized at some point by other calls made to other google services during its image provisioning, but this arm64 image isn't the same.

@nex3 I would like to give this another try, but I don't have access to arm64 runners. If you can push this commit to a branch directly in sass/dart-sass repo, you can use "run workflow" feature to test it without needing to merge this PR first.

@ntkme ntkme force-pushed the windows-arm64-aot branch 2 times, most recently from 1c19226 to d146921 Compare July 23, 2024 17:15
@ntkme ntkme marked this pull request as draft July 23, 2024 17:21
@ntkme ntkme marked this pull request as ready for review July 23, 2024 17:39
.github/util/initialize/action.yml Show resolved Hide resolved
@nex3
Copy link
Contributor

nex3 commented Jul 23, 2024

Test build is running

@ntkme
Copy link
Contributor Author

ntkme commented Jul 23, 2024

Turns out there are two versions of powershell: PowerShell Core (7.x, crossbow platform, named as pwsh) and PowerShell Desktop (5.x, windows-only, named as powershell): https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#defaultsrunshell

pwsh does not seem to be preinstalled on windows-arm64, I added another commit to try powershell. @nex3 Can you please help give this a try?

@nex3
Copy link
Contributor

nex3 commented Jul 23, 2024

Running now

@ntkme
Copy link
Contributor Author

ntkme commented Jul 23, 2024

The TLS certificate workaround is confirmed to be working. Now it turns out even git is not pre-installed. I pushed another commit which should address it.

@nex3
Copy link
Contributor

nex3 commented Jul 24, 2024

Running

@ntkme
Copy link
Contributor Author

ntkme commented Jul 24, 2024

Looks like everything worked!

@nex3 nex3 merged commit e03547f into sass:main Jul 24, 2024
37 checks passed
@ntkme ntkme deleted the windows-arm64-aot branch July 24, 2024 01:28
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.

3 participants