Skip to content

Releases: michaelpporter/breadcrumbs

4.14.3

Choose a tag to compare

@github-actions github-actions released this 07 Jul 00:16

Bug Fixes

  • typed_link (1.12-compat) — inline Dataview properties are recognized again for users still on Obsidian < 1.13: paren/bracket wrappers ((down:: [[Note]]), [down:: [[Note]]]), blockquoted fields (> [up:: [[Note]]]), and wrapped fields appearing mid-sentence rather than only at the start of a line (... is a child of (up:: [[Note]])). Promotes the 4.14.3-beta.1/beta.2 backport to stable (#724).

Full Changelog: 4.14.2...4.14.3

4.14.3-beta.2

4.14.3-beta.2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 06 Jul 17:46
release: 4.14.3-beta.2

4.21.1

Choose a tag to compare

@github-actions github-actions released this 05 Jul 09:45

Features

  • Markmap toolbartype: markmap codeblocks now show a zoom/fit toolbar over the mind map, so you can zoom in, zoom out, and re-fit the whole tree without scrolling or reaching for keyboard shortcuts.

Build

  • Bumped JS dependencies (9 updates).

Full changelog: 4.21.0...4.21.1

4.14.3-beta.1

4.14.3-beta.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 05 Jul 10:04

Bug Fixes

  • typed_link (1.12-compat) — inline Dataview properties wrapped in parentheses or brackets (e.g. (down:: [[Note]]), [down:: [[Note]]]) are recognized again. Backport of the 4.15.1 fix for users still on Obsidian < 1.13 (#724).

This is a beta prerelease from branch fix/724-inline-dataview-1.12-compat (PR #727) — install via BRAT to test before it merges.

Full Changelog: 4.14.2...4.14.3-beta.1

4.21.0

Choose a tag to compare

@github-actions github-actions released this 30 Jun 09:21

Features

  • Edge audit — Ignore paths — the edge audit report now has an Ignore paths setting (Settings → Commands → Edge audit). Notes inside a listed folder or path are left out of the whole report — orphans, dangling edges, and the field checks alike. Matching uses folder semantics (one path per line; a note matches if its path equals, or is inside, a listed path), so Templates covers everything under that folder. It's report-only: unlike the global Excluded folders setting, ignored notes still get their breadcrumb edges in the graph — they just don't clutter the audit.

Full changelog: 4.20.0...4.21.0

4.20.0

Choose a tag to compare

@github-actions github-actions released this 29 Jun 23:16

Features

  • Generate edge audit report — a new command that walks your graph and writes a read-only Markdown report to a note in your vault (default Breadcrumbs Edge Audit.md; re-running overwrites it). It's purely diagnostic — it never rewrites your frontmatter. The report surfaces:

    • Unused fields — edge fields defined in settings that produce no edges.
    • Implied-only fields — fields only ever derived as implied edges, never explicit (expected for the reverse half of a transitive pair like down/prev).
    • Mergeable fields — two or more fields whose explicit edges are strictly identical, so they're interchangeable.
    • Orphan notes — notes with no breadcrumb edges in or out.
    • Dangling edges — edges pointing at a note that doesn't exist.

    Orphans and dangling targets render as wikilinks for click-through. Configure the output path under Settings → Commands → Edge audit.

Full changelog: 4.19.4...4.20.0

4.19.4

Choose a tag to compare

@github-actions github-actions released this 28 Jun 00:56

Security

  • Pinned undici to >=6.27.0 to clear an advisory flagged by the Obsidian community scanner. It was pulled in transitively (markmap-libmarkmap-html-parsercheerioundici@6.26.0) and is tree-shaken out of the shipped main.js, so there was no runtime exposure — but the lockfile reference still had to be moved out of the vulnerable range.

Full changelog: 4.19.3...4.19.4

4.19.3

Choose a tag to compare

@github-actions github-actions released this 27 Jun 20:45

A small quality-of-life release for date-note (and deeply-nested) trails.

Changed

  • The trail view's grid now defaults to the longest path selection. Date notes link up to every ancestor level at once (year, quarter, month, week — all directly), so the old all default drew every redundant path and the trail rendered as a cluttered fan of repeated ancestors. longest keeps only the deepest chain — 2026 → 2026-Q2 → 2026-06 → 2026-W26 — so the trail reads as a clean line.
  • Existing trails keep their saved selection — flip it yourself via the trail's selection dropdown (the middle control) if you want the cleaner view.

Full changelog: 4.19.2...4.19.3

4.19.2

Choose a tag to compare

@github-actions github-actions released this 27 Jun 19:41

A maintenance release — two user-facing bug fixes, plus six internal refactors that consolidate duplicated logic into small, tested seams (no behaviour change).

🐛 Fixed

  • The tree view's "Merge fields" toggle was inverted — it separated fields when set to merge, and vice versa. It now matches its label (and the trail-view / codeblock behaviour). If you'd used it before, it will feel flipped from what you're used to — that's the fix.
  • Renaming or deleting an edge field now updates the Dataview builder's default field. Previously the rename/delete cascade skipped the Dataview source's default field, so it kept pointing at the old (now-invalid) field name until you fixed it by hand.

🧹 Changed (internal — behaviour-preserving)

  • The seven explicit edge builders that resolve a single field from frontmatter now share one read_edge_field helper, and invalid-field errors consistently name the BC-…-field key.
  • The typed_link builder's inline-field parsing is now a pure, unit-tested parse_inline_field helper (a redundant dedup layer was removed).
  • The Tree, Matrix, and Trail views share one useViewSettings helper for their settings mirror + loop-safe writeback. As a side effect, the views no longer write settings to disk on mount (only on an actual edit).
  • Settings-panel callbacks route their post-change side effects through one commitSettings(policy) helper instead of ~140 callbacks each hand-pairing save with rebuild/refresh.
  • The WASM graph traversal is reached through a small TS facade (traverse / with_traversal / sort_traversal); walk_to_roots was extracted from the tree view. Both are now unit-tested.
  • The free-on-change/unmount lifecycle for derived WASM objects is owned by one useOwned rune helper instead of an identical effect hand-copied across 8 view components.

Full changelog: 4.19.1...4.19.2

4.19.1

Choose a tag to compare

@github-actions github-actions released this 18 Jun 12:00

Features

  • Export to canvas — a new command that lays out a note's neighbourhood as a native JSON Canvas (.canvas). Pick which edge field-groups to follow and the depth, choose left-to-right or top-to-bottom layout, and the canvas is built as a tidy tree with each parent centred over its children. Defaults are configurable under Settings → Commands → Create canvas; re-exporting an existing canvas prompts to overwrite or create a new one.
  • Jump to neighbour (picker) — a fuzzy-suggest command listing all of the active note's neighbours (grouped by field) to jump to, complementing the existing "jump to first neighbour" commands.
  • Per-field jump commands — "Jump to first neighbour by field:<field>" is now registered for every edge field, so directions like up/down/next/prev can each be bound to their own hotkey.

Fixed

  • Johnny.Decimal sibling edges now work at the category level (e.g. 1112 under area 10), not just for delimited items (11.0111.02). The sibling grouping now shares the same parent resolution as the up-edge builder.

Full changelog: 4.19.0...4.19.1