diff --git a/.github/workflows/embedded-sdk-release.yml b/.github/workflows/embedded-sdk-release.yml index dcf7346e8f456..ff51d8f97b9f2 100644 --- a/.github/workflows/embedded-sdk-release.yml +++ b/.github/workflows/embedded-sdk-release.yml @@ -31,8 +31,8 @@ jobs: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: - node-version: "16" - registry-url: "https://registry.npmjs.org" + node-version: "18" + registry-url: 'https://registry.npmjs.org' - run: npm ci - run: npm run ci:release env: diff --git a/.github/workflows/embedded-sdk-test.yml b/.github/workflows/embedded-sdk-test.yml index cbed118340ec6..e3f3c1bdcac8a 100644 --- a/.github/workflows/embedded-sdk-test.yml +++ b/.github/workflows/embedded-sdk-test.yml @@ -21,7 +21,7 @@ jobs: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: - node-version: "16" + node-version: "18" registry-url: 'https://registry.npmjs.org' - run: npm ci - run: npm test diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index bbf0d7ba2dbcb..ad1737c477843 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -29,7 +29,7 @@ jobs: strategy: matrix: - node-version: [16] + node-version: [18] steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/superset-applitool-cypress.yml b/.github/workflows/superset-applitool-cypress.yml index fa5da3ee9cec8..8e5aa91cdba67 100644 --- a/.github/workflows/superset-applitool-cypress.yml +++ b/.github/workflows/superset-applitool-cypress.yml @@ -26,7 +26,7 @@ jobs: fail-fast: false matrix: browser: ["chrome"] - node: [16] + node: [18] env: SUPERSET_ENV: development SUPERSET_CONFIG: tests.integration_tests.superset_test_config diff --git a/.github/workflows/superset-applitools-storybook.yml b/.github/workflows/superset-applitools-storybook.yml index f0565bb1b0046..147d64d286417 100644 --- a/.github/workflows/superset-applitools-storybook.yml +++ b/.github/workflows/superset-applitools-storybook.yml @@ -30,7 +30,7 @@ jobs: runs-on: ubuntu-20.04 strategy: matrix: - node: [16] + node: [18] steps: - name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )" uses: actions/checkout@v4 diff --git a/.github/workflows/superset-docs-deploy.yml b/.github/workflows/superset-docs-deploy.yml index d8bcf7e644fa4..07bba70edd1c5 100644 --- a/.github/workflows/superset-docs-deploy.yml +++ b/.github/workflows/superset-docs-deploy.yml @@ -36,10 +36,10 @@ jobs: with: persist-credentials: false submodules: recursive - - name: Set up Node.js 16 + - name: Set up Node.js 18 uses: actions/setup-node@v4 with: - node-version: "16" + node-version: '18' - name: yarn install run: | yarn install --check-cache diff --git a/.github/workflows/superset-docs-verify.yml b/.github/workflows/superset-docs-verify.yml index 711f17a8871f3..d51b234a16661 100644 --- a/.github/workflows/superset-docs-verify.yml +++ b/.github/workflows/superset-docs-verify.yml @@ -24,10 +24,10 @@ jobs: with: persist-credentials: false submodules: recursive - - name: Set up Node.js 16 + - name: Set up Node.js 18 uses: actions/setup-node@v4 with: - node-version: '16' + node-version: '18' - name: yarn install run: | yarn install --check-cache diff --git a/.github/workflows/superset-frontend.yml b/.github/workflows/superset-frontend.yml index bce75a06bf7d7..2b078d485be3a 100644 --- a/.github/workflows/superset-frontend.yml +++ b/.github/workflows/superset-frontend.yml @@ -39,7 +39,7 @@ jobs: if: steps.check.outcome == 'failure' uses: actions/setup-node@v4 with: - node-version: "16" + node-version: "18" - name: Install dependencies if: steps.check.outcome == 'failure' uses: ./.github/actions/cached-dependencies diff --git a/.github/workflows/superset-translations.yml b/.github/workflows/superset-translations.yml index a96b27f0772a6..9a8b8df1e3beb 100644 --- a/.github/workflows/superset-translations.yml +++ b/.github/workflows/superset-translations.yml @@ -25,7 +25,7 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: "16" + node-version: '18' - name: Install dependencies uses: ./.github/actions/cached-dependencies with: diff --git a/.github/workflows/tech-debt.yml b/.github/workflows/tech-debt.yml index 1c6a9edd4614b..f912ab2068d88 100644 --- a/.github/workflows/tech-debt.yml +++ b/.github/workflows/tech-debt.yml @@ -32,7 +32,7 @@ jobs: - name: Set up Node.js uses: actions/setup-node@v4 with: - node-version: "16" + node-version: '18' - name: Install Dependencies run: npm install diff --git a/.github/workflows/update-monorepo-lockfiles.yml b/.github/workflows/update-monorepo-lockfiles.yml index 2ecabdfd39cd9..4281e79d49162 100644 --- a/.github/workflows/update-monorepo-lockfiles.yml +++ b/.github/workflows/update-monorepo-lockfiles.yml @@ -32,7 +32,7 @@ jobs: - name: Set up Node.js uses: actions/setup-node@v4 with: - node-version: '16' + node-version: '18' - name: Install Dependencies and Update Lock File run: | diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 50c0663972a05..6b03836723481 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -584,8 +584,8 @@ Frontend assets (TypeScript, JavaScript, CSS, and images) must be compiled in or First, be sure you are using the following versions of Node.js and npm: -- `Node.js`: Version 16 -- `npm`: Version 7 +- `Node.js`: Version 18 +- `npm`: Version 10 We recommend using [nvm](https://github.com/nvm-sh/nvm) to manage your node environment: diff --git a/Dockerfile b/Dockerfile index 562046224a207..9946111383fe6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -22,7 +22,7 @@ ARG PY_VER=3.10-slim-bookworm # if BUILDPLATFORM is null, set it to 'amd64' (or leave as is otherwise). ARG BUILDPLATFORM=${BUILDPLATFORM:-amd64} -FROM --platform=${BUILDPLATFORM} node:16-bookworm-slim AS superset-node +FROM --platform=${BUILDPLATFORM} node:18-bullseye-slim AS superset-node ARG NPM_BUILD_CMD="build" diff --git a/docker-compose.yml b/docker-compose.yml index 9dd0a6ca8f7e9..9252e599027c3 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -126,7 +126,7 @@ services: disable: true superset-node: - image: node:16 + image: node:18 environment: # set this to false if you have perf issues running the npm i; npm run dev in-docker # if you do so, you have to run this manually on the host, which should perform better! diff --git a/superset-frontend/package-lock.json b/superset-frontend/package-lock.json index 90ce4b0a7179c..10f261e79cbaa 100644 --- a/superset-frontend/package-lock.json +++ b/superset-frontend/package-lock.json @@ -288,8 +288,8 @@ "xdm": "^3.4.0" }, "engines": { - "node": "^16.20.2", - "npm": "^8.19.4" + "node": "^18.19.1", + "npm": "^10.2.4" } }, "buildtools/eslint-plugin-theme-colors": { diff --git a/superset-frontend/package.json b/superset-frontend/package.json index 1c2c4770e8a5c..3cac56ba6ac93 100644 --- a/superset-frontend/package.json +++ b/superset-frontend/package.json @@ -354,8 +354,8 @@ "xdm": "^3.4.0" }, "engines": { - "node": "^16.20.2", - "npm": "^8.19.4" + "node": "^18.19.1", + "npm": "^10.2.4" }, "overrides": { "d3-color": "^3.1.0",