Commit Graph

4658 Commits

Author SHA1 Message Date
renovate[bot]
95ba7f6fb5 chore(deps): update dependency highlight.js to v11
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 22:06:36 +02:00
Philip Molares
788676aba4 refactor: umzug
allow umzug v3 to work with the umzug v2 migrations

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2026-08-21 20:30:00 +02:00
renovate[bot]
dcdf30b4c4 fix(deps): update dependency umzug to v3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 20:30:00 +02:00
Erik Michelson
074f7251e9 fix(deps): update scrypt import to ESM
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-08-21 20:05:02 +02:00
renovate[bot]
6ea80ef636 fix(deps): update dependency scrypt-kdf to v4
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 20:05:02 +02:00
renovate[bot]
c66f4c2ec2 chore(deps): update dependency pymdown-extensions to v11
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 19:34:09 +02:00
renovate[bot]
10dd207ff4 chore(deps): update dependency remark-preset-lint-markdown-style-guide to v6
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 19:15:25 +02:00
renovate[bot]
9a91b286ea chore(deps): update dependency globals to v17
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 19:10:33 +02:00
Philip Molares
65b39de212 refactor: formidable usage
Instead of a single image or an array formidable now always returns an array of files.

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2026-08-21 18:31:13 +02:00
renovate[bot]
f2b50dd290 fix(deps): update dependency formidable to v3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 18:31:13 +02:00
Erik Michelson
b7c46b0a90 fix(image-upload): make imageRouter ESM ready
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-08-21 18:09:35 +02:00
renovate[bot]
01e1b6bd4d fix(deps): update dependency is-svg to v6
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 18:09:35 +02:00
renovate[bot]
d62e095553 fix(deps): update dependency mariadb to v3.5.3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 18:06:53 +02:00
Erik Michelson
8340e3f3a2 fix: update imports for updated markdown-it-plugins
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-08-21 17:48:11 +02:00
renovate[bot]
286add5d0d fix(deps): update dependency markdown-it-emoji to v3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 17:48:11 +02:00
renovate[bot]
5504ac52b2 fix(deps): update dependency cheerio to v1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 17:30:43 +02:00
renovate[bot]
9b008ccbab fix(deps): update dependency markdown-it to v14 [security]
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 17:15:31 +02:00
Philip Molares
37b23c86c5 ci: drop node 18
node 18 is deprecated and we already announce that HedgeDoc won't work with it anymore.

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2026-08-21 16:34:00 +02:00
renovate[bot]
07d5997bb4 fix(deps): update dependency pg to v8.23.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 16:33:08 +02:00
renovate[bot]
03314ae9c4 chore(deps): update dependency mocha to v11.8.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 16:31:40 +02:00
renovate[bot]
a83e074ab1 chore(deps): update dependency less to v4.9.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 16:31:02 +02:00
Andreas Boesen
1464fc87cf update docs/content/setup/manual-setup.md: node 18 -> 20
The changelog 1.10.1 2025-02-02 deprecates Node 18 and says that future
releases will require Node 20.

<c02dc05bec/public/docs/release-notes.md (-1101--2025-02-02)>

Signed-off-by: Andreas Boesen <boesen@belwue.de>
2026-08-21 16:29:43 +02:00
renovate[bot]
f181334990 chore(deps): update dependency abcjs to v6.7.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 16:29:31 +02:00
renovate[bot]
28e8e34c79 fix(deps): update dependency nanoid to v3.3.18
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 16:24:07 +02:00
renovate[bot]
d9e2e6674b fix(deps): update dependency mysql2 to v3.23.4
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 16:20:06 +02:00
renovate[bot]
9586121695 fix(deps): update dependency js-yaml to v4.3.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 16:19:07 +02:00
renovate[bot]
66732eff2d fix(deps): update dependency express-rate-limit to v8.6.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 15:59:06 +02:00
renovate[bot]
b2cb53143a fix(deps): update dependency dompurify to v3.4.14
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-21 13:25:14 +02:00
Erik Michelson
766d00c4d9 fix(realtime): proper reconnect handling for socket.io
Socket.IO seems to include an own reconnect mechanism for some time.
HedgeDoc however built an own reconnect mechanism on top of that.
Since the 'reconnect' event was dropped for socket.io 4.x, the
reconnect-cleanup code didn't run anymore.

This commit fixes this by:
- removing the manual reconnect interval,
- putting the reconnect handler into the correct place,
- setting reconnection options on the server side

Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-08-21 13:22:17 +02:00
Erik Michelson
d1ad8d71fe fix(socket.io): remove deprecated cookie option from server-side
See docs at: https://socket.io/docs/v4/server-options/#cookie

Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-08-21 13:22:17 +02:00
Erik Michelson
da2c065e59 fix(realtime): check for online users before clearing note
The disconnect handler for the realtime connection checks whether the
disconnecting socket was the last user for that note. If that's the
case and the note had unsaved changes, it persists them to the database
which is an async progress. In the callback of this async progress, the
note and all its pending changes (should be empty) are deleted.
However, when the user reconnects quickly because of a flaky
connection, it could happen that they create new pending changes before
the database saving finished. As there was no additional "no-users"
check before clearing the note, this could lead to content loss.

Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-08-21 13:22:17 +02:00
Tony Chau
ffcf79ef07 fix: open links in new tab
The addition of external link warning has changed the behavior of
opening links from opening in a new tab to opening in the same tab.
This restores the old behavior and opens all links in a new tab.

Signed-off-by: Tony Chau <90050474+fo5for@users.noreply.github.com>
2026-08-21 12:20:11 +02:00
Lars Kiesow
d05cfe4e9f feat: add auto login to skip sign-in method chooser
If you combine OIDC with local accounts or if your OIDC provider is an
external company (Facebook, GitHub, …) it makes sense for HedgeDoc to
show a additional login modal so users know that they will leave the
page.

However, if OAuth2/OIDC is a deployment's primary sign-in method and a
local OIDC provider is being used, users expect the common SSO method
being used, and he "Choose method" modal is a redundant extra click.
Essentially, you may have to click login thrice:

- Click login -> modal opens
- Click Login with provider -> provider login opens
- Log in (unless you are logged in already)

This simple patch adds an auto-login configuration, which makes the Sign
In button link straight to the provider's OAuth2 flow, improving the UX
of tHedgeDoc's login.

Signed-off-by: Lars Kiesow <lkiesow@uos.de>
2026-08-21 10:33:25 +02:00
Andy Piper
ed7f374434 docs: change mastodon color to brand purple 2026-07-31 20:10:05 +00:00
Philip Molares
16dd9a9faf docs: extend release-checklist from 1.11.1 release
We just released 1.11.1 and noticed some things that need to be changed in the release checklist.

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2026-07-24 21:58:08 +02:00
Erik Michelson
0dda149c7f fix(permissions): ignore unknown permission values
The permission checks did not check for unknown permission values
submitted to the server. This allowed bypassing permission checks
under certain circumstances. However, this is not as critical as
it might sound at first, since checks guard that only the owner
can modify note permissions and the owner already has always
full permission to their note.

Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-07-24 21:39:28 +02:00
Erik Michelson
0a7fc28d8b chore(release): bump version and adapt release notes for 1.11.1
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-07-24 21:39:28 +02:00
renovate[bot]
95660a6665 chore(deps): lock file maintenance
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-23 22:23:42 +02:00
renovate[bot]
efcb6d472a fix(deps): update dependency mysql2 to v3.23.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-23 21:44:15 +02:00
renovate[bot]
a16f574283 chore(deps): update actions/setup-node action to v7
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-23 21:43:45 +02:00
renovate[bot]
3aae6316a7 fix(deps): update dependency helmet to v8.3.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-23 21:43:16 +02:00
renovate[bot]
88e73180fd fix(deps): update dependency express-rate-limit to v8.6.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-23 21:42:40 +02:00
renovate[bot]
7ee513b0cc chore(deps): update dependency less to v4.8.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-23 21:41:56 +02:00
renovate[bot]
c0cc5ff0bb fix(deps): update dependency nanoid to v3.3.16
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-23 21:36:22 +02:00
renovate[bot]
5e112e96df fix(deps): update dependency dompurify to v3.4.12
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-23 21:35:47 +02:00
Erik Michelson
9c1b36df95 fix(slide-preview): list items in correct order
This change fixes the displaying of (nested) list items in the preview
pane of the editor. Previously, list items were all treated as inline
blocks and therefore nested list items were placed next to the previous
item instead of below it. Now they align properly as expected.

Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2026-07-23 21:35:24 +02:00
renovate[bot]
844c390bbc chore(deps): update linters
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-23 21:35:13 +02:00
renovate[bot]
297f30ecba chore(deps): update dependency mkdocs-material to v9.7.7
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-23 21:34:28 +02:00
renovate[bot]
de588c19be chore(deps): update dependency abcjs to v6.6.4
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-23 21:33:49 +02:00
renovate[bot]
44beea5d54 chore(deps): update actions/checkout action to v7.0.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-23 21:31:48 +02:00