Version Packages (next) - #292
Merged
Merged
Conversation
github-actions
Bot
force-pushed
the
changeset-release/next
branch
from
July 29, 2026 18:08
494dd5c to
5caec97
Compare
github-actions
Bot
force-pushed
the
changeset-release/next
branch
from
July 29, 2026 22:37
5caec97 to
c3c9bc4
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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.
nextis currently in pre mode so this branch has prereleases rather than normal releases. If you want to exit prereleases, runchangeset pre exitonnext.Releases
vite-plugin-solid@3.0.0-next.20
Patch Changes
528a7bb: Move the
solid:client-build-firstbuildApp hook frompreto normalorder, and make its post-order
/completecompanion defer to any otherplugin that declares a non-pre
buildApphook of its own.Pre-order
buildApphooks are where host plugins do destructivepreparation: nitro v3's
nitro:preparerm -rf's the output directory froma pre-order hook. Sorted at
pre, our client build could run before thatcleanup (hook order within
prefollows plugin registration), so theclient bundle and manifest it had just emitted were wiped, the subsequent
server build baked in the manifest-less fallback, and the production build
served 500s with no client assets — the
solid({ ssr })+nitro()composition was broken out of the box.
Normal order still satisfies the hook's original purpose (client before
any server-first orchestrator): config-level
builder.buildApporchestrators (@cloudflare/vite-plugin builds workers before the client)
are invoked by Vite only after all pre- and normal-order plugin hooks, and
hook-based orchestrators (nitro's
nitro:main, cloudflare's companionhook) declare post order. The
/completehook now also treats anotherplugin's non-pre
buildApphook as a claim on the app build even beforeit runs, instead of preempting a post-order orchestrator's staged build
(nitro prerenders and copies public assets before its final server bundle,
and knows which environments to skip). Plain
builder: {}setups keep thereinstated build-everything fallback, unchanged.
Covered by a new turnkey e2e mode (builder-prepare) that builds against a
nitro-shaped host: a pre-order output-wiping hook plus a post-order
ssr-building orchestrator that skips already-built environments.
60ba309: Resolve relative filter globs against the Vite root instead of
process.cwd().The server-functions plugin's default include glob
(
src/**/*.{jsx,tsx,ts,js,mjs,cjs}) is relative, andcreateFilterresolvedit against the invocation directory — so running
vitefrom anywhere otherthan the project root silently skipped server-function compilation entirely
(no transform, no registration). Both filters (the main plugin's
include/excludeandserverFunctions.filter) are now created inconfigResolvedwith patterns resolved againstconfig.root; user-providedrelative patterns become root-relative too, and absolute patterns are
unaffected.