Logseq DB - Changelog

Changelog (2025-11-16 to 2025-12-06)

Spotlight

This release delivers three transformative initiatives that significantly enhance Logseq’s security, mobile experience, and developer tooling:

  • End-to-End Encryption (E2EE) for Real-Time Collaboration - Full implementation of end-to-end encryption for synced graphs, ensuring your collaborative data remains private and secure. E2EE password management is seamlessly integrated with system keychains on both desktop and mobile, includes RSA key-pair generation, AES encryption for graph data and assets, and a “forgot password” recovery option.

  • Native iOS Navigation & Bottom Sheets - Complete redesign of the iOS mobile interface with native UIKit components, replacing the previous web-based Silk framework. This brings smooth native animations, improved gesture handling, dynamic tab system with native bottom sheets, enhanced accessibility with iOS Dynamic Type support, and significantly better performance.

  • Logseq CLI Enhancements - Major improvements to the command-line interface including new validation commands for graph data quality, API mode for export-edn, better error messages for unspecified graphs, and enhanced graph validation with closed-value checking.

New Feature

Real-Time Collaboration (RTC)

  • Add end-to-end encryption support for synced graphs with RSA key-pair generation (2b84d729d)

  • Implement “forgot password” setting for E2EE password reset (2b84d729d)

  • Add E2EE settings UI with password confirmation and warnings (0eceffcdb)

  • Enable encryption/decryption for graph uploads, client operations, and assets (abe59cdbf, 09b1fb61f)

  • Support grant-access functionality for encrypted graphs (219d9ad20)

  • Store encrypted E2EE password in system keychain on desktop and mobile (6ed01dfb9, 4593ab3d7)

Mobile Experience

  • Implement native navigation and bottom sheets for iOS using UIKit (56eba5bd2)

  • Add native bottom tab bar with dynamic tab support (68075a8bd)

  • Introduce graphs tab for easier graph management (60689b25f)

  • Add native editor commands toolbar on iOS (be09bf3c8)

  • Implement native alert dialogs on mobile (9c01d46bc)

  • Add native selection bar with improved UX (ec32fe359)

  • Support multiple navigation stacks for improved tab navigation (42aa764a6)

CLI & Developer Tools

  • Add validate command for local graph data quality checks (79e75060d)

  • Add validate option to export-edn command for sanity checking (07a0feb85)

  • Add API mode for export-edn command (62deed7e7)

  • Add validation to export EDN for most export types with explicit error handling (134dc0f2a)

UI/UX Improvements

  • Add unified icon picker with avatar support (6a0229eac)

  • Implement carousel component for improved onboarding flow (e08341bba)

  • Add Enter key functionality for onboarding navigation (2a4c0ef62)

  • Support global mode for custom font family (98b474e0e)

  • Add allow list feature for enhanced security (d737a447c)

Enhancement

Real-Time Collaboration

  • Improve incremental transaction updates with 2,000 batch limit to reduce server load (f17d562ca)

  • Split RTC timeout configuration into WebSocket and S3 components (10s each) (002161132)

  • Make E2EE compatible with unencrypted graphs (bdf5d66f8)

  • Enable sync graph by default for RTC testers (df1e9d8bc)

  • Separate shared graphs from remote graphs in UI (e93c3afcc)

  • Auto-restart RTC when WebSocket timeouts occur (cc48b42d0)

Mobile Experience

  • Add undo/redo functionality on mobile (d1abefab0)

  • Add indent/outdent to selection bar with scrollable design (da26cbebe)

  • Support iOS Dynamic Type for better accessibility (7e8ed5333)

  • Enable swipe anywhere to go back (0a5ebf97d)

  • Allow search and view type switching on mobile (9d579a372)

  • Rename “favorites” to “quick access” for clarity (62f384e27)

  • Limit home journal page blocks to 50 for better performance (a5badf9e4)

  • Move import functionality to graph tab actions (a7c5baa09)

UI/UX Improvements

  • Redesign shortcut component with improved styling (c51e58a7f)

  • Refactor CMD K section header for better visual consistency (bcc68452f)

  • Enhance combobox with unified item rendering and improved styling (2ceb5e8ff)

  • Integrate list-item-icon component for consistent icon rendering (113d7cf99)

  • Add smooth scroll experience in select dropdown (3258aea29)

  • Add descriptions for DB export options to clarify their purpose (f6ce9fb47)

CLI & Developer Tools

  • Improve error messages for unspecified graphs in CLI (7b07116b4)

  • Add option to relax closed validation for entity maps (36c361af8)

  • Improve validation error messages for better user experience (79e75060d)

  • Print unexpected errors in export-edn command (5489e7572)

Asset Management

  • Add file selection dialog for asset source input (9c738f64c)

  • Support external asset URLs with checksum validation (eeb8b8523)

  • Add external source editing for asset blocks (5e1c3a12e)

  • Improve external URL property visibility and styling (741e7db1f)

  • Add db-based highlights loading functionality (62edcebb6)

PDF Annotations

  • Improve asset path resolution and decoding logic (3874e39d1)

  • Improve highlight handling based on PDF state (97fb9811f)

  • Improve asset handling and highlight area interactions (ff3600ce5)

Bug Fix

Mobile

  • Fix capture view blink and keyboard issues (07ef1ec3b)

  • Fix re-tap capture resulting in blank app (1b8c5ac3a)

  • Fix keyboard blink when deleting a block (f6371eb37)

  • Fix editor toolbar not always displayed (a02c9d314)

  • Fix safe area handling (892c6c32e)

  • Fix navigation stack reset when switching tabs or searching (bf95e92ab)

  • Fix search requiring double taps (000280080)

  • Fix properties not shown on page view (eb2429dbc)

  • Fix delete block not focusing on previous block (de4c4bdcb)

  • Fix YouTube embed on mobile (b1e70e605)

  • Fix page title editing issues (682d3f641)

  • Fix menu popup positioning (92eb5acf4)

  • Fix node reference when text selected (606a95d6a)

  • Enable auto-correct and auto-capitalization on iOS (28c397e89)

Real-Time Collaboration

  • Fix RTC not auto-restarting when WebSocket timeouts (53ae28359)

  • Fix assets sync loop stopping and error handling (285eb612a)

  • Fix RTC auto-restart error handling (c7816057f)

  • Fix create-get-state-flow not emitting nil (5b52b68ae)

  • Fix E2EE password requirement for non-encrypted graphs (9ca44ef15)

  • Fix E2EE reset password when local cached password expired (28a0ceb00)

  • Fix grant-access for E2EE graphs (de2c005b7)

Block Editing & Content

  • Fix inline tag resolved as page when saving block (20aecdb27)

  • Fix linked refs not shown for tags and properties (ae5d97ac0)

  • Fix parse inline tag as page (055a5cf6c)

  • Fix default-open-blocks-level 0 behavior (2b57fd9ee)

  • Fix fold button overlap with block title (c52476277)

  • Fix editor line-height (a8e2065ef)

Export & Import

  • Fix EDN export of class pages (22dbcfb2d)

  • Fix page export when blocks reference each other (ef68e19b3)

  • Fix import of existing pages to preserve properties and tags (3219b827e)

  • Fix invalid DB when class turned page has hanging :db/ident (fdc5d889d)

  • Fix file graph pasting blocks with multiple levels of children (9c77a2f2a)

CLI

  • Fix CLI append (-a) not appending (0f7135210)

  • Fix import-edn hanging for unexpected transact errors (4f5f68d0a)

  • Fix most API commands not pinging API when $LOGSEQ_API_SERVER_TOKEN set (b699ebf24)

  • Fix MCP server API mode failing confusingly (23937b59f)

  • Ensure CLI commands run against DB graphs only (d6a20e6a9)

  • Fix validate to ignore :block.temp/* attributes (deaed7d30)

PDF & Assets

  • Fix incorrect text layer rendering event handling for loaded pages (c8896fa8a)

  • Fix incorrect highlights layer for first page (54fdc5efd)

  • Fix assets not syncing to desktop (ddc8a566d)

  • Fix asset file deletion when deleting its block (d867bf603)

UI/UX

Property System

  • Fix property cardinality handling for property types (8c3e4f25c)

  • Relax closed values validation for server merge compatibility (8bd6acfb2)

Graph Parser

Performance

Real-Time Collaboration

  • Optimize incremental transaction updates with batching strategy (f17d562ca)

  • Improve timeout configuration for better responsiveness (002161132)

Mobile

  • Limit home journal blocks to 50 for better performance (a5badf9e4)

Refactoring

Code Organization

  • Refactor icon handling and rendering logic for improved consistency (b45f7d541)

  • Refactor highlight rendering in search and cmdk components (4e269f644)

  • Refactor list-item-icon styles for better adaptability (44051947e)

  • Update importer to use validate-local-db (8fc56bfaa)

  • Make CLI and testing validation consistent (c8f99d1ff)

  • Rename local-asset? to local-relative-asset? (49407d561)

E2EE Cleanup

  • Remove deprecated E2EE namespaces and schemas (befac7f7a, 2c272cdef)

  • Remove unused deprecated E2EE code (d472efc03)

  • Extract delete-block-when-zero-pos for later usage (9af63ff9c)

Chore

Dependencies

  • Update DOMPurify from 2.5.4 to 3.2.4 for security (458d6d71e)

  • Bump CLI to version 0.4.1 (6b5e25bcf)

CI/CD

  • Use macOS-14 for desktop release CI (1ee40210f)

  • Remove outdated build-ios workflow (ce6b4ff2d)

Testing

  • Add E2E test for long block titles (21cf99c1a)

  • Fix RTC basic test for E2EE case (ef7901615)

  • Add frontend.common.crypt-test (e95dbe109)

  • Add flag to skip intermittently failing E2E tests (17cc2603a)

Documentation

  • Add dev instructions to build+install CLI locally (5153b0ba8)

  • Update review.md about common keywords (fb9ac9677)

  • Update roadmap link (547e86ab4)

Code Cleanup

Contributors

Thank you to all contributors who made this release possible:

@benjypng, @charlie, @Gabriel Horner, @rcmerci, @Sal Rahman, @sander boer, @scheinriese, @Tienson Qin, @Victor239

3 Likes