[!IMPORTANT]
This release upgrades Node in the Docker image to 26.12.1 which fixes multiple recently disclosed vulnerabilities.
It is recommended to update at the earliest opportunity.
What's Changed
This release introduces personal documents - a private space for every user, alongside a large round of mobile polish, security hardening, and continued performance work on both the client and server.
Highlights
Every user now has a personal section for private documents in the sidebar in #14062#14187 (Admins can disable in settings)
Drag and drop in the sidebar was rebuilt to be more responsive
Mermaid diagrams are now faster, much prettier, and responsive as they are rendered with Pele in #14126 -
Passkey login is now possible inside the desktop app (Make sure you're running the latest version) in #14180#14241#14242
MCP
OAuth Client ID Metadata Documents are now supported for MCP clients in #14015
Added a tool to show what changed in a document in #14192
The MCP SDK has been upgraded to v2 with support for the 2026-07-28 protocol in #14244
Performance improvements
Editor UI now renders from observable state instead of forceUpdate in #14073
Share popover and document meta chunks are now preloaded on predicted intent in #14125
The document is no longer restyled on every frame of the sidebar animation in #14132
Notification counts no longer use default scope joins in #14139
Empty unfurl results are now remembered on the client in #14135
The text column is now skipped when loading document lists in #14138
Permanent Iframely errors are now cached for an hour in #14134
This PR contains the following updates:
| Package | Update | Change |
|---|---|---|
| [outlinewiki/outline](https://github.com/outline/outline) | minor | `1.11.0` → `1.12.0` |
---
### Release Notes
<details>
<summary>outline/outline (outlinewiki/outline)</summary>
### [`v1.12.0`](https://github.com/outline/outline/releases/tag/v1.12.0)
[Compare Source](https://github.com/outline/outline/compare/v1.11.0...v1.12.0)
> \[!IMPORTANT]
> This release upgrades Node in the Docker image to 26.12.1 which fixes multiple recently disclosed [vulnerabilities](https://github.com/nodejs/nodejs.org/blob/main/apps/site/pages/en/blog/release/v26.12.1.md).
> It is recommended to update at the earliest opportunity.
#### What's Changed
This release introduces personal documents - a private space for every user, alongside a large round of mobile polish, security hardening, and continued performance work on both the client and server.
##### Highlights
- Every user now has a personal section for private documents in the sidebar in [#​14062](https://github.com/outline/outline/pull/14062) [#​14187](https://github.com/outline/outline/pull/14187) (Admins can disable in settings)
- Drag and drop in the sidebar was rebuilt to be more responsive
- Mermaid diagrams are now faster, much prettier, and responsive as they are rendered with Pele in [#​14126](https://github.com/outline/outline/pull/14126) -
- Passkey login is now possible inside the desktop app (Make sure you're running the latest version) in [#​14180](https://github.com/outline/outline/pull/14180) [#​14241](https://github.com/outline/outline/pull/14241) [#​14242](https://github.com/outline/outline/pull/14242)
##### MCP
- OAuth Client ID Metadata Documents are now supported for MCP clients in [#​14015](https://github.com/outline/outline/pull/14015)
- Added a tool to show what changed in a document in [#​14192](https://github.com/outline/outline/pull/14192)
- The MCP SDK has been upgraded to v2 with support for the 2026-07-28 protocol in [#​14244](https://github.com/outline/outline/pull/14244)
##### Performance improvements
- Editor UI now renders from observable state instead of `forceUpdate` in [#​14073](https://github.com/outline/outline/pull/14073)
- Share popover and document meta chunks are now preloaded on predicted intent in [#​14125](https://github.com/outline/outline/pull/14125)
- The document is no longer restyled on every frame of the sidebar animation in [#​14132](https://github.com/outline/outline/pull/14132)
- Notification counts no longer use default scope joins in [#​14139](https://github.com/outline/outline/pull/14139)
- Empty unfurl results are now remembered on the client in [#​14135](https://github.com/outline/outline/pull/14135)
- The text column is now skipped when loading document lists in [#​14138](https://github.com/outline/outline/pull/14138)
- Permanent Iframely errors are now cached for an hour in [#​14134](https://github.com/outline/outline/pull/14134)
- Typing in large code blocks is faster in [#​14181](https://github.com/outline/outline/pull/14181)
- `SearchIndexProcessor` jobs are no longer queued for the Postgres provider in [#​14186](https://github.com/outline/outline/pull/14186)
- `SlackProcessor` now waits for a summary only after cheap checks pass in [#​14188](https://github.com/outline/outline/pull/14188)
- Reduced traversals and skipped unneeded work in `ProsemirrorHelper` in [#​14243](https://github.com/outline/outline/pull/14243)
- Attachments are now loaded in one query when signing urls in text in [#​14247](https://github.com/outline/outline/pull/14247)
- Comment view lookups are now batched and email diff clipping is memoized in [#​14251](https://github.com/outline/outline/pull/14251)
- Only the patched path is now copied when recreating transforms in [#​14250](https://github.com/outline/outline/pull/14250)
##### Other improvements
- Tables can now be placed inside notices in [#​14175](https://github.com/outline/outline/pull/14175)
- Code block line numbers can now be shown alongside line wrapping in [#​14170](https://github.com/outline/outline/pull/14170)
- The mobile sidebar can now be closed with a drag, and header controls are touch-friendly in [#​14179](https://github.com/outline/outline/pull/14179)
- Emails now support one-click unsubscribe (RFC 8058) in [#​14148](https://github.com/outline/outline/pull/14148)
- A warning is now shown when theme colors have low contrast in [#​14258](https://github.com/outline/outline/pull/14258)
- Headings are now weighted above body text in shared document search in [#​14087](https://github.com/outline/outline/pull/14087)
- Postgres search now retries as a quoted query when there are no results in [#​14104](https://github.com/outline/outline/pull/14104)
- Slab imports now resolve cross-links and import Slab-hosted attachments in [#​14109](https://github.com/outline/outline/pull/14109)
- Added a "Manage templates" link to the Templates menu in [#​14103](https://github.com/outline/outline/pull/14103)
- Video nodes now have a selection toolbar in [#​14118](https://github.com/outline/outline/pull/14118)
- Uploads now render with the same component as the uploaded node in [#​14117](https://github.com/outline/outline/pull/14117)
- `Alt`+`click` now expands all in the document explorer in [#​14200](https://github.com/outline/outline/pull/14200)
- Document update emails now list all contributors in [#​14157](https://github.com/outline/outline/pull/14157)
- Comment webhook payloads now include `collectionId` in the payload in [#​14176](https://github.com/outline/outline/pull/14176)
- Notices now have softer colors with matching menu icons in [#​14177](https://github.com/outline/outline/pull/14177)
- Small text sizes have been increased on mobile in [#​14255](https://github.com/outline/outline/pull/14255)
- The settings sidebar and AI settings page have been tidied in [#​14111](https://github.com/outline/outline/pull/14111)
- The unknown error screen now has a glitching sad face icon in [#​14088](https://github.com/outline/outline/pull/14088)
- Migrations before v1.3.0 have been compacted into a baseline schema in [#​13973](https://github.com/outline/outline/pull/13973)
- Node.js has been updated to 26.12.1 in [#​14228](https://github.com/outline/outline/pull/14228)
##### Fixes
- No confirmation of permission change when dropping a document onto a document in [#​14061](https://github.com/outline/outline/pull/14061)
- Current selection not highlighted in the icon picker in [#​14059](https://github.com/outline/outline/pull/14059)
- `groups.memberships` returns users who are not group members in [#​14071](https://github.com/outline/outline/pull/14071)
- Search misses terms inside dot-separated identifiers in [#​14072](https://github.com/outline/outline/pull/14072)
- Selection outline missing on non-text block nodes in [#​14058](https://github.com/outline/outline/pull/14058)
- Collection name field has no accessible label in [#​14075](https://github.com/outline/outline/pull/14075)
- Dropped videos insert as attachments instead of playable video in [#​14086](https://github.com/outline/outline/pull/14086)
- Search misses numbers with periods at the start of a paragraph or cell in [#​14085](https://github.com/outline/outline/pull/14085)
- Tighten email sign-in link handling in [#​14089](https://github.com/outline/outline/pull/14089)
- Slack link previews do not use the slash command token in [#​14090](https://github.com/outline/outline/pull/14090)
- Patch text not inserted verbatim inside code blocks in [#​14097](https://github.com/outline/outline/pull/14097)
- Slack user not resolved for the Post to Channel action in [#​14095](https://github.com/outline/outline/pull/14095)
- Layout shift when pinned documents load on Home in [#​14102](https://github.com/outline/outline/pull/14102)
- Toggle blocks not unfolded when jumping to a comment in [#​14100](https://github.com/outline/outline/pull/14100)
- Login and app pages indexed by search engines in [#​14105](https://github.com/outline/outline/pull/14105)
- Duplicate personal document in the sidebar on first create in [#​14107](https://github.com/outline/outline/pull/14107)
- Access action shown in the share dialog for personal documents in [#​14106](https://github.com/outline/outline/pull/14106)
- Drag handle lags behind scroll position in [#​14108](https://github.com/outline/outline/pull/14108)
- Server does not exit when a Redis connection stays unavailable in [#​14114](https://github.com/outline/outline/pull/14114)
- `BadGatewayError` reports split across many Sentry issues in [#​14115](https://github.com/outline/outline/pull/14115)
- Arrow up/down does not select images like other block nodes in [#​14119](https://github.com/outline/outline/pull/14119)
- Tighten parent share resolution in the share loader in [#​14129](https://github.com/outline/outline/pull/14129)
- Discord authentications not refreshed or validated in [#​14141](https://github.com/outline/outline/pull/14141)
- Query string values not redacted in traces in [#​14140](https://github.com/outline/outline/pull/14140)
- UI copy, casing, and punctuation errors in [#​14144](https://github.com/outline/outline/pull/14144)
- Share state handling for unpublished documents in [#​14160](https://github.com/outline/outline/pull/14160)
- Tighten checks when publishing drafts in [#​14155](https://github.com/outline/outline/pull/14155)
- Check permissions earlier in `users.update_role` in [#​14156](https://github.com/outline/outline/pull/14156)
- Desktop history navigation not aligned with the document header in [#​14159](https://github.com/outline/outline/pull/14159)
- Signed URL redirects cached longer than the signature is valid in [#​14169](https://github.com/outline/outline/pull/14169)
- Duplicate heading anchor IDs in [#​14162](https://github.com/outline/outline/pull/14162)
- Mobile drawer bottom spacing and switch size in [#​14158](https://github.com/outline/outline/pull/14158)
- Block menu renders offset by the sidebar width in [#​14178](https://github.com/outline/outline/pull/14178)
- Some mention notifications cannot be turned off or unsubscribed in [#​14146](https://github.com/outline/outline/pull/14146)
- Access request emails not translated, and email language and direction not set in [#​14147](https://github.com/outline/outline/pull/14147)
- Drag handle shown over the block menu trigger in [#​14183](https://github.com/outline/outline/pull/14183)
- Missing rate limit on `documents.update` in [#​14189](https://github.com/outline/outline/pull/14189)
- Task progress dial does not animate between values in [#​14190](https://github.com/outline/outline/pull/14190)
- Mobile header not opaque when the settings table header is sticky in [#​14208](https://github.com/outline/outline/pull/14208)
- Modal ignores the height prop in [#​14215](https://github.com/outline/outline/pull/14215)
- Settings tables do not scroll horizontally on narrow screens in [#​14216](https://github.com/outline/outline/pull/14216)
- Check permissions earlier in `documents.restore` in [#​14224](https://github.com/outline/outline/pull/14224)
- Stricter document name handling in the collaboration server in [#​14225](https://github.com/outline/outline/pull/14225)
- Improve consistency of public share team handling in [#​14223](https://github.com/outline/outline/pull/14223)
- Consistent order of checks in `accessRequests.approve` in [#​14232](https://github.com/outline/outline/pull/14232)
- Consistent template validation in `documents.update` in [#​14230](https://github.com/outline/outline/pull/14230)
- Incorrect `isSignedIn` flag for available teams in `auth.info` in [#​14236](https://github.com/outline/outline/pull/14236)
- Mobile sidebar does not use drawer colors in [#​14240](https://github.com/outline/outline/pull/14240)
- iOS blurs the mobile header in the installed web app in [#​14238](https://github.com/outline/outline/pull/14238)
- Traced request URLs ignore `X-Forwarded-Host` in [#​14210](https://github.com/outline/outline/pull/14210)
- Mobile header primary button uses the wrong color in dark theme in [#​14252](https://github.com/outline/outline/pull/14252)
- Document header hidden while typing on mobile in [#​14253](https://github.com/outline/outline/pull/14253)
- Virtual-host S3 bucket origin blocked by `object-src` CSP in [#​14237](https://github.com/outline/outline/pull/14237)
- Moving a document drops permissions its children inherit from it by [@​misha-sunborn](https://github.com/misha-sunborn) in [#​13879](https://github.com/outline/outline/pull/13879)
- Wrong sender attribution for Markdown document mentions in [#​14123](https://github.com/outline/outline/pull/14123)
#### New Contributors
- [@​linear-code](https://github.com/linear-code)\[bot] made their first contribution in [#​14065](https://github.com/outline/outline/pull/14065)
**Full Changelog**: <https://github.com/outline/outline/compare/v1.11.0...v1.12.0>
</details>
---
### Configuration
📅 **Schedule**: (UTC)
- Branch creation
- At any time (no schedule defined)
- Automerge
- At any time (no schedule defined)
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xODEuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjE4MS4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbXX0=-->
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
This PR contains the following updates:
1.11.0→1.12.0Release Notes
outline/outline (outlinewiki/outline)
v1.12.0Compare Source
What's Changed
This release introduces personal documents - a private space for every user, alongside a large round of mobile polish, security hardening, and continued performance work on both the client and server.
Highlights
MCP
Performance improvements
forceUpdatein #14073SearchIndexProcessorjobs are no longer queued for the Postgres provider in #14186SlackProcessornow waits for a summary only after cheap checks pass in #14188ProsemirrorHelperin #14243Other improvements
Alt+clicknow expands all in the document explorer in #14200collectionIdin the payload in #14176Fixes
groups.membershipsreturns users who are not group members in #14071BadGatewayErrorreports split across many Sentry issues in #14115users.update_rolein #14156documents.updatein #14189documents.restorein #14224accessRequests.approvein #14232documents.updatein #14230isSignedInflag for available teams inauth.infoin #14236X-Forwarded-Hostin #14210object-srcCSP in #14237New Contributors
Full Changelog: https://github.com/outline/outline/compare/v1.11.0...v1.12.0
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate CLI.