The issue involves a complex regression causing browser lockups and requires deep understanding of Svelte's reactive system.
The issue describes a regression in Svelte versions starting from 5.35.4, causing browser lockups and `effect_update_depth_exceeded` errors in a LayerChart geo text example. The problem appears to be related to reactive updates and requires investigation into Svelte's internal mechanisms. The scope is somewhat clear but involves complex debugging across multiple versions.
In LayerChart, the following code (full example) has worked up until [email protected], but started raising effect_update_depth_exceeded errors since 5.35.4, and fully locks up the browser since 5.38.9 (including the latest 5.48.4)
<GeoPath geojson={feature}>
{#snippet children({ geoPath })}
{@const [x, y] = geoPath?.centroid(feature) ?? []}
<!-- Locks up the browser -->
<Text
{x}
{y}
value={feature.properties.name}
textAnchor="middle"
verticalAnchor="middle"
style="font-size: 8px"
/>
{/snippet}
</GeoPath>
effect_update_depth_exceeded)playground:output:3126 Uncaught Svelte error: effect_update_depth_exceeded Maximum update depth exceeded. This can happen when a reactive block or effect repeatedly sets a new value. Svelte limits the number of nested updates to prevent infinite loops
effect_update_depth_exceeded, but causes more visual issues[email protected]+
blocking an upgrade
Claim this issue to let others know you're working on it. You'll earn 10 points when you complete it!