Skip to content

blog: 0.4#1877

Open
marc2332 wants to merge 43 commits into
mainfrom
blog/0.4
Open

blog: 0.4#1877
marc2332 wants to merge 43 commits into
mainfrom
blog/0.4

Conversation

@marc2332

@marc2332 marc2332 commented May 11, 2026

Copy link
Copy Markdown
Owner

No description provided.

@marc2332 marc2332 added this to the 0.4.0 milestone May 11, 2026
@marc2332 marc2332 self-assigned this May 11, 2026
@marc2332 marc2332 added documentation Improvements or additions to documentation website🌐 labels May 11, 2026
@marc2332 marc2332 marked this pull request as draft May 11, 2026 18:16
@github-actions

github-actions Bot commented May 11, 2026

Copy link
Copy Markdown

Performance Comparison mainblog/0.4

Total Elapsed Time: 68.81ms → 71.44ms (+3.8%)
CPU Baseline: 86.88µs → 88.58µs (+2.0%)
Benchmark ID: alloc

timing - Function execution time metrics.

+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| Function                          | Calls                    | Avg                              | P33                               | P66                              | P95                              | P99                              | Total                           | % Total                      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| dev_perf::main                    | 1 → 1 (+0.0%)            | 68.52ms → 71.07ms (+3.7%)        | 68.55ms → 71.11ms (+3.7%)         | 68.55ms → 71.11ms (+3.7%)        | 68.55ms → 71.11ms (+3.7%)        | 68.55ms → 71.11ms (+3.7%)        | 68.51ms → 71.09ms (+3.8%)       | 100.00% → 100.00% (+0.0%)    |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| runner::run_scope                 | 32025 → 32025 (+0.0%)    | 1.40µs → 1.42µs (+1.4%)          | 10.00ns → 10.00ns (+0.0%)         | 20.00ns → 20.00ns (+0.0%)        | 20.00ns → 40.00ns (+100.0%) ⚠️   | 30.00ns → 50.00ns (+66.7%) ⚠️    | 44.87ms → 45.60ms (+1.6%)       | 65.50% → 64.14% (-2.1%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| runner::sync_and_update           | 3 → 3 (+0.0%)            | 12.13ms → 12.53ms (+3.3%)        | 7.28ms → 7.66ms (+5.2%)           | 8.53ms → 9.21ms (+8.0%)          | 20.59ms → 20.74ms (+0.7%)        | 20.59ms → 20.74ms (+0.7%)        | 36.39ms → 37.59ms (+3.3%)       | 53.12% → 52.88% (-0.5%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| tree::apply_mutations             | 3 → 3 (+0.0%)            | 10.23ms → 10.63ms (+3.9%)        | 2.62ms → 2.83ms (+8.0%)           | 10.44ms → 10.87ms (+4.1%)        | 17.65ms → 18.20ms (+3.1%)        | 17.65ms → 18.20ms (+3.1%)        | 30.70ms → 31.88ms (+3.8%)       | 44.81% → 44.85% (+0.1%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| path_element::from_element        | 32025 → 32025 (+0.0%)    | 446.00ns → 460.00ns (+3.1%)      | 40.00ns → 40.00ns (+0.0%)         | 50.00ns → 50.00ns (+0.0%)        | 70.00ns → 70.00ns (+0.0%)        | 89.00ns → 80.00ns (-10.1%)       | 14.29ms → 14.75ms (+3.2%)       | 20.86% → 20.74% (-0.6%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| path_element::diff                | 32025 → 32025 (+0.0%)    | 396.00ns → 430.00ns (+8.6%)      | 50.00ns → 50.00ns (+0.0%)         | 60.00ns → 60.00ns (+0.0%)        | 171.00ns → 200.00ns (+17.0%)     | 882.00ns → 892.00ns (+1.1%)      | 12.70ms → 13.79ms (+8.6%)       | 18.53% → 19.39% (+4.6%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| mutations run                     | 3 → 3 (+0.0%)            | 4.45ms → 4.52ms (+1.6%)          | 4.28µs → 4.36µs (+1.9%)           | 2.91ms → 2.70ms (-7.2%)          | 10.44ms → 10.87ms (+4.1%)        | 10.44ms → 10.87ms (+4.1%)        | 13.35ms → 13.57ms (+1.6%)       | 19.48% → 19.08% (-2.1%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| runner::apply_diff                | 6 → 6 (+0.0%)            | 1.49ms → 1.49ms (+0.0%)          | 5.50µs → 5.78µs (+5.1%)           | 2.20ms → 2.18ms (-0.9%)          | 2.43ms → 2.52ms (+3.7%)          | 2.43ms → 2.52ms (+3.7%)          | 8.92ms → 8.94ms (+0.2%)         | 13.02% → 12.58% (-3.4%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| Scope Rendering                   | 2 → 2 (+0.0%)            | 4.24ms → 4.26ms (+0.5%)          | 3.96ms → 4.04ms (+2.0%)           | 4.52ms → 4.48ms (-0.9%)          | 4.52ms → 4.48ms (-0.9%)          | 4.52ms → 4.48ms (-0.9%)          | 8.48ms → 8.52ms (+0.5%)         | 12.38% → 11.99% (-3.2%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| text style cascade                | 3 → 3 (+0.0%)            | 1.88ms → 2.14ms (+13.8%)         | 140.00ns → 121.00ns (-13.6%)      | 1.95µs → 2.65µs (+35.9%) ⚠️      | 5.64ms → 6.43ms (+14.0%)         | 5.64ms → 6.43ms (+14.0%)         | 5.64ms → 6.43ms (+14.0%)        | 8.23% → 9.04% (+9.8%)        |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| dirty run                         | 3 → 3 (+0.0%)            | 2.05ms → 1.99ms (-2.9%)          | 642.00ns → 571.00ns (-11.1%)      | 2.60µs → 2.83µs (+8.8%)          | 6.14ms → 5.96ms (-2.9%)          | 6.14ms → 5.96ms (-2.9%)          | 6.14ms → 5.95ms (-3.1%)         | 8.97% → 8.38% (-6.6%)        |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| layer cascade                     | 3 → 3 (+0.0%)            | 1.82ms → 1.91ms (+4.9%)          | 160.00ns → 120.00ns (-25.0%) 🚀   | 2.61ms → 2.82ms (+8.0%)          | 2.84ms → 2.90ms (+2.1%)          | 2.84ms → 2.90ms (+2.1%)          | 5.45ms → 5.72ms (+5.0%)         | 7.95% → 8.04% (+1.1%)        |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| runner::handle_events_immediately | 3 → 3 (+0.0%)            | 200.00ns → 377.00ns (+88.5%) ⚠️  | 140.00ns → 321.00ns (+129.3%) ⚠️  | 201.00ns → 330.00ns (+64.2%) ⚠️  | 260.00ns → 481.00ns (+85.0%) ⚠️  | 260.00ns → 481.00ns (+85.0%) ⚠️  | 601.00ns → 1.13µs (+88.0%) ⚠️   | 0.00% → 0.00% (+0.0%)        |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+
| effect cascade                    | 3 → 3 (+0.0%)            | 156.00ns → 133.00ns (-14.7%)     | 140.00ns → 130.00ns (-7.1%)       | 160.00ns → 130.00ns (-18.8%)     | 170.00ns → 140.00ns (-17.6%)     | 170.00ns → 140.00ns (-17.6%)     | 470.00ns → 400.00ns (-14.9%)    | 0.00% → 0.00% (+0.0%)        |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+---------------------------------+------------------------------+

alloc-bytes - Exclusive allocation bytes by each function (excluding nested calls).

+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| Function                          | Calls                    | Avg                          | P33                            | P66                          | P95                            | P99                            | Total                          | % Total                    |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| Scope Rendering                   | 2 → 2 (+0.0%)            | 7.0 MB → 7.0 MB (+0.0%)      | 7.0 MB → 7.0 MB (+0.0%)        | 7.0 MB → 7.0 MB (+0.0%)      | 7.0 MB → 7.0 MB (+0.0%)        | 7.0 MB → 7.0 MB (+0.0%)        | 13.9 MB → 13.9 MB (+0.0%)      | 22.39% → 22.39% (+0.0%)    |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| runner::apply_diff                | 6 → 6 (+0.0%)            | 1.6 MB → 1.6 MB (+0.0%)      | 604 B → 604 B (+0.0%)          | 1.4 MB → 1.4 MB (+0.0%)      | 3.3 MB → 3.3 MB (+0.0%)        | 3.3 MB → 3.3 MB (+0.0%)        | 9.4 MB → 9.4 MB (+0.0%)        | 15.08% → 15.08% (+0.0%)    |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| runner::sync_and_update           | 3 → 3 (+0.0%)            | 2.8 MB → 2.8 MB (+0.0%)      | 1.1 KB → 1.1 KB (+0.0%)        | 1.4 MB → 1.4 MB (+0.0%)      | 7.0 MB → 7.0 MB (+0.0%)        | 7.0 MB → 7.0 MB (+0.0%)        | 8.4 MB → 8.4 MB (+0.0%)        | 13.45% → 13.45% (+0.0%)    |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| text style cascade                | 3 → 3 (+0.0%)            | 2.8 MB → 2.8 MB (+0.0%)      | 84 B → 84 B (+0.0%)            | 8.3 MB → 8.3 MB (+0.0%)      | 8.3 MB → 8.3 MB (+0.0%)        | 8.3 MB → 8.3 MB (+0.0%)        | 8.3 MB → 8.3 MB (+0.0%)        | 13.31% → 13.31% (+0.0%)    |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| mutations run                     | 3 → 3 (+0.0%)            | 2.5 MB → 2.5 MB (+0.0%)      | 64 B → 64 B (+0.0%)            | 1.6 MB → 1.6 MB (+0.0%)      | 6.0 MB → 6.0 MB (+0.0%)        | 6.0 MB → 6.0 MB (+0.0%)        | 7.6 MB → 7.6 MB (+0.0%)        | 12.16% → 12.16% (+0.0%)    |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| dirty run                         | 3 → 3 (+0.0%)            | 1.4 MB → 1.4 MB (+0.0%)      | 64 B → 64 B (+0.0%)            | 4.2 MB → 4.2 MB (+0.0%)      | 4.2 MB → 4.2 MB (+0.0%)        | 4.2 MB → 4.2 MB (+0.0%)        | 4.2 MB → 4.2 MB (+0.0%)        | 6.73% → 6.73% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| layer cascade                     | 3 → 3 (+0.0%)            | 1.2 MB → 1.2 MB (+0.0%)      | 874.5 KB → 874.5 KB (+0.0%)    | 2.8 MB → 2.8 MB (+0.0%)      | 2.8 MB → 2.8 MB (+0.0%)        | 2.8 MB → 2.8 MB (+0.0%)        | 3.7 MB → 3.7 MB (+0.0%)        | 5.95% → 5.95% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| path_element::from_element        | 32025 → 32025 (+0.0%)    | 107 B → 107 B (+0.0%)        | 12 B → 12 B (+0.0%)            | 12 B → 12 B (+0.0%)          | 12 B → 12 B (+0.0%)            | 12 B → 12 B (+0.0%)            | 3.3 MB → 3.3 MB (+0.0%)        | 5.30% → 5.30% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| path_element::diff                | 32025 → 32025 (+0.0%)    | 104 B → 104 B (+0.0%)        | 12 B → 12 B (+0.0%)            | 12 B → 12 B (+0.0%)          | 12 B → 12 B (+0.0%)            | 12 B → 12 B (+0.0%)            | 3.2 MB → 3.2 MB (+0.0%)        | 5.12% → 5.12% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| tree::apply_mutations             | 3 → 3 (+0.0%)            | 96.4 KB → 96.4 KB (+0.0%)    | 52 B → 52 B (+0.0%)            | 52 B → 52 B (+0.0%)          | 289.0 KB → 289.0 KB (+0.0%)    | 289.0 KB → 289.0 KB (+0.0%)    | 289.1 KB → 289.1 KB (+0.0%)    | 0.45% → 0.45% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| dev_perf::main                    | 1 → 1 (+0.0%)            | 35.9 KB → 35.9 KB (+0.0%)    | 35.9 KB → 35.9 KB (+0.0%)      | 35.9 KB → 35.9 KB (+0.0%)    | 35.9 KB → 35.9 KB (+0.0%)      | 35.9 KB → 35.9 KB (+0.0%)      | 35.9 KB → 35.9 KB (+0.0%)      | 0.06% → 0.06% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| runner::run_scope                 | 32025 → 32025 (+0.0%)    | 0 B → 0 B (+0.0%)            | 52 B → 52 B (+0.0%)            | 88 B → 88 B (+0.0%)          | 492 B → 492 B (+0.0%)          | 492 B → 492 B (+0.0%)          | 1.2 KB → 1.2 KB (+0.0%)        | 0.00% → 0.00% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| effect cascade                    | 3 → 3 (+0.0%)            | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)              | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)              | 0 B → 0 B (+0.0%)              | 0 B → 0 B (+0.0%)              | 0.00% → 0.00% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| runner::handle_events_immediately | 3 → 3 (+0.0%)            | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)              | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)              | 0 B → 0 B (+0.0%)              | 0 B → 0 B (+0.0%)              | 0.00% → 0.00% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+

Threads

Total Alloc: 848.9 KB → 850.1 KB (+0.1%)
Total Dealloc: 696 B → 696 B (+0.0%)
Mem Diff: 848.3 KB → 849.5 KB (+0.1%)

+-----------------+----------------------------------+-----------+--------------------------------+--------------------------+--------------------------------+
| Thread          | CPU % Avg                        | CPU % Max | Alloc                          | Dealloc                  | Mem Diff                       |
+-----------------+----------------------------------+-----------+--------------------------------+--------------------------+--------------------------------+
| dev_perf        | 88696.30% → 87989.70% (-0.8%)    |           | 848.3 KB → 849.5 KB (+0.1%)    | 576 B → 576 B (+0.0%)    | 847.7 KB → 849.0 KB (+0.2%)    |
+-----------------+----------------------------------+-----------+--------------------------------+--------------------------+--------------------------------+
| hp-server       | 0.00% → 0.00% (+0.0%)            |           | 624 B → 624 B (+0.0%)          | 24 B → 24 B (+0.0%)      | 600 B → 600 B (+0.0%)          |
+-----------------+----------------------------------+-----------+--------------------------------+--------------------------+--------------------------------+
| hp-cpu-baseline | 0.00% → 0.00% (+0.0%)            |           | 15 B → 15 B (+0.0%)            | 24 B → 24 B (+0.0%)      | -9 B → -9 B (+0.0%)            |
+-----------------+----------------------------------+-----------+--------------------------------+--------------------------+--------------------------------+
| hp-functions    | 0.00% → 0.00% (+0.0%)            |           |                                |                          |                                |
+-----------------+----------------------------------+-----------+--------------------------------+--------------------------+--------------------------------+
| hp-threads      | 0.00% → 0.00% (+0.0%)            |           |                                |                          |                                |
+-----------------+----------------------------------+-----------+--------------------------------+--------------------------+--------------------------------+

Generated with hotpath-rs

@github-actions

github-actions Bot commented May 11, 2026

Copy link
Copy Markdown

Performance Comparison mainblog/0.4

Total Elapsed Time: 62.69ms → 62.74ms (+0.1%)
CPU Baseline: 89.95µs → 88.22µs (-1.9%)
Benchmark ID: timing

timing - Execution duration of functions.

+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| Function                          | Calls                    | Avg                              | P33                              | P66                             | P95                              | P99                              | Total                          | % Total                      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| dev_perf::main                    | 1 → 1 (+0.0%)            | 62.36ms → 62.38ms (+0.0%)        | 62.39ms → 62.39ms (+0.0%)        | 62.39ms → 62.39ms (+0.0%)       | 62.39ms → 62.39ms (+0.0%)        | 62.39ms → 62.39ms (+0.0%)        | 62.36ms → 62.38ms (+0.0%)      | 100.00% → 100.00% (+0.0%)    |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| runner::run_scope                 | 32025 → 32025 (+0.0%)    | 1.22µs → 1.24µs (+1.6%)          | 10.00ns → 10.00ns (+0.0%)        | 20.00ns → 20.00ns (+0.0%)       | 20.00ns → 20.00ns (+0.0%)        | 31.00ns → 31.00ns (+0.0%)        | 39.11ms → 39.83ms (+1.8%)      | 62.72% → 63.85% (+1.8%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| runner::sync_and_update           | 3 → 3 (+0.0%)            | 10.92ms → 11.07ms (+1.4%)        | 6.63ms → 6.87ms (+3.6%)          | 8.04ms → 7.93ms (-1.4%)         | 18.10ms → 18.43ms (+1.8%)        | 18.10ms → 18.43ms (+1.8%)        | 32.76ms → 33.22ms (+1.4%)      | 52.53% → 53.25% (+1.4%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| tree::apply_mutations             | 3 → 3 (+0.0%)            | 9.45ms → 9.30ms (-1.6%)          | 2.32ms → 2.21ms (-4.7%)          | 9.20ms → 9.27ms (+0.8%)         | 16.83ms → 16.43ms (-2.4%)        | 16.83ms → 16.43ms (-2.4%)        | 28.34ms → 27.90ms (-1.6%)      | 45.44% → 44.72% (-1.6%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| mutations run                     | 3 → 3 (+0.0%)            | 3.99ms → 3.99ms (+0.0%)          | 3.87µs → 3.48µs (-10.1%)         | 2.76ms → 2.72ms (-1.4%)         | 9.20ms → 9.26ms (+0.7%)          | 9.20ms → 9.26ms (+0.7%)          | 11.96ms → 11.98ms (+0.2%)      | 19.18% → 19.20% (+0.1%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| path_element::diff                | 32025 → 32025 (+0.0%)    | 345.00ns → 342.00ns (-0.9%)      | 30.00ns → 30.00ns (+0.0%)        | 50.00ns → 50.00ns (+0.0%)       | 160.00ns → 170.00ns (+6.2%)      | 672.00ns → 681.00ns (+1.3%)      | 11.07ms → 10.98ms (-0.8%)      | 17.75% → 17.59% (-0.9%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| path_element::from_element        | 32025 → 32025 (+0.0%)    | 325.00ns → 325.00ns (+0.0%)      | 20.00ns → 20.00ns (+0.0%)        | 30.00ns → 29.00ns (-3.3%)       | 50.00ns → 40.00ns (-20.0%)       | 51.00ns → 51.00ns (+0.0%)        | 10.43ms → 10.43ms (+0.0%)      | 16.73% → 16.71% (-0.1%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| Scope Rendering                   | 2 → 2 (+0.0%)            | 4.30ms → 4.42ms (+2.8%)          | 4.18ms → 4.23ms (+1.2%)          | 4.43ms → 4.61ms (+4.1%)         | 4.43ms → 4.61ms (+4.1%)          | 4.43ms → 4.61ms (+4.1%)          | 8.61ms → 8.83ms (+2.6%)        | 13.80% → 14.16% (+2.6%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| runner::apply_diff                | 6 → 6 (+0.0%)            | 1.32ms → 1.32ms (+0.0%)          | 7.30µs → 7.25µs (-0.7%)          | 1.72ms → 1.79ms (+4.1%)         | 2.45ms → 2.47ms (+0.8%)          | 2.45ms → 2.47ms (+0.8%)          | 7.90ms → 7.92ms (+0.3%)        | 12.67% → 12.69% (+0.2%)      |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| dirty run                         | 3 → 3 (+0.0%)            | 1.92ms → 1.95ms (+1.6%)          | 400.00ns → 400.00ns (+0.0%)      | 2.06µs → 1.99µs (-3.4%)         | 5.75ms → 5.84ms (+1.6%)          | 5.75ms → 5.84ms (+1.6%)          | 5.75ms → 5.85ms (+1.7%)        | 9.22% → 9.37% (+1.6%)        |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| text style cascade                | 3 → 3 (+0.0%)            | 1.82ms → 1.69ms (-7.1%)          | 110.00ns → 130.00ns (+18.2%)     | 1.46µs → 1.18µs (-19.2%)        | 5.47ms → 5.07ms (-7.3%)          | 5.47ms → 5.07ms (-7.3%)          | 5.47ms → 5.07ms (-7.3%)        | 8.77% → 8.12% (-7.4%)        |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| layer cascade                     | 3 → 3 (+0.0%)            | 1.67ms → 1.59ms (-4.8%)          | 191.00ns → 49.00ns (-74.3%) 🚀   | 2.31ms → 2.20ms (-4.8%)         | 2.71ms → 2.58ms (-4.8%)          | 2.71ms → 2.58ms (-4.8%)          | 5.02ms → 4.77ms (-5.0%)        | 8.05% → 7.65% (-5.0%)        |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| effect cascade                    | 3 → 3 (+0.0%)            | 290.00ns → 337.00ns (+16.2%)     | 281.00ns → 190.00ns (-32.4%) 🚀  | 281.00ns → 311.00ns (+10.7%)    | 310.00ns → 510.00ns (+64.5%) ⚠️  | 310.00ns → 510.00ns (+64.5%) ⚠️  | 872.00ns → 1.01µs (+15.8%)     | 0.00% → 0.00% (+0.0%)        |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| runner::handle_events_immediately | 3 → 3 (+0.0%)            | 370.00ns → 280.00ns (-24.3%) 🚀  | 270.00ns → 190.00ns (-29.6%) 🚀  | 340.00ns → 320.00ns (-5.9%)     | 501.00ns → 330.00ns (-34.1%) 🚀  | 501.00ns → 330.00ns (-34.1%) 🚀  | 1.11µs → 840.00ns (-24.3%) 🚀  | 0.00% → 0.00% (+0.0%)        |
+-----------------------------------+--------------------------+----------------------------------+----------------------------------+---------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+

Threads

+-----------------+--------------------------------------+-----------+
| Thread          | CPU % Avg                            | CPU % Max |
+-----------------+--------------------------------------+-----------+
| dev_perf        | 94625.70% → 578864.50% (+511.7%) ⚠️  |           |
+-----------------+--------------------------------------+-----------+
| hp-functions    | 0.00% → 0.00% (+0.0%)                |           |
+-----------------+--------------------------------------+-----------+
| hp-threads      | 0.00% → 0.00% (+0.0%)                |           |
+-----------------+--------------------------------------+-----------+
| hp-server       | 0.00% → 0.00% (+0.0%)                |           |
+-----------------+--------------------------------------+-----------+
| hp-cpu-baseline | 0.00% → 0.00% (+0.0%)                |           |
+-----------------+--------------------------------------+-----------+

Generated with hotpath-rs

@codecov

codecov Bot commented May 11, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 62.22%. Comparing base (5810dc4) to head (bfb83c7).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1877   +/-   ##
=======================================
  Coverage   62.21%   62.22%           
=======================================
  Files         334      334           
  Lines       43750    43742    -8     
=======================================
- Hits        27221    27217    -4     
+ Misses      16529    16525    -4     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@marc2332 marc2332 moved this from In Progress to Pending for Review in Freya Planning Jul 12, 2026
@marc2332 marc2332 marked this pull request as ready for review July 12, 2026 18:00
@github-actions

Copy link
Copy Markdown

Benchmark for 24d3c57

Click to view benchmark
Test Base PR %
benchmarks/alignments=true size=21845 depth=8 wide=4 mode=not cached 1407.8±151.48µs 1422.6±146.94µs +1.05%
benchmarks/size=100001 depth=2 wide=100000 mode=not cached 7.9±1.16ms 8.1±0.77ms +2.53%
benchmarks/size=10001 depth=2 wide=10000 mode=not cached 366.3±212.15µs 364.2±185.86µs -0.57%
benchmarks/size=1001 depth=2 wide=1000 mode=not cached 32.2±35.72µs 32.0±31.50µs -0.62%
benchmarks/size=131071 depth=17 wide=2 mode=not cached 14.7±0.56ms 14.0±0.37ms -4.76%
benchmarks/size=16383 depth=14 wide=2 mode=not cached 1021.7±116.99µs 995.5±108.29µs -2.56%
benchmarks/size=19531 depth=7 wide=5 mode=cached 933.9±16.05µs 909.4±61.12µs -2.62%
benchmarks/size=19531 depth=7 wide=5 mode=not cached 1054.5±135.21µs 900.8±91.81µs -14.58%
benchmarks/size=4095 depth=12 wide=2 mode=not cached 221.4±156.19µs 219.8±161.54µs -0.72%
benchmarks/size=54241 depth=5 wide=15 mode=cached 818.4±85.95µs 751.0±67.06µs -8.24%
benchmarks/size=54241 depth=5 wide=15 mode=not cached 874.4±142.26µs 792.9±135.29µs -9.32%

@github-actions

Copy link
Copy Markdown

Benchmark for ac0fa69

Click to view benchmark
Test Base PR %
benchmarks/alignments=true size=21845 depth=8 wide=4 mode=not cached 692.3±6.43µs 642.9±5.28µs -7.14%
benchmarks/size=100001 depth=2 wide=100000 mode=not cached 5.1±0.49ms 5.1±0.50ms 0.00%
benchmarks/size=10001 depth=2 wide=10000 mode=not cached 199.6±108.00µs 199.9±115.88µs +0.15%
benchmarks/size=1001 depth=2 wide=1000 mode=not cached 18.1±32.44µs 18.1±32.66µs 0.00%
benchmarks/size=131071 depth=17 wide=2 mode=not cached 10.5±0.22ms 13.1±0.21ms +24.76%
benchmarks/size=16383 depth=14 wide=2 mode=not cached 609.5±58.16µs 579.7±17.06µs -4.89%
benchmarks/size=19531 depth=7 wide=5 mode=cached 572.5±8.01µs 540.9±4.84µs -5.52%
benchmarks/size=19531 depth=7 wide=5 mode=not cached 568.0±9.98µs 521.1±11.60µs -8.26%
benchmarks/size=4095 depth=12 wide=2 mode=not cached 129.6±76.44µs 128.8±90.58µs -0.62%
benchmarks/size=54241 depth=5 wide=15 mode=cached 418.5±6.06µs 419.2±6.57µs +0.17%
benchmarks/size=54241 depth=5 wide=15 mode=not cached 431.3±119.25µs 415.5±7.54µs -3.66%

@github-actions

Copy link
Copy Markdown

Benchmark for 588b801

Click to view benchmark
Test Base PR %
benchmarks/alignments=true size=21845 depth=8 wide=4 mode=not cached 1253.8±35.59µs 1533.4±193.76µs +22.30%
benchmarks/size=100001 depth=2 wide=100000 mode=not cached 8.4±0.66ms 8.4±0.62ms 0.00%
benchmarks/size=10001 depth=2 wide=10000 mode=not cached 370.6±206.31µs 362.1±77.60µs -2.29%
benchmarks/size=1001 depth=2 wide=1000 mode=not cached 32.0±31.39µs 32.9±36.68µs +2.81%
benchmarks/size=131071 depth=17 wide=2 mode=not cached 14.6±0.18ms 15.6±0.39ms +6.85%
benchmarks/size=16383 depth=14 wide=2 mode=not cached 1020.0±111.40µs 1013.1±121.04µs -0.68%
benchmarks/size=19531 depth=7 wide=5 mode=cached 936.6±45.66µs 962.0±28.06µs +2.71%
benchmarks/size=19531 depth=7 wide=5 mode=not cached 938.1±62.10µs 1010.8±123.31µs +7.75%
benchmarks/size=4095 depth=12 wide=2 mode=not cached 222.5±185.63µs 219.9±172.88µs -1.17%
benchmarks/size=54241 depth=5 wide=15 mode=cached 775.9±36.66µs 798.4±47.98µs +2.90%
benchmarks/size=54241 depth=5 wide=15 mode=not cached 773.4±102.97µs 800.6±151.73µs +3.52%

@github-actions

Copy link
Copy Markdown

Benchmark for f50ec6b

Click to view benchmark
Test Base PR %
benchmarks/alignments=true size=21845 depth=8 wide=4 mode=not cached 1921.2±154.15µs 2.0±0.12ms +4.10%
benchmarks/size=100001 depth=2 wide=100000 mode=not cached 7.7±0.54ms 8.0±0.59ms +3.90%
benchmarks/size=10001 depth=2 wide=10000 mode=not cached 303.9±140.41µs 311.4±155.48µs +2.47%
benchmarks/size=1001 depth=2 wide=1000 mode=not cached 26.6±24.36µs 27.6±27.99µs +3.76%
benchmarks/size=131071 depth=17 wide=2 mode=not cached 20.5±0.96ms 15.1±1.33ms -26.34%
benchmarks/size=16383 depth=14 wide=2 mode=not cached 1508.5±145.23µs 883.8±95.23µs -41.41%
benchmarks/size=19531 depth=7 wide=5 mode=cached 1263.9±295.25µs 1189.9±107.82µs -5.85%
benchmarks/size=19531 depth=7 wide=5 mode=not cached 994.1±203.45µs 1139.6±138.45µs +14.64%
benchmarks/size=4095 depth=12 wide=2 mode=not cached 182.0±146.30µs 178.9±114.73µs -1.70%
benchmarks/size=54241 depth=5 wide=15 mode=cached 933.5±208.70µs 1164.6±91.51µs +24.76%
benchmarks/size=54241 depth=5 wide=15 mode=not cached 953.3±178.69µs 1078.2±150.07µs +13.10%

@github-actions

Copy link
Copy Markdown

Benchmark for e38f9a8

Click to view benchmark
Test Base PR %
benchmarks/alignments=true size=21845 depth=8 wide=4 mode=not cached 1360.9±130.89µs 1731.1±126.96µs +27.20%
benchmarks/size=100001 depth=2 wide=100000 mode=not cached 8.4±0.58ms 7.8±1.16ms -7.14%
benchmarks/size=10001 depth=2 wide=10000 mode=not cached 373.2±196.56µs 369.6±195.46µs -0.96%
benchmarks/size=1001 depth=2 wide=1000 mode=not cached 32.0±31.52µs 32.0±30.89µs 0.00%
benchmarks/size=131071 depth=17 wide=2 mode=not cached 14.2±0.66ms 20.3±1.13ms +42.96%
benchmarks/size=16383 depth=14 wide=2 mode=not cached 1042.7±108.50µs 1038.9±56.29µs -0.36%
benchmarks/size=19531 depth=7 wide=5 mode=cached 943.2±17.91µs 997.7±24.64µs +5.78%
benchmarks/size=19531 depth=7 wide=5 mode=not cached 950.0±47.48µs 1019.7±39.97µs +7.34%
benchmarks/size=4095 depth=12 wide=2 mode=not cached 220.4±160.81µs 212.9±2.52µs -3.40%
benchmarks/size=54241 depth=5 wide=15 mode=cached 852.8±127.82µs 835.9±42.22µs -1.98%
benchmarks/size=54241 depth=5 wide=15 mode=not cached 874.0±252.79µs 840.6±79.29µs -3.82%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation website🌐

Projects

Status: Pending for Review

Development

Successfully merging this pull request may close these issues.

1 participant