0.5.0 - 2026-05-19
Release Notes
This release is mostly about rendering fidelity and the render pipeline. If you render diagrams to SVG, PNG, JPG, or PDF, the main difference is fewer label, sizing, and viewport mismatches against Mermaid 11.12.3. The public semantic JSON API stays available, while render-only paths now avoid more of the old JSON round trip.
Added
- Sequence diagrams can now measure and render KaTeX/math labels in actors, messages, notes, boxes, and block labels when the Node KaTeX backend is available.
- Added release and parity tooling for maintainers: stricter SVG parity verification, root viewport audits, override growth checks, and root-delta reports across diagram families.
- Added benchmark and migration notes for the typed render-model work, including current performance baselines for render-heavy paths.
Changed
- Render-only flows now use typed render models across more diagram families instead of repeatedly converting through semantic JSON. This covers Sequence, Kanban, Gantt, Pie, Packet, Timeline, Journey, Requirement, Sankey, Radar, Info, ZenUML, QuadrantChart, GitGraph, Treemap, Block, and ER.
- Flowchart, Sequence, GitGraph, State, Mindmap, Requirement, Journey, Timeline, ER, Architecture, and Class rendering now match Mermaid 11.12.3 more closely for HTML labels, SVG text, icons, titles, actor/message/note sizing, styled labels, and root viewports.
- Render config parsing is shared across layout and SVG rendering, including numeric strings and CSS
pxvalues. - Class, Sequence, Architecture, and shared text rendering code were split into smaller modules. This should make future parity fixes easier without changing the public API.
- Hot render paths avoid several unnecessary clones and temporary allocations, especially in Sequence, Flowchart, Class, and typed render-model dispatch.
Fixed
- Fixed Flowchart HTML label measurement for repeated short glyph runs, multi-hyphen labels, icon labels, custom FontAwesome fallbacks, subgraph titles, fork/join shapes, and numeric spacing config.
- Fixed GitGraph branch, commit, tag, title, theme-font, and seeded auto-id behavior so generated SVGs line up more closely with Mermaid's parse-before-render pipeline.
- Fixed Sequence title, actor, message, note, block, line-break, font-size, and math-label sizing cases that could produce incorrect output bounds.
- Fixed State, Mindmap, ER, Journey, Requirement, Timeline, and Architecture sizing edge cases that affected exported SVG viewport dimensions.
- Removed many production
unwrapandexpectpaths from parser, layout, and render code and replaced them with explicit error handling or safer control flow.
Removed
- Removed the obsolete
parse_diagram_for_render_synccompatibility API and its async alias. Useparse_diagram_for_render_model_syncfor render-optimized parsing, orparse_diagram_syncwhen you need semantic JSON. - Removed old Mindmap and State JSON-for-render helper paths.
- Removed the stale
merman-render/flowchart_root_packexperimental debug feature. - Removed the generated Class root-viewport table after typed calibration covered those cases.
Install merman-cli 0.5.0
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/Latias94/merman/releases/download/v0.5.0/merman-cli-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/Latias94/merman/releases/download/v0.5.0/merman-cli-installer.ps1 | iex"Download merman-cli 0.5.0
| File | Platform | Checksum |
|---|---|---|
| merman-cli-aarch64-apple-darwin.tar.xz | Apple Silicon macOS | checksum |
| merman-cli-x86_64-apple-darwin.tar.xz | Intel macOS | checksum |
| merman-cli-x86_64-pc-windows-msvc.zip | x64 Windows | checksum |
| merman-cli-x86_64-unknown-linux-gnu.tar.xz | x64 Linux | checksum |