Learn more

Changelog

Follow Obsidian updates and improvements.

Improvements

This update introduces a new migration assistant for Obsidian Sync. This tool will allow you to perform migrations for your remote Sync vaults, such as encryption upgrades, and in the future the ability to switch regions.

Obsidian occasionally upgrades Sync encryption to maintain the highest security standards. If an encryption upgrade is available you will see an option titled "Upgrade vault encryption" in Obsidian Settings → Sync.

No longer broken

  • Bases: Fixed view not refreshing after renaming the currently active view.
  • Bases: Fixed file.tags.contains() not finding files with parent tags (e.g. a/b should match when looking for "a").
  • Properties: Fixed context menu immediately hiding after right-clicking in Local Properties view.

Includes all new functionality and bug fixes up to Obsidian Desktop v1.9.10.

Improvements

  • The app now smoothly resizes when the on-screen keyboard appears and disappears.
  • Two-finger swipe to navigate forward and backwards in tab history will now be more responsive. On iOS, this gesture is disabled when the keyboard is active to avoid interfering with iOS's two-finger cursor movement gesture.
  • The app now better adapts to landscape mode.
  • It is now possible to reset your Obsidian account password from the initial onboarding flow.
  • You can now open the file context menu by pressing and holding on the file name in the Search view.
  • Search inputs are automatically focused when an external keyboard is attached.
  • Several improvements to the "Follow link" tooltip that appears in source mode. The tooltip now more reliably opens the link, it also shows and hides more consistently.
  • Swipe down on notices to dismiss them.
  • Canvas: Added 'Duplicate' option to the node context menu.
  • The default toolbar now shows undo and redo at the start of the row.

No longer broken

  • Ensure the sidebar collapses after opening a file from the file explorer.
  • Minor fixes to the layout when sidebars are pinned on tablet.
  • Navigation bar now uses "+" to open a new tab, and a search icon for opening the quick switcher.
  • Graph view: Dragging force sliders will no longer cause sidebars to slide open.
  • "Split down" and "Split right" no longer appear in the context menu for the sidebar tabs.
  • Fixed appearance of sidebar if you close all tabs.
  • Fixed "File recovery" dialog not navigable on tablet devices.

iOS

  • App icon now adapts to home screen appearance.
  • Pressing and holding on links in Live Preview now shows the context menu.
  • Popovers can no longer overlap with OS elements such as the Dynamic Island and navigation bar.
  • Added Ctrl-Tab and Shift-Ctrl-Tab to switch between tabs on iPad.
  • Fixed toolbar placement on iPad when using Stage Manager or the floating keyboard.

Android

  • Pressing the 'back' button to exit the app now minimizes instead of quitting.
  • Fix app crash on font selection for Android 9 or earlier.
  • The app is now edge-to-edge, meaning the status bar and navigation bar will always fit in with the rest of the app.
  • Improved how the app layout adapts to the on-screen keyboard.
  • App now resizes correctly in split-screen mode.
  • Added missing 500 font weight for Inter.
  • Fixed opening links in Live Preview when the editor is not focused.
  • Fixed tapping checkboxes causing scroll position to be lost.
  • Fixed scrollbars missing in editor.

Introducing Bases, a new core plugin that lets you turn any set of notes into a powerful database. With Bases you can organize everything from projects to travel plans, reading lists, and more.

Bases lets you create custom views to visualize and interact with data in your vault. You can filter your notes by properties and create formulas to derive your own dynamic properties.

All the data in a base is backed by your local Markdown files and properties stored in YAML. To support Bases, we're introducing the .base file format and syntax.

Shiny new things

  • New Footnotes view core plugin adds a new sidebar tab that helps you manage footnotes for the current file without losing your place in the note.

Breaking changes

  • We have officially removed support for the properties tag, alias, cssclass in favor of tags, aliases and cssclasses. In addition, the values of these properties must be a list. If the current value is a text property, it will no longer be recognized by Obsidian. In the "Format converter" core plugin, there is a new option to fix any incorrectly formatted aliases, tags, and cssclasses in your vault. It will also migrate your old alias, tag, and cssclass properties to the new format.

Improvements

  • Property editor is now available inside page preview and Canvas.
  • Sync: Added new "Conflict resolution" setting. Choose how Obsidian handles file conflicts when syncing: Merge (default) or create conflict file.
  • Added button to open current page preview in a tab.
  • In the "Export to PDF" flow, the export button now receives initial keyboard focus.
  • Settings that show file or folder suggestions now use fuzzy search for better matching.
  • Whitespace is now correctly shown in Sync history and file recovery diffs.
  • Text selection contrast has been increased in dark mode.
  • Sync history view now includes a button to open affected files in File Recovery.
  • The Sync history view now shows the file name before and after it was renamed.
  • File Recovery now displays file extensions in titles and suggestions for non-Markdown files.
  • If the current tab is pinned, the "Close current tab" command will unpin the tab instead of closing it. Repeat the command to close the tab.
  • The "Move file to..." option remains available even when the Files plugin is disabled.
  • The "Save file" command now only appears in the Command Palette when a file is active.
  • Improvements to the display of an "unknown" tab. Added option to close all unknown tabs.
  • The Unique Note Prefix plugin now includes an "Add unique internal link" command for linking selected text.
  • When there is not enough room to display the whole path in the titlebar, the folders will be truncated before the file name.
  • Improved how the Markdown parser handles large tables and large callouts. These notes will take slightly longer to load, but then the tables and callouts will be rendered instantly.
  • Global search stops scanning your vault after it finds 100,000 results.
  • File Explorer: When the view is active, holding Command/Ctrl while navigating through files using the arrow keys will now open the file under the cursor.
  • File Explorer: Right-clicking in the empty space within file explorer will now include options to create a new base or a new canvas.
  • Added "Copy path" and "Copy relative path" to the link context menu.
  • Added "Toggle readable line length" command.
  • macOS: Apple Writing Tools now appear in the editor context menu. This requires installing the latest installer and enabling "Native menus" in settings.

No longer broken

  • Page preview no longer hides or switches to edit mode when the fold icon is clicked.
  • Fixed display of titles in page preview for RTL languages.
  • Improved how results in the command palette are sorted. By default, results are now sorted alphabetically. And more recently used commands will rank higher in the search results.
  • Editing a file no longer resets folded sections in the Outline view.
  • Pressing Shift-Enter inside a text property no longer creates an empty input.
  • Cursor placement is now accurate when navigating table cells after searching.
  • When using the "Obsidian frame" window frame style, the Window title will now properly update to show the currently open file in pop-out windows.
  • List numbering remains consistent when editing inside callouts.
  • PDF view no longer steals focus when opened in the background.
  • The "Export to PDF..." command no longer causes the screen to flash white while in dark mode. It also works on Linux when the app is set to adapt to system theme.
  • Strict line breaks now render properly in the first paragraph of a callout.
  • Outline view now highlights the correct line when the note includes footnotes.
  • Graph view: If you have saved filters, you'll no longer see an initial flash of nodes when you open the graph view. The filters will be applied immediately.
  • Markdown tables containing partially complete HTML now render correctly.
  • Tab history buttons, Web viewer history entries, bookmarked URLs, and ribbon items that open notes now respect modifier keys and honor the "Focus new tab" preference.
  • The Tags view now updates correctly when clearing the search filter.
  • Autocompleting a codeblock now properly accounts for indentation and if the cursor is inside a list item.
  • Improved the rendering of codeblocks inside quoteblocks.
  • Clicking a property search result now focuses the whole row and not the property name.
  • Canvas cards now support callouts without generating internal errors.
  • Canvas: Fixed bug where Canvas nodes would hide when trying to move 2 groups that are the same size and at the same exact position in the viewport.
  • Canvas now consistently copies selected notes when pressing Ctrl-C.
  • Canvas: Fixed "New group" not selecting the label text by default.

Developers

  • The installer has been updated to Electron 37.3.0.
  • idb has been updated to version 8.0.2.
  • yaml has been updated to version 2.7.0.
  • CSS properties added to document.body are now mirrored across all pop-out windows.
  • ButtonComponent now automatically shows a loading spinner if the onClick event is async.
  • You can now bypass the Web viewer and specify that a URL is opened in the user's default browser using window.open(url, '_external').
  • YAML aliasing has been disabled to prevent unintended references when assigning the same object to multiple keys.
  • Assigning the same object to multiple keys via processFrontmatter will no longer create a YAML alias.
  • Includes all new functionality and bug fixes up to Obsidian Desktop v1.9.10.
  • Fixed "File recovery" dialog not navigable on tablet devices.

No longer broken

  • Bases: Fixed "Duplicate view" creating two new views, instead of one.
  • Fixed interactive editor tooltips broken for some plugins.
  • Removed "Property" type from possible property types.

Includes all new functionality and bug fixes up to Obsidian Desktop v1.9.9.

Improvements

  • Added "Toggle readable line length" command.

No longer broken

  • Bases: Filter menu now use date input for comparing to date properties, and datetime input when comparing to datetime.
  • Bases: Fixed views getting duplicated when modifying an embedded Base.
  • Bases: Cards view's "Image property" now resolves relative links (./link/to/file.png).
  • Bases: Invalid arithmetic (e.g. "text" * 2) in formulas now reports an error.

Includes all new functionality and bug fixes up to Obsidian Desktop v1.9.8.

Improvements

  • Canvas: Added 'Duplicate' option to the node context menu.
  • Swipe down on notices to dismiss them.

No longer broken

  • The "Find..." search input now immediately receives keyboard focus. Pressing "return" on your keyboard now dismisses the keyboard.
  • "Split down" and "Split right" no longer appear in the context menu for the sidebar tabs.
  • Fixed appearance of sidebar if you close all tabs.

Improvements

  • Bases: New File#hasProperty() function. To check if a file has a property (regardless of value), use file.hasProperty("property"). In the filter menu, "exists" is no longer a valid operator. This was returning incomplete and incorrect results. Instead of "<property> exists", you will need to update your filters to say "file has property <property>".
  • Bases: "Tags" and "File tags" are now hidden from the filter menu. Prefer to use "file has tag " instead.
  • Bases: Added String#reverse and String#repeat functions.
  • Bases: Added support for list concatenation using + (e.g. list1 + list2).
  • Bases: Added "New base" option to the ribbon.
  • File Explorer: When the view is active, holding Command/Ctrl while navigating through files using the arrow keys will now open the file under the cursor.
  • File Explorer: Right-clicking in the file explorer will now include options to create a new base or a new canvas.
  • The menu item "Move file to..." is now available in all link context menus.
  • Added "Copy path" and "Copy relative path" to the link context menu.

No longer broken

  • Fixed bug where property menu would immediately close when selecting "Edit property..."
  • Search: Text searches will now look at the filenames of your .base files.
  • Page preview: Fixed hover detection, making it less likely to trigger a preview unexpectedly.
  • Bases: Fixed sort menu showing incorrect labels in sort selection dropdown.
  • Bases: Fixed text wrapping of text properties inside multiline tables.
  • Bases: Fixed appearance of Cards view embedded inside a callout.
  • Bases: Fixed issue with "Copy to clipboard" creating invalid links.
  • Bases: File tags are now rendered correctly, and duplicate entries are removed.
  • Canvas: Fixed bug where Canvas nodes would hide when trying to move 2 groups that are the same size and at the same exact position in the viewport.

Includes all new functionality and bug fixes up to Obsidian Desktop v1.9.7.

Improvements

  • Improved display of Bases toolbar menus.

No longer broken

  • Android: Fixed tapping checkboxes causing scroll position to be lost.
  • Android: Fixed scrollbars missing in editor.

Improvements

  • Bases: Autocomplete now includes formula properties.
  • Bases: Added file.backlinks.
  • Bases: Improved performance when rendering large images.
  • Bases: Cards view can now show images if the "image property" is a text property containing a path to an image, either relative to your vault root, or an absolute file:/// path (desktop only).
  • Bases: Added file() and Link.asFile(). You can now also access properties from a file reference.
  • Bases: Base code blocks will now have YAML syntax highlighting.
  • Bases: Improved display of formula errors.
  • Bases: Improved the organization of the toolbar items. View menu and Properties menu have been simplified.
  • Improved Markdown parser performance for files that contain many underscores (__).
  • Clicking a property search result now focuses the whole row and not the property name.
  • Sync: Added new "Conflict resolution" setting. Choose how Obsidian handles file conflicts when syncing: Merge (default) or create conflict file.

No longer broken

  • Fixed bug where creating a new formula would create an extra "Untitled" formula.
  • Bases: Fixed clicking on links in Cards view if the link uses an icon as its display.
  • Fixed interacting with Bases inside callouts
  • Bases: Fixed date comparison between two datetime values.
  • Bases: It is now possible to resize the last column in the base.
  • Bases: Fixed Card properties sometimes rendering empty properties as "â€."
  • Fixed page preview not working for Mermaid links.
  • Fixed properties fold state not always saving correctly when file is in edit mode.
  • Fixed display of titles in page preview for RTL languages.
  • Bases: Empty dates are now serialized as null in frontmatter. This behavior is more consistent with text properties.
  • Fixed text containing : getting rendered as a link in properties.
  • Fixed page preview immediately hiding when pressing the 'x' to remove an item from a list property.
  • Fixed "Download attachments for current file" command incorrectly replacing links for files with frontmatter.
  • Global search stops scanning your vault after it finds 100,000 results.
  • Sync: Fixed Bases getting deleted when syncing your vault with a device running Obsidian 1.8.10.
  • Canvas: Fix new Canvas nodes getting accidentally created when editing an embedded Base file.

Includes all new functionality and bug fixes up to Obsidian Desktop v1.9.6.

Improvements

  • Tablet: Search inputs are automatically focused when an external keyboard is attached.

No longer broken

  • Several improvements to the "Follow link" tooltip that appears in source mode. The tooltip now more reliably opens the link, it also shows and hides more consistently.
  • Bases: Fixed external links not working in Cards view.
  • Bases: Fixed result count not appearing on smaller devices.
  • Bases: Fixed cards not responding to "Card size" setting.
  • Android: Fixed opening links in Live Preview when the editor is not focused.

No longer broken

  • Bases: Fixed comparisons between dates and strings (e.g. date > "2025-07-18").
  • Bases: Fixed logical operators in formulas not working (a && b).
  • Bases: Improved detection of invalid formulas.
  • Bases: Fixed query builder in filters menu not always updating the operator correctly.
  • Bases: Improved layout of formula editor. Increased the initial height, and added a status indicator showing when the formula is invalid.
  • Bases: Fixed link() not working if URL has spaces.
  • Bases: The properties menu now filters according to the display name and the property name.
  • Bases: Fixed "Image property" sometimes not showing the selected value.
  • Bases: Fixed Cards view setting incorrect scroll position when navigating back in history.
  • Bases: Fixed filter menu showing the wrong input type when the selected property contains spaces.

Includes all new functionality and bug fixes up to Obsidian Desktop v1.9.5.

No longer broken

  • iOS: Long-pressing on links in Live Preview now shows the context menu.
  • Android: Pressing the 'back' button to exit the app now minimizes instead of quitting.

Shiny new things

  • Bases has a new formula editor. It includes syntax highlighting, autocomplete, and shows documentation about the current expression.

Improvements

  • The "Download attachments for current file" command now downloads attachments from file properties in addition to the note body.
  • Canvas: It's now possible to select a specific view for an embedded Base. Right-click and select "Pin view..."
  • Improved how the Markdown parser handles large tables and large callouts. These notes will take slightly longer to load, but then the tables and callouts will be rendered instantly.

Bases

  • Bases now remember your scroll position when navigating forward and backward in history.
  • Cards view can now display cards with no properties. Useful if you only want a cover image displayed.
  • Formula properties and file properties now display dates and datetimes according to your OS locale.
  • Checkboxes for non-interactive properties (formula properties or properties in Cards view) no longer have a hover effect
  • Added new commands: "Bases: Add item" and "Bases: Add view."
  • Added "Edit formula..." menu item when right-clicking in table header.
  • Added "Clear sort" menu item when right-clicking in table header.

Functions

  • Breaking change: String#icon() has been removed in favor of a new global function: icon().
  • New List#filter and List#map functions.
  • file.links now includes embeds.
  • link() now supports non-HTTP URLs.
  • Added support for date == datetime. When comparing a date and a datetime, the time component will be ignored.

No longer broken

  • Properties are now hidden inside inline embeds (i.e. ![[file]]).
  • Fixed a bug where clicking inside a MathJax block ($math$) would highlight the wrong selection.
  • Graph view: If you have saved filters, you'll no longer see an initial flash of nodes when you open the graph view. The filters will be applied immediately.
  • Bases: Fixed a few edge cases where a base not update when it comes into view, for example, inside a canvas card that is moved.
  • Bases: Sort should now be "stable". There were times when rows would move unexpected after editing a property. This should no longer happen.
  • Bases: Fixed table styles for taller row heights.
  • Bases: Fixed date and datetime properties not saving when input is cleared.

Includes all new functionality and bug fixes up to Obsidian Desktop v1.9.4.

Improvements

  • Improvements to the card layout on mobile.
  • The "+" button in the navbar now opens a new tab.

No longer broken

  • Scrubbing the timeline on an audio embed no longer triggers the sidebars opening.

Improvements

Bases

  • Cards: Added new "Card size" slider to view options.
  • Table: Added new "Row height" selection to view options.
  • Added new file.embeds property which returns a list of all embeds (i.e. ![[file]]) found in the file.
  • Boolean values now always render as a checkbox. The checkbox() function has been removed.
  • "Copy to clipboard" and "Export CSV" are now available for all view formats.
  • New image() function for rendering images inline.

No longer broken

  • Page preview no longer hides when interacting with a context menu inside it.
  • Fixed issue where properties would show as their assigned property type even if the underlying data is not compatible.
  • Fixed bug where "Export PDF" would only display the first page.

Bases

  • Fixed issue with Image property not working if file path contained any special characters (e.g. apostrophe).
  • View menu and Filter menu now scroll if there is not enough room on screen.
  • Fixed Cards view crashing when hiding all properties from view.
  • Disabling Bases plugin and re-enabling it no longer reports errors.
  • "New item" menu now automatically adds a property if there is a filter designating that the property is not empty.
  • Fixed bug where formulas would silently fail if the formula had trailing whitespace.
  • Links now display header or block ID if there is one.
  • Cards: Fixed links not working on click.
  • Improved layout of the results menu.
  • Files created from the toolbar now respect the default file location.
  • Date.relative() is now sorted according to time.

Includes all new functionality and bug fixes up to Obsidian Desktop v1.9.3.

  • Graph view: Dragging force sliders will no longer cause sidebars to slide open.

Improvements

  • Changes to cssclasses, aliases, and tags properties:
    • Invalid values will no longer be hidden in Bases and the property editor.
    • String values are now accepted as valid values for these properties. For example: tags: 'my-tag' is no longer marked as invalid. Invalid property values, such as tags: 'tag1, tag2' will now be visible in the property editor and marked as invalid.
    • In the "Format converter" core plugin, there is a new option to fix any incorrectly formatted aliases, tags, and cssclasses in your vault. It will also migrate your old alias, tag, and cssclass properties to the new format.
  • Property editor is now available inside page preview and Canvas.
  • Right-clicking a folder in the file titlebar now shows the folder menu.
  • Improvements to the display of an "unknown" tab. Added option to close all unknown tabs.
  • Page preview: Added button to open preview in current tab.
  • When there is not enough room to display the whole path in the titlebar, the folders will be truncated before the file name.

Bases

  • Added a new "Cards" view layout. Display your files in a grid, and optionally assign a cover image to each file.
  • Added "New item" toolbar button to automatically create a file that matches the filters of the current view.
  • Added "Sort" toolbar menu. Views can now be sorted by properties not visible in the current view.
  • Added a new "duration" type. You can use this to display the difference between dates (e.g. note.release_date - today()).
  • Added Date#relative() to see when a date was relative to now.
  • date() now handles timestamps in the format YYYYMMDD and YYYYMMDDHHmm.
  • Formulas: Fixed bug where multiple divisions would not work (e.g. 10 / 5 / 2).
  • Formulas now support inequality comparisons with strings (e.g. date > "YYYY-MM-DD")
  • Formulas: link() can now be used with external links.
  • Formulas: Fixed hasLink() not resolving links with subpaths (e.g. file#heading)
  • Infinity is now rendered as ∞.
  • Fixed issues with reading and writing properties when they have different cases in different files (e.g. Property vs property).
  • Bases now respects "Excluded files" setting.
  • Table: Fixed sort arrows appearing in the wrong direction.
  • Table: Improved support for RTL languages.
  • Table: Improved sort behavior of links, URLs, durations, and dates.
  • Table: Right-click on the file name now shows "Delete file" menu option.
  • group_by has been renamed to groupBy. This is still a placeholder for grouping functionality that will be added later.

No longer broken

  • Search: Fixed "tag:" results not appearing if the "tags" property has any capital letters in the property name (e.g. "Tags")
  • PDF: Fixed regression in PDF view where some text selections cannot be copied.
  • Fixed regression where property editor would display unknown property values as "text" properties.
  • Fixed bug where closing a tab while hovering over the "link" icon would not cause the link highlight to get removed.
  • Canvas: Fixed "New group" not selecting the label text by default.
  • "Export to PDF" no longer causes the screen to briefly flash white in dark mode.
  • Improved the rendering of codeblocks inside quoteblocks.

Includes all new functionality and bug fixes up to Obsidian Desktop v1.9.2.

  • We've added the "Forward" button back to the bottom navigation bar.
  • Android: Fix app crash on font selection for Android 9 or earlier.