github solidjs/solid @solidjs/babel-plugin@2.0.0-rc.6

pre-release4 hours ago

Patch Changes

  • 1e7fa73: Reject authored TSRX lazy destructuring in Solid while retaining deferred patterns generated for keyed loops and catch clauses.
  • bbff5e0: Direct value/checked (and other stateful DOM property) bindings no longer overwrite pre-hydration user input during the hydration claim pass (#3182). Hydratable compiled output now routes locked DOM properties through setProperty, which skips writes on hydrating nodes and carries the <select value> microtask and input/textarea nullish special cases.
  • cdbd584: Assign static <select value> values through the live DOM property so the matching option is selected consistently with reactive values.
  • 5a1abb3: Compile TSRX loops with an index but no explicit key using Solid's non-keyed callback shape.
  • 82868c6: Support recursive lazy destructuring, lazy arrow parameters, per-read defaults, computed keys, rest views, standalone assignments, accessor-backed keyed-loop and catch patterns, and JavaScript-correct writes and updates across the Babel and native TSRX frontends.
  • 774aad5: Add compile-time scoped styles, CSS sidecar output, style class maps, and style refs to both TSRX frontends.
  • c9c16cb: Add an experimental TSRX syntax frontend to both compilers. .tsrx sources (routed by filename with the new syntax: "auto" | "jsx" | "tsrx" option) desugar @if/@else, @for … @empty, @switch/@case, @try/@catch/@pending, @{} statement containers, and lazy destructuring (&{}/&[]) into the shared Solid JSX lowering, producing byte-identical output from both compilers. The Babel plugin loads the optional @tsrx/core peer dependency lazily; the native compiler ships the frontend behind the default-on tsrx cargo feature (statement containers in expression position are rejected with a structured diagnostic pending upstream oxc-tsrx support).

Don't miss a new solid release

NewReleases is sending notifications on new releases.