Skip to content

fix(napi): prevent async iterator use-after-free during GC #3649

fix(napi): prevent async iterator use-after-free during GC

fix(napi): prevent async iterator use-after-free during GC #3649

Triggered via pull request February 14, 2026 04:48
Status Failure
Total duration 15m 3s
Artifacts 12

test-release.yaml

on: pull_request
Lint SourceCode
1m 0s
Lint SourceCode
Test cli build binary
38s
Test cli build binary
Matrix: build-and-test-msys2
Matrix: build_and_test
Matrix: build_for_test_in_docker
Matrix: build_musl
Matrix: build_only
Matrix: stable - ubuntu-latest
stable - armv7-unknown-linux-gnueabihf - node@22
2m 2s
stable - armv7-unknown-linux-gnueabihf - node@22
Test freebsd target
3m 20s
Test freebsd target
Test node wasi target
2m 19s
Test node wasi target
Test latest bun
1m 24s
Test latest bun
release-npm
0s
release-npm
Matrix: test_in_docker
Fit to window
Zoom out
Zoom in

Annotations

10 errors
error: expect(received).toEqual(expected): examples/napi/__tests__/test.framework.js#L11
Expected: "<u32> on `External` is not the type of wrapped object" Received: undefined at is (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:11:22) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/values.spec.ts:1472:5) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:76:29)
error: expect(received).toEqual(expected): examples/napi/__tests__/test.framework.js#L17
Float32Array [ + 1, 2, + 3, 4, - 6, - 8, - 10, + 5, ] - Expected - 3 + Received + 3 at deepEqual (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:17:22) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/values.spec.ts:1294:5) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:76:29)
error: expect(received).toEqual(expected): examples/napi/__tests__/test.framework.js#L11
Expected: "undefined cannot be represented as a serde_json::Value" Received: undefined at is (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:11:22) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/values.spec.ts:1129:5) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:76:29)
error: expect(received).toEqual(expected): examples/napi/__tests__/test.framework.js#L11
Expected: "@examples/napi" Received: "napi-rs" at is (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:11:22) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/values.spec.ts:1109:5) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:76:29)
error: expect(received).toEqual(expected): examples/napi/__tests__/test.framework.js#L11
Expected: "@examples/napi" Received: "napi-rs" at is (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:11:22) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/values.spec.ts:1095:5) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:76:29)
error: expect(received).toEqual(expected): examples/napi/__tests__/test.framework.js#L11
Expected: "Failed to convert JavaScript value `Number 1 ` into rust type `String` on StrictObject.name" Received: undefined at is (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:11:22) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/values.spec.ts:1071:5) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:76:29)
error: expect(received).toThrow(expected): examples/napi/__tests__/test.framework.js#L21
Expected constructor: Object Received constructor: Error Received message: "don't panic" at throws (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:21:20) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/values.spec.ts:1033:5) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:76:29)
error: expect(received).not.toEqual(expected): examples/napi/__tests__/test.framework.js#L14
Expected: not undefined at not (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:14:26) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/values.spec.ts:1025:5) at async <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:76:21)
error: expect(received).toEqual(expected): examples/napi/__tests__/test.framework.js#L11
Expected: "Manual Error" Received: undefined at is (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:11:22) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/values.spec.ts:988:5) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:76:29)
error: expect(received).toBe(expected): examples/napi/__tests__/test.framework.js#L56
Expected: true Received: undefined at true (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:56:22) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/values.spec.ts:721:5) at <anonymous> (/home/runner/work/napi-rs/napi-rs/examples/napi/__tests__/test.framework.js:76:29)

Artifacts

Produced during runtime
Name Size Digest
aarch64-unknown-linux-gnu-example
2.69 MB
sha256:a12392301457dacb381f6f99ded2b1062fa1ee241a0d69d9a26815997b88718f
aarch64-unknown-linux-gnu-example-compat
561 KB
sha256:06d55d40fb923105a8a5bcf02bb528936206f6a098f45e15971d8b53a390906c
aarch64-unknown-linux-musl-example
29.3 MB
sha256:9c418b37cc60de9902a7e8546c0664f5524b3a4875cf94a0f09671a8827a9324
aarch64-unknown-linux-musl-example-compat
6.48 MB
sha256:95916281d14b5ee1789e3a1b8d7a724e7dcce679a87a5f47765e70ab08c42c4d
powerpc64le-unknown-linux-gnu-example
2.71 MB
sha256:d6b7ae8a5b9a636120e390fa58fd9571470fa73d1a3918480e353a521dd3d7d6
powerpc64le-unknown-linux-gnu-example-compat
623 KB
sha256:8801fa5ddca4fb99539c38616c73929a06a5eafe95873faef75575047dce2447
s390x-unknown-linux-gnu-example
2.67 MB
sha256:33d7ee18b8725d918b204ba58a14a526407671b5871cf0f5ab577767114998a6
s390x-unknown-linux-gnu-example-compat
620 KB
sha256:e08dc0b8350d6bd09658715ce978b5509d2a5a5957f519bda3b16f98ffd93703
x86_64-unknown-linux-gnu-example
2.78 MB
sha256:63899acbc663d8d46d664f16b8a60ffd37651821bf259397bdd49f228d227a98
x86_64-unknown-linux-gnu-example-compat
574 KB
sha256:f09ffcf222065ee91b1428f400073d8af0fb3da526b8de7e481a0f3ed21cf60b
x86_64-unknown-linux-musl-example
29.6 MB
sha256:cdbf3ed3b59e3519a3037cfd2b17b3272c74efc76c2af08fda535e92a1b713cc
x86_64-unknown-linux-musl-example-compat
6.65 MB
sha256:2e2f69ddcb21ccc783b7892f09eeaa1932a2921989781e075405e307740f22f6