Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
527 commits
Select commit Hold shift + click to select a range
7466249
watch: track worker entry files in watch mode
SudhansuBandha Apr 28, 2026
8385efc
deps: V8: cherry-pick 0f024d4e66e0
IlyasShabi Mar 10, 2026
3ee30d9
crypto: reject unintended raw key format string input
panva Apr 28, 2026
3d65840
meta: bump cachix/install-nix-action from 31.10.3 to 31.10.5
dependabot[bot] Apr 28, 2026
4247cd3
src: fix crash in GetErrorSource() for invalid using syntax
semimikoh Apr 28, 2026
186995e
deps: fix libffi macos build
ShogunPanda Apr 28, 2026
2a601eb
test: export isRiscv64 from common module
JamieMagee Apr 28, 2026
8173251
deps: update corepack to 0.34.7
nodejs-github-bot Apr 28, 2026
1f9636a
tools: bump the eslint group in /tools/eslint with 4 updates
dependabot[bot] Apr 29, 2026
61db260
ffi: support Symbol.dispose on DynamicLibrary
mcollina Apr 29, 2026
5320a1b
deps: update nghttp2 to 1.69.0
nodejs-github-bot Apr 26, 2026
4a32c00
deps: fix integration issues with the latest nghttp2
pimterry Apr 22, 2026
74c6f85
doc: use mjs/cjs blocks for callbackify null reason example
watilde Apr 29, 2026
31da818
tools: do not include HTML docs in slim tarball
aduh95 Apr 29, 2026
af8eba2
tools: reuse V8 builds even without Cachix on test-shared
aduh95 Apr 29, 2026
5d578c5
src: make node.config.json throw at unknown fields
marco-ippolito Apr 29, 2026
e7f57b5
tools: update labels for nixpkgs pin bumps
aduh95 Apr 29, 2026
a962e72
doc: correct diagnostics_channel built-in channel names
bengl Apr 29, 2026
a7f487f
src: add missing <cstdlib> for abort() declaration
ckerr Apr 30, 2026
f625c4b
http2: expose writable stream state on compat response
cookesan Apr 30, 2026
66054cc
build: add rust target for macOS cross compiles
richardlau Apr 30, 2026
80e0f14
url: process crash via malformed UNC hostname in pathToFileURL()
NickNaso Apr 30, 2026
fc192ee
doc: reserve NMV 148 for Electron 43
rf-figma Apr 30, 2026
31d7141
test: run Temporal presence checks without V8 flag
Renegade334 May 1, 2026
637a98a
lib: add Temporal to frozen intrinsics
Renegade334 May 1, 2026
9c01018
ffi: prevent premature GC of DynamicLibrary
semimikoh May 1, 2026
6a94957
debugger: move ProbeInspectorSession and helpers to separate files
joyeecheung May 1, 2026
9ab960a
src: split profiling helpers from util
IlyasShabi May 1, 2026
d179c7e
tools: migrate from `openssl-matrix.json` to `openssl-matrix.nix`
aduh95 May 1, 2026
69a970f
tools: do not run `test-linux` on unrelated tools changes
aduh95 May 1, 2026
5e61a07
stream: simplify `setPromiseHandled` utility
aduh95 May 1, 2026
11112fc
tools: simplify `update-undici.sh`
aduh95 May 2, 2026
13e90d0
deps: update llhttp to 9.4.1
nodejs-github-bot May 2, 2026
b2f6aa3
inspector: fix absolute URLs in network http
GrinZero May 3, 2026
01a096c
crypto: add guards and adjust tests for BoringSSL
panva Apr 22, 2026
f64b968
src: use `unique_ptr` for ffi memory management
addaleax May 1, 2026
10dd87b
ffi: make `FFIFunctionInfo` a `BaseObject` subclass
addaleax May 1, 2026
2ce788c
meta: bump actions/upload-artifact from 7.0.0 to 7.0.1
dependabot[bot] May 3, 2026
502a7ef
meta: bump Mozilla-Actions/sccache-action from 0.0.9 to 0.0.10
dependabot[bot] May 3, 2026
bb26491
meta: bump github/codeql-action from 4.35.1 to 4.35.3
dependabot[bot] May 3, 2026
25f80fb
src: decouple KeyObject and CryptoKey and move CryptoKey to src
panva Apr 24, 2026
59272da
src: swap dotenv and config file parsing order
marco-ippolito May 4, 2026
9390c81
lib: reject SharedArrayBuffer in Blob constructor per spec
thisalihassan May 4, 2026
f4c50a8
build: remove armv6 from experimental platforms
Renegade334 May 4, 2026
6110b2a
tools: update gr2m/create-or-update-pull-request-action to v1.10.1
MikeMcC399 May 4, 2026
69121ab
doc: remove typo comma from man page
vassudanagunta May 4, 2026
ff10199
lib: refactor internal webidl converters
panva May 4, 2026
c735003
src: remove license headers for new node_profiling files
legendecas May 4, 2026
e0200f2
http: harden ClientRequest options merge
mcollina May 4, 2026
266cd67
stream: remove duplicated utility
aduh95 May 4, 2026
c21c664
http: emit 'drain' on OutgoingMessage only after buffers drain
ronag May 4, 2026
7eab492
stream: copyedit `webstreams/adapter.js`
aduh95 May 4, 2026
396a07a
tools: implements a few nits on `build-aarch64-linux-v8`
aduh95 May 4, 2026
6e2188e
build: track PDL files as inputs in inspector GN build
deepak1556 May 4, 2026
6ef8dc8
tools: use LTS Node.js in notify-on-push workflow
nsinfoPRO May 4, 2026
63c076e
tools: bump postcss from 8.5.8 to 8.5.10 in /tools/doc
dependabot[bot] May 4, 2026
459672f
test: update WPT for url to 258f285de0
nodejs-github-bot May 5, 2026
270a694
doc: minor structural stream/iter edits
Renegade334 May 5, 2026
e3af572
deps: update amaro to 1.1.9
nodejs-github-bot May 5, 2026
711c022
tools: update nixpkgs-unstable to c6d65881c5624c9cae5ea6cedef24699b0c
nodejs-github-bot May 5, 2026
ee37fce
deps: update undici to 8.2.0
nodejs-github-bot May 5, 2026
480ee08
test_runner: fix failing suite hooks when marked with `todo`
MoLow May 5, 2026
9a076c8
tools: use `npm ci` in Undici update script
aduh95 May 5, 2026
60e4f7b
doc: fix the TypeScript Execute (tsx) project link
davidthornton May 5, 2026
6df4f7b
stream: remove redundant method check from iter.pipeToSync
Renegade334 May 5, 2026
9e633f9
2026-05-05, Version 26.0.0 (Current)
RafaelGSS Mar 31, 2026
a641226
doc: fix lint-md
RafaelGSS May 5, 2026
18f938d
src: bump NODE_MAJOR_VERSION to 27
RafaelGSS May 5, 2026
2b112e7
doc: fix changelog for chromium numbering
RafaelGSS May 5, 2026
cf91d18
quic: complete the internal implementation of QUIC
jasnell Apr 21, 2026
1aebbde
src: skip JS callback for settled Promise.race losers
Felipeness Mar 19, 2026
e80b5d2
src: remove unused using declarations in node_task_queue
mertcanaltin May 6, 2026
e46e0d1
crypto: optimize normalizeAlgorithm dispatch hot path
panva Apr 15, 2026
fa17dc2
lib: optimize webidl conversion options
panva May 4, 2026
e690df3
doc: remove list of versions in `BUILDING.md`
aduh95 May 6, 2026
0bd46c1
crypto: improve accuracy of SubtleCrypto.supports
panva May 6, 2026
c52fad3
doc: downgrade macOS x64 to Tier 2
aduh95 May 6, 2026
4002853
src: support multiple versions in node.config.json
marco-ippolito Apr 29, 2026
1800049
doc: document the latest-vX.x schema
marco-ippolito Apr 29, 2026
3c2d2e3
quic: ignore coverage for quic files
jasnell May 6, 2026
1b04f16
doc: add Hmac.digest() documentation-only deprecation (DEP0206)
Anshikakalpana May 6, 2026
dc99d18
lib: handle --permission-audit when propagating flags
RafaelGSS May 6, 2026
2f5d7e7
module: exclude `node:ffi` from `builtinModules` when not enabled
ljharb May 6, 2026
b5da751
sqlite: keep source database alive during backup
mcollina May 6, 2026
a725fe1
2026-05-07, Version 26.1.0 (Current)
aduh95 May 6, 2026
4f44c6f
module: fix sync hook short-circuit in require() in imported CJS
joyeecheung May 7, 2026
1fd4949
crypto: reject invalid raw key imports
panva May 7, 2026
b3ae59d
crypto: harden KeyObject internal slots
panva May 4, 2026
f7c2628
crypto: harden CryptoKey algorithm slots
panva May 4, 2026
9adddc5
tools: prevent lib code from reading KeyObject and CryptoKey accessors
panva May 4, 2026
a9b98b2
doc: fix deprecation list in 26.0.0 changelog
aduh95 May 8, 2026
bd65467
test: use ERM to destroy sqlite database handles after tests
Renegade334 May 8, 2026
11740ef
doc,sqlite: document entryPoint argument for loadExtension
geeksilva97 May 8, 2026
2b6ce13
stream: minor stream/iter implementation edits
Renegade334 May 8, 2026
3a7f31c
doc: update release steps when post-release fails
RafaelGSS May 8, 2026
64cf9a1
doc: improve quic documentation
jasnell May 8, 2026
bbc6f7d
deps: update ngtcp2 to 1.22.1
nodejs-github-bot May 8, 2026
34e62e9
tls: add unsupported renegotiation error
panva May 5, 2026
bbf51ad
test: update tls/crypto behaviour expectations when using BoringSSL
panva May 5, 2026
187b4d3
quic: remove unused binding variable in session.cc
jasnell May 7, 2026
facd71e
quic: remove unused env_ variable in session_manager.h/cc
jasnell May 7, 2026
e15f905
doc: clarify SEA platform support excludes darwin-x64
mokashang May 10, 2026
ccab9ac
doc: fix inconsistencies in CJS code snippets
aduh95 May 10, 2026
49aef0d
doc: remove unnecessary `<!-- eslint-` magic comments
aduh95 May 10, 2026
130398a
test: reduce flakiness of `different-registry-per-thread`
aduh95 May 11, 2026
6f81dc3
meta: ignore AI assistants files
mcollina May 11, 2026
0a60e90
lib: narrow ReadableStreamBYOBRequest.view return type to Uint8Array
Jah-yee May 11, 2026
20e6a54
doc: add large pull requests contributing guide
mcollina May 11, 2026
a349018
tools: use different branch for tool updates on staging branches
aduh95 May 11, 2026
e107f3c
src: add BoringSSL EVP enumeration fallback
panva May 5, 2026
1a02250
tools: add boringssl to tools/nix/openssl-matrix.nix
panva May 5, 2026
58cd0b8
quic: support --allow-net permissions
jasnell May 8, 2026
a2aeb72
deps: add missing static linking targets for libffi
ShogunPanda May 11, 2026
78bbee3
debugger: add --help to `node inspect` and improve docs
joyeecheung May 11, 2026
a37c61d
tools: update nixpkgs-unstable to b3da656039dc7a6240f27b2ef8cc6a3ef3b
nodejs-github-bot May 12, 2026
b06aee0
test_runner: add tags option and tag-name filter
atlowChemi May 12, 2026
2cc4c81
Revert "test: reduce flakiness of `different-registry-per-thread`"
aduh95 May 11, 2026
a05b47f
test: reduce flakiness of `different-registry-per-thread`
aduh95 May 9, 2026
1dc50f9
test: relax test-memory-usage arrayBuffers check
inoway46 May 10, 2026
349d226
deps: cherry-pick libuv/libuv@a43e543
thisalihassan May 12, 2026
6009d93
src,sqlite: remove dead code
geeksilva97 May 12, 2026
678b46a
deps: V8: cherry-pick 435a2cdf664c
Liedtke Apr 1, 2026
6eaa60c
test: update WPT for wasm/jsapi to 288c467d35
nodejs-github-bot May 5, 2026
c363bec
crypto: improve system certificate enumeration logic on macOS
deepak1556 May 12, 2026
d5beddb
tools: filter V8 scripts for build toolchain
richardlau May 13, 2026
131fd84
doc: run license-builder
github-actions[bot] May 13, 2026
6916e64
lib: fixes validator message
watilde Apr 19, 2026
a159b57
lib: fix typo idenity => identity
watilde May 13, 2026
c24e552
node-api: support SharedArrayBuffer in napi_create_typedarray
umuoy1 May 13, 2026
d2ce815
meta: move one or more collaborators to emeritus
nodejs-github-bot May 13, 2026
a192f19
doc: document Temporal configure flags in BUILDING.md
ChrisJr404 May 13, 2026
bf7e79c
2026-05-13, Version 22.22.3 'Jod' (LTS)
marco-ippolito May 11, 2026
da860f9
doc: recommend explicitly Tier 1 or 2 for production applications
MikeMcC399 May 14, 2026
843dc5f
doc: replace Visual Studio 2022 Evergreen version reference with 17.14
MikeMcC399 May 14, 2026
f56c4c5
test: move FFI tests to `NATIVE_SUITES`
aduh95 May 14, 2026
2edd842
stream: cache minimum cursor count in share
trivikr May 14, 2026
a73fafb
doc: reference correct function in Module docs
RobinMalfait May 14, 2026
841fc90
tools: fix test426 updater
aduh95 May 14, 2026
6482073
stream: preserve toReadableSync batch after backpressure
trivikr May 15, 2026
676e9da
repl: fix dedup comparing normalized line against raw history
watilde Apr 22, 2026
fa1e1f4
test_runner: fix diagnostics channel context tracking
MoLow May 15, 2026
5750802
test_runner: fix hooks test context
MoLow May 15, 2026
e9c49ea
quic: fixup quic stream variable chunk len
jasnell May 10, 2026
274d799
http2: validate non-link headers in writeEarlyHints
mcollina May 15, 2026
f190a04
quic: send correct OpenSSL alert for ALPN mismatches
pimterry May 15, 2026
c8206c8
deps: update simdjson to 4.6.4
nodejs-github-bot May 15, 2026
03f27fe
http: add writeInformation to send arbitrary 1xx status codes
pimterry May 15, 2026
ee11c35
debugger: disambiguate probe location binding
joyeecheung May 15, 2026
e568673
doc: fix CHANGELOG
richardlau May 15, 2026
be7ded1
stream: optimize single-slot push queue drain
trivikr May 15, 2026
2d6cbea
stream: validate fromWritable() options before cache
trivikr May 15, 2026
a91d859
deps: update sqlite to 3.53.1
nodejs-github-bot May 15, 2026
c0327d3
stream: uncork fromWritable writev on chunk error
trivikr May 15, 2026
a6696e2
stream: validate broadcast writer writev chunks
trivikr May 16, 2026
19dd555
doc: mark stream.compose stable
mcollina May 16, 2026
8c6e39e
stream: avoid retrying accepted pipeTo writes
trivikr May 16, 2026
3163d8a
test: avoid initial-break wait in restart-message
inoway46 May 13, 2026
9de9b9f
test: avoid flaky restart sync in debugger exceptions test
inoway46 May 16, 2026
13c2374
stream: remove unnecessary check
aduh95 May 16, 2026
f8e8eb8
stream: cache minimum cursor count in broadcast
trivikr May 17, 2026
265679b
stream: limit iter from sync iterable batches
trivikr May 17, 2026
a9b0a83
fs: make `Date` properties on `Stats` enumerable
LiviaMedeiros May 15, 2026
5a8882a
doc: remove inactive members from Triagers list
aduh95 May 17, 2026
0ed1d94
src: simplify OpenSSL feature gates
panva May 5, 2026
0743198
crypto: wire AES-KW in Web Cryptography when using BoringSSL
panva Apr 22, 2026
be9f78f
crypto: wire ChaCha20-Poly1305 in Web Cryptography when using BoringSSL
panva Apr 22, 2026
550f195
crypto: wire ML-DSA and ML-KEM for use when using BoringSSL
panva May 8, 2026
d6be715
test: relax min assertion in test-performance-eventloopdelay
marcopiraccini May 17, 2026
bc90667
stream: fix merge handling for object-like sources
trivikr May 17, 2026
1f371fc
stream: add sync iterable fast path to pipeTo
trivikr May 17, 2026
debe2ed
test_runner: avoid hanging on incomplete v8 frames
thisalihassan May 18, 2026
3b19867
benchmark: respect stream/iter broadcast backpressure
trivikr May 18, 2026
f2aaf63
test: fix flaky test-watch-mode-inspect timeout
mcollina May 18, 2026
155268f
doc: add Rust toolchain manual installation instructions Windows
MikeMcC399 May 18, 2026
4ee7567
fs: add `Temporal.Instant` support to `Stats` and `BigIntStats`
LiviaMedeiros May 18, 2026
55920df
deps: update corepack to 0.35.0
nodejs-github-bot May 19, 2026
2ebf533
tools: update nixpkgs-unstable to d233902339c02a9c334e7e593de68855ad2
nodejs-github-bot May 19, 2026
783b382
stream: align `Readable.toWeb` termination with eos
ikeyan May 19, 2026
d2b6840
tools: update gyp-next to 0.22.2
nodejs-github-bot May 19, 2026
216718a
tools: bump the eslint group in /tools/eslint with 4 updates
dependabot[bot] May 19, 2026
f352556
stream: disallow writing string chunk with 'buffer' encoding
Renegade334 May 19, 2026
21a92e8
deps: update undici to 8.3.0
nodejs-github-bot May 19, 2026
7acaa0f
crypto: align verifyOneShot accepted types
Anshikakalpana May 19, 2026
57ee682
test: deflake watch mode worker test
trivikr May 19, 2026
b1387e6
lib: use `Object.freeze` to avoid defensive cloning in `SourceMap`
watilde May 19, 2026
0b5b189
test: avoid repeated writes in watch helper
trivikr May 19, 2026
46e17c7
build,win: add Rust toolchain automated configuration Windows
MikeMcC399 May 19, 2026
5605f6b
doc: update http2's `push` and `trailers` events with `rawHeaders` param
samuel871211 May 19, 2026
4f4077a
doc: remove the bi-monthly contributor spotlight section
ovflowd May 19, 2026
0c7034f
doc: fix article usage before vowel-sound acronyms
joao-oliveira-softtor May 19, 2026
f868543
test: deflake connection refused proxy tests
trivikr May 20, 2026
0e8fb91
test: disable Maglev in near-heap-limit worker test
trivikr May 20, 2026
09b369f
meta: move one or more collaborators to emeritus
nodejs-github-bot May 20, 2026
701f735
doc: fix promise nomenclature in `stream_iter.md`
aduh95 May 20, 2026
59e8484
doc: remove unsupported template type from v8.md
Renegade334 May 20, 2026
d955896
2026-05-20, Version 26.2.0 (Current)
aduh95 May 20, 2026
b5659d1
test: update WPT for WebCryptoAPI to 97bbc7247a
nodejs-github-bot May 20, 2026
614050b
build,win: replace LTCG with Thin LTO for releases
StefanStojanovic May 20, 2026
61d66c3
test: unskip snapshot reproducibility test
joyeecheung May 21, 2026
a29a118
gyp: update deps gypfiles
nadalaba May 21, 2026
1455277
test_runner: preserve run duration when using test-rerun
MoLow May 19, 2026
5c87012
test_runner: show replayed-from-attempt hint in spec reporter
MoLow May 19, 2026
0d6541a
2026-05-21, Version 24.16.0 'Krypton' (LTS)
nodejs-github-bot May 12, 2026
d92ee51
src: expose `node::RegisterContext` to make a node managed context
legendecas May 21, 2026
9fc42e3
test: wait for ok before initial break after restart
inoway46 May 21, 2026
7e8641a
doc: fix typo in deprecations
watilde May 21, 2026
e6e6700
test_runner: add parentId to test events with testId
MoLow May 21, 2026
9c60b08
doc: update toolchain for official releases
richardlau May 21, 2026
436748f
src,lib: implement experimental DTLS API
jasnell May 8, 2026
067d2a2
src, lib: add stats to dtls
jasnell May 10, 2026
f835cc4
src,lib: add dtls interop tests
jasnell May 10, 2026
22b987c
meta: add additional gitignore entries
jasnell May 12, 2026
ff8aa78
quic: improve backend quic packet processing
jasnell May 12, 2026
60ba1b3
test: fixup quic tests
jasnell May 12, 2026
9968679
quic: improve batching of packet sending
jasnell May 12, 2026
567ac2d
quic: add support for future ECN marking
jasnell May 12, 2026
f341ad7
quic: cache the timestamp on send and receive
jasnell May 12, 2026
b6c6a83
quic: eliminate per-received datagram allocation
jasnell May 12, 2026
fcddd35
quic: fix crash in early handshake failure
jasnell May 12, 2026
554b208
quic: fixup linting issue after other changes
jasnell May 12, 2026
befc5f9
quic: implement rate limiting for version nego and immediate close
jasnell May 12, 2026
4eae6f1
quic: add handshake timeout and default connection limits
jasnell May 12, 2026
fdbfb68
quic: add aliased struct arenas
jasnell May 13, 2026
e56badc
quic: improve internal structure of QuicStream
jasnell May 13, 2026
fb49d36
quic: improve the quic js structure
jasnell May 14, 2026
5b3c053
quic: fix UAF in Application::OnTimeout()
jasnell May 14, 2026
b621fb3
quic: fixup UAFs in bindingdata, streams, and app
jasnell May 14, 2026
5d1ea79
quic: fix premature unref of endpoint when listening
jasnell May 14, 2026
f1fdf91
quic: fixup some v8:: qualifiers
jasnell May 14, 2026
137f7ae
quic: fix tests that are missing serverEndpoint close
jasnell May 14, 2026
0163847
quic: apply multiple additional minor improvements
jasnell May 15, 2026
3c42f78
quic: coalesce received data into fewer buffers
jasnell May 15, 2026
add5210
quic: add reusePort option to QuicEndpoint
jasnell May 16, 2026
320a3a2
quic: improve stream header collection performance
jasnell May 16, 2026
1776f3f
quic: enable recvmmsg batching in Endpoint
jasnell May 16, 2026
8a598fd
quic: add initial RTT option to session options
jasnell May 16, 2026
1d9b449
quic: improve recv coalescing test sizes
jasnell May 16, 2026
4aea61d
quic: add getters for local and remote transport parameters
jasnell May 16, 2026
2f56cd2
quic: add applicationOptions to session
jasnell May 16, 2026
7e7bde8
stream: fix Writable.toWeb() hang on synchronous drain
Han5991 May 22, 2026
e11b945
test: isolate rerun-failures state file under tmpdir
atlowChemi May 22, 2026
3553a34
debugger: surface inspector failures in probe mode
joyeecheung May 22, 2026
10f8a83
doc: add Rust toolchain general install instructions
MikeMcC399 May 22, 2026
5ff701a
doc: fix "options" to "option" in tls.createServer
watilde May 22, 2026
ca37665
ffi: move DynamicLibrary disposer to native layer
Renegade334 May 22, 2026
11ea171
tools: mock some Python utils in `v8.nix` to reuse builds
aduh95 May 22, 2026
fa0aadc
deps: upgrade npm to 11.15.0
npm-cli-bot May 22, 2026
a7d5446
stream: propagate abort reason in share and broadcast
trivikr May 23, 2026
8d3245e
stream: avoid duplicate writes in toWritable
trivikr May 23, 2026
4cfb038
Create pnpm
Premiermoney May 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
9 changes: 8 additions & 1 deletion .configurations/configuration.dsc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,13 @@ properties:
- Microsoft.VisualStudio.Workload.NativeDesktop
- Microsoft.VisualStudio.Component.VC.Llvm.Clang
- Microsoft.VisualStudio.Component.VC.Llvm.ClangToolset
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: rustPackage
directives:
description: Install Rust with MSVC toolchain
settings:
id: Rustlang.Rust.MSVC
source: winget
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: gitPackage
directives:
Expand All @@ -51,4 +58,4 @@ properties:
settings:
id: Nasm.Nasm
source: winget
configurationVersion: 0.1.1
configurationVersion: 0.2.0
9 changes: 8 additions & 1 deletion .configurations/configuration.vsBuildTools.dsc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,13 @@ properties:
- Microsoft.VisualStudio.Workload.VCTools
- Microsoft.VisualStudio.Component.VC.Llvm.Clang
- Microsoft.VisualStudio.Component.VC.Llvm.ClangToolset
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: rustPackage
directives:
description: Install Rust with MSVC toolchain
settings:
id: Rustlang.Rust.MSVC
source: winget
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: gitPackage
directives:
Expand All @@ -51,4 +58,4 @@ properties:
settings:
id: Nasm.Nasm
source: winget
configurationVersion: 0.1.1
configurationVersion: 0.2.0
9 changes: 8 additions & 1 deletion .configurations/configuration.vsEnterprise.dsc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,13 @@ properties:
- Microsoft.VisualStudio.Workload.NativeDesktop
- Microsoft.VisualStudio.Component.VC.Llvm.Clang
- Microsoft.VisualStudio.Component.VC.Llvm.ClangToolset
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: rustPackage
directives:
description: Install Rust with MSVC toolchain
settings:
id: Rustlang.Rust.MSVC
source: winget
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: gitPackage
directives:
Expand All @@ -51,4 +58,4 @@ properties:
settings:
id: Nasm.Nasm
source: winget
configurationVersion: 0.1.1
configurationVersion: 0.2.0
9 changes: 8 additions & 1 deletion .configurations/configuration.vsProfessional.dsc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,13 @@ properties:
- Microsoft.VisualStudio.Workload.NativeDesktop
- Microsoft.VisualStudio.Component.VC.Llvm.Clang
- Microsoft.VisualStudio.Component.VC.Llvm.ClangToolset
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: rustPackage
directives:
description: Install Rust with MSVC toolchain
settings:
id: Rustlang.Rust.MSVC
source: winget
- resource: Microsoft.WinGet.DSC/WinGetPackage
id: gitPackage
directives:
Expand All @@ -51,4 +58,4 @@ properties:
settings:
id: Nasm.Nasm
source: winget
configurationVersion: 0.1.1
configurationVersion: 0.2.0
5 changes: 3 additions & 2 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,13 @@ end_of_line = crlf
indent_size = 8
indent_style = tab

[{deps}/**]
[deps/**]
charset = unset
end_of_line = unset
indent_size = unset
indent_style = unset
insert_final_newline = unset
trim_trailing_whitespace = unset

[{test/fixtures,deps,tools/eslint/node_modules,tools/gyp,tools/icu,tools/msvs}/**]
[{test/fixtures,tools/eslint/node_modules,tools/gyp,tools/icu,tools/msvs}/**]
insert_final_newline = false
17 changes: 17 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,15 @@
/src/node_http2* @nodejs/http2 @nodejs/net
/src/node_mem* @nodejs/http2

# quic

/deps/ngtcp2/* @nodejs/quic
/doc/api/quic.md @nodejs/quic
/lib/quic.js @nodejs/quic
/lib/internal/quic/* @nodejs/quic
/src/quic/* @nodejs/quic
/test/parallel/test-quic-* @nodejs/quic

# modules, including loaders

/doc/api/esm.md @nodejs/loaders
Expand Down Expand Up @@ -234,3 +243,11 @@
# dev container
/.devcontainer/* @nodejs/devcontainer
/doc/contributing/using-devcontainer.md @nodejs/devcontainer

# FFI
/deps/libffi/ @nodejs/ffi
/doc/api/ffi.md @nodejs/ffi
/lib/ffi.js @nodejs/ffi
/src/ffi/ @nodejs/ffi
/src/node_ffi.* @nodejs/ffi
/test/ffi/ @nodejs/ffi
65 changes: 65 additions & 0 deletions .github/actions/build-shared/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
name: Build Node.js (shared libraries)
description: >
Downloads the slim tarball built by the `build-tarball` job, extracts it,
installs Nix (+ cachix + sccache), then builds Node.js and runs the CI
test suite inside the pinned nix-shell.

inputs:
extra-nix-flags:
description: Additional CLI arguments appended to the nix-shell invocation.
required: false
default: ''
cachix-auth-token:
description: Cachix auth token for nodejs.cachix.org.
required: false
default: ''

runs:
using: composite
steps:
- uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
name: tarballs
path: tarballs

- name: Extract tarball
shell: bash
run: |
tar xzf tarballs/*.tar.gz -C "$RUNNER_TEMP"
echo "TAR_DIR=$RUNNER_TEMP/$(basename tarballs/*.tar.gz .tar.gz)" >> "$GITHUB_ENV"

- uses: cachix/install-nix-action@96951a368ba55167b55f1c916f7d416bac6505fe # v31.10.3
with:
extra_nix_config: sandbox = true

- uses: cachix/cachix-action@1eb2ef646ac0255473d23a5907ad7b04ce94065c # v17
with:
name: nodejs
authToken: ${{ inputs.cachix-auth-token }}

- name: Configure sccache
if: github.base_ref == 'main' || github.ref_name == 'main'
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
with:
script: |
core.exportVariable('SCCACHE_GHA_ENABLED', 'on');
core.exportVariable('ACTIONS_CACHE_SERVICE_V2', 'on');
core.exportVariable('ACTIONS_RESULTS_URL', process.env.ACTIONS_RESULTS_URL || '');
core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || '');
core.exportVariable('NIX_SCCACHE', '(import <nixpkgs> {}).sccache');

- name: Build Node.js and run tests
shell: bash
run: |
nix-shell \
-I "nixpkgs=$TAR_DIR/tools/nix/pkgs.nix" \
--pure --keep TAR_DIR --keep FLAKY_TESTS \
--keep SCCACHE_GHA_ENABLED --keep ACTIONS_CACHE_SERVICE_V2 --keep ACTIONS_RESULTS_URL --keep ACTIONS_RUNTIME_TOKEN \
--arg loadJSBuiltinsDynamically false \
--arg ccache "${NIX_SCCACHE:-null}" \
--arg devTools '[]' \
--arg benchmarkTools '[]' \
${{ inputs.extra-nix-flags }} \
--run '
make -C "$TAR_DIR" run-ci -j4 V=1 TEST_CI_ARGS="-p actions --measure-flakiness 9 --skip-tests=$CI_SKIP_TESTS"
' "$TAR_DIR/shell.nix"
56 changes: 56 additions & 0 deletions .github/actions/undici-wpt-current/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: Run undici WPT (current)
description: Runs undici WPT tests for undici >= 7 and merges results into the Node.js WPT report

inputs:
undici-version:
required: true
description: undici version tag to checkout
wpt-report:
required: true
description: Path to the Node.js WPT report to merge into

runs:
using: composite
steps:
- name: Checkout undici
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
repository: nodejs/undici
persist-credentials: false
path: undici
clean: false
ref: ${{ inputs.undici-version }}
- name: Prepare WPT checkout
shell: bash
run: |
rm -rf undici/test/web-platform-tests/wpt
mv test/fixtures/wpt undici/test/web-platform-tests/wpt
- name: Configure hosts
shell: bash
working-directory: undici/test/web-platform-tests/wpt
run: python3 wpt make-hosts-file | sudo tee -a /etc/hosts
- name: Install dependencies
shell: bash
working-directory: undici
run: npm install
- name: Run WPT
shell: bash
working-directory: undici
env:
CI: 'true'
WPT_REPORT: ${{ github.workspace }}/undici/wptreport.json
run: npm run test:wpt || true
- name: Merge report
shell: bash
env:
NODE_WPT_REPORT: ${{ inputs.wpt-report }}
UNDICI_WPT_REPORT: ${{ github.workspace }}/undici/wptreport.json
run: |
if [ -f "$UNDICI_WPT_REPORT" ]; then
jq -sc '
.[0].results += .[1].results |
.[0].time_end = .[1].time_end |
.[0]
' "$NODE_WPT_REPORT" "$UNDICI_WPT_REPORT" > "${NODE_WPT_REPORT}.tmp"
mv "${NODE_WPT_REPORT}.tmp" "$NODE_WPT_REPORT"
fi
37 changes: 37 additions & 0 deletions .github/actions/undici-wpt-legacy/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Run undici WPT (legacy)
description: Runs undici WPT tests for undici < 7 and appends results to the Node.js WPT report

inputs:
undici-version:
required: true
description: undici version tag to checkout
wpt-report:
required: true
description: Path to the Node.js WPT report

runs:
using: composite
steps:
- name: Checkout undici
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
repository: nodejs/undici
persist-credentials: false
path: undici
clean: false
ref: ${{ inputs.undici-version }}
- name: Prepare WPT checkout
shell: bash
run: |
rm -rf undici/test/wpt/tests
mv test/fixtures/wpt undici/test/wpt/tests
- name: Install dependencies
shell: bash
working-directory: undici
run: npm install
- name: Run WPT
shell: bash
working-directory: undici
env:
WPT_REPORT: ${{ inputs.wpt-report }}
run: npm run test:wpt || true
2 changes: 2 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ updates:
semver-major-days: 5
semver-minor-days: 5
semver-patch-days: 5
exclude:
- '@node-core/doc-kit'
commit-message:
prefix: tools
open-pull-requests-limit: 10
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/auto-start-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,13 @@ jobs:
- name: Get Pull Requests
id: get_prs_for_ci
run: >
numbers=$(gh pr list \
--repo ${{ github.repository }} \
echo "numbers=$(gh pr list \
--repo "$GITHUB_REPOSITORY" \
--label 'request-ci' \
--json 'number' \
--search 'review:approved' \
-t '{{ range . }}{{ .number }} {{ end }}' \
--limit 5)
echo "numbers=$numbers" >> $GITHUB_OUTPUT
--limit 5)" >> "$GITHUB_OUTPUT"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
start-ci:
Expand All @@ -46,7 +46,7 @@ jobs:
runs-on: ubuntu-slim
steps:
- name: Install Node.js
uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: ${{ env.NODE_VERSION }}

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/build-tarball.yml
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ jobs:
export COMMIT=$(git rev-parse --short=10 "$GITHUB_SHA")
./configure && make tar -j4 SKIP_XZ=1
- name: Upload tarball artifact
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: tarballs
path: '*.tar.gz'
Expand Down Expand Up @@ -121,13 +121,13 @@ jobs:
allow-prereleases: true
- name: Set up sccache
if: github.base_ref == 'main' || github.ref_name == 'main'
uses: Mozilla-Actions/sccache-action@7d986dd989559c6ecdb630a3fd2557667be217ad # v0.0.9
uses: Mozilla-Actions/sccache-action@9e7fa8a12102821edf02ca5dbea1acd0f89a2696 # v0.0.10
with:
version: v0.12.0
- name: Environment Information
run: npx envinfo
- name: Download tarball
uses: actions/download-artifact@70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3 # v8.0.0
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
name: tarballs
path: tarballs
Expand Down
Loading
Loading