Skip to content

Commit e6b6d40

Browse files
authored
Add Windows ARM64 wheels (#840)
1 parent 95748b1 commit e6b6d40

6 files changed

Lines changed: 22 additions & 8 deletions

File tree

‎.github/workflows/build-rtc.yml‎

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,8 @@ jobs:
8080
archs: aarch64
8181
- os: windows-latest
8282
archs: AMD64
83+
- os: windows-11-arm
84+
archs: ARM64
8385
- os: macos-latest
8486
archs: x86_64 arm64
8587
defaults:
@@ -174,6 +176,16 @@ jobs:
174176
- os: windows-latest
175177
python-version: "3.14"
176178
artifact: rtc-release-windows-latest
179+
# Windows ARM64 tests
180+
- os: windows-11-arm
181+
python-version: "3.11"
182+
artifact: rtc-release-windows-11-arm
183+
- os: windows-11-arm
184+
python-version: "3.12"
185+
artifact: rtc-release-windows-11-arm
186+
- os: windows-11-arm
187+
python-version: "3.14"
188+
artifact: rtc-release-windows-11-arm
177189
uses: ./.github/workflows/tests.yml
178190
with:
179191
os: ${{ matrix.os }}

‎.github/workflows/package-release.yml‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -259,6 +259,8 @@ jobs:
259259
archs: aarch64
260260
- os: windows-latest
261261
archs: AMD64
262+
- os: windows-11-arm
263+
archs: ARM64
262264
- os: macos-latest
263265
archs: x86_64 arm64
264266
defaults:

‎livekit-rtc/livekit/rtc/audio_stream.py‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,10 @@ def from_track(
248248
)
249249

250250
def __del__(self) -> None:
251-
FfiClient.instance.queue.unsubscribe(self._ffi_queue)
251+
# _ffi_queue is unset if __init__ raised early or the instance was built via __new__
252+
ffi_queue = getattr(self, "_ffi_queue", None)
253+
if ffi_queue is not None:
254+
FfiClient.instance.queue.unsubscribe(ffi_queue)
252255

253256
def _create_owned_stream(self) -> Any:
254257
assert self._track is not None

‎livekit-rtc/setup.py‎

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,7 @@ def get_platform_tag():
5656
elif sys.platform == "linux":
5757
return f"linux_{platform.machine()}"
5858
elif sys.platform == "win32":
59-
arch = platform.machine()
60-
if arch == "AMD64":
61-
arch = "amd64"
62-
return f"win_{arch}"
59+
return f"win_{platform.machine().lower()}"
6360
else:
6461
return f"{platform.system().lower()}_{platform.machine()}"
6562

‎tests/api/test_access_token.py‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
from livekit.protocol.agent_dispatch import RoomAgentDispatch
1919

2020
TEST_API_KEY = "myapikey"
21-
TEST_API_SECRET = "thiskeyistotallyunsafe"
21+
TEST_API_SECRET = "thiskeyistotallyunsafe-but-32-bytes-long"
2222

2323

2424
def test_verify_token() -> None:
@@ -149,7 +149,7 @@ def test_agent_config() -> None:
149149
def test_verify_token_invalid() -> None:
150150
token = AccessToken(TEST_API_KEY, TEST_API_SECRET).with_identity("test_identity").to_jwt()
151151

152-
token_verifier = TokenVerifier(TEST_API_KEY, "invalid_secret")
152+
token_verifier = TokenVerifier(TEST_API_KEY, "invalid_secret-padded-to-32-bytes-long")
153153
with pytest.raises(Exception):
154154
token_verifier.verify(token)
155155

‎tests/api/test_webhook.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
from livekit.api import AccessToken, TokenVerifier, WebhookReceiver
66

77
TEST_API_KEY = "myapikey"
8-
TEST_API_SECRET = "thiskeyistotallyunsafe"
8+
TEST_API_SECRET = "thiskeyistotallyunsafe-but-32-bytes-long"
99
TEST_EVENT = """
1010
{
1111
"event": "room_started",

0 commit comments

Comments
 (0)