chore(solid): bump to solid-js 2.0.0-rc.8 and @solidjs/vite-plugin 3.0.0-next.43 - #8348
Conversation
…0.0-next.42
Moves solid-js/@solidjs/web to ^2.0.0-rc.7, @solidjs/vite-plugin to
^3.0.0-next.42, @rsbuild/plugin-solid to ^2.0.0-rc.0 and the webpack
example's @solidjs/babel-plugin to ^2.0.0-rc.7 across the monorepo.
@tanstack/solid-start now normalizes Request subclasses (srvx's Node
adapter) into native Requests before Solid's server-function handler
sees them: rc.7 buffers every POST body via `new Request(request, {
body })`, which undici only accepts for its own instances, so every
POST answered 400 under srvx.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
View your CI Pipeline Execution ↗ for commit 3dbc6f8
☁️ Nx Cloud last updated this comment at |
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
|
Warning Review the following alerts detected in dependencies. According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.
|
🚀 Changeset Version Preview6 package(s) bumped directly, 0 bumped as dependents. 🟩 Patch bumps
|
Bundle Size Benchmarks
The following scenarios have bundle-size changes compared with the baseline:
Current gzip tracks all emitted client JS chunks. Initial gzip tracks only the entry/import graph. Trend sparkline is historical current gzip ending with this PR measurement; lower is better. |
Hooray! CodSpeed harness just leveled up!The base and head of this comparison were measured with different runner settings, so their benchmark values are not directly comparable. What changed between base and head:
Re-run the base with the same settings to get a valid performance comparison. Comparing Footnotes |
…0.0-next.43 Moves solid-js/@solidjs/web to ^2.0.0-rc.8, @solidjs/vite-plugin to ^3.0.0-next.43 and the webpack example's @solidjs/babel-plugin to ^2.0.0-rc.8. rc.8 is ESM-only with engines.node >= 22.12. rc.8 ships the upstream fix for the buffered server-function request (a71e42e), so the srvx Request normalization from the rc.7 commit is dropped again. @solidjs/vite-plugin next.43 honors the host's resolve.noExternal patterns when externalizing the dependencies of Solid consumers (solidjs/solid-vite-plugin#360), which is what broke `vite dev` with "Package import specifier '#tanstack-router-entry' is not defined" on next.41/42. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Summary
solid-js/@solidjs/web:^2.0.0-rc.6→^2.0.0-rc.8(rc.8 is ESM-only and declaresengines.node >= 22.12; its exports carrydefaultconditions, so the CJS builds still resolve it through Node'srequire(esm))@solidjs/vite-plugin:^3.0.0-next.35→^3.0.0-next.43(peer-requires rc.7+, depends on the rc.8 compiler)@rsbuild/plugin-solid:^2.0.0-beta.2→^2.0.0-rc.0(now ships@solidjs/compiler/@solidjs/babel-plugininstead ofbabel-preset-solid; the solid-start rsbuild patcher already targets its nativesolidloader)@solidjs/babel-plugin:^2.0.0-rc.4→^2.0.0-rc.8pnpm-lock.yaml: only Solid-related resolutions move, plus the@napi-rs/wasm-runtime@1.2.4dependency the rc.8 wasm compiler binding needs. The install had also re-resolved unrelated@babel/*transitives (types/traverse 7.29.0 → 7.29.8), which broke@tanstack/router-plugin's build with two incompatible@babel/typescopies, plus@emnapi/corepeer re-suffixing; both were reverted to the base lockfile.No source changes in the end. Two rc.7 regressions and one plugin regression were worked around on this branch and then fixed upstream before the bump settled:
new Request(request, { body }), which undici only accepts for its own instances, so srvx's Request subclass answered every POST with 400. rc.8 rebuilds that request from url, method, headers, and signal (a71e42e), so the interim normalization in@tanstack/solid-startis gone again.ssrElementreadprops.childrentwice for a string<Dynamic>(2.0.0-rc.7 SSR:ssrElementreadsprops.childrentwice for a spread, skipping a hydration id — every later element hydrates onto the wrong node solidjs/solid#3313), so theload()<Hydrate>strategy never claimed its server node. Fixed in rc.8 (3b4db21).@solidjs/vite-pluginnext.41/42 externalized@tanstack/start-*invite devbecause it only honored literalnoExternalnames, not the@tanstack/start**patterns (dev-mode e2e suites failed withPackage import specifier "#tanstack-router-entry" is not defined). Fixed in next.43 by solidjs/solid-vite-plugin#360.Verification
@tanstack/solid-routerunit: 870 passed, 2 skipped (client) / 7 passed (server);@tanstack/solid-start-clientunit: 8 passedtscfor the Solid packages,test:eslint, and the build of the six Solid packages plus dependencies: greensolid-start/basic80 passed + 4 skipped,solid-start/server-functions29 passed + 1 skipped,solid-start/deferred-hydration15 passed under both the vite and rsbuild toolchains,solid-router/basic-file-based120 passed,solid-start/css-modules7,solid-start/selective-ssr11,solid-start/solid-query-layout-suspense1 (the three dev-mode suites),solid-start/basic-solid-query6examples/solid/quickstart-webpack-file-basedandquickstart-rspack-file-basedbuild🤖 Generated with Claude Code