Logseq DB - Changelog

Changelog (2025-10-26 to 2025-11-15)

Spotlight

This release delivers significant improvements across three key areas that enhance Logseq’s stability, performance, and user experience:

  • Database Migration & Validation - Comprehensive fixes for old database graphs, ensuring data integrity during migrations and preventing invalid data states. Multiple safeguards added to protect built-in properties and handle edge cases in legacy graphs.

  • Performance Optimizations - Major speed improvements for large graphs, with Pages view performance increasing from 1000+ms to 200-300ms for graphs with 40,000 pages. Initial page load times reduced through optimized datom loading and smarter rendering strategies.

  • Mobile Experience Enhancements - Native bottom tabs introduced for iOS, improved touch interactions, and better authentication UI with multilingual support. Mobile-specific fixes for quick capture, search results, and iPad display issues.

New Feature

Plugin System & APIs

  • Add MCP (Model Context Protocol) server support (15a5f29b4)

  • Add plugin class support with ident format plugin.class.id/class-name (0a54e807b)

  • Add comprehensive tag management API functions: create, add, remove, and property management (51fbc705d, 7f4d8ad22)

  • Add development entry support for plugins (501230b0d)

CLI Tools

  • Add import-edn command for both current and local graphs (0bc0892b8)

Authentication

  • Complete authentication UI overhaul with multilingual support (a0a19a91f)

    • New sign-in, sign-up, and password reset flows

    • Password policy validation and tips in multiple languages

    • Countdown timer for code resend functionality

    • Improved mobile login modal styling

Mobile

  • Native bottom tabs on iOS for improved navigation (9ebe370ec)

Enhancement

Performance

  • Massive Pages view optimization: 5x faster for large graphs (1000+ms → 200-300ms for 40k pages) (7b6d6c467, fb271b1d4)

  • Reduce initial datoms that need to be loaded for faster startup (a626cec34)

  • Optimize get-recent-updated-pages query (82a7ec13e)

UI/UX Improvements

  • Add fade-in and delay effects to page reference elements (71a25e612)

  • Display tag hierarchy with parent/child notation (#parent/child) (48fb2b817)

  • Unified node icon rendering for references and embeds (a7c8212df)

  • Show node icons in search results (4c6c3322f)

  • Use dot icon for block nodes (5942c1b98)

  • Display property pairs vertically on mobile for better readability (1662497aa)

  • Set background color for full block instead of just title (b4c4b673e)

  • Render blocks together with parent page for list view (e8fef0d81)

  • Disable breadcrumb redirect in cmd+k results (1bae7b46f)

  • Show settings icon when configuring tags (04dd7a56d)

  • Store image width/height to prevent scroll jank (1fca2a9ff)

  • Keep today queries to avoid scroll junk (4462634f0)

  • Render fewer journals by default for faster initial load (88d9b6e78)

  • Smaller text for card breadcrumbs (409c2c327)

Block Editing

  • Compute diff for block refs instead of resetting all refs when editing (3bc65300b)

Plugin APIs

  • Support custom UUID when creating pages and tags (28bc28ecd, bd4b022a0)

  • set-block-properties! defaults to not reset :many values (94a2d9c28)

  • Export prepend_block_in_page function (025e2e70d)

Real-Time Collaboration

  • Update error handling for race-failure cases (68c5ab1bc)

Logging

Internationalization

  • Normalize language codes and improve locale handling (a0a19a91f)

Bug Fix

Database & Data Integrity

Built-in Pages & Tags Protection

  • Prevent built-in pages from being converted to tags (3bf78ac5e)

  • Prevent properties from being converted to classes (820b2f075)

  • Disallow updates to protected properties for built-in nodes (e4e838858)

  • Fix more built-in attributes that would cause major bugs if changed (71be8ec3e)

  • Fix some built-in tags shouldn’t be recognized as inline tags (a4ec889a5)

  • Prevent built-in tags like journal from being extended (d8b1feb39)

  • Fix disallowed tags (7619e3ab9)

Block Editing & References

  • Fix refs not rebuilt when applying RTC remote operations (f9cd1acbf)

  • Fix set heading removes refs (fec4f5165)

  • Fix block refs that are hyperlinks unable to be navigated to (de94684d5)

  • Fix can’t deref query result (5e924880b)

  • Remove :block/path-refs entity (12f65c315)

  • Remove :block/level in old graphs (c8c2d780a)

  • Fix block.temp/original-page-name handling (4ebe410e2)

Query System

  • Fix block/order showing up in all block queries (b847cfbcd)

  • Fix timestamps in advanced query not showing (518076d83)

  • Fix query result not showing when :db/id is not specified (7d39b510d)

  • Fix tag and page names collision in query DSL (6f8d2a39f)

  • Don’t show query component when block doesn’t have a query (5e0d52a43)

  • Use UUID instead of name for page ref queries to avoid collisions (d809af8ce)

Mobile Fixes

  • Fix quick capture website on mobile (0ece59542)

  • Fix no bottom tabs and editor bar on iPad (833f59120)

  • Fix failed to open “Import existing notes” on mobile (9ad3da9c6)

  • Fix can’t open block from search result on mobile (5dae9845a)

  • Hide bottom tabs when sheet has been opened (9ebe370ec)

File Import/Export

  • Fix file graph import issues (7dc155b28, 263c499e5)

  • Don’t create new card page when importing file graph (ace82d715)

  • Ensure UI database is full when importing file graph (263c499e5)

  • Fix import of code block inside quote block (c91661f02)

  • Fix wrong rendering of colored quote blocks in markdown graph (9104bebac)

Paste Operations

  • Fix can’t paste asset (2140029c6)

  • Fix can’t undo pasting at empty block (079c8944b)

  • Fix paste query block should create new block (fb9e73593)

  • Fix Cmd+V does not insert images into property value (c5adaddce)

Tag System

  • Fix adding tag property using API produces empty tag (70cf508ec)

  • Fix can’t add node link on tag page with dropdown menu (29cc19203)

  • Fix cmd+k shows configure tag but creates new page (f85546c15)

  • Don’t show parents for children tags in hierarchy (699d3eaf4)

  • Don’t show page’s tags in node references (68548ea2f)

  • Don’t show page’s tags in property values (dcb448d6b)

  • Fix tag dialog issues (3b99f1344)

  • Fix tags rendering (5b35a9ee4)

  • Add PDF annotation to private tags (4046dae5c)

Search

  • Fix search prioritizes creating page over existing library item (3afb112b8)

  • Fix built-in tag/property excluded from semantic search (33ae3f9a0)

UI & Keyboard

  • Fix left arrow does not work properly in property name field (e99f2b6b8)

  • Fix active breadcrumbs in node property dropdown menu (2122d3d27)

  • Use alt+shift+i for go/search-themes on Windows/Linux (085f9093c)

  • Fix virtualized list shouldn’t be nested (f34d58acc)

  • Ensure all elements inline for favorites and recents (84bfd7715)

Plugin & API

  • Fix page refs display UUIDs instead of text for getPage (1ebfd30b5)

  • Fix edit block operation shouldn’t require page ID (dc76a94e0)

  • Fix update :block :add op supported args (e3ce613a7)

  • Convert opts to JS object in insert_block (025e2e70d)

  • Sanitize user property names (0a54e807b)

PDF & Assets

  • Fix can’t delete annotated PDF (76d854660)

Other Fixes

  • Fix YouTube embed (65627d819)

  • Fix + New button error (323674a51)

  • Fix hidden columns display (b7edc5cc9, de0d0cd17)

  • Fix get-fs shouldn’t return nil (2a67e7e45)

  • Fix incorrect descriptions for database graphs (87ad39839)

  • Allow editing block’s other properties if there’s invalid URL (79f670f79)

  • Fix (()) doesn’t work for blocks in file graph (0fe171580)

  • Fix database worker doesn’t need to wait for plugin initialization (5173a73c1)

  • Allow moving non-page blocks to library on UI (46c4f66ae)

  • Don’t run remove-inline-page-classes if save-block doesn’t specify tags (fa86b7955)

  • Export URLs for debug transit (9d2912d1a)

Chore

Dependencies & Build

Testing & CI

  • Add E2E test for nested pages in Library (6844292de)

  • Add RTC E2E tests for page references (5d8c9a4f8)

  • Fix E2E tests (561f422c0)

  • Fix test website CI (1949a8a2f)

  • Fix clj-e2e CI configuration (d25cd4c1e)

  • Prevent deploy when E2E failed (d77ce0593)

  • Disable failing E2E check that prevents deploy (d9cad1260)

  • Re-enable repeatable install (b9318281f)

  • Fix frozen-lockfile install (7bf273874)

  • Fix test from recent tag made private (a3b2ac98f)

  • Fix test’s global change to ldb/transact! (2c6f8101d)

  • Fix pluralization of import/export messages (d7f7dbea1)

Code Quality

Version Management

Contributors

Thank you to all contributors who made this release possible:

@charlie, @Gabriel Horner, @rcmerci, @Tienson Qin

1 Like