This release has major breaking changes to Bases. We have updated the Bases formula syntax and the file format to make formulas and filters more expressive and powerful.
If you use Obsidian on multiple devices, we recommend upgrading all devices at the same time to avoid issues syncing base files with different syntax.
The new formula syntax is more flexible, easier to use, and better suited to extensibility. For those familiar with Javascript, the new syntax should feel familiar. New functions and types are described in our docs.
Some highlights include:
contains(file.name, "Books")
, the formula would be file.name.contains("Books")
.property.split(' ').sort()[0].lower()
note["Property Name"]
link
, date
and list
for converting a value to a different type.file.path
, file.links
(a list of all internal links in this file), and file.tags
(a list of all tags in this file, including frontmatter).dateBefore(date1, date2)
is now date1 < date2
.dateModify(date, string)
, you can use date + string
, for example, date("01/01/2025") + "1 year"
For help migrating existing Bases to the new syntax, take a look at the migration guide.
The Bases (.base
) file format has been updated for greater extensibility. There is a new properties
section for all property configurations, such as displayName
. Learn about the full syntax in our docs.
#parent/child
)