Skip to content

Commit f692875

Browse files
Version Packages (next)
1 parent 08782f2 commit f692875

3 files changed

Lines changed: 13 additions & 2 deletions

File tree

‎.changeset/pre.json‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@
8181
"reject-prefixed-server-env-keys",
8282
"remove-client-manifest-virtual",
8383
"response-head-middleware-preview",
84+
"ride-solid-rc-10",
8485
"ride-solid-rc-9",
8586
"root-relative-filter-globs",
8687
"sc-bootstrap-before-hydration-data",
@@ -98,6 +99,7 @@
9899
"server-functions-turnkey",
99100
"six-lions-joke",
100101
"solid-compiler-packages",
102+
"source-names",
101103
"ssr-inline-solid-consumers",
102104
"start-css-filter",
103105
"start-env-typed",
@@ -116,6 +118,7 @@
116118
"vite8-scan-jsx-classic",
117119
"vitest-browser-mode-no-jsdom-default",
118120
"vitest-client-posture",
119-
"vitest-server-posture-opt-out"
121+
"vitest-server-posture-opt-out",
122+
"webworker-async-hooks-warning"
120123
]
121124
}

‎CHANGELOG.md‎

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# Changelog
22

3+
## 3.0.0-next.45
4+
5+
### Patch Changes
6+
7+
- 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`.
8+
- 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.
9+
- 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`.
10+
311
## 3.0.0-next.44
412

513
### Minor Changes

‎package.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@solidjs/vite-plugin",
3-
"version": "3.0.0-next.44",
3+
"version": "3.0.0-next.45",
44
"description": "solid-js integration plugin for Vite",
55
"type": "module",
66
"engines": {

0 commit comments

Comments
 (0)