@mermanjs/node 0.8.0-alpha.5 → 0.8.0-alpha.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Samuel Roeca
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2022 Mogami Shinichi
4
+ Copyright (c) 2025 Mikael Hugo
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ of this software and associated documentation files (the "Software"), to deal
8
+ in the Software without restriction, including without limitation the rights
9
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ copies of the Software, and to permit persons to whom the Software is
11
+ furnished to do so, subject to the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be included in all
14
+ copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
+ SOFTWARE.
@@ -19,45 +19,57 @@ Components: `beautiful-mermaid`, `mermaid`, `mermaid-ascii`, `mermaid-rs-rendere
19
19
 
20
20
  ### `cli-default`
21
21
 
22
- The default CLI feature closure, including ELK layout and RaTeX math/font support.
22
+ The default CLI feature closure including ELK and RaTeX math/font support.
23
23
 
24
- Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
24
+ Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `non-layered-tidy-tree-layout`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
25
+
26
+ ### `cli-release`
27
+
28
+ The published complete CLI release closure, including explicit ELK and RaTeX math/font support.
29
+
30
+ Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `non-layered-tidy-tree-layout`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
25
31
 
26
32
  ### `elk-render`
27
33
 
28
34
  Render artifacts that include the source-translated Eclipse ELK layered implementation.
29
35
 
30
- Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
36
+ Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `non-layered-tidy-tree-layout`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
31
37
 
32
38
  ### `playground-reference`
33
39
 
34
40
  Third-party projects loaded by or used as behavioral evidence for the deployed Playground.
35
41
 
36
- Components: `d3-shape`, `dompurify`, `elkjs`, `mermaid`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
42
+ Components: `d3-shape`, `dompurify`, `elkjs`, `mermaid`, `non-layered-tidy-tree-layout`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
37
43
 
38
44
  ### `ratex-render`
39
45
 
40
46
  Render artifacts that link RaTeX and embed the KaTeX TrueType font payload.
41
47
 
42
- Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
48
+ Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `non-layered-tidy-tree-layout`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
43
49
 
44
50
  ### `rust-render-base`
45
51
 
46
52
  Headless parser and renderer artifacts without optional ELK, RaTeX, ASCII, or Typst transport features.
47
53
 
48
- Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `fmin`, `graphlib`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
54
+ Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `fmin`, `graphlib`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `non-layered-tidy-tree-layout`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
49
55
 
50
56
  ### `source-archive`
51
57
 
52
58
  Conservative repository source archive inventory covering every translated, copied, linked, embedded, fixture, and behavior-reference component recorded here.
53
59
 
54
- Components: `beautiful-mermaid`, `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `mermaid-ascii`, `mermaid-rs-renderer`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `wasm-minimal-protocol`, `zenuml-core`.
60
+ Components: `beautiful-mermaid`, `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `mermaid-ascii`, `mermaid-rs-renderer`, `monaqa-tree-sitter-mermaid`, `non-layered-tidy-tree-layout`, `pappasam-tree-sitter-mermaid`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `singularity-tree-sitter-mermaid`, `tree-sitter-generator`, `tree-sitter-mermaid-mermaid-12-new-families`, `tree-sitter-mermaid-mermaid-baseline`, `tree-sitter-mermaid-zenuml-baseline`, `venn-js`, `wasm-minimal-protocol`, `zenuml-core`.
61
+
62
+ ### `tree-sitter-mermaid-source`
63
+
64
+ The independently versioned Tree-sitter Mermaid language source package and its pinned syntax and compatibility references.
65
+
66
+ Components: `monaqa-tree-sitter-mermaid`, `pappasam-tree-sitter-mermaid`, `singularity-tree-sitter-mermaid`, `tree-sitter-generator`, `tree-sitter-mermaid-mermaid-12-new-families`, `tree-sitter-mermaid-mermaid-baseline`, `tree-sitter-mermaid-zenuml-baseline`.
55
67
 
56
68
  ### `typst-publish`
57
69
 
58
- The published Typst WASM profile, including ELK and wasm-minimal-protocol but excluding RaTeX.
70
+ The Typst WASM publish profile, including ELK and wasm-minimal-protocol but excluding RaTeX.
59
71
 
60
- Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `wasm-minimal-protocol`, `zenuml-core`.
72
+ Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `non-layered-tidy-tree-layout`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `wasm-minimal-protocol`, `zenuml-core`.
61
73
 
62
74
  ### `web-analysis`
63
75
 
@@ -81,13 +93,13 @@ Components: `dompurify`, `mermaid`, `sanitize-url`, `zenuml-core`.
81
93
 
82
94
  The published complete browser SVG renderer, including Cytoscape, ELK, RaTeX, and the embedded KaTeX font payload.
83
95
 
84
- Components: `beautiful-mermaid`, `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `mermaid-ascii`, `mermaid-rs-renderer`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
96
+ Components: `beautiful-mermaid`, `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `mermaid-ascii`, `mermaid-rs-renderer`, `non-layered-tidy-tree-layout`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
85
97
 
86
98
  ### `web-render`
87
99
 
88
100
  Published complete browser SVG renderer with Cytoscape, ELK, RaTeX, and the embedded KaTeX font payload, but without analysis, ASCII, or editor APIs.
89
101
 
90
- Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
102
+ Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `non-layered-tidy-tree-layout`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
91
103
 
92
104
  ## Components
93
105
 
@@ -118,7 +130,7 @@ Manatee contains Rust translations and adaptations of CoSE layout behavior from
118
130
  - Source path: `.`
119
131
  - Relationship: `modified`, `translated`
120
132
  - License expression: `MIT`
121
- - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
133
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
122
134
  - Local evidence: `crates/manatee`
123
135
  - Legal files:
124
136
  - [`THIRD_PARTY_LICENSES/cose-base-v1/LICENSE`](THIRD_PARTY_LICENSES/cose-base-v1/LICENSE) (license, SHA-256 `5fb3cf4a14c3c5af6e473a192df8bca10c77754e3a0c6492c79fb92a76a5478a`)
@@ -134,7 +146,7 @@ Manatee contains Rust translations and adaptations of the newer CoSE base behavi
134
146
  - Source path: `.`
135
147
  - Relationship: `modified`, `translated`
136
148
  - License expression: `MIT`
137
- - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
149
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
138
150
  - Local evidence: `crates/manatee`
139
151
  - Legal files:
140
152
  - [`THIRD_PARTY_LICENSES/cose-base-v2/LICENSE`](THIRD_PARTY_LICENSES/cose-base-v2/LICENSE) (license, SHA-256 `5fb3cf4a14c3c5af6e473a192df8bca10c77754e3a0c6492c79fb92a76a5478a`)
@@ -150,7 +162,7 @@ Architecture layout and styling use source-backed Cytoscape behavior and default
150
162
  - Source path: `.`
151
163
  - Relationship: `behavior-reference`, `translated`
152
164
  - License expression: `MIT`
153
- - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
165
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
154
166
  - Local evidence: `crates/manatee`, `crates/merman-render/src/architecture.rs`
155
167
  - Legal files:
156
168
  - [`THIRD_PARTY_LICENSES/cytoscape/LICENSE`](THIRD_PARTY_LICENSES/cytoscape/LICENSE) (license, SHA-256 `eb319c6e6f233607f71e8e2f450391751883cfc0eeb3ca7ef574c13d1d9c2203`)
@@ -166,7 +178,7 @@ Manatee includes source-backed CoSE-Bilkent layout behavior translated to Rust.
166
178
  - Source path: `.`
167
179
  - Relationship: `modified`, `translated`
168
180
  - License expression: `MIT`
169
- - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
181
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
170
182
  - Local evidence: `crates/manatee`
171
183
  - Legal files:
172
184
  - [`THIRD_PARTY_LICENSES/cytoscape-cose-bilkent/LICENSE`](THIRD_PARTY_LICENSES/cytoscape-cose-bilkent/LICENSE) (license, SHA-256 `440fc58a56a12814e417d2b341da89b050da052dc75bdb235607d37ec5fe74ef`)
@@ -182,7 +194,7 @@ The headless Architecture layout is a modified Rust implementation of FCoSE beha
182
194
  - Source path: `.`
183
195
  - Relationship: `modified`, `translated`
184
196
  - License expression: `MIT`
185
- - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
197
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
186
198
  - Local evidence: `crates/manatee`, `crates/merman-render/src/architecture.rs`
187
199
  - Legal files:
188
200
  - [`THIRD_PARTY_LICENSES/cytoscape-fcose/LICENSE`](THIRD_PARTY_LICENSES/cytoscape-fcose/LICENSE) (license, SHA-256 `2837634f403949215760fcdd2fa1ed0c64875d02099ecc8318c704b852f1421d`)
@@ -198,7 +210,7 @@ The SVG parity layer translates D3 curve algorithms, including basis, natural, s
198
210
  - Source path: `src/curve`
199
211
  - Relationship: `modified`, `translated`
200
212
  - License expression: `ISC`
201
- - Artifact scopes: `cli-default`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
213
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
202
214
  - Local evidence: `crates/merman-render/src/svg/parity/curve.rs`
203
215
  - Legal files:
204
216
  - [`THIRD_PARTY_LICENSES/d3-shape/LICENSE`](THIRD_PARTY_LICENSES/d3-shape/LICENSE) (license, SHA-256 `faa682e3e430941f958d26180458f5934a62f58dac4d70ccdd15608c15d0f884`)
@@ -214,7 +226,7 @@ Dugong is a modified Rust translation of Dagre's directed graph layout pipeline.
214
226
  - Source path: `lib`
215
227
  - Relationship: `modified`, `translated`
216
228
  - License expression: `MIT`
217
- - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
229
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
218
230
  - Local evidence: `crates/dugong`
219
231
  - Legal files:
220
232
  - [`THIRD_PARTY_LICENSES/dagre/LICENSE`](THIRD_PARTY_LICENSES/dagre/LICENSE) (license, SHA-256 `6a349742a6cb219d5a2fc8d0844f6d89a6efc62e20c664450d884fc7ff2d6015`)
@@ -223,31 +235,31 @@ Dugong is a modified Rust translation of Dagre's directed graph layout pipeline.
223
235
 
224
236
  Merman selects DOMPurify's Apache-2.0 option for generated sanitizer defaults; the exact upstream Apache-2.0 license file is preserved.
225
237
 
226
- - Version: `3.4.13`
238
+ - Version: `3.4.15`
227
239
  - Source: <https://github.com/cure53/DOMPurify.git>
228
- - Source ref: `3.4.13`
229
- - Source commit: `3067f774676975de12306effd6db6ad7a9a8c17f`
240
+ - Source ref: `3.4.15`
241
+ - Source commit: `1d7460c4f8a27be825c11b1c9d346d79db32c1e5`
230
242
  - Source path: `.`
231
243
  - Relationship: `generated`, `translated`
232
244
  - License expression: `(Apache-2.0 OR MPL-2.0)`
233
245
  - Selected license path: `Apache-2.0`
234
- - Artifact scopes: `cli-default`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-analysis`, `web-ascii`, `web-editor`, `web-full`, `web-render`
246
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-analysis`, `web-ascii`, `web-editor`, `web-full`, `web-render`
235
247
  - Local evidence: `crates/merman-core/src/generated/dompurify_defaults.rs`
236
248
  - Legal files:
237
249
  - [`THIRD_PARTY_LICENSES/dompurify/LICENSE`](THIRD_PARTY_LICENSES/dompurify/LICENSE) (license, SHA-256 `cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30`)
238
250
 
239
251
  ### Eclipse Layout Kernel (`eclipse-elk`)
240
252
 
241
- The merman-elk-layered crate contains a modified Rust source translation of Eclipse ELK layered algorithms under EPL-2.0.
253
+ The merman-elk-layered crate contains modified Rust source translations of Eclipse ELK layered, Box, Force, Stress, Mr. Tree, Radial, Rectangle Packing, and SPOrE overlap-removal algorithms, including common and core layout utilities, under EPL-2.0.
242
254
 
243
255
  - Version: `0.9.1`
244
256
  - Source: <https://github.com/eclipse-elk/elk.git>
245
257
  - Source ref: `v0.9.1`
246
258
  - Source commit: `62d5909f96fad541bc101ad52dabaece6b7eab7e`
247
- - Source path: `plugins/org.eclipse.elk.alg.layered`
259
+ - Source path: `plugins`
248
260
  - Relationship: `modified`, `translated`
249
261
  - License expression: `EPL-2.0`
250
- - Artifact scopes: `cli-default`, `elk-render`, `source-archive`, `typst-publish`, `web-full`, `web-render`
262
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `source-archive`, `typst-publish`, `web-full`, `web-render`
251
263
  - Local evidence: `crates/merman-elk-layered`, `crates/merman-layout-elk`
252
264
  - Legal files:
253
265
  - [`THIRD_PARTY_LICENSES/eclipse-elk/LICENSE.md`](THIRD_PARTY_LICENSES/eclipse-elk/LICENSE.md) (license, SHA-256 `89591d4578fb1ebd91501312a3d25f021bd865a2e436641c1cf7b1bc7e3c1617`)
@@ -263,7 +275,7 @@ Mermaid's ELK adapter behavior is compared against this JavaScript distribution,
263
275
  - Source path: `.`
264
276
  - Relationship: `behavior-reference`
265
277
  - License expression: `EPL-2.0`
266
- - Artifact scopes: `cli-default`, `elk-render`, `playground-reference`, `source-archive`, `typst-publish`, `web-full`, `web-render`
278
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `playground-reference`, `source-archive`, `typst-publish`, `web-full`, `web-render`
267
279
  - Local evidence: `crates/merman-layout-elk`, `playground`
268
280
  - Legal files:
269
281
  - [`THIRD_PARTY_LICENSES/elkjs/LICENSE.md`](THIRD_PARTY_LICENSES/elkjs/LICENSE.md) (license, SHA-256 `89591d4578fb1ebd91501312a3d25f021bd865a2e436641c1cf7b1bc7e3c1617`)
@@ -279,7 +291,7 @@ The Venn layout kernel translates the fmin Nelder-Mead and conjugate-gradient op
279
291
  - Source path: `.`
280
292
  - Relationship: `modified`, `translated`
281
293
  - License expression: `BSD-3-Clause`
282
- - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
294
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
283
295
  - Local evidence: `crates/merman-render/src/venn.rs`
284
296
  - Legal files:
285
297
  - [`THIRD_PARTY_LICENSES/fmin/LICENSE`](THIRD_PARTY_LICENSES/fmin/LICENSE) (license, SHA-256 `e4503e78185bff178d3ee91835f082d05771da1b3a2d795f17e03a40251bab77`)
@@ -295,7 +307,7 @@ dugong-graphlib is a modified Rust translation of the graph model used by Dagre.
295
307
  - Source path: `lib`
296
308
  - Relationship: `modified`, `translated`
297
309
  - License expression: `MIT`
298
- - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
310
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
299
311
  - Local evidence: `crates/dugong-graphlib`
300
312
  - Legal files:
301
313
  - [`THIRD_PARTY_LICENSES/graphlib/LICENSE`](THIRD_PARTY_LICENSES/graphlib/LICENSE) (license, SHA-256 `6a349742a6cb219d5a2fc8d0844f6d89a6efc62e20c664450d884fc7ff2d6015`)
@@ -311,7 +323,7 @@ The RaTeX SVG backend embeds twenty KaTeX TrueType fonts; those font bytes are l
311
323
  - Source path: `crates/ratex-katex-fonts/fonts`
312
324
  - Relationship: `embedded`
313
325
  - License expression: `OFL-1.1`
314
- - Artifact scopes: `cli-default`, `ratex-render`, `source-archive`, `web-full`, `web-render`
326
+ - Artifact scopes: `cli-default`, `cli-release`, `ratex-render`, `source-archive`, `web-full`, `web-render`
315
327
  - Local evidence: `Cargo.lock`, `crates/merman-render/src/math.rs`
316
328
  - Legal files:
317
329
  - [`THIRD_PARTY_LICENSES/katex-fonts/FONT_NOTICE.txt`](THIRD_PARTY_LICENSES/katex-fonts/FONT_NOTICE.txt) (notice, SHA-256 `752ba9eff7a281f5ad789528ea078b46149b10e72296625108c26a94695ad03e`)
@@ -328,7 +340,7 @@ Manatee translates shared layout-base geometry, graph, and force-layout primitiv
328
340
  - Source path: `.`
329
341
  - Relationship: `modified`, `translated`
330
342
  - License expression: `MIT`
331
- - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
343
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
332
344
  - Local evidence: `crates/manatee`
333
345
  - Legal files:
334
346
  - [`THIRD_PARTY_LICENSES/layout-base-v1/LICENSE`](THIRD_PARTY_LICENSES/layout-base-v1/LICENSE) (license, SHA-256 `eabb762d8a95109a39c9be3247325529a5239a7aca327d909c3ccdc41f3a06bf`)
@@ -344,7 +356,7 @@ Manatee also follows the newer layout-base behavior selected by the FCoSE depend
344
356
  - Source path: `.`
345
357
  - Relationship: `modified`, `translated`
346
358
  - License expression: `MIT`
347
- - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
359
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
348
360
  - Local evidence: `crates/manatee`
349
361
  - Legal files:
350
362
  - [`THIRD_PARTY_LICENSES/layout-base-v2/LICENSE`](THIRD_PARTY_LICENSES/layout-base-v2/LICENSE) (license, SHA-256 `eabb762d8a95109a39c9be3247325529a5239a7aca327d909c3ccdc41f3a06bf`)
@@ -353,14 +365,14 @@ Manatee also follows the newer layout-base behavior selected by the FCoSE depend
353
365
 
354
366
  Merman independently implements Mermaid-compatible behavior while translating selected algorithms, generating defaults, copying architecture icon data, and retaining upstream fixtures and snapshots.
355
367
 
356
- - Version: `11.16.1`
368
+ - Version: `12.0.0`
357
369
  - Source: <https://github.com/mermaid-js/mermaid.git>
358
- - Source ref: `mermaid@11.16.1`
359
- - Source commit: `7ecca0cd7f1658ef74f4e7e91f925724ef403bbf`
370
+ - Source ref: `mermaid@12.0.0`
371
+ - Source commit: `98a0945418c76238f15df2afaddbba4272656c3b`
360
372
  - Source path: `packages/mermaid`
361
373
  - Relationship: `behavior-reference`, `copied`, `fixtures`, `generated`, `modified`, `translated`
362
374
  - License expression: `MIT`
363
- - Artifact scopes: `ascii-render`, `cli-default`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-analysis`, `web-ascii`, `web-editor`, `web-full`, `web-render`
375
+ - Artifact scopes: `ascii-render`, `cli-default`, `cli-release`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-analysis`, `web-ascii`, `web-editor`, `web-full`, `web-render`
364
376
  - Local evidence: `crates/merman-core/src`, `crates/merman-render/src`, `crates/merman-render/src/svg/parity/architecture/icons.rs`, `fixtures`
365
377
  - Legal files:
366
378
  - [`THIRD_PARTY_LICENSES/mermaid/LICENSE`](THIRD_PARTY_LICENSES/mermaid/LICENSE) (license, SHA-256 `ec9fb67dcb25eccc416ed56e1aab819222c805a2a4bfe4cb19e7556bf2ffde80`)
@@ -397,6 +409,54 @@ This Rust renderer is retained as an ASCII and headless rendering behavior refer
397
409
  - Legal files:
398
410
  - [`THIRD_PARTY_LICENSES/mermaid-rs-renderer/LICENSE`](THIRD_PARTY_LICENSES/mermaid-rs-renderer/LICENSE) (license, SHA-256 `57ed7943c34463678a150769d4a4f6c95d2a190fe2c1977f74bc883492c94b86`)
399
411
 
412
+ ### monaqa/tree-sitter-mermaid (`monaqa-tree-sitter-mermaid`)
413
+
414
+ The language package uses this grammar as the fixed downstream editor compatibility reference; it is not the public CST schema authority.
415
+
416
+ - Version: `0.0.2`
417
+ - Source: <https://github.com/monaqa/tree-sitter-mermaid.git>
418
+ - Source ref: `master`
419
+ - Source commit: `90ae195b31933ceb9d079abfa8a3ad0a36fee4cc`
420
+ - Source path: `.`
421
+ - Relationship: `behavior-reference`
422
+ - License expression: `MIT`
423
+ - Artifact scopes: `source-archive`, `tree-sitter-mermaid-source`
424
+ - Local evidence: `distribution/tree-sitter-mermaid`
425
+ - Legal files:
426
+ - [`THIRD_PARTY_LICENSES/tree-sitter-mermaid-monaqa/LICENSE`](THIRD_PARTY_LICENSES/tree-sitter-mermaid-monaqa/LICENSE) (license, SHA-256 `40e46efcec726e70cc95c553ac377674f0a5d2eec6089483ba237af7dae4c54c`)
427
+
428
+ ### non-layered-tidy-tree-layout (`non-layered-tidy-tree-layout`)
429
+
430
+ Merman's Mindmap tidy-tree layout is a modified Rust translation of the non-layered tidy-tree contour and threading algorithm bundled by Mermaid's tidy-tree adapter.
431
+
432
+ - Version: `2.0.2`
433
+ - Source: <https://github.com/stetrevor/non-layered-tidy-tree-layout.git>
434
+ - Source ref: `v2.0.2`
435
+ - Source commit: `63852fb7646eb079ce0e1976044d54545de273e8`
436
+ - Source path: `src`
437
+ - Relationship: `modified`, `translated`
438
+ - License expression: `MIT`
439
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
440
+ - Local evidence: `crates/merman-render/src/mindmap/tidy_tree.rs`
441
+ - Legal files:
442
+ - [`THIRD_PARTY_LICENSES/non-layered-tidy-tree-layout/LICENSE`](THIRD_PARTY_LICENSES/non-layered-tidy-tree-layout/LICENSE) (license, SHA-256 `9e618475934f16f1966a1f47cacea53ec0e8fbf7cb0054a5063b9446794a25df`)
443
+
444
+ ### pappasam/tree-sitter-mermaid (`pappasam-tree-sitter-mermaid`)
445
+
446
+ The language package modifies selected grammar helpers and Flowchart/Mindmap seeds; metadata/derivations.json records each local path and source range.
447
+
448
+ - Version: `0.1.0`
449
+ - Source: <https://github.com/pappasam/tree-sitter-mermaid.git>
450
+ - Source ref: `main`
451
+ - Source commit: `1a11e2d8cf11afcfdb768f537c1a9bde294c24f9`
452
+ - Source path: `.`
453
+ - Relationship: `behavior-reference`, `modified`
454
+ - License expression: `MIT`
455
+ - Artifact scopes: `source-archive`, `tree-sitter-mermaid-source`
456
+ - Local evidence: `distribution/tree-sitter-mermaid`
457
+ - Legal files:
458
+ - [`THIRD_PARTY_LICENSES/tree-sitter-mermaid-pappasam/LICENSE`](THIRD_PARTY_LICENSES/tree-sitter-mermaid-pappasam/LICENSE) (license, SHA-256 `66f5a051ab96d2bb3ecccf32f6db1d97245dfcee2f0563de3e3267e827717061`)
459
+
400
460
  ### RaTeX (`ratex`)
401
461
 
402
462
  Optional math rendering links the RaTeX 0.1.14 crate family; its separately licensed embedded fonts are recorded as their own component.
@@ -408,7 +468,7 @@ Optional math rendering links the RaTeX 0.1.14 crate family; its separately lice
408
468
  - Source path: `crates`
409
469
  - Relationship: `linked`
410
470
  - License expression: `MIT`
411
- - Artifact scopes: `cli-default`, `ratex-render`, `source-archive`, `web-full`, `web-render`
471
+ - Artifact scopes: `cli-default`, `cli-release`, `ratex-render`, `source-archive`, `web-full`, `web-render`
412
472
  - Local evidence: `Cargo.lock`, `crates/merman-render/src/math.rs`
413
473
  - Legal files:
414
474
  - [`THIRD_PARTY_LICENSES/ratex/LICENSE`](THIRD_PARTY_LICENSES/ratex/LICENSE) (license, SHA-256 `f65e10eaa978c50a58c5e792110b4be5014b865edcb2ade49076bfcc98fa92b0`)
@@ -425,7 +485,7 @@ roughr-merman is a modified in-tree fork of the rough-rs roughr crate.
425
485
  - Source path: `roughr`
426
486
  - Relationship: `copied`, `modified`
427
487
  - License expression: `MIT`
428
- - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
488
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
429
489
  - Local evidence: `crates/roughr`
430
490
  - Legal files:
431
491
  - [`THIRD_PARTY_LICENSES/rough-rs/LICENSE`](THIRD_PARTY_LICENSES/rough-rs/LICENSE) (license, SHA-256 `0bef4264af5b4af4de4b01700f27afb7bdaf7498949692ff272ebf24489b0531`)
@@ -441,7 +501,7 @@ The roughr fork aligns its randomization and drawing-operation semantics with Ro
441
501
  - Source path: `src`
442
502
  - Relationship: `behavior-reference`, `translated`
443
503
  - License expression: `MIT`
444
- - Artifact scopes: `cli-default`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
504
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
445
505
  - Local evidence: `crates/roughr`
446
506
  - Legal files:
447
507
  - [`THIRD_PARTY_LICENSES/roughjs/LICENSE`](THIRD_PARTY_LICENSES/roughjs/LICENSE) (license, SHA-256 `dca9a392272606ac748ac0976a2a1133f14eef841c27beaa51a844d53c56a09d`)
@@ -457,11 +517,91 @@ Merman's URL sanitization behavior is a source-backed Rust translation of saniti
457
517
  - Source path: `src`
458
518
  - Relationship: `modified`, `translated`
459
519
  - License expression: `MIT`
460
- - Artifact scopes: `cli-default`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-analysis`, `web-ascii`, `web-editor`, `web-full`, `web-render`
520
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-analysis`, `web-ascii`, `web-editor`, `web-full`, `web-render`
461
521
  - Local evidence: `crates/merman-core/src/utils.rs`
462
522
  - Legal files:
463
523
  - [`THIRD_PARTY_LICENSES/sanitize-url/LICENSE`](THIRD_PARTY_LICENSES/sanitize-url/LICENSE) (license, SHA-256 `0984740e0c3d725c8044dec7edcefe1dbce180ef5a7bc710c251e19607000158`)
464
524
 
525
+ ### singularity-parser-mermaid (`singularity-tree-sitter-mermaid`)
526
+
527
+ The language package retains this implementation as an additional behavior reference for grammar and query coverage.
528
+
529
+ - Version: `0.9.1`
530
+ - Source: <https://github.com/singularity-ng/singularity-parser-mermaid.git>
531
+ - Source ref: `main`
532
+ - Source commit: `f5ac2752fbf0f74f9c836014b87e511303d2abae`
533
+ - Source path: `.`
534
+ - Relationship: `behavior-reference`
535
+ - License expression: `MIT`
536
+ - Artifact scopes: `source-archive`, `tree-sitter-mermaid-source`
537
+ - Local evidence: `distribution/tree-sitter-mermaid`
538
+ - Legal files:
539
+ - [`THIRD_PARTY_LICENSES/tree-sitter-mermaid-singularity/LICENSE`](THIRD_PARTY_LICENSES/tree-sitter-mermaid-singularity/LICENSE) (license, SHA-256 `601f9a3a5d582af11bd0386a3352435f8765b1d35bee882e5dc7ebb29cf3b540`)
540
+
541
+ ### Tree-sitter (`tree-sitter-generator`)
542
+
543
+ The language package uses the pinned generator, copies its generated support headers, and modifies its C, Rust, and Node binding templates.
544
+
545
+ - Version: `0.26.12`
546
+ - Source: <https://github.com/tree-sitter/tree-sitter.git>
547
+ - Source ref: `v0.26.12`
548
+ - Source commit: `808e4b1fc06e269a107c4bd8bd936cc6fde18b00`
549
+ - Source path: `.`
550
+ - Relationship: `copied`, `generated`, `modified`
551
+ - License expression: `MIT`
552
+ - Artifact scopes: `source-archive`, `tree-sitter-mermaid-source`
553
+ - Local evidence: `distribution/tree-sitter-mermaid`
554
+ - Legal files:
555
+ - [`THIRD_PARTY_LICENSES/tree-sitter/LICENSE`](THIRD_PARTY_LICENSES/tree-sitter/LICENSE) (license, SHA-256 `c5cfb43042b6b72045f4ba997834d0a7786d2793d91680868b5815b39f14fc78`)
556
+
557
+ ### Mermaid (tree-sitter-mermaid Agentflow and Usecase additions) (`tree-sitter-mermaid-mermaid-12-new-families`)
558
+
559
+ The language package translates Agentflow and Usecase syntax from the pinned Mermaid 12.0.0 source and carries source-backed editor corpus cases. Existing diagram-family derivations retain their separately recorded Mermaid 11.16.1 source identity.
560
+
561
+ - Version: `12.0.0`
562
+ - Source: <https://github.com/mermaid-js/mermaid.git>
563
+ - Source ref: `mermaid@12.0.0`
564
+ - Source commit: `98a0945418c76238f15df2afaddbba4272656c3b`
565
+ - Source path: `packages/mermaid`
566
+ - Relationship: `behavior-reference`, `fixtures`, `translated`
567
+ - License expression: `MIT`
568
+ - Artifact scopes: `source-archive`, `tree-sitter-mermaid-source`
569
+ - Local evidence: `distribution/tree-sitter-mermaid/grammar/families/agentflow.js`, `distribution/tree-sitter-mermaid/grammar/families/usecase.js`, `distribution/tree-sitter-mermaid/test/corpus/families/agentflow.txt`, `distribution/tree-sitter-mermaid/test/corpus/families/usecase.txt`, `distribution/tree-sitter-mermaid/test/fixtures/family-roots.json`
570
+ - Legal files:
571
+ - [`THIRD_PARTY_LICENSES/mermaid/LICENSE`](THIRD_PARTY_LICENSES/mermaid/LICENSE) (license, SHA-256 `ec9fb67dcb25eccc416ed56e1aab819222c805a2a4bfe4cb19e7556bf2ffde80`)
572
+
573
+ ### Mermaid (tree-sitter-mermaid baseline) (`tree-sitter-mermaid-mermaid-baseline`)
574
+
575
+ The language package retains the exact Mermaid 11.16.1 syntax baseline for its original 35 diagram families and their representative fixtures. Agentflow and Usecase additions are attributed separately to Mermaid 12.0.0; this component intentionally does not move with the repository baseline.
576
+
577
+ - Version: `11.16.1`
578
+ - Source: <https://github.com/mermaid-js/mermaid.git>
579
+ - Source ref: `mermaid@11.16.1`
580
+ - Source commit: `7ecca0cd7f1658ef74f4e7e91f925724ef403bbf`
581
+ - Source path: `packages/mermaid`
582
+ - Relationship: `behavior-reference`, `fixtures`, `translated`
583
+ - License expression: `MIT`
584
+ - Artifact scopes: `source-archive`, `tree-sitter-mermaid-source`
585
+ - Local evidence: `distribution/tree-sitter-mermaid`
586
+ - Legal files:
587
+ - [`THIRD_PARTY_LICENSES/mermaid/LICENSE`](THIRD_PARTY_LICENSES/mermaid/LICENSE) (license, SHA-256 `ec9fb67dcb25eccc416ed56e1aab819222c805a2a4bfe4cb19e7556bf2ffde80`)
588
+
589
+ ### ZenUML Core (tree-sitter-mermaid baseline) (`tree-sitter-mermaid-zenuml-baseline`)
590
+
591
+ The language package follows the exact ZenUML Core 3.50.1 companion baseline and carries its representative wrapper fixture; this component intentionally does not move with the repository baseline.
592
+
593
+ - Version: `3.50.1`
594
+ - Source: <https://github.com/mermaid-js/zenuml-core.git>
595
+ - Source ref: `v3.50.1`
596
+ - Source commit: `38404ccc14243ed54ab45b804b2eb6f2ca73af36`
597
+ - Source path: `.`
598
+ - Relationship: `behavior-reference`, `fixtures`, `translated`
599
+ - License expression: `MIT`
600
+ - Artifact scopes: `source-archive`, `tree-sitter-mermaid-source`
601
+ - Local evidence: `distribution/tree-sitter-mermaid`
602
+ - Legal files:
603
+ - [`THIRD_PARTY_LICENSES/zenuml-core/LICENSE`](THIRD_PARTY_LICENSES/zenuml-core/LICENSE) (license, SHA-256 `d4a77cbf1dc0975cd4be7266972dc6d3a6c6d68d43235384d6e4b6f12934e978`)
604
+
465
605
  ### @upsetjs/venn.js (`venn-js`)
466
606
 
467
607
  The Venn family uses a modified Rust translation of the venn.js geometry and layout kernel.
@@ -473,7 +613,7 @@ The Venn family uses a modified Rust translation of the venn.js geometry and lay
473
613
  - Source path: `src`
474
614
  - Relationship: `modified`, `translated`
475
615
  - License expression: `MIT`
476
- - Artifact scopes: `cli-default`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
616
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
477
617
  - Local evidence: `crates/merman-core/src/diagrams/venn.rs`, `crates/merman-render/src/venn.rs`
478
618
  - Legal files:
479
619
  - [`THIRD_PARTY_LICENSES/venn-js/LICENSE`](THIRD_PARTY_LICENSES/venn-js/LICENSE) (license, SHA-256 `6a3508febf2cfccfee96597394543a6154a4bb0b1f91f28404be42c09e9fcb54`)
@@ -505,7 +645,7 @@ Merman's ZenUML grammar, model, renderer, emoji/icon data, and behavior probes f
505
645
  - Source path: `.`
506
646
  - Relationship: `behavior-reference`, `copied`, `modified`, `translated`
507
647
  - License expression: `MIT`
508
- - Artifact scopes: `cli-default`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-analysis`, `web-ascii`, `web-editor`, `web-full`, `web-render`
648
+ - Artifact scopes: `cli-default`, `cli-release`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-analysis`, `web-ascii`, `web-editor`, `web-full`, `web-render`
509
649
  - Local evidence: `crates/merman-core/src/diagrams/zenuml`, `crates/merman-render/assets/zenuml`, `crates/merman-render/src/zenuml.rs`
510
650
  - Legal files:
511
651
  - [`THIRD_PARTY_LICENSES/zenuml-core/LICENSE`](THIRD_PARTY_LICENSES/zenuml-core/LICENSE) (license, SHA-256 `d4a77cbf1dc0975cd4be7266972dc6d3a6c6d68d43235384d6e4b6f12934e978`)
@@ -59,6 +59,9 @@ export class BoundedExecutor {
59
59
  signal.addEventListener("abort", job.abortListener, { once: true });
60
60
  }
61
61
  this.#pending.push(job);
62
+ // Close the race between the initial admission check and listener registration. Calling the
63
+ // idempotent listener is safe even when an abort event already removed the job.
64
+ if (signal?.aborted) job.abortListener?.();
62
65
  });
63
66
  }
64
67
 
@@ -28,6 +28,7 @@ export async function loadNativeTransport(optionsJson, loaderOptions = {}) {
28
28
  transport = wrapCandidateEngine(
29
29
  new NativeEngine(optionsJson),
30
30
  "The target-specific Merman addon",
31
+ { forwardsAbortSignal: true },
31
32
  );
32
33
  } catch (cause) {
33
34
  throw decodeWireCreationError(cause, "The target-specific Merman addon");
@@ -1,6 +1,10 @@
1
1
  import { MermanDisposedError, MermanInvalidTransportError } from "../errors.mjs";
2
2
 
3
- export function wrapCandidateEngine(engine, label) {
3
+ export function wrapCandidateEngine(
4
+ engine,
5
+ label,
6
+ { forwardsAbortSignal = false } = {},
7
+ ) {
4
8
  if (
5
9
  typeof engine?.execute !== "function" ||
6
10
  typeof engine?.executeSync !== "function" ||
@@ -15,8 +19,12 @@ export function wrapCandidateEngine(engine, label) {
15
19
  return ownedEngine;
16
20
  };
17
21
  return {
18
- execute: (requestJson) => currentEngine().execute(requestJson),
19
- executeSync: (requestJson) => currentEngine().executeSync(requestJson),
22
+ execute: (requestJson, signal, timeoutMs) =>
23
+ forwardsAbortSignal
24
+ ? currentEngine().execute(requestJson, signal, timeoutMs)
25
+ : currentEngine().execute(requestJson, timeoutMs),
26
+ executeSync: (requestJson, timeoutMs) =>
27
+ currentEngine().executeSync(requestJson, timeoutMs),
20
28
  runtimeCatalogJson: () => currentEngine().runtimeCatalogJson(),
21
29
  metadataJson: (id) => currentEngine().metadataJson(id),
22
30
  dispose: () => {