Commit 32ba8aa
Use unary + instead of parseFloat on generic-assay datum values
Same polyfill-avoidance fix as the stacked-bar shape functions: every
parseFloat call goes through core-js's polyfill which trims its input.
In the heatmap track build path we map every datum with
{...d, value: parseFloat(d.value)}, which for 30 signatures × 50k
samples on msk_impact_50k_2026 = 1.5M parseFloat calls per render.
Also two isFractionLikeByProfile loops that parseFloat every datum
value. All converted to +d.value — same behaviour, ~5s saved.
Also gitignore the common-dist/ build artifacts that rspack drops at
the repo root during dev; accidentally committing them dwarfs the
actual diff.
Note: the dominant remaining cost on that URL is seamless-immutable
deep-freezing the generic-assay data cache in LazyMobXCache.updateCache
(~30s in addPropertyTo + Immutable + the resulting GC). That's a
structural change to the shared cache implementation and not in
scope for this PR.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent 6b9dc1b commit 32ba8aa
2 files changed
Lines changed: 5 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
69 | 69 | | |
70 | 70 | | |
71 | 71 | | |
| 72 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1866 | 1866 | | |
1867 | 1867 | | |
1868 | 1868 | | |
1869 | | - | |
| 1869 | + | |
1870 | 1870 | | |
1871 | 1871 | | |
1872 | 1872 | | |
| |||
1933 | 1933 | | |
1934 | 1934 | | |
1935 | 1935 | | |
1936 | | - | |
| 1936 | + | |
1937 | 1937 | | |
1938 | 1938 | | |
1939 | 1939 | | |
| |||
2216 | 2216 | | |
2217 | 2217 | | |
2218 | 2218 | | |
2219 | | - | |
| 2219 | + | |
2220 | 2220 | | |
2221 | 2221 | | |
2222 | 2222 | | |
| |||
2669 | 2669 | | |
2670 | 2670 | | |
2671 | 2671 | | |
2672 | | - | |
| 2672 | + | |
2673 | 2673 | | |
2674 | 2674 | | |
2675 | 2675 | | |
| |||
0 commit comments