Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
756 commits
Select commit Hold shift + click to select a range
7f7d59b
fix(node-compat): http — fix parallel/test-http-head-response-has-no-…
vigoo Feb 26, 2026
28bcfd2
fix(node-compat): http — fix parallel/test-http.js
vigoo Feb 26, 2026
fdb4764
fix(node-compat): http — fix parallel/test-http-response-status-messa…
vigoo Feb 26, 2026
063eb00
fix(node-compat): http — fix parallel/test-http-response-splitting.js
vigoo Feb 26, 2026
afd9f68
fix(node-compat): http — fix parallel/test-http-status-reason-invalid…
vigoo Feb 26, 2026
932baba
fix(node-compat): http — fix parallel/test-http-should-keep-alive.js
vigoo Feb 26, 2026
41a06ca
fix(node-compat): http — fix parallel/test-http-header-validators.js
vigoo Feb 27, 2026
1ab5b93
fix(node-compat): http — fix parallel/test-http-hostname-typechecking.js
vigoo Feb 27, 2026
c76d897
fix(node-compat): http — fix parallel/test-http-invalid-urls.js
vigoo Feb 27, 2026
1c795a0
fix(node-compat): http — fix parallel/test-http-request-invalid-metho…
vigoo Feb 27, 2026
57cdc7c
fix(node-compat): http — fix parallel/test-http-invalid-path-chars.js
vigoo Feb 27, 2026
cd0c7fb
fix(node-compat): http — fix parallel/test-http-client-check-http-tok…
vigoo Feb 27, 2026
223a92e
fix(node-compat): http — fix parallel/test-http-outgoing-message-inhe…
vigoo Feb 27, 2026
995ecd0
fix(node-compat): http — fix parallel/test-http-invalidheaderfield2.js
vigoo Feb 27, 2026
6abe3d4
fix(node-compat): http — fix parallel/test-http-information-headers.js
vigoo Feb 27, 2026
c1ec59d
fix(node-compat): http — fix parallel/test-http-upgrade-client.js
vigoo Feb 27, 2026
69abbfb
fix(node-compat): http — fix parallel/test-http-server.js
vigoo Feb 27, 2026
4285951
fix(node-compat): http — fix parallel/test-http-outgoing-renderHeader…
vigoo Feb 27, 2026
9d55321
fix(node-compat): http — fix parallel/test-http-outgoing-properties.js
vigoo Feb 27, 2026
08e8014
fix(node-compat): http — fix parallel/test-http-incoming-matchKnownFi…
vigoo Feb 27, 2026
b36774b
fix(node-compat): http — fix parallel/test-http-incoming-message-dest…
vigoo Feb 27, 2026
e489164
fix(node-compat): http — fix parallel/test-http-outgoing-internal-hea…
vigoo Feb 27, 2026
94a410d
fix(node-compat): http — fix parallel/test-http-content-length.js
vigoo Feb 27, 2026
dc97195
bigger timeout
vigoo Feb 27, 2026
14b5063
ctrl+c handler
vigoo Feb 27, 2026
28091e4
fix(node-compat): http — fix skip-regressions
vigoo Feb 27, 2026
80eb5d3
node:net fix
vigoo Feb 27, 2026
9a50e7e
fix(node-compat): stream — fix skip-regressions
vigoo Feb 27, 2026
50f6f25
hard timeout
vigoo Feb 27, 2026
0b0c1bc
fix(node-compat): http — fix parallel/test-http-client-check-http-tok…
vigoo Feb 27, 2026
418324d
fix(node-compat): http — fix parallel/test-http-response-statuscode.js
vigoo Feb 27, 2026
3a25cd7
fix(node-compat): http — fix parallel/test-http-allow-req-after-204-r…
vigoo Feb 27, 2026
2834428
fix(node-compat): http — fix parallel/test-http-client-upload.js
vigoo Feb 27, 2026
950df4e
fix(node-compat): http — fix parallel/test-http-head-response-has-no-…
vigoo Feb 27, 2026
137354d
fix(node-compat): http — fix parallel/test-http-server-keep-alive-tim…
vigoo Feb 27, 2026
ae586b3
fix loop improvements
vigoo Feb 27, 2026
65a082b
fix(node-compat): http — fix batch-enable-passing
vigoo Feb 27, 2026
0bed5be
fix loop improvements
vigoo Feb 27, 2026
f791eb9
forbid loopback for node:http client
vigoo Feb 27, 2026
4487fd9
fix(node-compat): http — fix skip-regressions
vigoo Feb 27, 2026
8c8666e
fix(node-compat): http — fix skip-regressions
vigoo Feb 27, 2026
632fb89
fix(node-compat): http — fix parallel/test-http-client-upload.js
vigoo Feb 27, 2026
d84b8cb
fix(node-compat): http — fix parallel/test-http-client-upload-buf.js
vigoo Feb 27, 2026
3162b65
fix(node-compat): http — fix parallel/test-http-request-large-payload.js
vigoo Feb 27, 2026
dad54a7
fix(node-compat): http — fix parallel/test-http-client-race-2.js
vigoo Feb 27, 2026
c304216
fix(node-compat): http — fix parallel/test-http-client-abort3.js
vigoo Feb 27, 2026
8b0b697
fix(node-compat): http — fix parallel/test-http-client-abort3.js
vigoo Feb 27, 2026
f4e613d
fix(node-compat): http — fix parallel/test-http-write-head-after-set-…
vigoo Feb 27, 2026
7ef673c
fix loop improvements
vigoo Feb 27, 2026
3f99ad6
fix(node-compat): http — fix parallel/test-http-incoming-pipelined-so…
vigoo Feb 27, 2026
55e1aa8
fix(node-compat): http — fix skip-regressions
vigoo Feb 27, 2026
d789626
fix(node-compat): http — fix parallel/test-http-timeout.js
vigoo Feb 27, 2026
0259df4
fix(node-compat): http — fix parallel/test-http-highwatermark.js
vigoo Feb 27, 2026
300b70e
fix(node-compat): http — fix parallel/test-http-host-headers.js
vigoo Feb 27, 2026
c40881b
fix(node-compat): http — fix parallel/test-http-client-default-header…
vigoo Feb 27, 2026
4a4c890
fix(node-compat): http — fix parallel/test-http-client-request-option…
vigoo Feb 27, 2026
3d8f949
fix(node-compat): http — fix parallel/test-http-client-close-event.js
vigoo Feb 27, 2026
f1d8148
fix(node-compat): http — fix parallel/test-http-client-abort-event.js
vigoo Feb 27, 2026
38dd255
fix(node-compat): http — fix parallel/test-http-client-finished.js
vigoo Feb 27, 2026
147a833
fix(node-compat): http — fix parallel/test-http-flush-headers.js
vigoo Feb 27, 2026
a0f5758
fix(node-compat): http — fix parallel/test-http-agent-abort-controlle…
vigoo Feb 28, 2026
ffa15c6
fix loop improvements
vigoo Feb 28, 2026
7a41344
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 27, 2026
c62afe5
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 27, 2026
be99533
fix(node-compat): stream — fix parallel/test-stream-map.js
vigoo Feb 27, 2026
cc8eb58
fix(node-compat): stream — fix parallel/test-stream-compose.js
vigoo Feb 27, 2026
df981fd
fix(node-compat): stream — fix parallel/test-stream-readable-with-uni…
vigoo Feb 27, 2026
f4e85a7
fix(node-compat): stream — fix parallel/test-stream-writable-change-d…
vigoo Feb 27, 2026
e8764ae
fix(node-compat): stream — fix parallel/test-stream-end-of-streams.js
vigoo Feb 27, 2026
9ce26f9
fix(node-compat): stream — fix parallel/test-stream-uint8array.js
vigoo Feb 27, 2026
ec729af
fix(node-compat): stream — fix parallel/test-stream-promises.js
vigoo Feb 27, 2026
c85c0dd
fix(node-compat): stream — fix parallel/test-stream-base-prototype-ac…
vigoo Feb 28, 2026
b8f0f14
fix(node-compat): stream — fix parallel/test-stream-add-abort-signal.js
vigoo Feb 28, 2026
465bf13
fix(node-compat): stream — fix skip-regressions
vigoo Feb 28, 2026
5826e8d
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
b5884cc
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
6a774c0
fix(node-compat): stream — fix parallel/test-stream-map.js
vigoo Feb 28, 2026
d7cd97b
fix(node-compat): stream — fix parallel/test-stream-compose.js
vigoo Feb 28, 2026
99185cb
fix(node-compat): stream — fix parallel/test-stream-event-names.js
vigoo Feb 28, 2026
e962b80
fix(node-compat): stream — fix parallel/test-stream-pipe-unpipe-strea…
vigoo Feb 28, 2026
d69cda1
fix(node-compat): stream — fix parallel/test-stream-promises.js
vigoo Feb 28, 2026
ca58e54
fix(node-compat): stream — fix parallel/test-stream-readable-default-…
vigoo Feb 28, 2026
342ba53
fix(node-compat): stream — fix parallel/test-stream-transform-split-h…
vigoo Feb 28, 2026
9541eca
fix(node-compat): stream — fix parallel/test-stream-uint8array.js
vigoo Feb 28, 2026
81a3542
fix(node-compat): stream — fix parallel/test-stream-add-abort-signal.js
vigoo Feb 28, 2026
96314a2
fix(node-compat): stream — fix parallel/test-stream-base-typechecking.js
vigoo Feb 28, 2026
b1899f4
fix(node-compat): stream — fix parallel/test-stream-catch-rejections.js
vigoo Feb 28, 2026
fda92f3
fix(node-compat): stream — fix parallel/test-stream-catch-rejections.js
vigoo Feb 28, 2026
493512b
fix(node-compat): stream — fix parallel/test-stream-compose-operator.js
vigoo Feb 28, 2026
f3da15b
fix(node-compat): stream — fix parallel/test-stream-compose-operator.js
vigoo Feb 28, 2026
5b9a975
fix(node-compat): stream — fix parallel/test-stream-compose-operator.js
vigoo Feb 28, 2026
34ed75f
fix(node-compat): stream — fix parallel/test-stream-compose-operator.js
vigoo Feb 28, 2026
320fa22
fix(node-compat): stream — fix parallel/test-stream-compose-operator.js
vigoo Feb 28, 2026
d074621
fix(node-compat): stream — fix parallel/test-stream-compose-operator.js
vigoo Feb 28, 2026
05dba77
fix(node-compat): stream — fix parallel/test-stream-compose-operator.js
vigoo Feb 28, 2026
3445682
fix(node-compat): stream — fix parallel/test-stream-compose-operator.js
vigoo Feb 28, 2026
2913d9d
fix(node-compat): stream — fix parallel/test-stream-compose.js
vigoo Feb 28, 2026
929bee2
fix(node-compat): stream — fix parallel/test-stream-compose.js
vigoo Feb 28, 2026
14944cd
fix(node-compat): stream — fix parallel/test-stream-destroy.js
vigoo Feb 28, 2026
00ad158
fix(node-compat): stream — fix parallel/test-stream-destroy.js
vigoo Feb 28, 2026
a341721
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
4c1b694
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
f0e45a1
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
0dfd68c
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
ec0eae2
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
85929e9
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
e72111d
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
e850125
fix(node-compat): stream — fix parallel/test-stream-promises.js
vigoo Feb 28, 2026
ca7e640
node:stream fix
vigoo Feb 28, 2026
c07f76d
fix(node-compat): http — fix parallel/test-http-client-timeout-event.js
vigoo Feb 28, 2026
7000121
test-r update
vigoo Feb 28, 2026
6c5a7a0
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
c863682
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
d700b11
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
f0ed850
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
3b90d0b
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
752c92c
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
c73256c
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
c8ec581
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
5adf441
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
6a0d853
fix(node-compat): stream — fix parallel/test-stream-duplex-from.js
vigoo Feb 28, 2026
0c709df
fix(node-compat): stream — fix parallel/test-stream-duplex-readable-w…
vigoo Feb 28, 2026
74652a1
fix(node-compat): stream — fix parallel/test-stream-duplex-readable-w…
vigoo Feb 28, 2026
8b6f4a1
fix(node-compat): stream — fix parallel/test-stream-duplexpair.js
vigoo Feb 28, 2026
a290eba
fix(node-compat): stream — fix parallel/test-stream-duplexpair.js
vigoo Feb 28, 2026
624d8b8
fix(node-compat): stream — fix parallel/test-stream-duplexpair.js
vigoo Feb 28, 2026
452a019
fix(node-compat): stream — fix parallel/test-stream-duplexpair.js
vigoo Feb 28, 2026
f97c1af
fix(node-compat): stream — fix parallel/test-stream-duplexpair.js
vigoo Feb 28, 2026
72823ad
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
9b2213a
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
30c61ec
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
6de6d77
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
6593467
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
0da4920
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
6df5eff
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
1382abe
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
5acb5be
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
ef5cca3
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
a8f5df3
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
186f939
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
be0da5c
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
ed33166
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
950dae3
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
62c390c
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
26708b4
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
6c4244c
fix(node-compat): stream — fix parallel/test-stream-writable-decoded-…
vigoo Feb 28, 2026
88df882
fix(node-compat): stream — fix parallel/test-stream-promises.js
vigoo Feb 28, 2026
2c697dd
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
804e95d
fix(node-compat): stream — fix parallel/test-stream-readable-default-…
vigoo Feb 28, 2026
c002b1c
fix(node-compat): stream — fix parallel/test-stream-pipe-unpipe-strea…
vigoo Feb 28, 2026
5996995
fix(node-compat): stream — fix parallel/test-stream-uint8array.js
vigoo Feb 28, 2026
84b0cfd
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
d6c2d78
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
503b860
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
591eea6
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
33a799a
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
0a87b98
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
8551480
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
8f42458
fix(node-compat): stream — fix parallel/test-stream-finished.js
vigoo Feb 28, 2026
8dac296
fix(node-compat): stream — fix parallel/test-stream-pipeline-http2.js
vigoo Feb 28, 2026
09a3df3
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
333cc54
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
01b802e
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
ce60a8e
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
af2d914
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
3b7812f
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
a0d7616
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
646a4ba
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
cf94963
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
66c332f
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
6054e7e
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
0f4e23c
fix(node-compat): stream — fix batch-enable-passing
vigoo Feb 28, 2026
cdffa4f
fix loop improvements
vigoo Feb 28, 2026
f2d4962
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
fcddfd5
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
1427cc5
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
1df00da
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
df5b90b
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
5402c59
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
64cfa75
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
511d729
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
410c15c
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
6b0eda2
fix(node-compat): stream — fix parallel/test-stream-uint8array.js
vigoo Feb 28, 2026
e69c80f
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
f8af27b
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
ae0f7f1
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
095fc05
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
50dd7b7
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
dcc58fd
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
59c10d0
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
4979d41
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
05fccc9
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
d73d423
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
c0500e1
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
1cffcf7
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
13b7216
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
199dfcb
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
9100ddd
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
9d7b8e6
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
ce23a3f
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
6727f90
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
aa7c476
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
f1dc97a
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
f0e2c9c
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
d7824d1
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
54fc467
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
8a64a72
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
c2cc71a
fix(node-compat): stream — fix parallel/test-stream-pipeline.js
vigoo Feb 28, 2026
6f071e3
fix(node-compat): stream — fix parallel/test-stream-writable-destroy.js
vigoo Feb 28, 2026
4216b00
fix(node-compat): stream — fix parallel/test-stream-wrap.js
vigoo Feb 28, 2026
31598dd
fix(node-compat): stream — fix parallel/test-stream-wrap-drain.js
vigoo Feb 28, 2026
4c4f857
fix(node-compat): stream — fix parallel/test-stream-wrap-encoding.js
vigoo Feb 28, 2026
bd2d973
fix(node-compat): stream — fix parallel/test-stream-wrap-encoding.js
vigoo Feb 28, 2026
dbcdcf1
fix(node-compat): stream — fix parallel/test-stream-readable-async-it…
vigoo Feb 28, 2026
fc6272a
fix(node-compat): stream — fix parallel/test-stream-readable-async-it…
vigoo Feb 28, 2026
13235ec
fix(node-compat): stream — fix parallel/test-stream-readable-async-it…
vigoo Feb 28, 2026
2a45182
fix(node-compat): stream — fix parallel/test-stream-readable-async-it…
vigoo Feb 28, 2026
c8c4d2c
fix(node-compat): stream — fix parallel/test-stream-readable-async-it…
vigoo Mar 1, 2026
c917a43
fix(node-compat): stream — fix parallel/test-stream-readable-async-it…
vigoo Mar 1, 2026
3644a46
fix(node-compat): stream — fix parallel/test-stream-readable-async-it…
vigoo Mar 1, 2026
9e10d4c
fix(node-compat): stream — fix parallel/test-stream-readable-dispose.js
vigoo Mar 1, 2026
3c87b7a
fix(node-compat): stream — fix parallel/test-stream-readable-to-web.js
vigoo Mar 1, 2026
fb4c5f5
fix(node-compat): stream — fix parallel/test-stream-typedarray.js
vigoo Mar 1, 2026
8c73383
fix(node-compat): stream — fix batch-enable-passing
vigoo Mar 1, 2026
411ee44
fix(node-compat): http — fix skip-regressions
vigoo Mar 1, 2026
076079e
fix(node-compat): http — fix parallel/test-http-outgoing-writableFini…
vigoo Mar 1, 2026
c76194d
fix(node-compat): http — fix parallel/test-http-set-timeout-server.js
vigoo Mar 1, 2026
1b50134
fix(node-compat): http — fix parallel/test-http-outgoing-properties.js
vigoo Mar 1, 2026
ddb735b
fix(node-compat): http — fix parallel/test-http-outgoing-properties.js
vigoo Mar 1, 2026
bc15f40
fix(node-compat): http — fix parallel/test-http-outgoing-properties.js
vigoo Mar 1, 2026
48fc4ee
fix(node-compat): http — fix parallel/test-http-outgoing-internal-hea…
vigoo Mar 1, 2026
3bc7ec3
fix(node-compat): http — fix parallel/test-http-outgoing-internal-hea…
vigoo Mar 1, 2026
a7f4ded
fix(node-compat): http — fix parallel/test-http-outgoing-internal-hea…
vigoo Mar 1, 2026
d572a80
fix(node-compat): http — fix parallel/test-http-outgoing-proto.js
vigoo Mar 1, 2026
0b5c98d
fix(node-compat): http — fix parallel/test-http-outgoing-settimeout.js
vigoo Mar 1, 2026
ce72560
fix(node-compat): http — fix parallel/test-http-agent.js
vigoo Mar 1, 2026
28e39ed
fix(node-compat): http — fix parallel/test-http-request-end.js
vigoo Mar 1, 2026
8cb1cba
fix(node-compat): http — fix parallel/test-http-client-abort.js
vigoo Mar 1, 2026
c86ce13
fix(node-compat): http — fix parallel/test-http-client-readable.js
vigoo Mar 1, 2026
2c0bbb2
fix(node-compat): http — fix parallel/test-http-outgoing-destroy.js
vigoo Mar 1, 2026
5430802
fix(node-compat): http — fix parallel/test-http-outgoing-buffer.js
vigoo Mar 1, 2026
20a80b3
fix(node-compat): http — fix parallel/test-http-invalidheaderfield.js
vigoo Mar 1, 2026
c1fd645
fix(node-compat): http — fix parallel/test-http-client-reject-unexpec…
vigoo Mar 1, 2026
544f0b2
fix loop improvements
vigoo Mar 2, 2026
8774f7c
fix(node-compat): http — fix parallel/test-http-server-response-stand…
vigoo Mar 2, 2026
d195819
fix(node-compat): http — fix parallel/test-http-outgoing-proto.js
vigoo Mar 2, 2026
3474657
fix(node-compat): http — fix parallel/test-http-outgoing-end-types.js
vigoo Mar 2, 2026
2819203
fix(node-compat): http — fix parallel/test-http-outgoing-write-types.js
vigoo Mar 2, 2026
f06093a
fix(node-compat): http — fix parallel/test-http-outgoing-finished.js
vigoo Mar 2, 2026
398ba31
fix(node-compat): http — fix parallel/test-http-outgoing-finish.js
vigoo Mar 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
130 changes: 130 additions & 0 deletions .agents/skills/adding-builtin-module/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
---
name: adding-builtin-module
description: "Scaffolds and registers a new Node.js-compatible built-in module in the skeleton. Use when asked to add a new node:X module, implement a new built-in, or create a new native+JS module pair."
---

# Adding a New Built-in Module

Step-by-step guide for adding a new Node.js-compatible built-in module to the skeleton.

## Architecture

Built-in modules use a **hybrid native+JS pattern**:
- **Rust native bridge**: Low-level operations via `#[rquickjs::module]`, registered as `__wasm_rquickjs_builtin/<name>_native`
- **JS wrapper**: High-level Node.js-compatible API surface, imports from the native bridge

## Checklist

### 1. Create the Rust native module

File: `crates/wasm-rquickjs/skeleton/src/builtin/<name>.rs`

```rust
use rquickjs::module::ModuleDef;
use rquickjs::prelude::*;

pub const <NAME>_JS: &str = include_str!("<name>.js");
pub const REEXPORT_JS: &str = r#"export { default } from 'node:<name>'; export * from 'node:<name>';"#;
pub const WIRE_JS: &str = ""; // Only if globals need wiring

#[rquickjs::module]
mod native_module {
// Export functions here
#[rquickjs::function]
pub fn example_function() -> String {
"hello".to_string()
}
}

pub use native_module::js_native_module;
```

### 2. Create the JS wrapper

File: `crates/wasm-rquickjs/skeleton/src/builtin/<name>.js`

```javascript
import { example_function } from '__wasm_rquickjs_builtin/<name>_native';
// NOTE: Always use original Rust snake_case names in imports!

// Implement Node.js-compatible API surface
const result = example_function();

export { result };
export default { result };
```

### 3. Add dependencies (if needed)

Edit `crates/wasm-rquickjs/skeleton/Cargo.toml_`:
- Always use `default-features = false` for crates that may pull in C/native libraries
- Use pure-Rust backends (e.g., `rust_backend` feature) for `wasm32-wasip2` compatibility

### 4. Register in `mod.rs`

File: `crates/wasm-rquickjs/skeleton/src/builtin/mod.rs`

Four places need updating:

**a) Add the module declaration** (top of file):
```rust
mod <name>;
```

**b) Add to `add_module_resolvers`** — register the internal native path and public names:
```rust
.with_module("__wasm_rquickjs_builtin/<name>_native")
.with_module("node:<name>")
.with_module("<name>")
```

**c) Add to `module_loader` (ModuleLoader)** — map native path to Rust module:
```rust
.with_module("__wasm_rquickjs_builtin/<name>_native", <name>::js_native_module)
```

**d) Add to `module_loader` (BuiltinLoader)** — map public names to JS constants:
```rust
.with_module("node:<name>", <name>::<NAME>_JS)
.with_module("<name>", <name>::REEXPORT_JS)
```

**e) (Optional) Add to `wire_builtins`** — if the module needs to attach globals:
```rust
writeln!(result, "{}", <name>::WIRE_JS).unwrap();
```

### 5. Update README.md

Add the new module to the supported APIs list in `README.md`.

## Critical Gotchas

### `#[rquickjs::module(rename = ...)]` does NOT affect JS imports
The `rename` attribute (e.g., `rename = "camelCase"`) only affects Rust-side naming. JavaScript `import` statements must always use the **original Rust `snake_case` names**. Importing the camelCase version causes "Could not find export" errors.

### `u32` return value truncation
`rquickjs` may deliver `u32` as signed i32 to JavaScript (e.g., `0xFFFFFFFF` → `-1`). In the JS wrapper, apply `>>> 0`:
```javascript
const result = native_fn() >>> 0;
```

### CJS default export immutability
Use `Object.defineProperty` with `writable: false, configurable: false` on default export objects to emulate Node.js behavior where module constants are immutable.

### WASM-compatible dependencies
Always use `default-features = false` for crates that may pull in C libraries. Use pure-Rust backends to ensure `wasm32-wasip2` target compatibility.

### No platform-conditional code
The skeleton is **always compiled to `wasm32-wasip1`**. Never write conditional code that checks for unix/windows/macOS or any other host platform (e.g., `#[cfg(unix)]`, `#[cfg(windows)]`, `#[cfg(target_os = "...")]`, `process.platform === "win32"`, `path.sep === "\\"`, etc.). Such checks are meaningless in the WASM target and add dead code complexity.

### node:http transport rule
**Never use a loopback transport for `node:http`.** Every `node:http` client request MUST go through `wasi:http` (the native Rust `NodeHttpClientRequest`). Do NOT add any fallback that bypasses `wasi:http` by creating direct `node:net` socket connections for loopback/localhost addresses.

## Testing

1. Define an example in `examples/` (JS file + WIT interface pair)
2. Add tests in `tests/runtime.rs` that use the example
3. Run: `cargo test --test runtime <module> -- --nocapture`

If also adding node_compat coverage, use the `fixing-node-compat-test` skill for that workflow.
Loading
Loading