From dc06395e73fd97072d58ed01a50c519224c6e235 Mon Sep 17 00:00:00 2001 From: Agus Zubiaga Date: Fri, 8 May 2026 13:09:05 -0300 Subject: [PATCH] markdown: Bump mermaid-rs-renderer to fix flowchart parser panic (#56199) Self-Review Checklist: - [x] I've reviewed my own diff for quality, security, and reliability - [x] Unsafe blocks (if any) have justifying comments - [x] The content is consistent with the [UI/UX checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) - [x] Tests cover the new/changed behavior - [x] Performance impact has been considered and is acceptable Bumps `mermaid-rs-renderer` to `782b89a7da3f0e91e51f98d00a93acba679be6fb`, which picks up [1jehuang/mermaid-rs-renderer#95](https://github.com/1jehuang/mermaid-rs-renderer/pull/95), fixing a panic with partially typed mermaid. Release Notes: - Fixed a crash in markdown preview when a mermaid flowchart contained a partially-typed parallelogram node like `A[/]` or `A[\]`. --- Cargo.lock | 51 +++++++++++++++------------------------------------ Cargo.toml | 2 +- 2 files changed, 16 insertions(+), 37 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ea52978db69d453ee8dc17ecf59af47c1780e154..a2b69092b00fcc9b335d260847093523430af136 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3892,7 +3892,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c5c9868e64aa6c5410629a83450e142c80e721c727a5bc0fb18107af6c2d66b" dependencies = [ "bitflags 2.10.0", - "fontdb 0.23.0", + "fontdb", "harfrust", "linebender_resource_handle", "log", @@ -6503,20 +6503,6 @@ dependencies = [ "roxmltree", ] -[[package]] -name = "fontdb" -version = "0.16.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0299020c3ef3f60f526a4f64ab4a3d4ce116b1acbf24cdd22da0068e5d81dc3" -dependencies = [ - "fontconfig-parser", - "log", - "memmap2", - "slotmap", - "tinyvec", - "ttf-parser 0.20.0", -] - [[package]] name = "fontdb" version = "0.23.0" @@ -6528,7 +6514,7 @@ dependencies = [ "memmap2", "slotmap", "tinyvec", - "ttf-parser 0.25.1", + "ttf-parser", ] [[package]] @@ -7738,7 +7724,7 @@ dependencies = [ "sum_tree", "taffy", "thiserror 2.0.17", - "ttf-parser 0.25.1", + "ttf-parser", "unicode-segmentation", "url", "usvg", @@ -8887,7 +8873,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" dependencies = [ "equivalent", - "hashbrown 0.16.1", + "hashbrown 0.15.5", "serde", "serde_core", ] @@ -9257,13 +9243,12 @@ dependencies = [ [[package]] name = "json5" -version = "0.4.1" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96b0db21af676c1ce64250b5f40f3ce2cf27e4e47cb91ed91eb6fe9350b430c1" +checksum = "733a844dbd6fef128e98cb4487b887cb55454d92cd9994b1bafe004fabbe670c" dependencies = [ - "pest", - "pest_derive", "serde", + "ucd-trie", ] [[package]] @@ -10685,18 +10670,18 @@ dependencies = [ [[package]] name = "mermaid-rs-renderer" -version = "0.2.0" -source = "git+https://github.com/zed-industries/mermaid-rs-renderer?rev=374db9ead5426697c6c2111151d9f246899bc638#374db9ead5426697c6c2111151d9f246899bc638" +version = "0.2.2" +source = "git+https://github.com/zed-industries/mermaid-rs-renderer?rev=782b89a7da3f0e91e51f98d00a93acba679be6fb#782b89a7da3f0e91e51f98d00a93acba679be6fb" dependencies = [ "anyhow", - "fontdb 0.16.2", + "fontdb", "json5", "once_cell", "regex", "serde", "serde_json", "thiserror 2.0.17", - "ttf-parser 0.20.0", + "ttf-parser", ] [[package]] @@ -11778,9 +11763,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.21.3" +version = "1.21.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" [[package]] name = "once_cell_polyfill" @@ -15451,7 +15436,7 @@ dependencies = [ "core_maths", "log", "smallvec", - "ttf-parser 0.25.1", + "ttf-parser", "unicode-bidi-mirroring", "unicode-ccc", "unicode-properties", @@ -18952,12 +18937,6 @@ version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" -[[package]] -name = "ttf-parser" -version = "0.20.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17f77d76d837a7830fe1d4f12b7b4ba4192c1888001c7164257e4bc6d21d96b4" - [[package]] name = "ttf-parser" version = "0.25.1" @@ -19306,7 +19285,7 @@ dependencies = [ "base64 0.22.1", "data-url", "flate2", - "fontdb 0.23.0", + "fontdb", "imagesize", "kurbo", "log", diff --git a/Cargo.toml b/Cargo.toml index 47b8eddf1486e6a4fee67a62b2d608dca32337f5..6f172245491fedecdfa4e2f282d8e1b8006d3ee2 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -388,7 +388,7 @@ markdown_preview = { path = "crates/markdown_preview" } svg_preview = { path = "crates/svg_preview" } media = { path = "crates/media" } menu = { path = "crates/menu" } -mermaid-rs-renderer = { git = "https://github.com/zed-industries/mermaid-rs-renderer", rev = "374db9ead5426697c6c2111151d9f246899bc638", default-features = false } +mermaid-rs-renderer = { git = "https://github.com/zed-industries/mermaid-rs-renderer", rev = "782b89a7da3f0e91e51f98d00a93acba679be6fb", default-features = false } migrator = { path = "crates/migrator" } mistral = { path = "crates/mistral" } multi_buffer = { path = "crates/multi_buffer" }