Skip to content

Commit f1000e2

Browse files
author
Etherpad Release Bot
committed
Merge branch 'develop'
2 parents 648f622 + dad6cc8 commit f1000e2

45 files changed

Lines changed: 1677 additions & 476 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/backend-tests.yml

Lines changed: 76 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -28,27 +28,28 @@ jobs:
2828
fail-fast: false
2929
matrix:
3030
# PRs: test on latest Node only. Push to develop: full matrix.
31-
node: ${{ github.event_name == 'pull_request' && fromJSON('[">=24.0.0 <25.0.0"]') || fromJSON('[">=20.0.0 <21.0.0", ">=22.0.0 <23.0.0", ">=24.0.0 <25.0.0"]') }}
31+
node: ${{ github.event_name == 'pull_request' && fromJSON('[24]') || fromJSON('[20, 22, 24]') }}
3232
steps:
3333
-
3434
name: Checkout repository
3535
uses: actions/checkout@v6
3636
- uses: actions/cache@v5
37-
name: Setup gnpm cache
38-
if: always()
37+
name: Cache pnpm store
3938
with:
40-
path: |
41-
${{ env.PNPM_HOME }}
42-
~/.local/share/gnpm
43-
/usr/local/bin/gnpm
44-
/usr/local/bin/gnpm-0.0.12
45-
key: ${{ runner.os }}-gnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
39+
path: ${{ env.PNPM_HOME }}
40+
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
4641
restore-keys: |
47-
${{ runner.os }}-gnpm-store-
48-
- name: Setup gnpm
49-
uses: SamTV12345/gnpm-setup@main
42+
${{ runner.os }}-pnpm-store-
43+
- uses: pnpm/action-setup@v6
44+
name: Install pnpm
5045
with:
51-
version: 0.0.12
46+
version: 10.33.2
47+
run_install: false
48+
- name: Use Node.js
49+
uses: actions/setup-node@v6
50+
with:
51+
node-version: ${{ matrix.node }}
52+
cache: pnpm
5253
-
5354
name: Install libreoffice
5455
uses: awalsh128/cache-apt-pkgs-action@v1.6.0
@@ -57,19 +58,19 @@ jobs:
5758
version: 1.0
5859
-
5960
name: Install all dependencies and symlink for ep_etherpad-lite
60-
run: gnpm i --frozen-lockfile --runtimeVersion="${{ matrix.node }}"
61+
run: pnpm i --frozen-lockfile
6162
- name: Install admin ui
6263
working-directory: admin
63-
run: gnpm install --runtimeVersion="${{ matrix.node }}"
64+
run: pnpm install
6465
- name: Build admin ui
6566
working-directory: admin
66-
run: gnpm build --runtimeVersion="${{ matrix.node }}"
67+
run: pnpm build
6768
-
6869
name: Run the backend tests
69-
run: gnpm test --runtimeVersion="${{ matrix.node }}"
70+
run: pnpm test
7071
- name: Run the new vitest tests
7172
working-directory: src
72-
run: gnpm run test:vitest --runtimeVersion="${{ matrix.node }}"
73+
run: pnpm run test:vitest
7374

7475
withpluginsLinux:
7576
env:
@@ -84,27 +85,28 @@ jobs:
8485
strategy:
8586
fail-fast: false
8687
matrix:
87-
node: ${{ github.event_name == 'pull_request' && fromJSON('[">=24.0.0 <25.0.0"]') || fromJSON('[">=20.0.0 <21.0.0", ">=22.0.0 <23.0.0", ">=24.0.0 <25.0.0"]') }}
88+
node: ${{ github.event_name == 'pull_request' && fromJSON('[24]') || fromJSON('[20, 22, 24]') }}
8889
steps:
8990
-
9091
name: Checkout repository
9192
uses: actions/checkout@v6
9293
- uses: actions/cache@v5
93-
name: Setup pnpm cache
94-
if: always()
94+
name: Cache pnpm store
9595
with:
96-
path: |
97-
${{ env.PNPM_HOME }}
98-
~/.local/share/gnpm
99-
/usr/local/bin/gnpm
100-
/usr/local/bin/gnpm-0.0.12
101-
key: ${{ runner.os }}-gnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
96+
path: ${{ env.PNPM_HOME }}
97+
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
10298
restore-keys: |
103-
${{ runner.os }}-gnpm-store-
104-
- name: Setup gnpm
105-
uses: SamTV12345/gnpm-setup@main
99+
${{ runner.os }}-pnpm-store-
100+
- uses: pnpm/action-setup@v6
101+
name: Install pnpm
102+
with:
103+
version: 10.33.2
104+
run_install: false
105+
- name: Use Node.js
106+
uses: actions/setup-node@v6
106107
with:
107-
version: 0.0.12
108+
node-version: ${{ matrix.node }}
109+
cache: pnpm
108110
-
109111
name: Install libreoffice
110112
uses: awalsh128/cache-apt-pkgs-action@v1.6.0
@@ -113,14 +115,14 @@ jobs:
113115
version: 1.0
114116
-
115117
name: Install all dependencies and symlink for ep_etherpad-lite
116-
run: gnpm install --frozen-lockfile --runtimeVersion="${{ matrix.node }}"
118+
run: pnpm install --frozen-lockfile
117119
- name: Build admin ui
118120
working-directory: admin
119-
run: gnpm build --runtimeVersion="${{ matrix.node }}"
121+
run: pnpm build
120122
-
121123
name: Install Etherpad plugins
122124
run: >
123-
gnpm install --workspace-root
125+
pnpm add -w
124126
ep_align
125127
ep_author_hover
126128
ep_cursortrace
@@ -134,10 +136,10 @@ jobs:
134136
ep_table_of_contents
135137
-
136138
name: Run the backend tests
137-
run: gnpm test --runtimeVersion="${{ matrix.node }}"
139+
run: pnpm test
138140
- name: Run the new vitest tests
139141
working-directory: src
140-
run: gnpm run test:vitest --runtimeVersion="${{ matrix.node }}"
142+
run: pnpm run test:vitest
141143

142144
# Windows tests only run on push to develop/master, not on PRs
143145
withoutpluginsWindows:
@@ -148,34 +150,36 @@ jobs:
148150
strategy:
149151
fail-fast: false
150152
matrix:
151-
node: [">=20.0.0 <21.0.0", ">=22.0.0 <23.0.0", ">=24.0.0 <25.0.0"]
153+
node: [20, 22, 24]
152154
name: Windows without plugins
153155
runs-on: windows-latest
154156
steps:
155157
-
156158
name: Checkout repository
157159
uses: actions/checkout@v6
158160
- uses: actions/cache@v5
159-
name: Setup pnpm cache
160-
if: always()
161+
name: Cache pnpm store
161162
with:
162-
path: |
163-
${{ env.PNPM_HOME }}
164-
C:\gnpm\
165-
C:\Users\runneradmin\AppData\Roaming\gnpm\
166-
key: ${{ runner.os }}-gnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
163+
path: ${{ env.PNPM_HOME }}
164+
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
167165
restore-keys: |
168-
${{ runner.os }}-gnpm-store-
169-
- name: Setup gnpm
170-
uses: SamTV12345/gnpm-setup@main
166+
${{ runner.os }}-pnpm-store-
167+
- uses: pnpm/action-setup@v6
168+
name: Install pnpm
171169
with:
172-
version: 0.0.12
170+
version: 10.33.2
171+
run_install: false
172+
- name: Use Node.js
173+
uses: actions/setup-node@v6
174+
with:
175+
node-version: ${{ matrix.node }}
176+
cache: pnpm
173177
-
174178
name: Install all dependencies and symlink for ep_etherpad-lite
175-
run: gnpm install --frozen-lockfile --runtimeVersion="${{ matrix.node }}"
179+
run: pnpm install --frozen-lockfile
176180
- name: Build admin ui
177181
working-directory: admin
178-
run: gnpm build --runtimeVersion="${{ matrix.node }}"
182+
run: pnpm build
179183
-
180184
name: Fix up the settings.json
181185
run: |
@@ -184,10 +188,10 @@ jobs:
184188
-
185189
name: Run the backend tests
186190
working-directory: src
187-
run: gnpm test --runtimeVersion="${{ matrix.node }}"
191+
run: pnpm test
188192
- name: Run the new vitest tests
189193
working-directory: src
190-
run: gnpm run test:vitest --runtimeVersion="${{ matrix.node }}"
194+
run: pnpm run test:vitest
191195

192196
withpluginsWindows:
193197
env:
@@ -197,7 +201,7 @@ jobs:
197201
strategy:
198202
fail-fast: false
199203
matrix:
200-
node: [">=20.0.0 <21.0.0", ">=22.0.0 <23.0.0", ">=24.0.0 <25.0.0"]
204+
node: [20, 22, 24]
201205
name: Windows with Plugins
202206
runs-on: windows-latest
203207

@@ -206,29 +210,31 @@ jobs:
206210
name: Checkout repository
207211
uses: actions/checkout@v6
208212
- uses: actions/cache@v5
209-
name: Setup pnpm cache
210-
if: always()
213+
name: Cache pnpm store
211214
with:
212-
path: |
213-
${{ env.PNPM_HOME }}
214-
C:\gnpm\
215-
C:\Users\runneradmin\AppData\Roaming\gnpm\
216-
key: ${{ runner.os }}-gnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
215+
path: ${{ env.PNPM_HOME }}
216+
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
217217
restore-keys: |
218-
${{ runner.os }}-gnpm-store-
219-
- name: Setup gnpm
220-
uses: SamTV12345/gnpm-setup@main
218+
${{ runner.os }}-pnpm-store-
219+
- uses: pnpm/action-setup@v6
220+
name: Install pnpm
221+
with:
222+
version: 10.33.2
223+
run_install: false
224+
- name: Use Node.js
225+
uses: actions/setup-node@v6
221226
with:
222-
version: 0.0.12
227+
node-version: ${{ matrix.node }}
228+
cache: pnpm
223229
- name: Install dependencies
224-
run: gnpm install --runtimeVersion="${{ matrix.node }}"
230+
run: pnpm install
225231
- name: Build admin ui
226232
working-directory: admin
227-
run: gnpm build --runtimeVersion="${{ matrix.node }}"
233+
run: pnpm build
228234
-
229235
name: Install Etherpad plugins
230236
run: >
231-
gnpm install --workspace-root
237+
pnpm add -w
232238
ep_align
233239
ep_author_hover
234240
ep_cursortrace
@@ -251,7 +257,7 @@ jobs:
251257
# rules.
252258
-
253259
name: Install all dependencies and symlink for ep_etherpad-lite
254-
run: gnpm install --frozen-lockfile --runtimeVersion="${{ matrix.node }}"
260+
run: pnpm install --frozen-lockfile
255261
-
256262
name: Fix up the settings.json
257263
run: |
@@ -260,7 +266,7 @@ jobs:
260266
-
261267
name: Run the backend tests
262268
working-directory: src
263-
run: gnpm test --runtimeVersion="${{ matrix.node }}"
269+
run: pnpm test
264270
- name: Run the new vitest tests
265271
working-directory: src
266-
run: gnpm run test:vitest --runtimeVersion="${{ matrix.node }}"
272+
run: pnpm run test:vitest

.github/workflows/build-and-deploy-docs.yml

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -34,28 +34,31 @@ jobs:
3434
- name: Checkout
3535
uses: actions/checkout@v6
3636
- uses: actions/cache@v5
37-
name: Setup gnpm cache
38-
if: always()
37+
name: Cache pnpm store
3938
with:
40-
path: |
41-
${{ env.STORE_PATH }}
42-
~/.local/share/gnpm
43-
/usr/local/bin/gnpm
44-
/usr/local/bin/gnpm-0.0.12
45-
key: ${{ runner.os }}-gnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
39+
path: ~/.pnpm-store
40+
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
4641
restore-keys: |
47-
${{ runner.os }}-gnpm-store-
48-
- name: Setup gnpm
49-
uses: SamTV12345/gnpm-setup@main
42+
${{ runner.os }}-pnpm-store-
43+
- uses: actions/cache@v5
44+
name: Cache vitepress build
45+
with:
46+
path: doc/.vitepress/cache
47+
key: ${{ runner.os }}-vitepress-${{ hashFiles('doc/**/*.md', 'doc/.vitepress/config.*') }}
48+
restore-keys: |
49+
${{ runner.os }}-vitepress-
50+
- uses: pnpm/action-setup@v6
51+
name: Install pnpm
5052
with:
51-
version: 0.0.12
53+
version: 10.33.2
54+
run_install: false
5255
- name: Setup Pages
5356
uses: actions/configure-pages@v6
5457
- name: Install dependencies
55-
run: gnpm install
58+
run: pnpm install --frozen-lockfile
5659
- name: Build app
5760
working-directory: doc
58-
run: gnpm run docs:build
61+
run: pnpm run docs:build
5962
env:
6063
COMMIT_REF: ${{ github.sha }}
6164
- name: Upload artifact

.github/workflows/docker.yml

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -43,21 +43,17 @@ jobs:
4343
cache-from: type=gha
4444
cache-to: type=gha,mode=max
4545
- uses: actions/cache@v5
46-
name: Setup gnpm cache
47-
if: always()
46+
name: Cache pnpm store
4847
with:
49-
path: |
50-
${{ env.PNPM_HOME }}
51-
~/.local/share/gnpm
52-
/usr/local/bin/gnpm
53-
/usr/local/bin/gnpm-0.0.12
54-
key: ${{ runner.os }}-gnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
48+
path: ${{ env.PNPM_HOME }}
49+
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
5550
restore-keys: |
56-
${{ runner.os }}-gnpm-store-
57-
- name: Setup gnpm
58-
uses: SamTV12345/gnpm-setup@main
51+
${{ runner.os }}-pnpm-store-
52+
- uses: pnpm/action-setup@v6
53+
name: Install pnpm
5954
with:
60-
version: 0.0.12
55+
version: 10.33.2
56+
run_install: false
6157
-
6258
name: Test
6359
working-directory: etherpad
@@ -74,7 +70,7 @@ jobs:
7470
*) printf %s\\n "unexpected status: ${status}" >&2; exit 1;;
7571
esac
7672
done
77-
(cd src && gnpm run test-container)
73+
(cd src && pnpm run test-container)
7874
git clean -dxf .
7975
8076
build-test-db-drivers:

0 commit comments

Comments
 (0)