Commit Graph

4624 Commits

Author SHA1 Message Date
Erik Michelson
c4841575c9 fix(ot): use default color constant for hex2rgb fallback
Co-authored-by: Philip Molares <philip.molares@udo.edu>
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-03-24 21:12:41 +01:00
bxff
65bf11554a fix: buffer operations in Stale/StaleWithBuffer instead of throwing (#6342)
When 5+ users edit concurrently, revision gaps trigger the Stale state
which throws 'Ignored server-side change.' on incoming operations. This
causes document divergence, silent data corruption, and eventually
force-resets that discard local edits.

Changes:
- Stale/StaleWithBuffer.applyServer: buffer incoming operations instead
  of throwing, apply them sequentially after missing ops arrive
- Stale.applyClient: carry pendingOps to StaleWithBuffer on transition
- editor-socketio-server: retry-based force-reset (3 failures) instead
  of immediate nuclear reset on any OT error
- hex2rgb: defensive null checks for old non-hex color records

Signed-off-by: bxff <51504045+bxff@users.noreply.github.com>
2026-03-24 21:12:41 +01:00
renovate[bot]
f51f8dcc19 chore(deps): update linters
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-24 13:09:58 +01:00
renovate[bot]
ee1435748f chore(deps): update actions/upload-artifact action to v7
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-24 13:07:52 +01:00
renovate[bot]
cbed25c170 chore(deps): update dependency mkdocs-material to v9.7.6
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-24 13:04:30 +01:00
renovate[bot]
90febd954e fix(deps): update dependency mysql2 to v3.20.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-24 13:03:35 +01:00
renovate[bot]
f7642f37f9 fix(deps): update dependency pg to v8.20.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-24 13:02:46 +01:00
renovate[bot]
32f119f7ac fix(deps): update dependency rimraf to v6.1.3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-24 12:59:41 +01:00
renovate[bot]
f5fceed8e2 fix(deps): update dependency minio to v8.0.7
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-24 12:58:16 +01:00
renovate[bot]
c75b02bc66 fix(deps): update dependency file-type to v21.3.2 [security]
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-24 12:56:44 +01:00
renovate[bot]
8ffea9963a fix(deps): update dependency dompurify to v3.3.2 [security]
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-24 12:56:17 +01:00
renovate[bot]
11b299d186 chore(deps): update actions/setup-node action to v6.3.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-04 12:24:05 +01:00
renovate[bot]
2adc315f13 chore(deps): update dependency abcjs to v6.6.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-02 14:55:43 +01:00
renovate[bot]
6c91a8728e chore(deps): update dependency abcjs to v6.6.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-02 14:52:00 +01:00
Philip Molares
cdedc8df33 chore(dependency): fix pymdown-extensions version
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2026-02-24 20:41:39 +01:00
Philip Molares
f0c0200eb9 docs(release-notes): add section about 1.10.7
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2026-02-24 20:24:44 +01:00
Erik Michelson
5cefc3cfe1 fix(cli): do not silently drop errors in manage_users CLI
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-02-24 20:24:44 +01:00
Philip Molares
5d00de9892 chore(release): bump version to 1.10.7
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2026-02-24 20:24:44 +01:00
Philip Molares
5603af245c docs: add changelog entry
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2026-02-21 23:47:53 +01:00
Philip Molares
7e2a783161 fix(realtime): aboard finishConnection if user is missing
This can happen if the user disconnects during connection creation.

See #6101

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2026-02-21 23:47:53 +01:00
renovate[bot]
edf1f62b2e chore(deps): update dependency pymdown-extensions to v10.21.1 2026-02-21 20:48:08 +01:00
renovate[bot]
6a4ab2bc5b chore(deps): update actions/setup-node action to v6.2.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-21 20:44:01 +01:00
Erik Michelson
fd4d5bfbd1 fix(editor): always use random hex colors
chance.color() can output all valid CSS
values for colors, including rgba() syntax and predefined color
names. Due to the usage of hex2rgb and other methods, this can
break the editor. This commit ensures that all randomly generated
colors are specified in hex format.

Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-02-18 19:43:33 +01:00
xenein
7408217b6a docs(features): clarification on locations for light/dark mode (#6355)
Signed-off-by: xenein <76600392+xenein@users.noreply.github.com>
2026-02-15 21:07:54 +01:00
Erik Michelson
2e66e4d5ec fix(docs): update release checklist
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-02-04 21:34:39 +01:00
Erik Michelson
145e3ee318 chore(release): bump versions and release notes
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-02-04 20:27:41 +01:00
Erik Michelson
f910000d2b feat(security): sanitize SVG files on upload
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-02-04 20:27:41 +01:00
Erik Michelson
b930fe04ce fix(security): increase CSP policy by explicitly sandboxing uploads
Adding the sandbox attribute tells browsers to apply stricter
restrictions like preventing execution of plugins and scripts.

Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-02-04 20:27:41 +01:00
Erik Michelson
74daa0e7a1 fix(security): headers were not applied to uploads
Due to express static overriding the response, applying the extra headers
like CSP and Content-Disposition did not work for files served under the
/uploads route. By reordering, the code this works now.

Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-02-04 20:27:41 +01:00
Erik Michelson
6fc411d17f chore(deps): update lockfile
renovate was tired, so I did it manually

Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-02-03 20:48:50 +01:00
Erik Michelson
0e9e2177cf chore(deps): update dependencies
renovate was tired, so I did it manually

Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-02-03 20:44:27 +01:00
renovate[bot]
f529214660 chore(deps): update actions/cache action to v5.0.3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 20:19:26 +01:00
renovate[bot]
ebf98130d7 chore(deps): update actions/checkout action to v6.0.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 20:18:58 +01:00
renovate[bot]
d2dd6762a7 chore(deps): update dependency jquery-ui to v1.14.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 20:16:19 +01:00
renovate[bot]
14edc1a7a5 fix(deps): update dependency connect-session-sequelize to v8.0.5
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 20:13:31 +01:00
renovate[bot]
58d436c924 fix(deps): update dependency mysql2 to v3.16.3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 20:13:01 +01:00
renovate[bot]
a3b49a6e24 chore(deps): update dependency esbuild-loader to v4.4.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 19:56:20 +01:00
renovate[bot]
a96e9cbdf9 fix(deps): update dependency lodash to v4.17.23 [security]
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 19:55:09 +01:00
renovate[bot]
a2da69ede5 chore(deps): update dependency eslint-plugin-n to v17.23.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 19:53:31 +01:00
renovate[bot]
8725196df6 chore(deps): update dependency utf-8-validate to v6.0.6
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 19:51:43 +01:00
renovate[bot]
7c9d1ec712 fix(deps): update dependency body-parser to v2.2.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 19:51:12 +01:00
Erik Michelson
092e4d428d docs: permissions page in the docs references
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-01-28 20:26:25 +01:00
Philip Molares
67b1917467 docs: fix number of permissions HD1 has
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2026-01-28 20:08:25 +01:00
renovate[bot]
e7055b43a4 chore(deps): update dependency mkdocs-material to v9.7.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-21 19:18:55 +01:00
renovate[bot]
eba2b2d711 chore(deps): update actions/cache action to v5.0.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-21 19:18:10 +01:00
xenein
cb7588d6fa docs: Add speaker view and speaker notes to slide-options.md (#6322) 2026-01-15 13:12:10 +01:00
renovate[bot]
48a207571b chore(deps): update actions/upload-artifact action to v6
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-17 20:31:28 +01:00
renovate[bot]
b76f397983 chore(deps): update actions/cache action to v5
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-17 20:27:48 +01:00
renovate[bot]
e77b9ced58 fix(deps): update dependency mysql2 to v3.16.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-17 20:17:17 +01:00
renovate[bot]
98e9e6cefc chore(deps): update dependency pymdown-extensions to v10.19.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-17 20:13:50 +01:00