Version Packages (next) - #16639
Merged
Merged
Conversation
|
Install the latest version of pnpm add https://pkg.svelte.dev/@sveltejs/kit/c/89548186e1b076eba99596ae659c0d3852ff7cbbOpen in |
github-actions
Bot
force-pushed
the
changeset-release/version-3
branch
20 times, most recently
from
August 5, 2026 21:47
e2ce259 to
b700be6
Compare
Member
|
I think bumping |
github-actions
Bot
force-pushed
the
changeset-release/version-3
branch
from
August 7, 2026 01:52
b700be6 to
9b8b0af
Compare
github-actions
Bot
force-pushed
the
changeset-release/version-3
branch
from
August 7, 2026 01:54
9b8b0af to
8954818
Compare
Rich-Harris
approved these changes
Aug 7, 2026
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 version-3, this PR will be updated.
version-3is currently in pre mode so this branch has prereleases rather than normal releases. If you want to exit prereleases, runchangeset pre exitonversion-3.Releases
@sveltejs/adapter-auto@8.0.0-next.3
Major Changes
Patch Changes
fix: convert resolved adapter path to a file URL before importing, so builds work on Windows
fix: allow prerelease versions of SvelteKit 3 to satisfy the peer dependency range
Updated dependencies [
bbd1e2f,e21d27b,6044d05,7fb611f,9f06b3a,8763327,7dc2379,a70c3eb,89f49c7,f36b3a4,1144a63,9f06b3a]:@sveltejs/adapter-cloudflare@8.0.0-next.5
Major Changes
breaking: minimum Wrangler version required is
4.118.0(#16668)breaking: upgrade
@cloudflare/workers-typesto 4.20260219.0breaking: upgrade minimum
wranglerversion to ^4.67.0breaking: remove
platform.contextin favour ofplatform.ctxbreaking: require SvelteKit 3
breaking: remove use of the Cloudflare Workers Cache API in favour of Workers Caching (#16640)
Patch Changes
chore: use
node:fsinstead of deprecatedbuilder.rimrafandbuilder.mkdirp(#16286)chore: bump
@cloudflare/workers-typesto4.20260621.1fix: avoid overriding user's existing
_headersruleschore: check the
WORKERS_CIenvironment variable to determine if we're building for Cloudflare Workersfix: allow prerelease versions of SvelteKit 3 to satisfy the peer dependency range
fix: avoid caching immutable asset 404s
Updated dependencies [
bbd1e2f,e21d27b,6044d05,7fb611f,9f06b3a,8763327,7dc2379,a70c3eb,89f49c7,f36b3a4,1144a63,9f06b3a]:@sveltejs/adapter-netlify@7.0.0-next.6
Major Changes
chore: use
rolldownfor edge function bundlingbreaking: write output that conforms to the stable Netlify Frameworks API.
Deploying and previewing with Netlify CLI now requires v17.31.0 or later. Run
npm i -g netlify-cli@latestto upgrade.breaking: require SvelteKit 3
breaking: edge function build target is now
es2022breaking: require
vite@^8.0.12, the first Vite 8 release bundling stablerolldown1.0.0Patch Changes
chore: use
node:fsinstead of deprecatedbuilder.rimrafandbuilder.mkdirp(#16286)fix: ensure types for
platform.contextworkfix: include
utils.jsin package.jsonfileschore: replace @netlify/functions with @netlify/types for the Context type
fix: provide distinct names for each split serverless function (#16667)
fix: await
initon every request to prevent race conditionchore: bump Rolldown to
1.2.0Updated dependencies [
bbd1e2f,e21d27b,6044d05,7fb611f,9f06b3a,8763327,7dc2379,a70c3eb,89f49c7,f36b3a4,1144a63,9f06b3a]:@sveltejs/adapter-node@6.0.0-next.8
Major Changes
chore: migrate from rollup to rolldown
breaking: require SvelteKit 3
breaking: add
kit.paths.originconfig option, removekit.prerender.originand theadapter-nodeORIGINenvironment variablebreaking: require
vite@^8.0.12, the first Vite 8 release bundling stablerolldown1.0.0Minor Changes
Patch Changes
fix: serve static files with the Content-Type recorded in the manifest
chore: use
node:fsinstead of deprecatedbuilder.rimrafandbuilder.mkdirp(#16286)fix: allow prerelease versions of SvelteKit 3 to satisfy the peer dependency range
fix: correctly bundle entrypoints on Windows
fix: preserve stripped path prefixes by making trailing-slash redirects relative
chore: bump Rolldown to
1.2.0fix: don't send
Vary: Accept-Encodingfor assets that were never precompressedUpdated dependencies [
bbd1e2f,e21d27b,6044d05,7fb611f,9f06b3a,8763327,7dc2379,a70c3eb,89f49c7,f36b3a4,1144a63,9f06b3a]:@sveltejs/adapter-static@4.0.0-next.4
Major Changes
Patch Changes
chore: use
node:fsinstead of deprecatedbuilder.rimrafandbuilder.mkdirp(#16286)fix: avoid caching immutable asset 404s when configuring for Vercel
fix: match adapter-vercel's prerendered redirect handling when deploying to Vercel
fix: allow prerelease versions of SvelteKit 3 to satisfy the peer dependency range
Updated dependencies [
bbd1e2f,e21d27b,6044d05,7fb611f,9f06b3a,8763327,7dc2379,a70c3eb,89f49c7,f36b3a4,1144a63,9f06b3a]:@sveltejs/adapter-vercel@7.0.0-next.5
Major Changes
chore: use
rolldownfor edge function bundlingbreaking: edge function build target is now
es2022breaking: require
vite@^8.0.12, the first Vite 8 release bundling stablerolldown1.0.0breaking: remove support for edge and Node 20 runtimes
Patch Changes
chore: bump
@vercel/nftdependencychore: use
node:fsinstead of deprecatedbuilder.rimrafandbuilder.mkdirp(#16286)fix: allow prerelease versions of SvelteKit 3 to satisfy the peer dependency range
fix: await
initon every request to prevent race conditionchore: bump Rolldown to
1.2.0Updated dependencies [
bbd1e2f,e21d27b,6044d05,7fb611f,9f06b3a,8763327,7dc2379,a70c3eb,89f49c7,f36b3a4,1144a63,9f06b3a]:@sveltejs/enhanced-img@1.0.0-next.4
Major Changes
breaking: require Node 22 or newer
breaking: require
vite@^8.0.12, the first Vite 8 release bundling stablerolldown1.0.0Minor Changes
vite-plugin-svelte7Patch Changes
chore: replace the
$libalias with#libin docschore: bump
vite-imagetoolsto v11@sveltejs/kit@3.0.0-next.15
Major Changes
breaking: remove
experimental.handleRenderingErrorsflagbreaking: make
getRequestandsetResponsesynchronousbreaking: TypeScript 6 is now the minimum required version
breaking: refresh all load functions/queries when clicking a link to the current URL
breaking: upgrade to
cookiev2. Cookie names must now contain only ASCII charactersbreaking: require Node 22 or newer
breaking: remove the
preloadStrategyoption.modulepreloadwill always be usedbreaking: default the cookie
pathoption to'/'breaking: remove
@sveltejs/kit/node/polyfillsbreaking: add
config.kit.output.linkHeaderPreloadto preload using theLinkheaderbreaking: require
@sveltejs/vite-plugin-sveltev7breaking: make
page.urlimmutable on a type levelbreaking: remove
base,assets, andresolveRoutefrom$app/pathsbreaking: remove
createEntriesfrom theBuilderobject passed to adapter functionsbreaking: return no content for 204 responses
breaking: rename
Pathnametype toPathandAssettoAssetPathbreaking: remove leading
/fromPathandAssetPathbreaking:
handle'sresolveis now typed to always return aPromisebreaking: require Svelte config options to be passed through the Vite plugin
breaking: form action responses now use the HTTP status code returned from
failbreaking: write tsconfig to
node_modules/$app/tsconfigbreaking: remove the deprecated CSRF
checkOriginoption in favor oftrustedOriginsbreaking: the
deltaproperty now only exists forpopstatenavigation eventsbreaking: change
form.errortype fromanytoApp.Error | undefinedbreaking: remove deprecated
pragmaheader in version polling for improved CORS supportbreaking:
gotonow rejects when called with a URL that does not resolve to a route within the app, matching the existing behaviour for external URLsbreaking: require Svelte 5.56.4 or newer
breaking: error on
event.url,event.paramsandevent.routeaccess inside queriesbreaking: delete
$service-workermodulebreaking: move
defineEnvVarsto@sveltejs/kit/envbreaking: nested server-only directories
feat: allow adapters to provide additional Vite plugins
breaking: replace the
$libalias with#liband removefiles.libconfig.chore: change
error,isHttpError,redirect, andisRedirectto refer to public type instead of internal classbreaking: add 'error' result type to
preloadDatabreaking: detect new deployments on data, remote, and form action responses, tab focus, and visibility change, and default
version.pollIntervalto 1 hourbreaking: disallow cross-origin form submissions without a
Content-Typeheaderbreaking: Server-only directories (
/server/in the path) are now treated as server-only everywhere inside the project (exceptsrc/routesand the assets directory)breaking:
configexported from a universal route file takes precedence over a server onebreaking: require Vite 8. Provides new functionality even for existing Vite 8 users such as faster builds with Vite hook filters and more powerful SvelteKit adapters with the Vite environment API
breaking: remove
data-sveltekit-*option'off'in favour offalsebreaking: move tracing out of the experimental namespace and remove the instrumentation flag
breaking: add
kit.paths.originconfig option, removekit.prerender.originand theadapter-nodeORIGINenvironment variablebreaking: remove
$app/storesbreaking: add
refreshAlland deprecateinvalidateAllbreaking: disallow
*.remote.ts/jsfiles unlessexperimental.remoteFunctionsis enabledbreaking: replace the
noScrollandkeepFocusoptions ofgotowith a singleresetoption, and thedata-sveltekit-noscrollanddata-sveltekit-keepfocusattributes withdata-sveltekit-resetbreaking: don't abort navigation when calling
invalidate(All)during navigationbreaking: consistent special filename patterns
breaking: allow
handleErrorto influence status codebreaking: delegate CORS handling to Vite for static directory requests during development
breaking: require
vite@^8.0.12, the first Vite 8 release bundling stablerolldown1.0.0breaking: only include routes with a
+pageor+serverinRouteIdbreaking: require Node 22.17
breaking: deprecate
error(status, {...})in favour oferror(status, message, {...})breaking: forbid external redirects by default
breaking: remove param files in folder in favor of
params.js/tsfilebreaking:
preloadCodenow takes a route ID (e.g./blog/[slug]) instead of a pathname. Route IDs are not prefixed withpaths.basebreaking: remove deprecated
.run()method from live queriesMinor Changes
feat: allow hyphens in param and matcher names
feat: add
$app/manifestmodule withimmutable,assets,prerendered, androutesexportsfeat: add
ErrorPropsto generated typesfeat: support sourcemaps in production
feat: return the list of compressed files from
builder.compressfeat: warn when tsconfig doesn't exclude service worker (#16645)
feat: validate that all remote form fields were created with form.fields.foo.as(...)
feat: support function validators for environment variables
feat: use
type: 'module'for service worker registrationsfeat: add shallow routing to
gotoand deprecatepushStateandreplaceStatefeat: make
$app/pathsimportable in service workersfeat: preserve page state set through
goto(..., { state, persistState: true })across reloadsfeat: reinstate
$env/static/private,$env/dynamic/private,$env/static/public,$env/dynamic/publicand$app/environmentas deprecated aliases for$app/env/private$app/env/publicand$app/envfeat: add
pageandendpointbooleans to$app/manifest'sroutes, and export aManifestRoutetypefeat:
$app/service-workermodulefeat: resolve paths using the Vite config
rootoption instead ofprocess.cwd()to better support monorepo configurations such as Vitest workspacesfeat: better error logging
feat: add
PageRouteIdandEndpointRouteIdto$app/typesfeat: better tsconfig validation
feat: add
dirty()property to form fieldschore: deprecate
Responsehelpers in favor of platform-provided alternativesfeat: add
cookies.parsemethodfeat: support custom values in
page.stateviatransporthook (#16662)fix: default cookies to
securetofalseduring developmentfeat: warn when naively proxying requests that result in responses with a
content-encodingheader (#16633)Patch Changes
fix: persist global app state across module graph reloads (#16663)
fix: generate valid
Pathtypes for routes with optional or rest params, several params in one segment, or escape sequencesfix: allow
undefinedvalues to be passed to form field.as(...)where applicablechore: deprecate
builder.rimrafandbuilder.mkdirpin favour ofnode:fsmethods (#16610)fix: don't treat callable standard schemas as function param matchers
fix: decode all numeric character references, including above
ffff, when crawling prerendered pagesfix: include queries refreshed from within another query in the serialized response
fix: reject malformed streamed data encoding
perf: cache the default cookie header parse and avoid allocations in
cookies.getfix: exclude deleted cookies from
cookies.getAll()so it stays consistent withcookies.get()fix: hide stack traces for internal errors like 404s
chore: deduplicate repeated CSP directive handling
fix: defer
query.refresh()in server commands until after the command body completesfix: drain unconsumed request bodies so keep-alive connections don't hang
fix: resolve service worker and
tsconfig.jsonbased on Viterootsettingperf: match only unpaired surrogates when escaping HTML
fix: treat
data:protocol URLs as external for redirectchore: deduplicate request hashing for serialized fetch responses
fix: don't treat
Object.prototypemembers as param matchers during validationfix: don't report empty environment variables as missing
fix: exclude routes without a page or endpoint from
routesin$app/manifest, and remove directories with no route files fromLayoutParamsfix: avoid Vite dev server reload on initial page request
fix: don't set a
nullaccept-languageheader on internalfetchsub-requests when the incoming request has nonefix: correctly detect prerendered paths in server
fetchwhenpaths.baseis setfix: populate
$app/env/*dynamic variables in contexts that don't run the dev server, such asvite-nodefix: properly handle Date objects in form.fields.set
fix: return 404 for form actions and remote functions whose name is an
Object.prototypememberfix: no longer throw "An impossible situation occurred" when a server-only module is imported by both server and client code
fix: don't duplicate remote modules in the generated manifest
chore: reuse base64 and text decoding helpers
fix: explain the removal of
$liband$service-workerwhen their imports fail to resolve (#16635)fix: correctly massage stack traces with async frames (#16633)
fix: mark
RequestEventproperties asreadonly(#16661)fix: update
matchparameter type (#16636)fix: generate sourcemaps for remote modules
fix: avoid empty getElementById() call on hash routing navigation
fix: serve
.icofiles withimage/x-iconContent-Typefix: exclude inlined files from the page's
$app/manifestimmutable listfix: avoid client-side code being bundled by Cloudflare Wrangler
fix: record the mime types of prerendered paths in the server manifest
chore: clarify which hooks run during server route resolution
fix: make
paths.origintype looserfeat: send periodic
keep-aliveSSE comments fromquery.liveto prevent idle-timeout errorsfix: warn if hook files are spelled as "hook" instead of "hooks"
chore: only generate each route's resolution module once when prerendering
fix: skip clean fields when programmatically validating forms
perf: skip import graph collection outside client environments
breaking: experimental remote form
validate({ includeUntouched })option is nowallfix: avoid client build warning about externalising
node:async_hooksfix: reinstate
$app/environmentas an alias for$app/env, in case dependencies import itfix: error when reading non-serialized
set-cookieheaders viagetSetCookieinload(#16614)perf: avoid quadratic remote form issue merging
chore: deprecate the
aliasoptionfix: don't attempt to serialize fetch responses when the request body is not a string or TypedArray
fix: handle rejected streamed server data after delayed loads
fix: render pages over sibling endpoints without GET or HEAD handlers
fix: prevent infinite loops when server-side queries refresh each other in a cycle during the single-flight drain
fix: populate
versionin service workersfeat: add field.touched() helper to remote form fields
fix: read the error status of
App.Errorin theprerenderandquery.liveremote functionsfix: resolve remote modules as external during dev prebundling so packages can re-export remote functions
fix: propagate errors from prerendered remote responses instead of re-running the function
fix: allow reserved words (e.g.
delete,class) as remote function export namesfix: reset failed
<svelte:boundary>on client navigation so a stale+error.svelteis torn downfix: expand
[x+nn]and[u+nnnn]escape sequences when resolving a route id to a pathnamefix: respect the status returned from
handleErroron the fallback error page served to error-page sub-requestsfix: warn if there are plugins using
transformIndexHtmlfix: refetch route-tracking server data when navigating away from an error page
fix: allow routes to contain
[and]via the[x+5b]and[x+5d]escapeschore: remove dependency on kleur
fix: serialize
query(...).set(...)/query(...).refresh()values into the rendered HTML when called from within a query during SSRfix: detect
$app/serverand$app/env/privateclient imports when SvelteKit is installed inside the project root (#16648)fix: sort directory entries when building the route manifest so node indices are deterministic across runtimes (e.g. Bun and Node)
fix: skip unnecessary
version.jsonchecks ifupdated.currentis alreadytruefix: allow generation of $app/tsconfig without TypeScript installed
chore: remove dependency on
set-cookie-parserfix: fall back to the page's form actions when a sibling endpoint has no POST handler
perf: use a
Setto check element ids when validating fragment links during prerenderingfix: preserve shared client chunk hashes when the app version changes
fix: include hoisted packages in Vite's
server.fs.allowlistfix: only include
_app/immutablefiles in$app/manifest'simmutablein the service workerchore: remove the dead
SSRState.fallbackfield and name the server state fork semanticsfix: import resolved peer dependencies as file URLs so project-relative resolution works on Windows
fix: log errors caught by the Vite dev server handler
fix: resolve
rootper instance of the SvelteKit Vite pluginfix: ignore path casing differences when warning about overridden Vite config on Windows
fix: return a lightweight 404 instead of rendering the error page for subresource requests
fix: preserve stripped path prefixes by making trailing-slash redirects relative
fix: preserve the current URL search parameters when submitting a remote form without JavaScript
fix: only treat files in node_modules as remote modules when the package has a peer dependency on @sveltejs/kit (#16492)
fix: treeshake prerendered remote functions in the right chunks
chore: deduplicate type-stripping logic in
tweak_typesfix: error during development if the adapter does not support instrumentation and it exists
fix: use mouseover+mousemove for preloading to reduce events
fix: write generated tsconfig to
node_modules/$app/tsconfig.jsonso that tools with simplified tsconfig resolution can find itfix: more informative error message when running a command inside a query or prerender function
fix: prerender and crawl pages whose
content-typeheader carries acharsetparameterfix: stream promised
readresults lazily instead of eagerly buffering themfix: correctly decode
[u+nnnn]escape sequences aboveffff@sveltejs/package@3.0.0-next.5
Major Changes
Minor Changes
feat: warn when using a
.server.file or file inside aserverdirectory without importing a server-only modulefeat: transform import aliases into relative imports in files
Patch Changes
chore: remove dependency on sade
chore: replace private fs helpers with Node built-ins (#16610)
chore: remove dependency on kleur
fix: import resolved peer dependencies as file URLs so project-relative resolution works on Windows
fix: emit declarations when the tsconfig lives above the package root
fix: declare typescript as an optional peer dependency so svelte-package works under strict node-linkers