From 7b4ec57f84a0dec4c29147f8404cccc0fc67ffe8 Mon Sep 17 00:00:00 2001 From: Chengzhong Wu Date: Wed, 3 Dec 2025 11:00:50 +0000 Subject: [PATCH 1/3] build: add temporal to linux GHA build --- .github/workflows/test-linux.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-linux.yml b/.github/workflows/test-linux.yml index 3b4283df4163ad..29392a4af0a32f 100644 --- a/.github/workflows/test-linux.yml +++ b/.github/workflows/test-linux.yml @@ -35,6 +35,7 @@ env: CC: sccache clang-19 CXX: sccache clang++-19 SCCACHE_GHA_ENABLED: 'true' + RUSTC_VERSION: '1.82' permissions: contents: read @@ -56,6 +57,10 @@ jobs: uses: ./node/.github/actions/install-clang with: clang-version: ${{ env.CLANG_VERSION }} + - name: Install Rust ${{ env.RUSTC_VERSION }} + run: | + rustup override set ${{ env.RUSTC_VERSION }} + rustup --version - name: Set up Python ${{ env.PYTHON_VERSION }} uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0 with: @@ -68,7 +73,7 @@ jobs: - name: Environment Information run: npx envinfo - name: Build - run: make -C node build-ci -j4 V=1 CONFIG_FLAGS="--error-on-warn" + run: make -C node build-ci -j4 V=1 CONFIG_FLAGS="--error-on-warn --v8-enable-temporal-support" - name: Test run: make -C node run-ci -j4 V=1 TEST_CI_ARGS="-p actions --measure-flakiness 9" - name: Re-run test in a folder whose name contains unusual chars From 19d63523297a9c19bd08be1a89e5038038df62ee Mon Sep 17 00:00:00 2001 From: Chengzhong Wu Date: Wed, 3 Dec 2025 14:06:10 +0000 Subject: [PATCH 2/3] doc: add note about rust toolchain version requirement --- BUILDING.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/BUILDING.md b/BUILDING.md index 2ffb3410ae5a2d..7f1a9893c70b20 100644 --- a/BUILDING.md +++ b/BUILDING.md @@ -1044,6 +1044,16 @@ configure option: ./configure --openssl-conf-name= ``` +## Building Node.js with Temporal support + +Node.js supports the [Temporal](https://github.com/tc39/proposal-temporal) APIs, when +linking statically or dynamically with a version [temporal\_rs](https://github.com/boa-dev/temporal). + +To build Node.js with Temporal support, a Rust toolchain is required: + +* rustc >= 1.82 (with LLVM >= 19) +* cargo >= 1.82 + ## Building Node.js with FIPS-compliant OpenSSL Node.js supports FIPS when statically or dynamically linked with OpenSSL 3 via From 39b0108361960dcc3a6dba7b643fa12a825886e5 Mon Sep 17 00:00:00 2001 From: Chengzhong Wu Date: Wed, 3 Dec 2025 17:54:46 +0000 Subject: [PATCH 3/3] fixup! build: add temporal to linux GHA build Co-authored-by: Antoine du Hamel --- .github/workflows/test-linux.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-linux.yml b/.github/workflows/test-linux.yml index 29392a4af0a32f..2039f15a63b25d 100644 --- a/.github/workflows/test-linux.yml +++ b/.github/workflows/test-linux.yml @@ -59,7 +59,7 @@ jobs: clang-version: ${{ env.CLANG_VERSION }} - name: Install Rust ${{ env.RUSTC_VERSION }} run: | - rustup override set ${{ env.RUSTC_VERSION }} + rustup override set "$RUSTC_VERSION" rustup --version - name: Set up Python ${{ env.PYTHON_VERSION }} uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0