diff --git a/.github/workflows/node-test.yml b/.github/workflows/node-test.yml index 8b5c9ebac1e..b58c4c6e81d 100644 --- a/.github/workflows/node-test.yml +++ b/.github/workflows/node-test.yml @@ -24,9 +24,9 @@ jobs: strategy: matrix: node-version: - - "18" + - "20" steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - uses: actions/setup-node@v3 @@ -44,10 +44,10 @@ jobs: strategy: matrix: node-version: - - "16" - "18" + - "20" steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} @@ -59,7 +59,7 @@ jobs: - run: npm test -- -- --forbid-only - uses: codecov/codecov-action@v3 - if: matrix.node-version == '16' + if: matrix.node-version == '20' integration: needs: unit @@ -79,7 +79,7 @@ jobs: fail-fast: false matrix: node-version: - - "18" + - "20" script: - npm run test:client-integration - npm run test:emulator @@ -94,7 +94,7 @@ jobs: - npm run test:triggers-end-to-end - npm run test:triggers-end-to-end:inspect steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} @@ -135,7 +135,7 @@ jobs: fail-fast: false matrix: node-version: - - "18" + - "20" script: - npm run test:hosting # - npm run test:hosting-rewrites # Long-running test that might conflict across test runs. Run this manually. @@ -155,7 +155,7 @@ jobs: java-version: 17 distribution: temurin - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} @@ -184,10 +184,10 @@ jobs: strategy: matrix: node-version: - - "18" + - "20" steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v3 with: @@ -203,10 +203,10 @@ jobs: strategy: matrix: node-version: - - "18" + - "20" steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v3 with: @@ -222,10 +222,10 @@ jobs: strategy: matrix: node-version: - - "18" + - "20" steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v3 with: diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index f6d806cd9d1..3de048b9325 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -161,7 +161,7 @@ "vite": "^4.2.1" }, "engines": { - "node": ">=16.13.0 || >=18.0.0" + "node": ">=18.0.0 || >=20.0.0" } }, "node_modules/@ampproject/remapping": { diff --git a/package.json b/package.json index ac446a29f97..d000f012859 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ ], "preferGlobal": true, "engines": { - "node": ">=16.13.0 || >=18.0.0" + "node": ">=18.0.0 || >=20.0.0" }, "author": "Firebase (https://firebase.google.com/)", "license": "MIT", diff --git a/scripts/build/Dockerfile b/scripts/build/Dockerfile index bb873786daf..a71132b8dae 100644 --- a/scripts/build/Dockerfile +++ b/scripts/build/Dockerfile @@ -1,4 +1,4 @@ -FROM node:18 +FROM node:20 # Install dependencies RUN apt-get update && \ diff --git a/scripts/emulator-tests/functions/package.json b/scripts/emulator-tests/functions/package.json index 09efcb47ffb..97967bd5a20 100644 --- a/scripts/emulator-tests/functions/package.json +++ b/scripts/emulator-tests/functions/package.json @@ -9,6 +9,6 @@ "firebase-functions": "^4.0.0" }, "engines": { - "node": "16" + "node": "20" } } diff --git a/scripts/examples/hosting/update-single-file/package.json b/scripts/examples/hosting/update-single-file/package.json index f6d9d62f6a9..d8b04fe454f 100644 --- a/scripts/examples/hosting/update-single-file/package.json +++ b/scripts/examples/hosting/update-single-file/package.json @@ -12,7 +12,7 @@ "test": "echo \"Error: no test specified\" && exit 1" }, "engines": { - "node": ">=18.0.0" + "node": ">=20.0.0" }, "author": "", "license": "MIT", diff --git a/scripts/extensions-emulator-tests/functions/package.json b/scripts/extensions-emulator-tests/functions/package.json index e692cd76b04..9e498b4aea0 100644 --- a/scripts/extensions-emulator-tests/functions/package.json +++ b/scripts/extensions-emulator-tests/functions/package.json @@ -3,7 +3,7 @@ "description": "Cloud Functions for Firebase", "scripts": {}, "engines": { - "node": "14" + "node": "20" }, "dependencies": { "firebase-admin": "^9.3.0", diff --git a/scripts/firepit-builder/Dockerfile b/scripts/firepit-builder/Dockerfile index c35b8dd6aae..e4fdd363785 100644 --- a/scripts/firepit-builder/Dockerfile +++ b/scripts/firepit-builder/Dockerfile @@ -1,4 +1,4 @@ -FROM node:18 +FROM node:20 # Install dependencies RUN apt-get update && \ diff --git a/scripts/functions-deploy-tests/functions/package.json b/scripts/functions-deploy-tests/functions/package.json index 94834d41623..6c010cae45f 100644 --- a/scripts/functions-deploy-tests/functions/package.json +++ b/scripts/functions-deploy-tests/functions/package.json @@ -11,7 +11,7 @@ "firebase-functions": "^4.1.0" }, "engines": { - "node": "18" + "node": "20" }, "private": true } diff --git a/scripts/functions-discover-tests/fixtures/bundled/dist/package.json b/scripts/functions-discover-tests/fixtures/bundled/dist/package.json index 364e1e20f6d..e356900fb54 100644 --- a/scripts/functions-discover-tests/fixtures/bundled/dist/package.json +++ b/scripts/functions-discover-tests/fixtures/bundled/dist/package.json @@ -2,6 +2,6 @@ "name": "dist", "version": "0.0.1", "engines": { - "node": "16" + "node": "20" } } diff --git a/scripts/functions-discover-tests/fixtures/bundled/package.json b/scripts/functions-discover-tests/fixtures/bundled/package.json index 72a92e6258a..88420ade881 100644 --- a/scripts/functions-discover-tests/fixtures/bundled/package.json +++ b/scripts/functions-discover-tests/fixtures/bundled/package.json @@ -5,6 +5,6 @@ "firebase-functions": "^4.1.1" }, "engines": { - "node": "16" + "node": "20" } } \ No newline at end of file diff --git a/scripts/functions-discover-tests/fixtures/codebases/v1/package.json b/scripts/functions-discover-tests/fixtures/codebases/v1/package.json index e57e928a5e2..8bd6863b7cb 100644 --- a/scripts/functions-discover-tests/fixtures/codebases/v1/package.json +++ b/scripts/functions-discover-tests/fixtures/codebases/v1/package.json @@ -4,6 +4,6 @@ "firebase-functions": "^4.0.0" }, "engines": { - "node": "18" + "node": "20" } } diff --git a/scripts/functions-discover-tests/fixtures/codebases/v2/package.json b/scripts/functions-discover-tests/fixtures/codebases/v2/package.json index 63b1894db29..732e1665c3c 100644 --- a/scripts/functions-discover-tests/fixtures/codebases/v2/package.json +++ b/scripts/functions-discover-tests/fixtures/codebases/v2/package.json @@ -5,6 +5,6 @@ "firebase-functions": "^4.0.0" }, "engines": { - "node": "18" + "node": "20" } } diff --git a/scripts/functions-discover-tests/fixtures/esm/functions/package.json b/scripts/functions-discover-tests/fixtures/esm/functions/package.json index bdd9f5344f5..4073fb49d90 100644 --- a/scripts/functions-discover-tests/fixtures/esm/functions/package.json +++ b/scripts/functions-discover-tests/fixtures/esm/functions/package.json @@ -5,6 +5,6 @@ "firebase-functions": "^4.0.0" }, "engines": { - "node": "18" + "node": "20" } } diff --git a/scripts/functions-discover-tests/fixtures/pnpm/functions/package.json b/scripts/functions-discover-tests/fixtures/pnpm/functions/package.json index 58ff3bbce4d..bc017fc70e5 100644 --- a/scripts/functions-discover-tests/fixtures/pnpm/functions/package.json +++ b/scripts/functions-discover-tests/fixtures/pnpm/functions/package.json @@ -4,6 +4,6 @@ "firebase-functions": "^4.0.0" }, "engines": { - "node": "18" + "node": "20" } } diff --git a/scripts/functions-discover-tests/fixtures/simple/functions/package.json b/scripts/functions-discover-tests/fixtures/simple/functions/package.json index b62715e92f1..1a25153f9e9 100644 --- a/scripts/functions-discover-tests/fixtures/simple/functions/package.json +++ b/scripts/functions-discover-tests/fixtures/simple/functions/package.json @@ -4,6 +4,6 @@ "firebase-functions": "^4.0.0" }, "engines": { - "node": "18" + "node": "20" } } diff --git a/scripts/functions-discover-tests/fixtures/yarn-workspaces/packages/functions/package.json b/scripts/functions-discover-tests/fixtures/yarn-workspaces/packages/functions/package.json index cb4bf923d8a..e46713f5d50 100644 --- a/scripts/functions-discover-tests/fixtures/yarn-workspaces/packages/functions/package.json +++ b/scripts/functions-discover-tests/fixtures/yarn-workspaces/packages/functions/package.json @@ -7,7 +7,7 @@ "@firebase/a-test-pkg": "0.0.1" }, "engines": { - "node": "18" + "node": "20" }, "private": true } diff --git a/scripts/test-project/functions/package.json b/scripts/test-project/functions/package.json index 4221129235a..dbe43654f7f 100644 --- a/scripts/test-project/functions/package.json +++ b/scripts/test-project/functions/package.json @@ -6,6 +6,6 @@ "firebase-functions": "^3.2.0" }, "engines": { - "node": "12" + "node": "20" } } diff --git a/scripts/triggers-end-to-end-tests/triggers/package.json b/scripts/triggers-end-to-end-tests/triggers/package.json index 53631f02926..6911ca48e2c 100644 --- a/scripts/triggers-end-to-end-tests/triggers/package.json +++ b/scripts/triggers-end-to-end-tests/triggers/package.json @@ -3,7 +3,7 @@ "description": "Cloud Functions for Firebase", "scripts": {}, "engines": { - "node": "18" + "node": "20" }, "dependencies": { "@firebase/database-compat": "0.1.2", diff --git a/scripts/triggers-end-to-end-tests/v1/package.json b/scripts/triggers-end-to-end-tests/v1/package.json index 20e5f269842..ac1bc4c3b67 100644 --- a/scripts/triggers-end-to-end-tests/v1/package.json +++ b/scripts/triggers-end-to-end-tests/v1/package.json @@ -3,7 +3,7 @@ "description": "Cloud Functions for Firebase", "scripts": {}, "engines": { - "node": "18" + "node": "20" }, "dependencies": { "@firebase/database-compat": "0.1.2", diff --git a/scripts/triggers-end-to-end-tests/v2/package.json b/scripts/triggers-end-to-end-tests/v2/package.json index 4fc272f1852..ec05c49be7d 100644 --- a/scripts/triggers-end-to-end-tests/v2/package.json +++ b/scripts/triggers-end-to-end-tests/v2/package.json @@ -3,7 +3,7 @@ "description": "Cloud Functions for Firebase", "scripts": {}, "engines": { - "node": "18" + "node": "20" }, "dependencies": { "firebase-admin": "^11.0.0", diff --git a/scripts/webframeworks-deploy-tests/functions/package.json b/scripts/webframeworks-deploy-tests/functions/package.json index 392196b9844..6fca6748f88 100644 --- a/scripts/webframeworks-deploy-tests/functions/package.json +++ b/scripts/webframeworks-deploy-tests/functions/package.json @@ -9,7 +9,7 @@ "logs": "firebase functions:log" }, "engines": { - "node": "18" + "node": "20" }, "main": "index.js", "dependencies": { diff --git a/src/test/apiv2.spec.ts b/src/test/apiv2.spec.ts index 205ec9c212e..de6dbba89ee 100644 --- a/src/test/apiv2.spec.ts +++ b/src/test/apiv2.spec.ts @@ -158,7 +158,7 @@ describe("apiv2", () => { method: "GET", path: "/path/to/foo", }); - await expect(r).to.eventually.be.rejectedWith(FirebaseError, /Unexpected token.+JSON/); + await expect(r).to.eventually.be.rejectedWith(FirebaseError, /Unable to parse JSON/); expect(nock.isDone()).to.be.true; });