Skip to content

Add Windows ARM64 wheels - #840

Merged
cloudwebrtc merged 2 commits into
livekit:mainfrom
ndabas:main
Oct 29, 2026
Merged

cloudwebrtc merged 2 commits into
livekit:mainfrom
ndabas:main

Conversation

@ndabas

@ndabas ndabas commented Sep 30, 2026

Copy link
Copy Markdown
Contributor

As the title says -- all tests are passing on my fork. Along the way I noticed some warnings in the tests, which were trivial to fix, so I added those fixes as well -- let me know if that's fine.

@CLAassistant

CLAassistant commented Sep 30, 2026 •

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Devin Review found 1 potential issue.

Devin Review

Comment on lines +76 to +77
- os: windows-11-arm
archs: ARM64

@devin-ai-integration devin-ai-integration Bot Sep 30, 2026 •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🔴 Windows ARM64 wheel jobs select no builds

On Windows ARM64, CIBW_ARCHS=ARM64 combines with the cp39-* build selector, leaving cibuildwheel no eligible builds. Windows ARM64 builds start at CPython 3.11, so both wheel jobs fail and prevent publication.

Learn more

Both the RTC workflow and the release workflow add an ARM64 runner and pass ARM64 to cibuildwheel. The package's build selector only allows cp39-*, while cibuildwheel's native Windows ARM64 Python builds start at 3.11. As a result, selecting the ARM64 architecture leaves no build identifiers; the job cannot upload a wheel. The same selection occurs in the release build.

Example: An RTC tag starts the windows-11-arm job. It requests cp39-* on ARM64, finds no native CPython 3.9 ARM64 build, and never uploads rtc-release-windows-11-arm; the dependent test and publish jobs cannot complete.

Recommended fix: Extend the cibuildwheel build selector to include a supported Windows ARM64 version, such as cp311-win_arm64, while retaining the existing cp39-* builds. Verify the resulting wheel artifact and tests on the ARM64 runner in both workflows.

Devin Review


Was this helpful? React with 👍 or 👎 to provide feedback.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

cibuildwheel has Python 3.9 releases for Windows ARM64 available to it via NuGet. As evidenced by the passing CI job.

@cloudwebrtc cloudwebrtc left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

lgtm!

@cloudwebrtc

Copy link
Copy Markdown
Contributor

@copilot resolve the merge conflicts in this pull request

@github-actions

Copy link
Copy Markdown
Contributor

👋 This PR has no changeset. If it should be released, add a markdown file under .changeset/ (any name, e.g. .changeset/fix-token-parsing.md):

---
"livekit-rtc": patch
---

Short description of the change, used in the release notes.
  • Packages: livekit-rtc, livekit-api, livekit-protocol (one line per package)
  • Types: patch, minor, major, patch-rc, minor-rc, major-rc, next-rc, promote

If this change doesn't need a release (docs, CI, tests), you can ignore this comment.

@ndabas

ndabas commented Oct 29, 2026

Copy link
Copy Markdown
Contributor Author

Copilot didn't want to fix the conflicts so I did that myself, @cloudwebrtc could you take another look? Thanks!

@cloudwebrtc
cloudwebrtc merged commit e6b6d40 into livekit:main Oct 29, 2026
43 checks passed
@ndabas

ndabas commented Oct 29, 2026

Copy link
Copy Markdown
Contributor Author

Thanks for merging! Do you have a timeline for the next release?

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.

4 participants