diff --git a/.github/workflows/frontend-admin-tests.yml b/.github/workflows/frontend-admin-tests.yml index f49a2460e..5f39bdb9d 100644 --- a/.github/workflows/frontend-admin-tests.yml +++ b/.github/workflows/frontend-admin-tests.yml @@ -16,7 +16,7 @@ jobs: strategy: fail-fast: false matrix: - node: [19, 20] + node: [1.0.3, canary] steps: - @@ -31,7 +31,7 @@ jobs: - uses: oven-sh/setup-bun@v1 with: - bun-version: latest + bun-version: ${{ matrix.node }} - name: Install etherpad plugins # We intentionally install an old ep_align version to test upgrades to diff --git a/.github/workflows/load-test.yml b/.github/workflows/load-test.yml index 6633a76ef..7ab13ba57 100644 --- a/.github/workflows/load-test.yml +++ b/.github/workflows/load-test.yml @@ -57,7 +57,7 @@ jobs: # The --legacy-peer-deps flag is required to work around a bug in npm v7: # https://github.com/npm/cli/issues/2199 run: > - bun install --no-save --legacy-peer-deps + cd src && bun install --no-save --legacy-peer-deps ep_align ep_author_hover ep_cursortrace diff --git a/Dockerfile b/Dockerfile index c28d94c93..7ff1eea0a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,7 +4,7 @@ # # Author: muxator -FROM oven/bun:latest +FROM oven/bun:alpine LABEL maintainer="Etherpad team, https://github.com/ether/etherpad-lite" ARG TIMEZONE= diff --git a/src/static/js/pluginfw/plugins.js b/src/static/js/pluginfw/plugins.js index e7ac500c3..099662285 100644 --- a/src/static/js/pluginfw/plugins.js +++ b/src/static/js/pluginfw/plugins.js @@ -111,7 +111,7 @@ exports.getPackages = async () => { // * The `--no-production` flag is required (or the `NODE_ENV` environment variable must be // unset or set to `development`) because otherwise `npm ls` will not mention any packages // that are not included in `package.json` (which is expected to not exist). - const cmd = ['npm', 'ls', '--long', '--json', '--depth=0', '--no-production']; + const cmd = ['bun', 'ls', '--long', '--json', '--depth=0', '--no-production']; const {dependencies = {}} = JSON.parse(await runCmd(cmd, {stdio: [null, 'string']})); await Promise.all(Object.entries(dependencies).map(async ([pkg, info]) => { if (!pkg.startsWith(exports.prefix)) {