Patch Changes
- 4a99c84:
sourceNamesgains alocationskind (and the plugin arootoption): component and binding labels carry afile:line:colfor diagnostics.createComponent(Home, props, "Home", "src/App.tsx:12:5")points at the<Homeopening element (DOM and SSR output); a binding's options gainlocaftername— the attribute's start for an attribute effect (a merged effect points at the first attribute it lists), the hole's{for an insert — and a spread passes it after the tag (spread(el, props, false, undefined, "div", "src/App.tsx:20:12")). The path is relative toroot(default: the working directory) with/separators; line and column are 1-based, so a dev server links the location straight to the source. Like the other kinds,locationsfollowsdevwhen unset,trueturns every kind on, and the object form picks; a location is only emitted beside its label, and never when Babel has nofilenamefor the module. - 3f36f77: Server components: binding slots are removed. Client components in slots replace them: place a client component through a
Slot(<props.x />) where the server's markup needs client behavior, or a formactionfor a mutation. Removed with them: theBindingSlot,SlotOutputandSlotErrortypes, the lazy@solidjs/web/frames/bindentry and its"bind"tier, the_s:*position markers and the compiledssrClaimhole, the effect of theserverComponentscompiler option (@solidjs/compilerand@solidjs/babel-pluginstill accept it, so existing build configs keep working, and ignore it), and theBINDING_SLOT_POSITIONdiagnostic code (@solidjs/signals'DiagnosticCode,solid-js'sdiagnostics.json). Ordinary slots, theirslot:<id>ranges and records, and$keyare unchanged. - d0ba31c: SSR evaluates a
refexpression beside a spread, as it already does without one, so a ref factory's owned setup (ref={tooltip()}) runs on the server too and the hydration ids after it line up. The ref itself is still never called on the server (#4081). UnderserverComponentsthe same holds outside a server component's render, where a ref expression was never evaluated on either path; inside one the claim evaluates it, once.