Skip to content

v1.1.0 — parseWithMetadata + perf fixes

Choose a tag to compare

@clintecker clintecker released this 16 Jul 15:00
· 99 commits to main since this release

Additive, output-identical refinements on top of 1.0.0.

New

  • MermaidParser.parseWithMetadata(_:) — parse and get the extracted YAML front-matter (title, accTitle, accDescr) back in one call as (diagram, DiagramMetadata), avoiding a second scan over the source.

Performance (rendered output byte-identical)

Shared-pipeline fixes, verified against the draw-vs-scene conformance ratchet:

  • text measurement is memoized — each label is typeset once, not at both layout and draw;
  • the render cache key hashes the source once and keys by reference instead of rebuilding an interpolated string every call.

The one profiled optimization that didn't pan out — an 8-bit sRGB render backing store — measured ~2× slower than the f16 default on Apple silicon and was rejected (documented negative result).

Docs

A full performance memo (methodology, per-type numbers, where the time goes) at docs/notes/performance.md, a terminal-rendering-capabilities note, and the coverage audit reconciled against 1.0.

Site: https://2389-research.github.io/MermaidKit/ · Full changelog in CHANGELOG.md.