diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yml index dc881d7e6b3..abc88e4c81b 100644 --- a/.github/workflows/benchmark.yml +++ b/.github/workflows/benchmark.yml @@ -37,7 +37,7 @@ jobs: - uses: './.github/actions/reusable-prepare-peertube-build' with: - node-version: '18.x' + node-version: '20.x' - uses: './.github/actions/reusable-prepare-peertube-run' diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 57f0c676878..999d2938bb1 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -55,7 +55,7 @@ jobs: - uses: './.github/actions/reusable-prepare-peertube-build' if: ${{ matrix.build-peertube }} with: - node-version: '18.x' + node-version: '20.x' - name: Build if: ${{ matrix.build-peertube }} diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 06990e7f5db..358704d1ba1 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -20,7 +20,7 @@ jobs: - uses: './.github/actions/reusable-prepare-peertube-build' with: - node-version: '18.x' + node-version: '20.x' - name: Build run: npm run nightly diff --git a/.github/workflows/stats.yml b/.github/workflows/stats.yml index 147bd7ece76..c08366057a6 100644 --- a/.github/workflows/stats.yml +++ b/.github/workflows/stats.yml @@ -24,7 +24,7 @@ jobs: - uses: './.github/actions/reusable-prepare-peertube-build' with: - node-version: '18.x' + node-version: '20.x' - name: Build run: npm run build -- --analyze-bundle diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 95b1ce8b2ac..09d1db137f8 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -61,7 +61,7 @@ jobs: - uses: './.github/actions/reusable-prepare-peertube-build' with: - node-version: '18.x' + node-version: '20.x' - uses: './.github/actions/reusable-prepare-peertube-run' diff --git a/package.json b/package.json index c5501122d0f..830ab0c2f4e 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "private": true, "licence": "AGPL-3.0", "engines": { - "node": ">=18.x", + "node": ">=20.x", "yarn": ">=1.x" }, "type": "module", diff --git a/support/doc/dependencies.md b/support/doc/dependencies.md index b05b30b948e..7a594124e42 100644 --- a/support/doc/dependencies.md +++ b/support/doc/dependencies.md @@ -4,7 +4,7 @@ Main dependencies supported by PeerTube: - * `node` LTS (>=18.20 or 20.x) + * `node` LTS (20.x or 22.x) * `yarn` 1.x (**must not be >=2.x**) * `postgres` >=10.x * `redis-server` >=6.x @@ -43,7 +43,7 @@ sudo apt-get install curl sudo unzip vim 2. It would be wise to disable root access and to continue this tutorial with a user with sudoers group access. You can see a guide for how to do this in Debian/Ubuntu [here](https://www.digitalocean.com/community/tutorials/how-to-add-and-delete-users-on-ubuntu-20-04). -3. Install NodeJS 18.x: +3. Install NodeJS 20.x: [https://nodejs.org/en/download/package-manager/all#debian-and-ubuntu-based-linux-distributions](https://nodejs.org/en/download/package-manager/all#debian-and-ubuntu-based-linux-distributions) 4. Install yarn, and be sure to have [a recent version](https://github.com/yarnpkg/yarn/releases/latest): [https://yarnpkg.com/en/docs/install#linux-tab](https://yarnpkg.com/en/docs/install#linux-tab) @@ -90,7 +90,7 @@ sudo systemctl start redis postgresql ## CentOS 7 -1. Install NodeJS 18.x: +1. Install NodeJS 20.x: [https://nodejs.org/en/download/package-manager/all#centos-fedora-and-red-hat-enterprise-linux](https://nodejs.org/en/download/package-manager/all#centos-fedora-and-red-hat-enterprise-linux) 2. Install yarn: @@ -137,7 +137,7 @@ sudo systemctl enable --now postgresql ## Centos 8 -1. Install NodeJS 18.x: +1. Install NodeJS 20.x: [https://nodejs.org/en/download/package-manager/all#centos-fedora-and-red-hat-enterprise-linux](https://nodejs.org/en/download/package-manager/all#centos-fedora-and-red-hat-enterprise-linux) 2. Install yarn: @@ -187,9 +187,9 @@ sudo systemctl enable --now postgresql sudo dnf update -y ``` -2. Install NodeJS 18.x: +2. Install NodeJS 20.x: ```sh -sudo dnf module install -y nodejs:18 +sudo dnf module install -y nodejs:20 ``` 3. Install yarn: @@ -246,7 +246,7 @@ su my-peertube-user 3. (Optional) Install certbot (choose instructions for your distribution): [https://certbot.eff.org/all-instructions](https://certbot.eff.org/all-instructions) -4. Install NodeJS 18.x: +4. Install NodeJS 20.x: [https://nodejs.org/en/download/package-manager/all#centos-fedora-and-red-hat-enterprise-linux](https://nodejs.org/en/download/package-manager/all#centos-fedora-and-red-hat-enterprise-linux) 5. Install yarn: @@ -339,7 +339,7 @@ echo fs.inotify.max_user_watches=582222 | sudo tee -a /etc/sysctl.conf && sudo s 2. Install Node.JS ```sh -sudo dnf module install nodejs:18 +sudo dnf module install nodejs:20 ``` 3. Install Yarn diff --git a/support/docker/production/Dockerfile.bookworm b/support/docker/production/Dockerfile.bookworm index 05e569ba2b3..afeb9ecec3c 100644 --- a/support/docker/production/Dockerfile.bookworm +++ b/support/docker/production/Dockerfile.bookworm @@ -1,4 +1,4 @@ -FROM node:18-bookworm-slim +FROM node:20-bookworm-slim ARG ALREADY_BUILT=0