From bb7ec468e991c9337808eb554351e0124c9acaa1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 27 Sep 2026 08:22:25 +0000 Subject: [PATCH] Version Packages (next) --- .changeset/pre.json | 6 +++++- CHANGELOG.md | 9 +++++++++ package.json | 2 +- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 96f5758..0322748 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -78,9 +78,11 @@ "plugin-package-rename", "production-error-boundary", "protect-configured-entry-chunks", + "rc10-live-address-preview-passthrough-prebundle", "reject-prefixed-server-env-keys", "remove-client-manifest-virtual", "response-head-middleware-preview", + "ride-solid-rc-10", "ride-solid-rc-9", "root-relative-filter-globs", "sc-bootstrap-before-hydration-data", @@ -98,6 +100,7 @@ "server-functions-turnkey", "six-lions-joke", "solid-compiler-packages", + "source-names", "ssr-inline-solid-consumers", "start-css-filter", "start-env-typed", @@ -116,6 +119,7 @@ "vite8-scan-jsx-classic", "vitest-browser-mode-no-jsdom-default", "vitest-client-posture", - "vitest-server-posture-opt-out" + "vitest-server-posture-opt-out", + "webworker-async-hooks-warning" ] } diff --git a/CHANGELOG.md b/CHANGELOG.md index 52cd38b..0d4f537 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## 3.0.0-next.45 + +### Patch Changes + +- e40e2c4: Follow-ups to riding Solid 2.0.0-rc.10. The server-function dev middleware reads the id out of the runtime's third address shape, `/live/` (a `live` loop's connection), the way it already did for `/data/` — mirroring the runtime's `parseServerFunctionAddress`, one kind segment at most — so a live function whose module nothing has imported server-side yet is loaded on demand and the first call resolves instead of the runtime answering `404 Unknown server function`. `vite preview` passes `text/event-stream` responses and everything under the server-function mount through its compression middleware as `content-encoding: identity`, as it already did for `text/html`: the middleware compresses from a ≥1KiB first write and then holds small writes in zlib's buffer, which would leave a live event stream's events (and the streaming codec's chunks) undelivered while the connection stays open. Under `serve`, `solid-js/attribution` and `@solidjs/web/performance-tracks` join `optimizeDeps.include`, so a consumer the dependency scanner never crawls (a linked package, a `solid`-condition package vitefu excluded) importing one mid-session no longer triggers a late discovery → re-optimize → a second `@solidjs/signals` core beside the one `solid-js` was bundled with. +- 4134665: Require solid-js / @solidjs/web 2.0.0-rc.10 (peer floor) and compile with @solidjs/compiler / @solidjs/babel-plugin rc.10 — runtime and compiler move in lockstep. rc.10 is the release the `sourceNames` work rides on: the compilers rename `componentNames` to `sourceNames` (`@solidjs/compiler` rejects the old option, so a mismatched pair fails loudly), add the `bindings` kind whose trailing `{ name }` / tag arguments on `effect`/`insert`/`spread` only the rc.10 `@solidjs/web` reads, ship the standalone `transformSourceNames` pass behind `sourceNames.primitives`, and default their own `sourceNames` to `dev`. The plugin keeps passing its resolved value explicitly (`false` when every JSX kind is off), so its posture table — not the compilers' default — decides, and `solid.sourceNames: false` stays an opt-out under `vite dev`. +- e9afe8a: Source names on by default in dev and under `observe`: the compiler option `componentNames` is now `sourceNames` and covers components, compiled binding effects (`span.textContent`, `div.children`), and primitives. Component and binding names are the JSX compiler's `sourceNames` option, passed to whichever backend compiles the JSX. Primitives are named by the native compiler's standalone `transformSourceNames` pass — `createSignal(0)` declared as `count` becomes `createSignal(0, { name: "count" })`, `createCounter.value` inside a composed primitive — which the plugin runs ahead of the JSX transform and alone on plain `.ts`/`.js` modules (outside `node_modules`), for babel apps as well, so attribution chains, diagnostics owner paths, and the Chrome performance tracks read source identifiers instead of `signal` / `computed` / `effect`. Every kind defaults to on whenever the plugin compiles with `dev` (`vite dev`, or `dev: true`) or for `observe` builds, and to off for production builds, whose output is unchanged. `solid.sourceNames: false` opts out of every kind (in dev too — the plugin always passes the resolved value, so the compilers' own dev default does not re-enable it), `true` forces every kind on, and the object form `{ components?, bindings?, primitives? }` sets kinds individually with the rest at the posture default. Requires the `@solidjs/compiler` release carrying `sourceNames` and `transformSourceNames` (2.0.0-rc.10); on an older compiler the primitives pass is skipped with a one-time warning. +- de42b22: Warn at build time when the server build targets a worker runtime (`ssr.target: 'webworker'`) and the plugin generates server code — SSR or client start mode, or `serverFunctions` on its own. That code imports `@solidjs/web/storage`, the one Solid module that needs `node:async_hooks` (`AsyncLocalStorage` keeps the request event live across `await`s; there is no sync-scope fallback), so on a worker without Node compat the deploy failed with a bare `No such module "node:async_hooks"` (solidjs/solid#3597, Shopify Oxygen — whose Vite plugin sets the webworker target). The warning names the requirement and both fixes: a `compatibility_date` of 2026-08-04 or later (Cloudflare enables `nodejs_compat` by default from that date, and Oxygen accepts the same date), or the `nodejs_compat` flag. It is emitted once per server build, from the `ssr` environment's `buildStart` (the default builder resolves the config once per environment, so a config-time warning would repeat), and never in dev, where the ssr environment runs in Node. No new option; the condition is the resolved `ssr.target`. + ## 3.0.0-next.44 ### Minor Changes diff --git a/package.json b/package.json index a83a147..9bed622 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@solidjs/vite-plugin", - "version": "3.0.0-next.44", + "version": "3.0.0-next.45", "description": "solid-js integration plugin for Vite", "type": "module", "engines": {