Skip to content

Version Packages (next) - #313

Merged
ryansolid merged 1 commit into
nextfrom
changeset-release/next
Aug 19, 2026
Merged

Version Packages (next)#313
ryansolid merged 1 commit into
nextfrom
changeset-release/next

Conversation

@github-actions

@github-actions github-actions Bot commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to next, this PR will be updated.

⚠️⚠️⚠️⚠️⚠️⚠️

next is currently in pre mode so this branch has prereleases rather than normal releases. If you want to exit prereleases, run changeset pre exit on next.

⚠️⚠️⚠️⚠️⚠️⚠️

Releases

@solidjs/vite-plugin@3.0.0-next.31

Minor Changes

  • 8459560: New start.devtools option: a development toolbar with runtime errors and a
    server function inspector, backed by the new optional-peer package
    @solidjs/start-devtools. By default the toolbar turns on in vite dev
    whenever the package resolves (install it as a dev dependency) and stays off
    otherwise; start: { devtools: true } makes the package required (a missing
    install becomes an error) and start: { devtools: false } opts out entirely.
    Generated client entries wrap the app in the toolbar's DevToolbar component,
    authored client entries get an injected mount import instead, and either way
    the wiring is dev-serve-only codegen — production builds and previews contain
    none of it. The package itself is resolved from the app graph first and from
    the plugin's own location as a fallback, and the virtual toolbar modules
    delegate their imports to that captured resolution, so pnpm-isolated installs
    work without the package being hoisted to the app root.

Patch Changes

  • c8615ed: Apply the request CSP nonce to start mode's generated client-entry script.
  • 7c10d3b: Add a generic production error boundary to generated Start entries. It returns a 500 response for uncaught SSR errors and provides a fallback for uncaught client errors. Set start.errorBoundary to false when application middleware owns error handling.
  • e607db7: Add start.css.filter to control which module graphs are traversed while collecting development CSS. exclude prunes matching graphs (defaults to /node_modules/; providing one replaces the default), and include opts matching files in on top of that baseline — e.g. { include: /node_modules\/some-ui-lib/ } server-inlines that dependency's CSS in dev. A file matching both patterns stays excluded.
  • 450d0e5: Add Vite 9 forward compatibility by using the per-environment consumer in plugin hooks and accepting Vite 9 as a peer.

@github-actions
github-actions Bot force-pushed the changeset-release/next branch 2 times, most recently from 31caa20 to a2c7c60 Compare August 19, 2026 16:13
@pkg-pr-new

pkg-pr-new Bot commented Aug 19, 2026

Copy link
Copy Markdown

Open in StackBlitz

npm i https://pkg.pr.new/@solidjs/vite-plugin@313

commit: b925a0e

@github-actions
github-actions Bot force-pushed the changeset-release/next branch 3 times, most recently from 9387a65 to 51b5771 Compare August 19, 2026 20:27
ryansolid added a commit that referenced this pull request Aug 19, 2026
…'s stated use case — opting a node_modules dependency's graph into dev SSR CSS collection — could not work under the raw createFilter composition, twice over: the default /node_modules/ exclude was applied whenever the user set no exclude and createFilter's exclude-wins rule vetoed the included package, and a non-empty include turned the filter into a strict allowlist that rejected the app's own sources, pruning the crawl at the entry roots — an include-only config silently stripped ALL dev SSR CSS (live-repro'd in examples/start-ssr: include /some-ui-lib/ lost App.css from the streamed head while the page still rendered). The crawl walks the graph from the app's entries, so allowlist semantics are structurally wrong for this option; include now RESCUES files on top of the baseline (everything except exclude, which still defaults to /node_modules/ and still gets replaced — not extended — by a user exclude), composed from two createFilters so a file matching both patterns stays excluded, exactly createFilter's own conflict rule. Default and exclude-only behavior are byte-identical to before; empty-array includes are treated as absent (createFilter would read them as allow-all). Coverage the exclude side always had, now mirrored for include: the css-filter mode grew from 2 to 9 assertions across four dev-server sub-runs (exclude / include / conflict / default) against a temp node_modules package written by the harness — a real directory, not a symlink or file: dep, which Vite would realpath outside node_modules and dodge the default exclusion under test — whose JS imports its own CSS (the filter sees JS modules; CSS files bypass it), ssr.noExternal'd so the SSR env can transform the CSS import. Docs that both next.31 start options were missing: README options.start now documents css.filter (include/exclude semantics, dev-only scope) and #315's errorBoundary (generic 500 fallback, no leaked details, dev untouched, errorBoundary: false when middleware owns errors), and the option list gains the absent setup/errorBoundary/css entries; the StartOptions JSDoc for css.filter spells the same semantics. No new changeset — nothing has shipped (#316's changeset is queued unreleased in #313), so the existing start-css-filter changeset's wording is corrected to describe the fixed semantics instead. Full local gate green: start-ssr 349/349 + http-bridge 10/10, css-matrix 82/82 + bridge 19/19, build + tsc clean.

Co-authored-by: Cursor <cursoragent@cursor.com>
@github-actions
github-actions Bot force-pushed the changeset-release/next branch from 51b5771 to 3609ac1 Compare August 19, 2026 21:21
@github-actions
github-actions Bot force-pushed the changeset-release/next branch from 3609ac1 to b925a0e Compare August 19, 2026 22:08
@ryansolid
ryansolid merged commit 639df4c into next Aug 19, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant