From 21a235140ac2d2f5de41758cd19605ad3af43af3 Mon Sep 17 00:00:00 2001 From: James Ide Date: Fri, 1 Dec 2023 18:24:42 -0800 Subject: [PATCH] [ci] Use Node 20.10.0+ for check-packages Why --- Node 20.10.0 includes a memory leak fix in V8's compilation cache. This matters for Jest test suites, which repeatedly discard and reload the environment. See https://github.com/jestjs/jest/issues/11956. How --- Used setup-node to explicitly install Node 20. Getting the latest version will include the V8 fix. Also upgraded the checkout action (breaking change is that it uses Node 20 itself internally). If this works well, we could consider using setup-node's own Yarn node_modules caching instead of our own but that is out of the scope of this PR. Test Plan --- Make sure this passes in CI. --- .github/workflows/sdk.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/sdk.yml b/.github/workflows/sdk.yml index a783aeb1ee968..9736f9ef5b09b 100644 --- a/.github/workflows/sdk.yml +++ b/.github/workflows/sdk.yml @@ -32,12 +32,15 @@ jobs: runs-on: ubuntu-22.04 steps: - name: 👀 Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 100 - name: ⬇️ Fetch commits from base branch run: git fetch origin ${{ github.event.before || github.base_ref || 'main' }}:${{ github.event.before || github.base_ref || 'main' }} --depth 100 if: github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' + - uses: actions/setup-node@v4 + with: + node-version: 20 - name: ♻️ Restore caches uses: ./.github/actions/expo-caches id: expo-caches